Struct ruma_events::call::hangup::CallHangupEventContent
source · pub struct CallHangupEventContent {
pub call_id: OwnedVoipId,
pub party_id: Option<OwnedVoipId>,
pub version: VoipVersionId,
pub reason: Reason,
}
Expand description
The content of an m.call.hangup
event.
Sent by either party to signal their termination of the call.
In VoIP version 0, this can be sent either once the call has been established or before to abort the call.
If the call is using VoIP version 1, this should only be sent by the caller after sending the
invite or by the callee after answering the invite. To reject an invite, send an
m.call.reject
event.
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.
Must be the same as the one sent by the previous invite or answer from this session.
version: VoipVersionId
The version of the VoIP specification this messages adheres to.
reason: Reason
Error reason for the hangup.
Defaults to Reason::UserHangup
.
Implementations§
source§impl CallHangupEventContent
impl CallHangupEventContent
sourcepub fn new(call_id: OwnedVoipId, version: VoipVersionId) -> Self
pub fn new(call_id: OwnedVoipId, version: VoipVersionId) -> Self
Creates a new CallHangupEventContent
with the given call ID and VoIP version.
sourcepub fn version_0(call_id: OwnedVoipId) -> Self
pub fn version_0(call_id: OwnedVoipId) -> Self
Convenience method to create a VoIP version 0 CallHangupEventContent
with all the required
fields.
sourcepub fn version_1(
call_id: OwnedVoipId,
party_id: OwnedVoipId,
reason: Reason,
) -> Self
pub fn version_1( call_id: OwnedVoipId, party_id: OwnedVoipId, reason: Reason, ) -> Self
Convenience method to create a VoIP version 1 CallHangupEventContent
with all the required
fields.
Trait Implementations§
source§impl Clone for CallHangupEventContent
impl Clone for CallHangupEventContent
source§fn clone(&self) -> CallHangupEventContent
fn clone(&self) -> CallHangupEventContent
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for CallHangupEventContent
impl Debug for CallHangupEventContent
source§impl<'de> Deserialize<'de> for CallHangupEventContent
impl<'de> Deserialize<'de> for CallHangupEventContent
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 CallHangupEventContent
impl EventContent for CallHangupEventContent
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<CallHangupEventContent> for AnyMessageLikeEventContent
impl From<CallHangupEventContent> for AnyMessageLikeEventContent
source§fn from(c: CallHangupEventContent) -> Self
fn from(c: CallHangupEventContent) -> Self
source§impl RedactContent for CallHangupEventContent
impl RedactContent for CallHangupEventContent
source§type Redacted = RedactedCallHangupEventContent
type Redacted = RedactedCallHangupEventContent
source§fn redact(self, version: &RoomVersionId) -> RedactedCallHangupEventContent
fn redact(self, version: &RoomVersionId) -> RedactedCallHangupEventContent
self
into a redacted form (removing most or all fields) according to the spec. Read moresource§impl Serialize for CallHangupEventContent
impl Serialize for CallHangupEventContent
impl MessageLikeEventContent for CallHangupEventContent
Auto Trait Implementations§
impl Freeze for CallHangupEventContent
impl RefUnwindSafe for CallHangupEventContent
impl Send for CallHangupEventContent
impl Sync for CallHangupEventContent
impl Unpin for CallHangupEventContent
impl UnwindSafe for CallHangupEventContent
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
)