#[non_exhaustive]pub struct CallCandidatesEventContent {
pub call_id: OwnedVoipId,
pub party_id: Option<OwnedVoipId>,
pub candidates: Vec<Candidate>,
pub version: VoipVersionId,
}
Expand description
The content of an m.call.candidates
event.
This event is sent by callers after sending an invite and by the callee after answering. Its purpose is to give the other party additional ICE candidates to try using to communicate.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.call_id: OwnedVoipId
A unique identifier for the call.
party_id: Option<OwnedVoipId>
Required in VoIP version 1. The unique ID for this session for the duration of the call.
Must be the same as the one sent by the previous invite or answer from this session.
candidates: Vec<Candidate>
A list of candidates.
In VoIP version 1, this list should end with a Candidate
with an empty candidate
field
when no more candidates will be sent.
version: VoipVersionId
The version of the VoIP specification this messages adheres to.
Implementations§
Source§impl CallCandidatesEventContent
impl CallCandidatesEventContent
Sourcepub fn new(
call_id: OwnedVoipId,
candidates: Vec<Candidate>,
version: VoipVersionId,
) -> CallCandidatesEventContent
pub fn new( call_id: OwnedVoipId, candidates: Vec<Candidate>, version: VoipVersionId, ) -> CallCandidatesEventContent
Creates a new CallCandidatesEventContent
with the given call id, candidate list and VoIP
version.
Sourcepub fn version_0(
call_id: OwnedVoipId,
candidates: Vec<Candidate>,
) -> CallCandidatesEventContent
pub fn version_0( call_id: OwnedVoipId, candidates: Vec<Candidate>, ) -> CallCandidatesEventContent
Convenience method to create a VoIP version 0 CallCandidatesEventContent
with all the
required fields.
Sourcepub fn version_1(
call_id: OwnedVoipId,
party_id: OwnedVoipId,
candidates: Vec<Candidate>,
) -> CallCandidatesEventContent
pub fn version_1( call_id: OwnedVoipId, party_id: OwnedVoipId, candidates: Vec<Candidate>, ) -> CallCandidatesEventContent
Convenience method to create a VoIP version 1 CallCandidatesEventContent
with all the
required fields.
Trait Implementations§
Source§impl Clone for CallCandidatesEventContent
impl Clone for CallCandidatesEventContent
Source§fn clone(&self) -> CallCandidatesEventContent
fn clone(&self) -> CallCandidatesEventContent
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for CallCandidatesEventContent
impl Debug for CallCandidatesEventContent
Source§impl<'de> Deserialize<'de> for CallCandidatesEventContent
impl<'de> Deserialize<'de> for CallCandidatesEventContent
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<CallCandidatesEventContent, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<CallCandidatesEventContent, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Source§impl EventContent for CallCandidatesEventContent
impl EventContent for CallCandidatesEventContent
Source§type EventType = MessageLikeEventType
type EventType = MessageLikeEventType
Source§fn event_type(&self) -> <CallCandidatesEventContent as EventContent>::EventType
fn event_type(&self) -> <CallCandidatesEventContent as EventContent>::EventType
m.room.message
.Source§impl From<CallCandidatesEventContent> for AnyMessageLikeEventContent
impl From<CallCandidatesEventContent> for AnyMessageLikeEventContent
Source§fn from(c: CallCandidatesEventContent) -> AnyMessageLikeEventContent
fn from(c: CallCandidatesEventContent) -> AnyMessageLikeEventContent
Source§impl RedactContent for CallCandidatesEventContent
impl RedactContent for CallCandidatesEventContent
Source§type Redacted = RedactedCallCandidatesEventContent
type Redacted = RedactedCallCandidatesEventContent
Source§fn redact(self, version: &RoomVersionId) -> RedactedCallCandidatesEventContent
fn redact(self, version: &RoomVersionId) -> RedactedCallCandidatesEventContent
self
into a redacted form (removing most or all fields) according to the spec. Read moreSource§impl Serialize for CallCandidatesEventContent
impl Serialize for CallCandidatesEventContent
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,
impl MessageLikeEventContent for CallCandidatesEventContent
Auto Trait Implementations§
impl Freeze for CallCandidatesEventContent
impl RefUnwindSafe for CallCandidatesEventContent
impl Send for CallCandidatesEventContent
impl Sync for CallCandidatesEventContent
impl Unpin for CallCandidatesEventContent
impl UnwindSafe for CallCandidatesEventContent
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§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>
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>
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