#[non_exhaustive]pub enum ClientEvent {
Show 13 variants
SetupComplete {
negotiated_version: u64,
},
ControlMessage {
direction: Direction,
message: AnyControlMessage,
raw: Option<Vec<u8>>,
},
StreamOpened {
direction: Direction,
stream_kind: StreamKind,
stream_id: u64,
},
DataStreamHeader {
stream_id: u64,
direction: Direction,
header: AnySubgroupHeader,
},
FetchStreamHeader {
stream_id: u64,
direction: Direction,
header: AnyFetchHeader,
},
SubgroupObjectReceived {
stream_id: u64,
direction: Direction,
object: SubgroupObject,
},
FetchObjectReceived {
stream_id: u64,
direction: Direction,
object: FetchObject,
},
DatagramReceived {
direction: Direction,
header: AnyDatagramHeader,
payload_len: usize,
},
StreamClosed {
stream_id: u64,
error_code: u64,
},
PublishReceived {
publish: Publish,
},
Draining {
new_session_uri: Vec<u8>,
},
Closed {
code: u32,
reason: Vec<u8>,
},
Error {
error: String,
},
}Expand description
Events emitted by a draft-12 MoQT connection.
This enum is #[non_exhaustive] — new variants may be added in minor
releases. Downstream match arms should include a wildcard _ => branch.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
SetupComplete
MoQT setup handshake completed.
ControlMessage
A control message was sent or received.
Fields
message: AnyControlMessageThe decoded control message.
StreamOpened
A data stream was opened.
Fields
stream_kind: StreamKindThe type of data stream.
DataStreamHeader
A subgroup stream header was decoded after the stream opened.
Fields
header: AnySubgroupHeaderThe parsed subgroup header.
FetchStreamHeader
A fetch response stream header was decoded.
Fields
header: AnyFetchHeaderThe parsed fetch header.
SubgroupObjectReceived
A subgroup object (header + payload) was decoded on a subgroup stream.
Fields
object: SubgroupObjectThe decoded subgroup object.
FetchObjectReceived
A fetch object (self-contained) was decoded on a fetch stream.
Fields
object: FetchObjectThe decoded fetch object.
DatagramReceived
A datagram was sent or received.
Fields
header: AnyDatagramHeaderThe parsed datagram header.
StreamClosed
A data stream was closed.
Fields
PublishReceived
A PUBLISH message (draft-12) was received — a publisher is offering
a track to this endpoint as a subscriber. The application should
respond via the endpoint’s send_publish_ok / send_publish_error
APIs.
Fields
publish: PublishThe decoded PUBLISH message.
Draining
Session entered draining state (GOAWAY received).
Closed
Connection was closed.
Error
A transport or protocol error occurred.
Trait Implementations§
Source§impl Clone for ClientEvent
impl Clone for ClientEvent
Source§fn clone(&self) -> ClientEvent
fn clone(&self) -> ClientEvent
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more