Struct sage_mqtt::Publish [−][src]
pub struct Publish {Show 14 fields
pub duplicate: bool,
pub qos: QoS,
pub retain: bool,
pub topic_name: String,
pub packet_identifier: Option<u16>,
pub payload_format_indicator: bool,
pub message_expiry_interval: Option<u32>,
pub topic_alias: Option<u16>,
pub response_topic: Option<String>,
pub correlation_data: Option<Vec<u8>>,
pub user_properties: Vec<(String, String)>,
pub subscription_identifiers: Vec<u32>,
pub content_type: String,
pub message: Vec<u8>,
}
Expand description
The Publish
packet is used to send an application message to a given
topic.
Fields
duplicate: bool
In case of AtLeastOnce
and ExactlyOnce
qualities of service,
duplicate
is set to true
when the message is a new attempt to send
an earlier one.
qos: QoS
The quality of service of the message.
retain: bool
If true, the server must retain it in order to publish it for delivery upon future connections.
topic_name: String
The name of the topic to publish the message to.
packet_identifier: Option<u16>
The packet identifier is used in AtLeastOnce
and ExactlyOnce
qualities of service to keep track of the packet.
payload_format_indicator: bool
If true, the will message will be a valid UTF-8 encoded string. If not the will message can be anything, even a unicorn.
message_expiry_interval: Option<u32>
Optional delay before the server must drop a message before it does not deliver it to anyone.
topic_alias: Option<u16>
The topic alias. It is used to replace the topic string.
response_topic: Option<String>
If the message is part of a Request/Response communication, the response topic is use to assign the topic which must be used as response. The presence of a response topic identifies the message as a requestion.
correlation_data: Option<Vec<u8>>
If the message is part of a Request/Response communication, it can be optionnaly accompagnied with correlation data which are exchanged between the communication endpoints.
user_properties: Vec<(String, String)>
General purpose user properties.
subscription_identifiers: Vec<u32>
References the different subscriptions identifiers that are used for the message delivery.
content_type: String
Describes the type of content of the payload. Is generally a MIME descriptor.
message: Vec<u8>
The content of the message
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for Publish
impl UnwindSafe for Publish
Blanket Implementations
Mutably borrows from an owned value. Read more