[][src]Enum rml_rtmp::sessions::ServerSessionEvent

pub enum ServerSessionEvent {
    ClientChunkSizeChanged {
        new_chunk_size: u32,
    },
    ConnectionRequested {
        request_id: u32,
        app_name: String,
    },
    ReleaseStreamRequested {
        request_id: u32,
        app_name: String,
        stream_key: String,
    },
    PublishStreamRequested {
        request_id: u32,
        app_name: String,
        stream_key: String,
        mode: PublishMode,
    },
    PublishStreamFinished {
        app_name: String,
        stream_key: String,
    },
    StreamMetadataChanged {
        app_name: String,
        stream_key: String,
        metadata: StreamMetadata,
    },
    AudioDataReceived {
        app_name: String,
        stream_key: String,
        data: Bytes,
        timestamp: RtmpTimestamp,
    },
    VideoDataReceived {
        app_name: String,
        stream_key: String,
        data: Bytes,
        timestamp: RtmpTimestamp,
    },
    UnhandleableAmf0Command {
        command_name: String,
        transaction_id: f64,
        command_object: Amf0Value,
        additional_values: Vec<Amf0Value>,
    },
    PlayStreamRequested {
        request_id: u32,
        app_name: String,
        stream_key: String,
        start_at: PlayStartValue,
        duration: Option<u32>,
        reset: bool,
        stream_id: u32,
    },
    PlayStreamFinished {
        app_name: String,
        stream_key: String,
    },
    AcknowledgementReceived {
        bytes_received: u32,
    },
    PingResponseReceived {
        timestamp: RtmpTimestamp,
    },
}

An event that a server session can raise

Variants

ClientChunkSizeChanged

The client is changing the maximum size of the RTMP chunks they will be sending

Fields of ClientChunkSizeChanged

new_chunk_size: u32
ConnectionRequested

The client is requesting a connection on the specified RTMP application name

Fields of ConnectionRequested

request_id: u32app_name: String
ReleaseStreamRequested

The client is requesting a stream key be released for use.

Fields of ReleaseStreamRequested

request_id: u32app_name: Stringstream_key: String
PublishStreamRequested

The client is requesting the ability to publish on the specified stream key,

Fields of PublishStreamRequested

request_id: u32app_name: Stringstream_key: Stringmode: PublishMode
PublishStreamFinished

The client is finished publishing on the specified stream key

Fields of PublishStreamFinished

app_name: Stringstream_key: String
StreamMetadataChanged

The client is changing metadata properties of the stream being published

Fields of StreamMetadataChanged

app_name: Stringstream_key: Stringmetadata: StreamMetadata
AudioDataReceived

Audio data was received from the client

Fields of AudioDataReceived

app_name: Stringstream_key: Stringdata: Bytestimestamp: RtmpTimestamp
VideoDataReceived

Video data received from the client

Fields of VideoDataReceived

app_name: Stringstream_key: Stringdata: Bytestimestamp: RtmpTimestamp
UnhandleableAmf0Command

The client sent an Amf0 command that was not able to be handled

Fields of UnhandleableAmf0Command

command_name: Stringtransaction_id: f64command_object: Amf0Valueadditional_values: Vec<Amf0Value>
PlayStreamRequested

The client is requesting playback of the specified stream

Fields of PlayStreamRequested

request_id: u32app_name: Stringstream_key: Stringstart_at: PlayStartValueduration: Option<u32>reset: boolstream_id: u32
PlayStreamFinished

The client is finished with playback of the specified stream

Fields of PlayStreamFinished

app_name: Stringstream_key: String
AcknowledgementReceived

The client has sent an acknowledgement that they have received the specified number of bytes

Fields of AcknowledgementReceived

bytes_received: u32
PingResponseReceived

The client has responded to a ping request

Fields of PingResponseReceived

timestamp: RtmpTimestamp

Trait Implementations

impl PartialEq<ServerSessionEvent> for ServerSessionEvent
[src]

impl Clone for ServerSessionEvent
[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

Performs copy-assignment from source. Read more

impl Debug for ServerSessionEvent
[src]

Auto Trait Implementations

Blanket Implementations

impl<T> From for T
[src]

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

impl<T, U> TryFrom for T where
    T: From<U>, 
[src]

type Error = !

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Same for T

type Output = T

Should always be Self