pub struct InlineClient { /* private fields */ }Expand description
Cheap cloneable handle for apps, bridges, agents, and tests.
Implementations§
Source§impl InlineClient
impl InlineClient
Sourcepub fn builder() -> InlineClientBuilder
pub fn builder() -> InlineClientBuilder
Creates a default client runtime builder.
Sourcepub fn status(&self) -> ClientStatus
pub fn status(&self) -> ClientStatus
Returns the latest observed client status.
Sourcepub fn status_snapshot(&self) -> ClientStatusSnapshot
pub fn status_snapshot(&self) -> ClientStatusSnapshot
Returns the latest observed status snapshot.
Sourcepub fn subscribe(&self) -> Receiver<ClientEvent>
pub fn subscribe(&self) -> Receiver<ClientEvent>
Subscribes to committed client events.
Sourcepub fn take_lossless_events(&self) -> Option<LosslessEventReceiver>
pub fn take_lossless_events(&self) -> Option<LosslessEventReceiver>
Claims the single bounded lossless event stream.
Once claimed, the runner applies backpressure before accepting more
work rather than dropping lossless events. Broadcast subscribers remain
independent and may still observe lag errors. Returns None after the
lossless stream has already been claimed.
Sourcepub async fn auth_start(
&self,
request: AuthStartRequest,
) -> Result<AuthStartResult, ClientRequestError>
pub async fn auth_start( &self, request: AuthStartRequest, ) -> Result<AuthStartResult, ClientRequestError>
Sends an Inline login code.
Sourcepub async fn auth_verify(
&self,
request: AuthVerifyRequest,
) -> Result<AuthVerifyResult, ClientRequestError>
pub async fn auth_verify( &self, request: AuthVerifyRequest, ) -> Result<AuthVerifyResult, ClientRequestError>
Verifies an Inline login code and persists the resulting session.
Sourcepub async fn resume_session(
&self,
) -> Result<ClientStatusSnapshot, ClientRequestError>
pub async fn resume_session( &self, ) -> Result<ClientStatusSnapshot, ClientRequestError>
Resumes a previously stored session, if available.
Sourcepub async fn connect(
&self,
request: ConnectRequest,
) -> Result<ClientStatusSnapshot, ClientRequestError>
pub async fn connect( &self, request: ConnectRequest, ) -> Result<ClientStatusSnapshot, ClientRequestError>
Connects or reconnects the client.
Sourcepub async fn logout(&self) -> Result<(), ClientRequestError>
pub async fn logout(&self) -> Result<(), ClientRequestError>
Logs out the current account.
Sourcepub async fn dialogs(
&self,
request: DialogsRequest,
) -> Result<DialogsPage, ClientRequestError>
pub async fn dialogs( &self, request: DialogsRequest, ) -> Result<DialogsPage, ClientRequestError>
Lists dialogs.
Sourcepub async fn cached_dialogs(
&self,
request: DialogsRequest,
) -> Result<DialogsPage, ClientRequestError>
pub async fn cached_dialogs( &self, request: DialogsRequest, ) -> Result<DialogsPage, ClientRequestError>
Lists only durable cached dialogs without making a network request.
Sourcepub async fn account_state(
&self,
) -> Result<AccountStateSnapshot, ClientRequestError>
pub async fn account_state( &self, ) -> Result<AccountStateSnapshot, ClientRequestError>
Loads account-level durable state for recovery after a consumer event stream retention gap.
Sourcepub async fn chat_state(
&self,
chat_id: InlineId,
) -> Result<ChatStateSnapshot, ClientRequestError>
pub async fn chat_state( &self, chat_id: InlineId, ) -> Result<ChatStateSnapshot, ClientRequestError>
Loads durable state for one chat. Current messages remain paged through
Self::history so large accounts do not require an unbounded snapshot.
Sourcepub async fn history(
&self,
request: HistoryRequest,
) -> Result<HistoryPage, ClientRequestError>
pub async fn history( &self, request: HistoryRequest, ) -> Result<HistoryPage, ClientRequestError>
Fetches chat history.
Sourcepub async fn cached_history(
&self,
request: HistoryRequest,
) -> Result<HistoryPage, ClientRequestError>
pub async fn cached_history( &self, request: HistoryRequest, ) -> Result<HistoryPage, ClientRequestError>
Fetches only durable locally cached history without a network request.
Sourcepub async fn chat_participants(
&self,
request: ChatParticipantsRequest,
) -> Result<ChatParticipantsPage, ClientRequestError>
pub async fn chat_participants( &self, request: ChatParticipantsRequest, ) -> Result<ChatParticipantsPage, ClientRequestError>
Fetches chat participants.
Sourcepub async fn add_chat_participant(
&self,
request: AddChatParticipantRequest,
) -> Result<(), ClientRequestError>
pub async fn add_chat_participant( &self, request: AddChatParticipantRequest, ) -> Result<(), ClientRequestError>
Adds a user to an Inline chat.
Sourcepub async fn remove_chat_participant(
&self,
request: RemoveChatParticipantRequest,
) -> Result<(), ClientRequestError>
pub async fn remove_chat_participant( &self, request: RemoveChatParticipantRequest, ) -> Result<(), ClientRequestError>
Removes a user from an Inline chat.
Sourcepub async fn update_chat_info(
&self,
request: UpdateChatInfoRequest,
) -> Result<(), ClientRequestError>
pub async fn update_chat_info( &self, request: UpdateChatInfoRequest, ) -> Result<(), ClientRequestError>
Updates mutable Inline chat metadata.
Sourcepub async fn delete_chat(
&self,
request: DeleteChatRequest,
) -> Result<(), ClientRequestError>
pub async fn delete_chat( &self, request: DeleteChatRequest, ) -> Result<(), ClientRequestError>
Deletes an Inline chat when permitted by the service.
Sourcepub async fn create_dm(
&self,
request: CreateDmRequest,
) -> Result<CreatedChat, ClientRequestError>
pub async fn create_dm( &self, request: CreateDmRequest, ) -> Result<CreatedChat, ClientRequestError>
Creates or opens a direct message chat.
Sourcepub async fn create_thread(
&self,
request: CreateThreadRequest,
) -> Result<CreatedChat, ClientRequestError>
pub async fn create_thread( &self, request: CreateThreadRequest, ) -> Result<CreatedChat, ClientRequestError>
Creates a regular Inline thread chat.
Sourcepub async fn create_reply_thread(
&self,
request: CreateReplyThreadRequest,
) -> Result<CreatedChat, ClientRequestError>
pub async fn create_reply_thread( &self, request: CreateReplyThreadRequest, ) -> Result<CreatedChat, ClientRequestError>
Creates a child/reply Inline thread chat.
Sourcepub async fn send_text(
&self,
request: SendTextRequest,
) -> Result<MessageMutation, ClientRequestError>
pub async fn send_text( &self, request: SendTextRequest, ) -> Result<MessageMutation, ClientRequestError>
Sends a text message.
Sourcepub async fn send_media(
&self,
request: UploadRequest,
bytes: Vec<u8>,
) -> Result<MessageMutation, ClientRequestError>
pub async fn send_media( &self, request: UploadRequest, bytes: Vec<u8>, ) -> Result<MessageMutation, ClientRequestError>
Uploads and sends a media message.
Sourcepub async fn edit_message(
&self,
request: EditMessageRequest,
) -> Result<(), ClientRequestError>
pub async fn edit_message( &self, request: EditMessageRequest, ) -> Result<(), ClientRequestError>
Edits a text message.
Sourcepub async fn delete_message(
&self,
request: DeleteMessageRequest,
) -> Result<(), ClientRequestError>
pub async fn delete_message( &self, request: DeleteMessageRequest, ) -> Result<(), ClientRequestError>
Deletes or unsends a message.
Sourcepub async fn react(
&self,
request: ReactRequest,
) -> Result<(), ClientRequestError>
pub async fn react( &self, request: ReactRequest, ) -> Result<(), ClientRequestError>
Adds or removes a reaction.
Sourcepub async fn read(&self, request: ReadRequest) -> Result<(), ClientRequestError>
pub async fn read(&self, request: ReadRequest) -> Result<(), ClientRequestError>
Marks messages read.
Sourcepub async fn set_marked_unread(
&self,
request: SetMarkedUnreadRequest,
) -> Result<(), ClientRequestError>
pub async fn set_marked_unread( &self, request: SetMarkedUnreadRequest, ) -> Result<(), ClientRequestError>
Sets the explicit marked-unread state for a chat.
Sourcepub async fn update_dialog_notifications(
&self,
request: UpdateDialogNotificationsRequest,
) -> Result<(), ClientRequestError>
pub async fn update_dialog_notifications( &self, request: UpdateDialogNotificationsRequest, ) -> Result<(), ClientRequestError>
Sets or clears a per-dialog notification override.
Sourcepub async fn typing(
&self,
request: TypingRequest,
) -> Result<(), ClientRequestError>
pub async fn typing( &self, request: TypingRequest, ) -> Result<(), ClientRequestError>
Sends a typing state.
Sourcepub async fn set_status(
&self,
status: ClientStatus,
failure: Option<ClientFailure>,
) -> Result<(), ClientCommandError>
pub async fn set_status( &self, status: ClientStatus, failure: Option<ClientFailure>, ) -> Result<(), ClientCommandError>
Updates status through the runner.
This is public so early hosts and tests can exercise the event/status pipeline before the real transport manager is wired in. Future transport code should call the same internal command path.
Sourcepub async fn shutdown(&self) -> Result<(), ClientCommandError>
pub async fn shutdown(&self) -> Result<(), ClientCommandError>
Requests runner shutdown.
Trait Implementations§
Source§impl Clone for InlineClient
impl Clone for InlineClient
Source§fn clone(&self) -> InlineClient
fn clone(&self) -> InlineClient
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more