pub(crate) struct SyncResponse {
sync_token: SyncToken,
user: OwnedUserId,
rooms: HashMap<OwnedRoomId, SyncedRoom>,
account_data_events: Vec<Raw<AnyGlobalAccountDataEvent>>,
to_device_messages: ToDevice,
changed_user_keys: Vec<OwnedUserId>,
left_user_keys: Vec<OwnedUserId>,
device_one_time_keys_count: BTreeMap<OneTimeKeyAlgorithm, UInt>,
device_unused_fallback_key_types: Vec<OneTimeKeyAlgorithm>,
}Expand description
A wrapper around a sync response
Fields§
§sync_token: SyncTokenThe sync token to return
user: OwnedUserIdThe user for who we are syncing data
rooms: HashMap<OwnedRoomId, SyncedRoom>Mapping of all the rooms involved in the /sync request.
account_data_events: Vec<Raw<AnyGlobalAccountDataEvent>>The global account data events of the user.
to_device_messages: ToDeviceTo device messages
changed_user_keys: Vec<OwnedUserId>List of users who changed their keys or newly share a room since the last sync.
left_user_keys: Vec<OwnedUserId>List of users who no longer share any encrypted room since the last sync.
device_one_time_keys_count: BTreeMap<OneTimeKeyAlgorithm, UInt>For each key algorithm, the number of unclaimed one-time keys currently held on the server for this device
device_unused_fallback_key_types: Vec<OneTimeKeyAlgorithm>The unused fallback key algorithms.
Implementations§
Source§impl SyncResponse
impl SyncResponse
Sourcepub fn add_event(
&mut self,
event: SyncEvent,
client_context: ClientContext,
max_synced_events: usize,
event_format: &EventFormat,
) -> Result<(), InternalServerError>
pub fn add_event( &mut self, event: SyncEvent, client_context: ClientContext, max_synced_events: usize, event_format: &EventFormat, ) -> Result<(), InternalServerError>
Add an event to the sync response
Sourcepub fn add_room_account_data_event(
&mut self,
event: &SyncRoomAccountDataEvent,
) -> Result<(), InternalServerError>
pub fn add_room_account_data_event( &mut self, event: &SyncRoomAccountDataEvent, ) -> Result<(), InternalServerError>
This adds the given room account data to the sync response.
Throws an error if the room type is not supported.
Sourcepub fn add_to_device_message(
&mut self,
event: &SyncToDeviceEvent,
) -> Result<(), InternalServerError>
pub fn add_to_device_message( &mut self, event: &SyncToDeviceEvent, ) -> Result<(), InternalServerError>
Add a to_device message to the sync response
Sourcepub fn add_read_receipts(
&mut self,
receipts: SyncReceiptsMap,
) -> Result<(), InternalServerError>
pub fn add_read_receipts( &mut self, receipts: SyncReceiptsMap, ) -> Result<(), InternalServerError>
Adds the given read receipts map to all their corresponding rooms of the sync response.
Trait Implementations§
Source§impl Debug for SyncResponse
impl Debug for SyncResponse
Source§impl IntoResponse for SyncResponse
impl IntoResponse for SyncResponse
Source§fn into_response(self) -> Response
fn into_response(self) -> Response
Auto Trait Implementations§
impl Freeze for SyncResponse
impl RefUnwindSafe for SyncResponse
impl Send for SyncResponse
impl Sync for SyncResponse
impl Unpin for SyncResponse
impl UnsafeUnpin for SyncResponse
impl UnwindSafe for SyncResponse
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
§impl<T> Identity for Twhere
T: ?Sized,
impl<T> Identity for Twhere
T: ?Sized,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreimpl<T> JsonCastable<CanonicalJsonValue> for T
impl<T> JsonCastable<Value> for T
§impl<D> OwoColorize for D
impl<D> OwoColorize for D
§fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
§fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
§fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
§fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
§fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
§fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
§fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
§fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
§fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
§fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
§fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
§fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
§fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
§fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
§fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
§fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
§fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
§fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
§fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
§fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
§fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
§fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
§fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
§fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
§fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
§fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::fg] or
a color-specific method, such as [OwoColorize::green], Read more§fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::bg] or
a color-specific method, such as [OwoColorize::on_yellow], Read more