Struct ntex_mqtt::v3::MqttServer [−][src]
pub struct MqttServer<Io, St, C: ServiceFactory, Cn: ServiceFactory, P: ServiceFactory> { /* fields omitted */ }
Expand description
Mqtt v3.1.1 Server
Implementations
impl<Io, St, C> MqttServer<Io, St, C, DefaultControlService<St, C::Error>, DefaultPublishService<St, C::Error>> where
St: 'static,
C: ServiceFactory<Config = (), Request = Handshake<Io>, Response = HandshakeAck<Io, St>> + 'static,
C::Error: Debug,
impl<Io, St, C> MqttServer<Io, St, C, DefaultControlService<St, C::Error>, DefaultPublishService<St, C::Error>> where
St: 'static,
C: ServiceFactory<Config = (), Request = Handshake<Io>, Response = HandshakeAck<Io, St>> + 'static,
C::Error: Debug,
impl<Io, St, C, Cn, P> MqttServer<Io, St, C, Cn, P> where
Io: AsyncRead + AsyncWrite + Unpin + 'static,
St: 'static,
C: ServiceFactory<Config = (), Request = Handshake<Io>, Response = HandshakeAck<Io, St>> + 'static,
Cn: ServiceFactory<Config = Session<St>, Request = ControlMessage, Response = ControlResult> + 'static,
P: ServiceFactory<Config = Session<St>, Request = Publish, Response = ()> + 'static,
C::Error: From<Cn::Error> + From<Cn::InitError> + From<P::Error> + From<P::InitError> + Debug,
impl<Io, St, C, Cn, P> MqttServer<Io, St, C, Cn, P> where
Io: AsyncRead + AsyncWrite + Unpin + 'static,
St: 'static,
C: ServiceFactory<Config = (), Request = Handshake<Io>, Response = HandshakeAck<Io, St>> + 'static,
Cn: ServiceFactory<Config = Session<St>, Request = ControlMessage, Response = ControlResult> + 'static,
P: ServiceFactory<Config = Session<St>, Request = Publish, Response = ()> + 'static,
C::Error: From<Cn::Error> + From<Cn::InitError> + From<P::Error> + From<P::InitError> + Debug,
Set handshake timeout.
Handshake includes connect
packet and response connect-ack
.
By default handshake timeuot is disabled.
Set server connection disconnect timeout.
Defines a timeout for disconnect connection. If a disconnect procedure does not complete within this time, the connection get dropped.
To disable timeout set value to 0.
By default disconnect timeout is set to 3 seconds.
Set max inbound frame size.
If max size is set to 0
, size is unlimited.
By default max size is set to 0
Number of in-flight concurrent messages.
By default in-flight is set to 16 messages
pub fn control<F, Srv>(self, service: F) -> MqttServer<Io, St, C, Srv, P> where
F: IntoServiceFactory<Srv>,
Srv: ServiceFactory<Config = Session<St>, Request = ControlMessage, Response = ControlResult> + 'static,
C::Error: From<Srv::Error> + From<Srv::InitError>,
pub fn control<F, Srv>(self, service: F) -> MqttServer<Io, St, C, Srv, P> where
F: IntoServiceFactory<Srv>,
Srv: ServiceFactory<Config = Session<St>, Request = ControlMessage, Response = ControlResult> + 'static,
C::Error: From<Srv::Error> + From<Srv::InitError>,
Service to handle control packets
All control packets are processed sequentially, max buffered control packets is 16.
Set service to handle publish packets and create mqtt server factory