libkazv
|
Synchronise the client's state with the latest state on the server. More...
#include <sync.hpp>
Public Attributes | |
std::optional< StateEventBatch > | state |
The state updates for the room up to the start of the timeline. More... | |
Timeline | timeline |
The timeline of messages and state changes in the room up to the point when the user left. More... | |
std::optional< EventBatch > | accountData |
The private data that this user has attached to this room. More... | |
Synchronise the client's state with the latest state on the server.
Clients use this API when they first log in to get an initial snapshot of the state on the server, and then continue to call this API to get incremental deltas to the state, and to receive new messages.
Note: This endpoint supports lazy-loading. See Filtering for more information. Lazy-loading members is only supported on a StateFilter
for this endpoint. When lazy-loading is enabled, servers MUST include the syncing user's own membership event when they join a room, or when the full state of rooms is requested, to aid discovering the user's avatar & displayname.
Further, like other members, the user's own membership event is eligible for being considered redundant by the server. When a sync is limited
, the server MUST return membership events for events in the gap (between since
and the start of the returned timeline), regardless as to whether or not they are redundant. This ensures that joins/leaves and profile changes which occur during the gap are not lost.
Note that the default behaviour of state
is to include all membership events, alongside other state, when lazy-loading is not enabled.
std::optional<EventBatch> Kazv::Api::SyncJob::LeftRoom::accountData |
The private data that this user has attached to this room.
std::optional<StateEventBatch> Kazv::Api::SyncJob::LeftRoom::state |
The state updates for the room up to the start of the timeline.
Timeline Kazv::Api::SyncJob::LeftRoom::timeline |
The timeline of messages and state changes in the room up to the point when the user left.