pub struct Publish {Show 14 fields
pub duplicate: bool,
pub qos: QoS,
pub retain: bool,
pub topic_name: Topic,
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<Topic>,
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: boolIn 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: QoSThe quality of service of the message.
retain: boolIf true, the server must retain it in order to publish it for delivery upon future connections.
topic_name: TopicThe 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: boolIf 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<Topic>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: StringDescribes the type of content of the payload. Is generally a MIME descriptor.
message: Vec<u8>The content of the message