pub enum ConnectionEvent {
StateChanged {
peer_id: ActrId,
session_id: u64,
state: ConnectionState,
},
DataChannelClosed {
peer_id: ActrId,
session_id: u64,
payload_type: PayloadType,
},
DataChannelOpened {
peer_id: ActrId,
session_id: u64,
payload_type: PayloadType,
},
ConnectionClosed {
peer_id: ActrId,
session_id: u64,
},
IceRestartStarted {
peer_id: ActrId,
session_id: u64,
},
IceRestartCompleted {
peer_id: ActrId,
session_id: u64,
success: bool,
},
NewOfferReceived {
peer_id: ActrId,
sdp: String,
},
NewRoleAssignment {
peer_id: ActrId,
is_offerer: bool,
},
}Expand description
Connection events broadcast to all subscribers
Variants§
StateChanged
Connection state changed
DataChannelClosed
DataChannel closed for specific payload type
DataChannelOpened
DataChannel opened for specific payload type This event is fired when a DataChannel transitions to Open state, indicating SCTP layer is ready for data transmission
ConnectionClosed
Connection fully closed (triggers full cleanup)
IceRestartStarted
ICE restart started
IceRestartCompleted
ICE restart completed
NewOfferReceived
New offer received (triggers cleanup of existing connection)
NewRoleAssignment
New role assignment (triggers cleanup if role changed)
Implementations§
Source§impl ConnectionEvent
impl ConnectionEvent
Sourcepub fn session_id(&self) -> Option<u64>
pub fn session_id(&self) -> Option<u64>
Get the session_id from the event (None for events without session)
Sourcepub fn should_trigger_cleanup(&self) -> bool
pub fn should_trigger_cleanup(&self) -> bool
Check if this event should trigger full resource cleanup
Sourcepub fn is_recoverable_state(&self) -> bool
pub fn is_recoverable_state(&self) -> bool
Check if this event indicates a recoverable state (ICE restart candidate)
Trait Implementations§
Source§impl Clone for ConnectionEvent
impl Clone for ConnectionEvent
Source§fn clone(&self) -> ConnectionEvent
fn clone(&self) -> ConnectionEvent
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for ConnectionEvent
impl RefUnwindSafe for ConnectionEvent
impl Send for ConnectionEvent
impl Sync for ConnectionEvent
impl Unpin for ConnectionEvent
impl UnsafeUnpin for ConnectionEvent
impl UnwindSafe for ConnectionEvent
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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> ⓘ
Converts
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> ⓘ
Converts
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