MQTT: MQ Telemetry Transport¶
https://en.m.wikipedia.org/wiki/MQTT
Client API¶
-
using
MqttDelegate= Delegate<int(MqttClient &client, mqtt_message_t *message)>¶
-
using
MqttRequestQueue= ObjectQueue<mqtt_message_t, MQTT_REQUEST_POOL_SIZE>¶
-
using
MqttMessageDeliveredCallback= Delegate<void(uint16_t msgId, int type)>¶
-
MQTT_REQUEST_POOL_SIZE¶
-
MQTT_CLIENT_CONNECTED¶
-
MQTT_FLAG_RETAINED¶
-
MQTT_MAX_BUFFER_SIZE¶
-
MQTT_MSG_PUBREC¶
-
class
MqttClient: protected TcpClient¶ - #include <MqttClient.h>
Public Functions
-
void
setKeepAlive(uint16_t seconds)¶ Sets keep-alive time. That information is sent during connection to the server.
- Parameters
seconds:
-
void
setPingRepeatTime(uint16_t seconds)¶ Sets the interval in which to ping the remote server if there was no activity
- Parameters
seconds:
-
bool
setWill(const String &topic, const String &message, uint8_t flags = 0)¶ Sets last will and testament
- Parameters
topic:message:flags: QoS, retain, etc flags
- Return Value
bool:
-
bool
connect(const Url &url, const String &uniqueClientName)¶ Connect to a MQTT server.
- Parameters
url: URL in the form “mqtt://user:password@server:port” or “mqtts://user:password@server:port”uniqueClientName:
- Return Value
bool:
-
void
setPayloadParser(MqttPayloadParser payloadParser = nullptr)¶ Sets or clears a payload parser (for PUBLISH messages from the server to us)
- Note
We no longer have size limitation for incoming or outgoing messages but in order to prevent running out of memory we have a “sane” payload parser that will read up to 1K of payload
-
void
setConnectedHandler(MqttDelegate handler)¶ Sets a handler to be called after successful MQTT connection.
- Parameters
handler:
-
void
setPublishedHandler(MqttDelegate handler)¶ Sets a handler to be called after receiving confirmation from the server for a published message from the client.
- Parameters
handler:
-
void
setMessageHandler(MqttDelegate handler)¶ Sets a handler to be called after receiving a PUBLISH message from the server.
- Parameters
handler:
-
void
setDisconnectHandler(TcpClientCompleteDelegate handler)¶ Sets a handler to be called on disconnect from the server.
- Parameters
handler:
-
bool
publishWithQoS(const String &topic, const String &message, int QoS, bool retained = false, MqttMessageDeliveredCallback onDelivery = nullptr)¶ bool publish(String& topic, String& message, bool retained = false) Use publish(const String& topic, const String& message, uint8_t flags = 0) instead.
-
void
setCallback(MqttStringSubscriptionCallback subscriptionCallback = nullptr)¶ Provide a function to be called when a message is received from the broker.
-
void