#[non_exhaustive]pub struct PresenceEventContent {
pub avatar_url: Option<OwnedMxcUri>,
pub currently_active: Option<bool>,
pub displayname: Option<String>,
pub last_active_ago: Option<UInt>,
pub presence: PresenceState,
pub status_msg: Option<String>,
}
Expand description
Informs the room of members presence.
This is the only type a PresenceEvent
can contain as its content
field.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.avatar_url: Option<OwnedMxcUri>
The current avatar URL for this user.
If you activate the compat-empty-string-null
feature, this field being an empty string in
JSON will result in None
here during deserialization.
currently_active: Option<bool>
Whether or not the user is currently active.
displayname: Option<String>
The current display name for this user.
last_active_ago: Option<UInt>
The last time since this user performed some action, in milliseconds.
presence: PresenceState
The presence state for this user.
status_msg: Option<String>
An optional description to accompany the presence.
Implementations§
Source§impl PresenceEventContent
impl PresenceEventContent
Sourcepub fn new(presence: PresenceState) -> PresenceEventContent
pub fn new(presence: PresenceState) -> PresenceEventContent
Creates a new PresenceEventContent
with the given state.
Trait Implementations§
Source§impl Clone for PresenceEventContent
impl Clone for PresenceEventContent
Source§fn clone(&self) -> PresenceEventContent
fn clone(&self) -> PresenceEventContent
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for PresenceEventContent
impl Debug for PresenceEventContent
Source§impl<'de> Deserialize<'de> for PresenceEventContent
impl<'de> Deserialize<'de> for PresenceEventContent
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<PresenceEventContent, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<PresenceEventContent, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl EventContent for PresenceEventContent
impl EventContent for PresenceEventContent
Source§fn event_type(&self) -> <PresenceEventContent as EventContent>::EventType
fn event_type(&self) -> <PresenceEventContent as EventContent>::EventType
Get the event’s type, like
m.room.message
.Source§impl Serialize for PresenceEventContent
impl Serialize for PresenceEventContent
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
Auto Trait Implementations§
impl Freeze for PresenceEventContent
impl RefUnwindSafe for PresenceEventContent
impl Send for PresenceEventContent
impl Sync for PresenceEventContent
impl Unpin for PresenceEventContent
impl UnwindSafe for PresenceEventContent
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> EventContentFromType for Twhere
T: EventContent + DeserializeOwned,
impl<T> EventContentFromType for Twhere
T: EventContent + DeserializeOwned,
Source§impl<T, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
impl<T, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
Source§impl<T> Identity for Twhere
T: ?Sized,
impl<T> Identity for Twhere
T: ?Sized,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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>
Converts
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>
Converts
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 more