Struct ruma_events::call::invite::CallInviteEventContent
source · pub struct CallInviteEventContent {
pub call_id: OwnedVoipId,
pub party_id: Option<OwnedVoipId>,
pub lifetime: UInt,
pub offer: SessionDescription,
pub version: VoipVersionId,
pub capabilities: CallCapabilities,
pub invitee: Option<OwnedUserId>,
pub sdp_stream_metadata: BTreeMap<String, StreamMetadata>,
}
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: OwnedVoipId
A unique identifier for the call.
party_id: Option<OwnedVoipId>
Required in VoIP version 1. A unique ID for this session for the duration of the call.
lifetime: UInt
The 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: SessionDescription
The session description object.
version: VoipVersionId
The version of the VoIP specification this messages adheres to.
capabilities: CallCapabilities
The VoIP capabilities of the client.
invitee: Option<OwnedUserId>
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.
sdp_stream_metadata: BTreeMap<String, StreamMetadata>
Added in VoIP version 1. Metadata describing the streams that will be sent.
This is a map of stream ID to metadata about the stream.
Implementations§
source§impl CallInviteEventContent
impl CallInviteEventContent
sourcepub fn new(
call_id: OwnedVoipId,
lifetime: UInt,
offer: SessionDescription,
version: VoipVersionId,
) -> Self
pub fn new( call_id: OwnedVoipId, lifetime: UInt, offer: SessionDescription, 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: SessionDescription,
) -> Self
pub fn version_0( call_id: OwnedVoipId, lifetime: UInt, offer: SessionDescription, ) -> 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: SessionDescription,
) -> Self
pub fn version_1( call_id: OwnedVoipId, party_id: OwnedVoipId, lifetime: UInt, offer: SessionDescription, ) -> Self
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
source§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
source§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 moresource§impl Serialize for CallInviteEventContent
impl Serialize for CallInviteEventContent
impl MessageLikeEventContent for CallInviteEventContent
Auto Trait Implementations§
impl Freeze for CallInviteEventContent
impl RefUnwindSafe for CallInviteEventContent
impl Send for CallInviteEventContent
impl Sync for CallInviteEventContent
impl Unpin for CallInviteEventContent
impl UnwindSafe for CallInviteEventContent
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
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)