pub trait ClientBackend:
Debug
+ Send
+ Sync
+ 'static {
Show 18 methods
// Required methods
fn auth_start(
&self,
request: AuthStartRequest,
) -> BoxFuture<'static, BackendResult<AuthStartResult>>;
fn auth_verify(
&self,
request: AuthVerifyRequest,
) -> BoxFuture<'static, BackendResult<AuthVerifyResult>>;
fn resume_session(
&self,
) -> BoxFuture<'static, BackendResult<ClientStatusSnapshot>>;
fn connect(
&self,
request: ConnectRequest,
) -> BoxFuture<'static, BackendResult<ClientStatusSnapshot>>;
fn logout(&self) -> BoxFuture<'static, BackendResult<()>>;
fn dialogs(
&self,
request: DialogsRequest,
) -> BoxFuture<'static, BackendResult<DialogsPage>>;
fn history(
&self,
request: HistoryRequest,
) -> BoxFuture<'static, BackendResult<HistoryPage>>;
fn chat_participants(
&self,
request: ChatParticipantsRequest,
) -> BoxFuture<'static, BackendResult<ChatParticipantsPage>>;
fn create_dm(
&self,
request: CreateDmRequest,
) -> BoxFuture<'static, BackendResult<CreatedChat>>;
fn create_thread(
&self,
request: CreateThreadRequest,
) -> BoxFuture<'static, BackendResult<CreatedChat>>;
fn create_reply_thread(
&self,
request: CreateReplyThreadRequest,
) -> BoxFuture<'static, BackendResult<CreatedChat>>;
fn send_text(
&self,
request: SendTextRequest,
) -> BoxFuture<'static, BackendResult<SendTextOutcome>>;
fn send_media(
&self,
request: UploadRequest,
bytes: Vec<u8>,
) -> BoxFuture<'static, BackendResult<SendTextOutcome>>;
fn edit_message(
&self,
request: EditMessageRequest,
) -> BoxFuture<'static, BackendResult<OperationOutcome>>;
fn delete_message(
&self,
request: DeleteMessageRequest,
) -> BoxFuture<'static, BackendResult<OperationOutcome>>;
fn react(
&self,
request: ReactRequest,
) -> BoxFuture<'static, BackendResult<OperationOutcome>>;
fn read(
&self,
request: ReadRequest,
) -> BoxFuture<'static, BackendResult<OperationOutcome>>;
fn typing(
&self,
request: TypingRequest,
) -> BoxFuture<'static, BackendResult<OperationOutcome>>;
}Expand description
Async backend boundary for the client runner.
Required Methods§
Sourcefn auth_start(
&self,
request: AuthStartRequest,
) -> BoxFuture<'static, BackendResult<AuthStartResult>>
fn auth_start( &self, request: AuthStartRequest, ) -> BoxFuture<'static, BackendResult<AuthStartResult>>
Sends an Inline login code.
Sourcefn 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.
Sourcefn resume_session(
&self,
) -> BoxFuture<'static, BackendResult<ClientStatusSnapshot>>
fn resume_session( &self, ) -> BoxFuture<'static, BackendResult<ClientStatusSnapshot>>
Resumes a previously stored session, if available.
Sourcefn connect(
&self,
request: ConnectRequest,
) -> BoxFuture<'static, BackendResult<ClientStatusSnapshot>>
fn connect( &self, request: ConnectRequest, ) -> BoxFuture<'static, BackendResult<ClientStatusSnapshot>>
Connects or reconnects the client.
Sourcefn logout(&self) -> BoxFuture<'static, BackendResult<()>>
fn logout(&self) -> BoxFuture<'static, BackendResult<()>>
Logs out the current account.
Sourcefn dialogs(
&self,
request: DialogsRequest,
) -> BoxFuture<'static, BackendResult<DialogsPage>>
fn dialogs( &self, request: DialogsRequest, ) -> BoxFuture<'static, BackendResult<DialogsPage>>
Lists dialogs.
Sourcefn history(
&self,
request: HistoryRequest,
) -> BoxFuture<'static, BackendResult<HistoryPage>>
fn history( &self, request: HistoryRequest, ) -> BoxFuture<'static, BackendResult<HistoryPage>>
Fetches chat history.
Sourcefn chat_participants(
&self,
request: ChatParticipantsRequest,
) -> BoxFuture<'static, BackendResult<ChatParticipantsPage>>
fn chat_participants( &self, request: ChatParticipantsRequest, ) -> BoxFuture<'static, BackendResult<ChatParticipantsPage>>
Fetches chat participants.
Sourcefn 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.
Sourcefn 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.
Sourcefn 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.
Sourcefn send_text(
&self,
request: SendTextRequest,
) -> BoxFuture<'static, BackendResult<SendTextOutcome>>
fn send_text( &self, request: SendTextRequest, ) -> BoxFuture<'static, BackendResult<SendTextOutcome>>
Sends a text message.
Sourcefn 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.
Sourcefn edit_message(
&self,
request: EditMessageRequest,
) -> BoxFuture<'static, BackendResult<OperationOutcome>>
fn edit_message( &self, request: EditMessageRequest, ) -> BoxFuture<'static, BackendResult<OperationOutcome>>
Edits a text message.
Sourcefn delete_message(
&self,
request: DeleteMessageRequest,
) -> BoxFuture<'static, BackendResult<OperationOutcome>>
fn delete_message( &self, request: DeleteMessageRequest, ) -> BoxFuture<'static, BackendResult<OperationOutcome>>
Deletes or unsends a message.
Sourcefn react(
&self,
request: ReactRequest,
) -> BoxFuture<'static, BackendResult<OperationOutcome>>
fn react( &self, request: ReactRequest, ) -> BoxFuture<'static, BackendResult<OperationOutcome>>
Adds or removes a reaction.
Sourcefn read(
&self,
request: ReadRequest,
) -> BoxFuture<'static, BackendResult<OperationOutcome>>
fn read( &self, request: ReadRequest, ) -> BoxFuture<'static, BackendResult<OperationOutcome>>
Marks messages read.
Sourcefn typing(
&self,
request: TypingRequest,
) -> BoxFuture<'static, BackendResult<OperationOutcome>>
fn typing( &self, request: TypingRequest, ) -> BoxFuture<'static, BackendResult<OperationOutcome>>
Sends a typing state.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".