mirror of
https://git.anonymousland.org/anonymousland/synapse.git
synced 2025-05-03 06:24:49 -04:00
Add MSC3030 experimental client and federation API endpoints to get the closest event to a given timestamp (#9445)
MSC3030: https://github.com/matrix-org/matrix-doc/pull/3030 Client API endpoint. This will also go and fetch from the federation API endpoint if unable to find an event locally or we found an extremity with possibly a closer event we don't know about. ``` GET /_matrix/client/unstable/org.matrix.msc3030/rooms/<roomID>/timestamp_to_event?ts=<timestamp>&dir=<direction> { "event_id": ... "origin_server_ts": ... } ``` Federation API endpoint: ``` GET /_matrix/federation/unstable/org.matrix.msc3030/timestamp_to_event/<roomID>?ts=<timestamp>&dir=<direction> { "event_id": ... "origin_server_ts": ... } ``` Co-authored-by: Erik Johnston <erik@matrix.org>
This commit is contained in:
parent
84dc50e160
commit
a6f1a3abec
13 changed files with 674 additions and 31 deletions
|
@ -97,6 +97,7 @@ from synapse.handlers.room import (
|
|||
RoomContextHandler,
|
||||
RoomCreationHandler,
|
||||
RoomShutdownHandler,
|
||||
TimestampLookupHandler,
|
||||
)
|
||||
from synapse.handlers.room_batch import RoomBatchHandler
|
||||
from synapse.handlers.room_list import RoomListHandler
|
||||
|
@ -728,6 +729,10 @@ class HomeServer(metaclass=abc.ABCMeta):
|
|||
def get_room_context_handler(self) -> RoomContextHandler:
|
||||
return RoomContextHandler(self)
|
||||
|
||||
@cache_in_self
|
||||
def get_timestamp_lookup_handler(self) -> TimestampLookupHandler:
|
||||
return TimestampLookupHandler(self)
|
||||
|
||||
@cache_in_self
|
||||
def get_registration_handler(self) -> RegistrationHandler:
|
||||
return RegistrationHandler(self)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue