Struct ruma_common::events::call::invite::CallInviteEventContent
source · pub struct CallInviteEventContent {
pub call_id: OwnedVoipId,
pub party_id: Option<OwnedVoipId>,
pub lifetime: UInt,
pub offer: OfferSessionDescription,
pub version: VoipVersionId,
pub capabilities: CallCapabilities,
pub invitee: Option<OwnedUserId>,
}events only.Expand description
The content of an m.call.invite event.
This event is sent by the caller when they wish to establish a call.
Fields§
§call_id: OwnedVoipIdA unique identifier for the call.
party_id: Option<OwnedVoipId>unstable-msc2746 only.Required in VoIP version 1. A unique ID for this session for the duration of the call.
lifetime: UIntThe time in milliseconds that the invite is valid for.
Once the invite age exceeds this value, clients should discard it. They should also no longer show the call as awaiting an answer in the UI.
offer: OfferSessionDescriptionThe session description object.
version: VoipVersionIdThe version of the VoIP specification this messages adheres to.
capabilities: CallCapabilitiesunstable-msc2746 only.Added in VoIP version 1. The VoIP capabilities of the client.
invitee: Option<OwnedUserId>unstable-msc2746 only.Added in VoIP version 1. The intended target of the invite, if any.
If this is None, the invite is intended for any member of the room, except the sender.
The invite should be ignored if the invitee is set and doesn’t match the user’s ID.
Implementations§
source§impl CallInviteEventContent
impl CallInviteEventContent
sourcepub fn new(
call_id: OwnedVoipId,
lifetime: UInt,
offer: OfferSessionDescription,
version: VoipVersionId
) -> Self
pub fn new(
call_id: OwnedVoipId,
lifetime: UInt,
offer: OfferSessionDescription,
version: VoipVersionId
) -> Self
Creates a new CallInviteEventContent with the given call ID, lifetime, offer and VoIP
version.
sourcepub fn version_0(
call_id: OwnedVoipId,
lifetime: UInt,
offer: OfferSessionDescription
) -> Self
pub fn version_0(
call_id: OwnedVoipId,
lifetime: UInt,
offer: OfferSessionDescription
) -> Self
Convenience method to create a version 0 CallInviteEventContent with all the required
fields.
sourcepub fn version_1(
call_id: OwnedVoipId,
party_id: OwnedVoipId,
lifetime: UInt,
offer: OfferSessionDescription,
capabilities: CallCapabilities
) -> Self
Available on crate feature unstable-msc2746 only.
pub fn version_1(
call_id: OwnedVoipId,
party_id: OwnedVoipId,
lifetime: UInt,
offer: OfferSessionDescription,
capabilities: CallCapabilities
) -> Self
unstable-msc2746 only.Convenience method to create a version 1 CallInviteEventContent with all the required
fields.
Trait Implementations§
source§impl Clone for CallInviteEventContent
impl Clone for CallInviteEventContent
source§fn clone(&self) -> CallInviteEventContent
fn clone(&self) -> CallInviteEventContent
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moresource§impl Debug for CallInviteEventContent
impl Debug for CallInviteEventContent
source§impl<'de> Deserialize<'de> for CallInviteEventContent
impl<'de> Deserialize<'de> for CallInviteEventContent
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 CallInviteEventContent
impl EventContent for CallInviteEventContent
§type EventType = MessageLikeEventType
type EventType = MessageLikeEventType
source§fn event_type(&self) -> Self::EventType
fn event_type(&self) -> Self::EventType
m.room.message.source§impl From<CallInviteEventContent> for AnyMessageLikeEventContent
impl From<CallInviteEventContent> for AnyMessageLikeEventContent
source§fn from(c: CallInviteEventContent) -> Self
fn from(c: CallInviteEventContent) -> Self
source§impl RedactContent for CallInviteEventContent
impl RedactContent for CallInviteEventContent
§type Redacted = RedactedCallInviteEventContent
type Redacted = RedactedCallInviteEventContent
source§fn redact(self, version: &RoomVersionId) -> RedactedCallInviteEventContent
fn redact(self, version: &RoomVersionId) -> RedactedCallInviteEventContent
self into a redacted form (removing most or all fields) according to the spec. Read more