pub struct ChatActions<'a> { /* private fields */ }Expand description
Access via client.chat_actions().
Implementations§
Source§impl<'a> ChatActions<'a>
impl<'a> ChatActions<'a>
pub async fn archive_chat( &self, jid: &Jid, message_range: Option<SyncActionMessageRange>, ) -> Result<(), AppStateError>
pub async fn unarchive_chat( &self, jid: &Jid, message_range: Option<SyncActionMessageRange>, ) -> Result<(), AppStateError>
pub async fn pin_chat(&self, jid: &Jid) -> Result<(), AppStateError>
pub async fn unpin_chat(&self, jid: &Jid) -> Result<(), AppStateError>
pub async fn mute_chat(&self, jid: &Jid) -> Result<(), AppStateError>
Sourcepub async fn mute_chat_until(
&self,
jid: &Jid,
mute_end_timestamp_ms: i64,
) -> Result<(), AppStateError>
pub async fn mute_chat_until( &self, jid: &Jid, mute_end_timestamp_ms: i64, ) -> Result<(), AppStateError>
Must be in the future. Use mute_chat for indefinite.
pub async fn unmute_chat(&self, jid: &Jid) -> Result<(), AppStateError>
Sourcepub async fn star_message(
&self,
chat_jid: &Jid,
participant_jid: Option<&Jid>,
message_id: &str,
from_me: bool,
) -> Result<(), AppStateError>
pub async fn star_message( &self, chat_jid: &Jid, participant_jid: Option<&Jid>, message_id: &str, from_me: bool, ) -> Result<(), AppStateError>
participant_jid: required for group messages from others, None otherwise.
pub async fn unstar_message( &self, chat_jid: &Jid, participant_jid: Option<&Jid>, message_id: &str, from_me: bool, ) -> Result<(), AppStateError>
Sourcepub async fn mark_chat_as_read(
&self,
jid: &Jid,
read: bool,
message_range: Option<SyncActionMessageRange>,
) -> Result<(), AppStateError>
pub async fn mark_chat_as_read( &self, jid: &Jid, read: bool, message_range: Option<SyncActionMessageRange>, ) -> Result<(), AppStateError>
Distinct from readMessages IQ receipts — this syncs state across linked devices.
pub async fn delete_chat( &self, jid: &Jid, delete_media: bool, message_range: Option<SyncActionMessageRange>, ) -> Result<(), AppStateError>
Sourcepub async fn clear_chat(
&self,
jid: &Jid,
delete_starred: bool,
delete_media: bool,
message_range: Option<SyncActionMessageRange>,
) -> Result<(), AppStateError>
pub async fn clear_chat( &self, jid: &Jid, delete_starred: bool, delete_media: bool, message_range: Option<SyncActionMessageRange>, ) -> Result<(), AppStateError>
Clears a chat’s messages while keeping the chat (WA Web’s clearChat).
delete_starred also removes starred messages; delete_media also removes
downloaded media. Both flags live only in the mutation index, not the proto.
Sourcepub async fn set_user_status_mute(
&self,
jid: &Jid,
muted: bool,
) -> Result<(), AppStateError>
pub async fn set_user_status_mute( &self, jid: &Jid, muted: bool, ) -> Result<(), AppStateError>
Mute or unmute a contact/group/newsletter’s status updates across devices
(WA Web’s userStatusMute). muted = true hides their status.
Sourcepub async fn delete_message_for_me(
&self,
chat_jid: &Jid,
participant_jid: Option<&Jid>,
message_id: &str,
from_me: bool,
delete_media: bool,
message_timestamp: Option<i64>,
) -> Result<(), AppStateError>
pub async fn delete_message_for_me( &self, chat_jid: &Jid, participant_jid: Option<&Jid>, message_id: &str, from_me: bool, delete_media: bool, message_timestamp: Option<i64>, ) -> Result<(), AppStateError>
Deletes locally only (not for everyone).
participant_jid: required for group messages from others, None otherwise.
Sourcepub async fn save_contact(
&self,
jid: &Jid,
full_name: Option<String>,
first_name: Option<String>,
save_on_primary_addressbook: bool,
) -> Result<(), AppStateError>
pub async fn save_contact( &self, jid: &Jid, full_name: Option<String>, first_name: Option<String>, save_on_primary_addressbook: bool, ) -> Result<(), AppStateError>
Save or rename a contact, syncing the name to the user’s other linked devices.
Writes a contact app-state SET mutation (WAWebContactSync.getContactSyncMutation)
to the critical_unblock_low collection with index ["contact", jid].
full_name/first_name are sent verbatim; an absent first_name is omitted
(WA Web derives no short-name default). save_on_primary_addressbook controls
whether it is saved to the phone’s address book.
The contact id must be a phone-number JID: WA Web refuses to send a contact mutation keyed by a LID (LID contacts use a separate path), so a LID is rejected.
Auto Trait Implementations§
impl<'a> !RefUnwindSafe for ChatActions<'a>
impl<'a> !UnwindSafe for ChatActions<'a>
impl<'a> Freeze for ChatActions<'a>
impl<'a> Send for ChatActions<'a>
impl<'a> Sync for ChatActions<'a>
impl<'a> Unpin for ChatActions<'a>
impl<'a> UnsafeUnpin for ChatActions<'a>
Blanket Implementations§
Source§impl<T> AggregateExpressionMethods for T
impl<T> AggregateExpressionMethods for T
Source§fn aggregate_distinct(self) -> Self::Outputwhere
Self: DistinctDsl,
fn aggregate_distinct(self) -> Self::Outputwhere
Self: DistinctDsl,
DISTINCT modifier for aggregate functions Read moreSource§fn aggregate_all(self) -> Self::Outputwhere
Self: AllDsl,
fn aggregate_all(self) -> Self::Outputwhere
Self: AllDsl,
ALL modifier for aggregate functions Read moreSource§fn aggregate_filter<P>(self, f: P) -> Self::Output
fn aggregate_filter<P>(self, f: P) -> Self::Output
Source§fn aggregate_order<O>(self, o: O) -> Self::Outputwhere
Self: OrderAggregateDsl<O>,
fn aggregate_order<O>(self, o: O) -> Self::Outputwhere
Self: OrderAggregateDsl<O>,
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
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSend for T
impl<T> DowncastSend for T
Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
impl<T> ErasedDestructor for Twhere
T: 'static,
Source§impl<T> IntoSql for T
impl<T> IntoSql for T
Source§fn into_sql<T>(self) -> Self::Expression
fn into_sql<T>(self) -> Self::Expression
self to an expression for Diesel’s query builder. Read moreSource§fn as_sql<'a, T>(&'a self) -> <&'a Self as AsExpression<T>>::Expression
fn as_sql<'a, T>(&'a self) -> <&'a Self as AsExpression<T>>::Expression
&self to an expression for Diesel’s query builder. Read more