pub struct PublishOptions {
pub qos: QoS,
pub retain: bool,
pub properties: PublishProperties,
}
Expand description
Options for publishing messages
§Examples
use mqtt5::{PublishOptions, QoS};
use std::time::Duration;
// Basic publish with QoS 1
let mut options = PublishOptions::default();
options.qos = QoS::AtLeastOnce;
// Retained message with QoS 2
let mut options = PublishOptions::default();
options.qos = QoS::ExactlyOnce;
options.retain = true;
// With message expiry
let mut options = PublishOptions::default();
options.properties.message_expiry_interval = Some(3600); // 1 hour
// With response topic for request/response pattern
let mut options = PublishOptions::default();
options.properties.response_topic = Some("response/client123".to_string());
options.properties.correlation_data = Some(b"req-001".to_vec());
Fields§
§qos: QoS
§retain: bool
§properties: PublishProperties
Trait Implementations§
Source§impl Clone for PublishOptions
impl Clone for PublishOptions
Source§fn clone(&self) -> PublishOptions
fn clone(&self) -> PublishOptions
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for PublishOptions
impl Debug for PublishOptions
Auto Trait Implementations§
impl Freeze for PublishOptions
impl RefUnwindSafe for PublishOptions
impl Send for PublishOptions
impl Sync for PublishOptions
impl Unpin for PublishOptions
impl UnwindSafe for PublishOptions
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
Mutably borrows from an owned value. Read more