pub struct MqttConfig {Show 14 fields
pub url: String,
pub topic: Option<String>,
pub username: Option<String>,
pub password: Option<String>,
pub tls: TlsConfig,
pub client_id: Option<String>,
pub queue_capacity: Option<usize>,
pub max_inflight: Option<u16>,
pub qos: Option<u8>,
pub clean_session: bool,
pub keep_alive_seconds: Option<u64>,
pub protocol: MqttProtocol,
pub session_expiry_interval: Option<u32>,
pub delayed_ack: bool,
}Expand description
General MQTT connection configuration.
Fields§
§url: StringMQTT broker URL (e.g., “tcp://localhost:1883”). Does not support multiple hosts.
topic: Option<String>The MQTT topic.
username: Option<String>Optional username for authentication.
password: Option<String>Optional password for authentication.
tls: TlsConfigTLS configuration.
client_id: Option<String>Optional client ID. If not provided, one is generated or derived from route name.
queue_capacity: Option<usize>Capacity of the internal channel for incoming messages. Defaults to 100.
max_inflight: Option<u16>Maximum number of inflight messages.
qos: Option<u8>Quality of Service level (0, 1, or 2). Defaults to 1.
clean_session: bool(Consumer only) If true, start with a clean session. Defaults to false (persistent session). Setting this to true effectively enables Subscriber mode (ephemeral).
keep_alive_seconds: Option<u64>Keep-alive interval in seconds. Defaults to 20.
protocol: MqttProtocolMQTT protocol version (V3 or V5). Defaults to V5.
session_expiry_interval: Option<u32>Session expiry interval in seconds (MQTT v5 only).
delayed_ack: bool(Publisher only) If true, messages are acknowledged immediately upon receipt (auto-ack). If false (default), messages are acknowledged after processing (manual-ack).
Trait Implementations§
Source§impl Clone for MqttConfig
impl Clone for MqttConfig
Source§fn clone(&self) -> MqttConfig
fn clone(&self) -> MqttConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more