pub type PossiblyRedactedCallMemberEventContent = CallMemberEventContent;
Expand description
The PossiblyRedacted version of CallMemberEventContent
.
Since CallMemberEventContent
has the CallMemberEventContent::Empty
state it already is
compatible with the redacted version of the state event content.
Aliased Type§
enum PossiblyRedactedCallMemberEventContent {
LegacyContent(LegacyMembershipContent),
SessionContent(SessionMembershipData),
Empty(EmptyMembershipData),
}
Variants§
LegacyContent(LegacyMembershipContent)
The legacy format for m.call.member events. (An array of memberships. The devices of one user.)
SessionContent(SessionMembershipData)
Normal membership events. One event per membership. Multiple state keys will be used to describe multiple devices for one user.
Empty(EmptyMembershipData)
An empty content means this user has been in a rtc session but is not anymore.
Implementations
Source§impl CallMemberEventContent
impl CallMemberEventContent
Sourcepub fn new_legacy(memberships: Vec<LegacyMembershipData>) -> Self
pub fn new_legacy(memberships: Vec<LegacyMembershipData>) -> Self
Creates a new CallMemberEventContent
with LegacyMembershipData
.
Sourcepub fn new(
application: Application,
device_id: OwnedDeviceId,
focus_active: ActiveFocus,
foci_preferred: Vec<Focus>,
created_ts: Option<MilliSecondsSinceUnixEpoch>,
) -> Self
pub fn new( application: Application, device_id: OwnedDeviceId, focus_active: ActiveFocus, foci_preferred: Vec<Focus>, created_ts: Option<MilliSecondsSinceUnixEpoch>, ) -> Self
Creates a new CallMemberEventContent
with SessionMembershipData
.
Sourcepub fn new_empty(leave_reason: Option<LeaveReason>) -> Self
pub fn new_empty(leave_reason: Option<LeaveReason>) -> Self
Creates a new Empty CallMemberEventContent
representing a left membership.
Sourcepub fn active_memberships(
&self,
origin_server_ts: Option<MilliSecondsSinceUnixEpoch>,
) -> Vec<MembershipData<'_>>
pub fn active_memberships( &self, origin_server_ts: Option<MilliSecondsSinceUnixEpoch>, ) -> Vec<MembershipData<'_>>
All non expired memberships in this member event.
In most cases you want to use this method instead of the public memberships field. The memberships field will also include expired events.
This copies all the memberships and converts them
§Arguments
origin_server_ts
- optionally theorigin_server_ts
can be passed as a fallback in the Membership does not containLegacyMembershipData::created_ts
. (origin_server_ts
will be ignored ifLegacyMembershipData::created_ts
isSome
)
Sourcepub fn memberships(&self) -> Vec<MembershipData<'_>>
pub fn memberships(&self) -> Vec<MembershipData<'_>>
All the memberships for this event. Can only contain multiple elements in the case of legacy
m.call.member
state events.
Sourcepub fn set_created_ts_if_none(
&mut self,
origin_server_ts: MilliSecondsSinceUnixEpoch,
)
pub fn set_created_ts_if_none( &mut self, origin_server_ts: MilliSecondsSinceUnixEpoch, )
Set the created_ts
of each MembershipData::Legacy
in this event.
Each call member event contains the origin_server_ts
and content.create_ts
.
content.create_ts
is undefined for the initial event of a session (because the
origin_server_ts
is not known on the client).
In the rust sdk we want to copy over the origin_server_ts
of the event into the content.
(This allows to use MinimalStateEvents
and still be able to determine if a membership is
expired)
Trait Implementations§
Source§impl PossiblyRedactedStateEventContent for PossiblyRedactedCallMemberEventContent
impl PossiblyRedactedStateEventContent for PossiblyRedactedCallMemberEventContent
Source§type StateKey = CallMemberStateKey
type StateKey = CallMemberStateKey
state_key
field.Source§impl Clone for CallMemberEventContent
impl Clone for CallMemberEventContent
Source§fn clone(&self) -> CallMemberEventContent
fn clone(&self) -> CallMemberEventContent
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for CallMemberEventContent
impl Debug for CallMemberEventContent
Source§impl<'de> Deserialize<'de> for CallMemberEventContent
impl<'de> Deserialize<'de> for CallMemberEventContent
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl EventContent for CallMemberEventContent
impl EventContent for CallMemberEventContent
Source§type EventType = StateEventType
type EventType = StateEventType
Source§fn event_type(&self) -> Self::EventType
fn event_type(&self) -> Self::EventType
m.room.message
.Source§impl PartialEq for CallMemberEventContent
impl PartialEq for CallMemberEventContent
Source§impl RedactContent for CallMemberEventContent
impl RedactContent for CallMemberEventContent
Source§type Redacted = RedactedCallMemberEventContent
type Redacted = RedactedCallMemberEventContent
Source§impl Serialize for CallMemberEventContent
impl Serialize for CallMemberEventContent
Source§impl StateEventContent for CallMemberEventContent
impl StateEventContent for CallMemberEventContent
Source§type StateKey = CallMemberStateKey
type StateKey = CallMemberStateKey
state_key
field.Source§impl StaticStateEventContent for CallMemberEventContent
impl StaticStateEventContent for CallMemberEventContent
Source§type PossiblyRedacted = CallMemberEventContent
type PossiblyRedacted = CallMemberEventContent
Source§type Unsigned = StateUnsigned<<CallMemberEventContent as StaticStateEventContent>::PossiblyRedacted>
type Unsigned = StateUnsigned<<CallMemberEventContent as StaticStateEventContent>::PossiblyRedacted>
unsigned
field.