Paho Asynchronous MQTT C Client Library: MQTTAsync_message Struct Reference

| Paho Asynchronous MQTT C Client Library

Data Fields
MQTTAsync_message Struct Reference

`#include <MQTTAsync.h>`

## Data Fields
char | struct_id [4]
int | struct_version
int | payloadlen
void * | payload
int | qos
int | retained
int | dup
int | msgid
MQTTProperties | properties

## Detailed Description

A structure representing the payload and attributes of an MQTT message. The message topic is not part of this structure (see MQTTAsync_publishMessage(), MQTTAsync_publish(), MQTTAsync_receive(), MQTTAsync_freeMessage() and MQTTAsync_messageArrived()).

## Field Documentation

## ◆ struct_id

char struct_id[4]

The eyecatcher for this structure. must be MQTM.

## ◆ struct_version

int struct_version

The version number of this structure. Must be 0 or 1. 0 indicates no message properties

## ◆ payloadlen

int payloadlen

The length of the MQTT message payload in bytes.

## ◆ payload

void* payload

A pointer to the payload of the MQTT message.

## ◆ qos

int qos

The quality of service (QoS) assigned to the message. There are three levels of QoS:

QoS0
  Fire and forget - the message may not be delivered
QoS1
  At least once - the message will be delivered, but may be delivered more than once in some circumstances.
QoS2
  Once and one only - the message will be delivered exactly once.

## ◆ retained

int retained

The retained flag serves two purposes depending on whether the message it is associated with is being published or received.

retained = true
For messages being published, a true setting indicates that the MQTT server should retain a copy of the message. The message will then be transmitted to new subscribers to a topic that matches the message topic. For subscribers registering a new subscription, the flag being true indicates that the received message is not a new one, but one that has been retained by the MQTT server.

retained = false
For publishers, this indicates that this message should not be retained by the MQTT server. For subscribers, a false setting indicates this is a normal message, received as a result of it being published to the server.

## ◆ dup

int dup

The dup flag indicates whether or not this message is a duplicate. It is only meaningful when receiving QoS1 messages. When true, the client application should take appropriate action to deal with the duplicate message. This is an output parameter only.

## ◆ msgid

int msgid

The message identifier is reserved for internal use by the MQTT client and server. It is an output parameter only - writing to it will serve no purpose. It contains the MQTT message id of an incoming publish message.

## ◆ properties

MQTTProperties properties

The MQTT V5 properties associated with the message.

The documentation for this struct was generated from the following file:

- MQTTAsync.h