pub enum RtmpEndpointRequest {
ListenForPublishers {
port: u16,
rtmp_app: String,
rtmp_stream_key: StreamKeyRegistration,
message_channel: UnboundedSender<RtmpEndpointPublisherMessage>,
stream_id: Option<StreamId>,
ip_restrictions: IpRestriction,
use_tls: bool,
requires_registrant_approval: bool,
},
ListenForWatchers {
port: u16,
rtmp_app: String,
rtmp_stream_key: StreamKeyRegistration,
notification_channel: UnboundedSender<RtmpEndpointWatcherNotification>,
media_channel: UnboundedReceiver<RtmpEndpointMediaMessage>,
ip_restrictions: IpRestriction,
use_tls: bool,
requires_registrant_approval: bool,
},
RemoveRegistration {
registration_type: RegistrationType,
port: u16,
rtmp_app: String,
rtmp_stream_key: StreamKeyRegistration,
},
}
Expand description
Operations the rtmp server endpoint is being requested to make
Variants§
ListenForPublishers
Requests the RTMP server to allow publishers on the given port, app, and stream key combinations.
Fields
rtmp_stream_key: StreamKeyRegistration
What stream key publishers should be using
message_channel: UnboundedSender<RtmpEndpointPublisherMessage>
Channel that the rtmp server endpoint should respond with
stream_id: Option<StreamId>
If specified, new media streams being published from this registration will be given the stream id specified. If no id is given than one will be generated. This is useful to correlate media streams that may have been pulled, processed externally, then brought back in for later workflow steps (e.g. an external transcoding workflow).
ip_restrictions: IpRestriction
What IP restriction rules should be in place for this registration
ListenForWatchers
Requests the RTMP server to allow clients to receive video on the given port, app, and stream key combinations
Fields
rtmp_stream_key: StreamKeyRegistration
Stream keys clients can receive video on
notification_channel: UnboundedSender<RtmpEndpointWatcherNotification>
The channel that the rtmp server endpoint will send notifications to
media_channel: UnboundedReceiver<RtmpEndpointMediaMessage>
The channel that the registrant will send updated media data to the rtmp endpoint on
ip_restrictions: IpRestriction
What IP restriction rules should be in place for this registration
RemoveRegistration
Requests the specified registration should be removed
Fields
registration_type: RegistrationType
The type of registration that is being removed
rtmp_stream_key: StreamKeyRegistration
The stream key the registrant had registered for
Trait Implementations§
Auto Trait Implementations§
impl Freeze for RtmpEndpointRequest
impl RefUnwindSafe for RtmpEndpointRequest
impl Send for RtmpEndpointRequest
impl Sync for RtmpEndpointRequest
impl Unpin for RtmpEndpointRequest
impl UnwindSafe for RtmpEndpointRequest
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> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.