pub struct SdkBackend { /* private fields */ }Expand description
Production-facing backend composed from inline-sdk and a client store.
Implementations§
Source§impl SdkBackend
impl SdkBackend
Sourcepub fn builder() -> SdkBackendBuilder
pub fn builder() -> SdkBackendBuilder
Starts an SDK backend builder.
Sourcepub fn api_client(&self) -> &ApiClient
pub fn api_client(&self) -> &ApiClient
Returns the configured API client.
Sourcepub fn realtime_url(&self) -> &str
pub fn realtime_url(&self) -> &str
Returns the configured realtime URL.
Sourcepub fn identity(&self) -> &ClientIdentity
pub fn identity(&self) -> &ClientIdentity
Returns the configured client identity.
Sourcepub fn store(&self) -> Arc<dyn ClientStore>
pub fn store(&self) -> Arc<dyn ClientStore>
Returns the shared store.
Sourcepub fn realtime_handshake_enabled(&self) -> bool
pub fn realtime_handshake_enabled(&self) -> bool
Returns whether connect will perform a realtime handshake.
Trait Implementations§
Source§impl ClientBackend for SdkBackend
impl ClientBackend for SdkBackend
Source§fn auth_start(
&self,
request: AuthStartRequest,
) -> BoxFuture<'static, BackendResult<AuthStartResult>>
fn auth_start( &self, request: AuthStartRequest, ) -> BoxFuture<'static, BackendResult<AuthStartResult>>
Sends an Inline login code.
Source§fn auth_verify(
&self,
request: AuthVerifyRequest,
) -> BoxFuture<'static, BackendResult<AuthVerifyResult>>
fn auth_verify( &self, request: AuthVerifyRequest, ) -> BoxFuture<'static, BackendResult<AuthVerifyResult>>
Verifies an Inline login code and persists the resulting session.
Source§fn resume_session(
&self,
) -> BoxFuture<'static, BackendResult<ClientStatusSnapshot>>
fn resume_session( &self, ) -> BoxFuture<'static, BackendResult<ClientStatusSnapshot>>
Resumes a previously stored session, if available.
Source§fn connect(
&self,
request: ConnectRequest,
) -> BoxFuture<'static, BackendResult<ClientStatusSnapshot>>
fn connect( &self, request: ConnectRequest, ) -> BoxFuture<'static, BackendResult<ClientStatusSnapshot>>
Connects or reconnects the client.
Source§fn dialogs(
&self,
request: DialogsRequest,
) -> BoxFuture<'static, BackendResult<DialogsPage>>
fn dialogs( &self, request: DialogsRequest, ) -> BoxFuture<'static, BackendResult<DialogsPage>>
Lists dialogs.
Source§fn cached_dialogs(
&self,
request: DialogsRequest,
) -> BoxFuture<'static, BackendResult<DialogsPage>>
fn cached_dialogs( &self, request: DialogsRequest, ) -> BoxFuture<'static, BackendResult<DialogsPage>>
Lists only durable cached dialogs without a network request.
Source§fn account_state(
&self,
) -> BoxFuture<'static, BackendResult<AccountStateSnapshot>>
fn account_state( &self, ) -> BoxFuture<'static, BackendResult<AccountStateSnapshot>>
Loads account-level durable state used for consumer reconciliation.
Source§fn chat_state(
&self,
chat_id: InlineId,
) -> BoxFuture<'static, BackendResult<ChatStateSnapshot>>
fn chat_state( &self, chat_id: InlineId, ) -> BoxFuture<'static, BackendResult<ChatStateSnapshot>>
Loads durable state for one chat used for consumer reconciliation.
Source§fn history(
&self,
request: HistoryRequest,
) -> BoxFuture<'static, BackendResult<HistoryPage>>
fn history( &self, request: HistoryRequest, ) -> BoxFuture<'static, BackendResult<HistoryPage>>
Fetches chat history.
Source§fn cached_history(
&self,
request: HistoryRequest,
) -> BoxFuture<'static, BackendResult<HistoryPage>>
fn cached_history( &self, request: HistoryRequest, ) -> BoxFuture<'static, BackendResult<HistoryPage>>
Fetches only the client’s durable cached history without making a
network request. This is intended for offline consumers and state
reconciliation; ordinary callers should prefer
Self::history.Source§fn chat_participants(
&self,
request: ChatParticipantsRequest,
) -> BoxFuture<'static, BackendResult<ChatParticipantsPage>>
fn chat_participants( &self, request: ChatParticipantsRequest, ) -> BoxFuture<'static, BackendResult<ChatParticipantsPage>>
Fetches chat participants.
Source§fn add_chat_participant(
&self,
request: AddChatParticipantRequest,
) -> BoxFuture<'static, BackendResult<OperationOutcome>>
fn add_chat_participant( &self, request: AddChatParticipantRequest, ) -> BoxFuture<'static, BackendResult<OperationOutcome>>
Adds a user to a chat.
Source§fn remove_chat_participant(
&self,
request: RemoveChatParticipantRequest,
) -> BoxFuture<'static, BackendResult<OperationOutcome>>
fn remove_chat_participant( &self, request: RemoveChatParticipantRequest, ) -> BoxFuture<'static, BackendResult<OperationOutcome>>
Removes a user from a chat.
Source§fn update_chat_info(
&self,
request: UpdateChatInfoRequest,
) -> BoxFuture<'static, BackendResult<OperationOutcome>>
fn update_chat_info( &self, request: UpdateChatInfoRequest, ) -> BoxFuture<'static, BackendResult<OperationOutcome>>
Updates mutable chat metadata.
Source§fn delete_chat(
&self,
request: DeleteChatRequest,
) -> BoxFuture<'static, BackendResult<OperationOutcome>>
fn delete_chat( &self, request: DeleteChatRequest, ) -> BoxFuture<'static, BackendResult<OperationOutcome>>
Deletes a chat when permitted by the service.
Source§fn create_dm(
&self,
request: CreateDmRequest,
) -> BoxFuture<'static, BackendResult<CreatedChat>>
fn create_dm( &self, request: CreateDmRequest, ) -> BoxFuture<'static, BackendResult<CreatedChat>>
Creates or opens a direct message chat.
Source§fn create_thread(
&self,
request: CreateThreadRequest,
) -> BoxFuture<'static, BackendResult<CreatedChat>>
fn create_thread( &self, request: CreateThreadRequest, ) -> BoxFuture<'static, BackendResult<CreatedChat>>
Creates a regular Inline thread chat.
Source§fn create_reply_thread(
&self,
request: CreateReplyThreadRequest,
) -> BoxFuture<'static, BackendResult<CreatedChat>>
fn create_reply_thread( &self, request: CreateReplyThreadRequest, ) -> BoxFuture<'static, BackendResult<CreatedChat>>
Creates a child/reply Inline thread chat.
Source§fn send_text(
&self,
request: SendTextRequest,
) -> BoxFuture<'static, BackendResult<SendTextOutcome>>
fn send_text( &self, request: SendTextRequest, ) -> BoxFuture<'static, BackendResult<SendTextOutcome>>
Sends a text message.
Source§fn send_media(
&self,
request: UploadRequest,
bytes: Vec<u8>,
) -> BoxFuture<'static, BackendResult<SendTextOutcome>>
fn send_media( &self, request: UploadRequest, bytes: Vec<u8>, ) -> BoxFuture<'static, BackendResult<SendTextOutcome>>
Uploads and sends a media message.
Source§fn edit_message(
&self,
request: EditMessageRequest,
) -> BoxFuture<'static, BackendResult<OperationOutcome>>
fn edit_message( &self, request: EditMessageRequest, ) -> BoxFuture<'static, BackendResult<OperationOutcome>>
Edits a text message.
Source§fn delete_message(
&self,
request: DeleteMessageRequest,
) -> BoxFuture<'static, BackendResult<OperationOutcome>>
fn delete_message( &self, request: DeleteMessageRequest, ) -> BoxFuture<'static, BackendResult<OperationOutcome>>
Deletes or unsends a message.
Source§fn react(
&self,
request: ReactRequest,
) -> BoxFuture<'static, BackendResult<OperationOutcome>>
fn react( &self, request: ReactRequest, ) -> BoxFuture<'static, BackendResult<OperationOutcome>>
Adds or removes a reaction.
Source§fn read(
&self,
request: ReadRequest,
) -> BoxFuture<'static, BackendResult<OperationOutcome>>
fn read( &self, request: ReadRequest, ) -> BoxFuture<'static, BackendResult<OperationOutcome>>
Marks messages read.
Source§fn set_marked_unread(
&self,
request: SetMarkedUnreadRequest,
) -> BoxFuture<'static, BackendResult<OperationOutcome>>
fn set_marked_unread( &self, request: SetMarkedUnreadRequest, ) -> BoxFuture<'static, BackendResult<OperationOutcome>>
Sets the explicit marked-unread state for a chat.
Source§fn update_dialog_notifications(
&self,
request: UpdateDialogNotificationsRequest,
) -> BoxFuture<'static, BackendResult<OperationOutcome>>
fn update_dialog_notifications( &self, request: UpdateDialogNotificationsRequest, ) -> BoxFuture<'static, BackendResult<OperationOutcome>>
Sets or clears a per-dialog notification override.
Source§fn typing(
&self,
request: TypingRequest,
) -> BoxFuture<'static, BackendResult<OperationOutcome>>
fn typing( &self, request: TypingRequest, ) -> BoxFuture<'static, BackendResult<OperationOutcome>>
Sends a typing state.
Source§fn receive_events(&self) -> BoxFuture<'static, BackendResult<Vec<ClientEvent>>>
fn receive_events(&self) -> BoxFuture<'static, BackendResult<Vec<ClientEvent>>>
Receives the next batch of server-pushed client events.
Source§fn receive_event_deliveries(
&self,
) -> BoxFuture<'static, BackendResult<Vec<ClientEventDelivery>>>
fn receive_event_deliveries( &self, ) -> BoxFuture<'static, BackendResult<Vec<ClientEventDelivery>>>
Receives the next event batch with durable delivery identifiers when
the backend supports crash-safe host acknowledgement.
Source§fn stage_client_events(
&self,
events: Vec<ClientEvent>,
) -> BoxFuture<'static, BackendResult<Vec<ClientEventDelivery>>>
fn stage_client_events( &self, events: Vec<ClientEvent>, ) -> BoxFuture<'static, BackendResult<Vec<ClientEventDelivery>>>
Stages locally produced operation/status events for lossless delivery.
Source§fn acknowledge_event_delivery(
&self,
delivery_id: u64,
) -> BoxFuture<'static, BackendResult<()>>
fn acknowledge_event_delivery( &self, delivery_id: u64, ) -> BoxFuture<'static, BackendResult<()>>
Acknowledges one durable event after the host consumer has committed it.
Source§fn release_event_delivery(&self, delivery_id: u64)
fn release_event_delivery(&self, delivery_id: u64)
Releases a process-local claim when a consumer drops a delivery without
acknowledging it. The durable store entry remains pending.
Source§fn reset_event_delivery_claims(&self) -> BoxFuture<'static, BackendResult<()>>
fn reset_event_delivery_claims(&self) -> BoxFuture<'static, BackendResult<()>>
Releases process-local delivery claims after the receiver task stops.
Durable events remain in the store and can be claimed after reconnect.
Source§impl Clone for SdkBackend
impl Clone for SdkBackend
Source§fn clone(&self) -> SdkBackend
fn clone(&self) -> SdkBackend
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl !RefUnwindSafe for SdkBackend
impl !UnwindSafe for SdkBackend
impl Freeze for SdkBackend
impl Send for SdkBackend
impl Sync for SdkBackend
impl Unpin for SdkBackend
impl UnsafeUnpin for SdkBackend
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
Mutably borrows from an owned value. Read more