From 9e2a88bb5f5738921514edc1be2854db7215d7c7 Mon Sep 17 00:00:00 2001 From: mreenen Date: Thu, 26 Jan 2023 23:33:16 +0100 Subject: [PATCH] convert to mqtt clock --- .vscode/launch.json | 11 + .vscode/settings.json | 9 + Makefile | 9 + compile.sh | 6 +- include/paho-mqtt/MQTTAsync.h | 2383 ++++++++++++++++++++ include/paho-mqtt/MQTTClient.h | 1972 ++++++++++++++++ include/paho-mqtt/MQTTClientPersistence.h | 277 +++ include/paho-mqtt/MQTTExportDeclarations.h | 36 + include/paho-mqtt/MQTTProperties.h | 219 ++ include/paho-mqtt/MQTTReasonCodes.h | 79 + include/paho-mqtt/MQTTSubscribeOpts.h | 46 + libs/paho-mqtt/libpaho-mqtt3a.so | 1 + libs/paho-mqtt/libpaho-mqtt3a.so.1 | 1 + libs/paho-mqtt/libpaho-mqtt3a.so.1.3.12 | Bin 0 -> 401344 bytes libs/paho-mqtt/libpaho-mqtt3as.so | 1 + libs/paho-mqtt/libpaho-mqtt3as.so.1 | 1 + libs/paho-mqtt/libpaho-mqtt3as.so.1.3.12 | Bin 0 -> 465776 bytes libs/paho-mqtt/libpaho-mqtt3c.so | 1 + libs/paho-mqtt/libpaho-mqtt3c.so.1 | 1 + libs/paho-mqtt/libpaho-mqtt3c.so.1.3.12 | Bin 0 -> 348832 bytes libs/paho-mqtt/libpaho-mqtt3cs.so | 1 + libs/paho-mqtt/libpaho-mqtt3cs.so.1 | 1 + libs/paho-mqtt/libpaho-mqtt3cs.so.1.3.12 | Bin 0 -> 411680 bytes relayClient | Bin 183240 -> 0 bytes src/conf.h | 8 +- src/gpio.c | 26 - src/gpio.h | 5 - src/main.c | 168 +- src/mqtt.c | 108 +- src/mqtt.h | 1 + 30 files changed, 5176 insertions(+), 195 deletions(-) create mode 100644 .vscode/launch.json create mode 100644 .vscode/settings.json create mode 100644 Makefile create mode 100644 include/paho-mqtt/MQTTAsync.h create mode 100644 include/paho-mqtt/MQTTClient.h create mode 100644 include/paho-mqtt/MQTTClientPersistence.h create mode 100644 include/paho-mqtt/MQTTExportDeclarations.h create mode 100644 include/paho-mqtt/MQTTProperties.h create mode 100644 include/paho-mqtt/MQTTReasonCodes.h create mode 100644 include/paho-mqtt/MQTTSubscribeOpts.h create mode 120000 libs/paho-mqtt/libpaho-mqtt3a.so create mode 120000 libs/paho-mqtt/libpaho-mqtt3a.so.1 create mode 100644 libs/paho-mqtt/libpaho-mqtt3a.so.1.3.12 create mode 120000 libs/paho-mqtt/libpaho-mqtt3as.so create mode 120000 libs/paho-mqtt/libpaho-mqtt3as.so.1 create mode 100644 libs/paho-mqtt/libpaho-mqtt3as.so.1.3.12 create mode 120000 libs/paho-mqtt/libpaho-mqtt3c.so create mode 120000 libs/paho-mqtt/libpaho-mqtt3c.so.1 create mode 100644 libs/paho-mqtt/libpaho-mqtt3c.so.1.3.12 create mode 120000 libs/paho-mqtt/libpaho-mqtt3cs.so create mode 120000 libs/paho-mqtt/libpaho-mqtt3cs.so.1 create mode 100644 libs/paho-mqtt/libpaho-mqtt3cs.so.1.3.12 delete mode 100755 relayClient delete mode 100644 src/gpio.c delete mode 100644 src/gpio.h diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 0000000..df9afb5 --- /dev/null +++ b/.vscode/launch.json @@ -0,0 +1,11 @@ +{ + // Use IntelliSense to learn about possible attributes. + // Hover to view descriptions of existing attributes. + // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 + "version": "0.2.0", + "configurations": [ + { + "type": "cppdbg" + } + ] +} \ No newline at end of file diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..82a3931 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,9 @@ +{ + "makefile.launchConfigurations": [ + { + "cwd": "/home/mreenen/Documents/git/relayClient", + "binaryPath": "/home/mreenen/Documents/git/relayClient/relayClient", + "binaryArgs": [] + } + ] +} \ No newline at end of file diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..b4d97c7 --- /dev/null +++ b/Makefile @@ -0,0 +1,9 @@ + +SRC := src/main.c src/mqtt.c +INC := -I src -I include/paho-mqtt +LIBS := -Llibs/paho-mqtt -lpthread -lpaho-mqtt3a -lpaho-mqtt3c + +all: build + +build: $(SRC) + gcc $(SRC) $(LIBS) -o relayClient $(INC) diff --git a/compile.sh b/compile.sh index f4d500e..2849589 100755 --- a/compile.sh +++ b/compile.sh @@ -1,6 +1,6 @@ #!/bin/bash -gcc src/main.c src/mqtt.c src/gpio.c \ - -lpthread -lpaho-mqtt3a -lbcm2835 \ +gcc src/main.c src/gpio.c \ + -lpthread -lpaho-mqtt3a \ -o relayClient \ - -I src + -I src -I include/paho-mqtt diff --git a/include/paho-mqtt/MQTTAsync.h b/include/paho-mqtt/MQTTAsync.h new file mode 100644 index 0000000..90f9f7b --- /dev/null +++ b/include/paho-mqtt/MQTTAsync.h @@ -0,0 +1,2383 @@ +/******************************************************************************* + * Copyright (c) 2009, 2022 IBM Corp., Ian Craggs and others + * + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v2.0 + * and Eclipse Distribution License v1.0 which accompany this distribution. + * + * The Eclipse Public License is available at + * https://www.eclipse.org/legal/epl-2.0/ + * and the Eclipse Distribution License is available at + * http://www.eclipse.org/org/documents/edl-v10.php. + * + * Contributors: + * Ian Craggs - initial API and implementation + * Ian Craggs, Allan Stockdill-Mander - SSL connections + * Ian Craggs - multiple server connection support + * Ian Craggs - MQTT 3.1.1 support + * Ian Craggs - fix for bug 444103 - success/failure callbacks not invoked + * Ian Craggs - automatic reconnect and offline buffering (send while disconnected) + * Ian Craggs - binary will message + * Ian Craggs - binary password + * Ian Craggs - remove const on eyecatchers #168 + * Ian Craggs - MQTT 5.0 + *******************************************************************************/ + +/********************************************************************/ + +/** + * @cond MQTTAsync_main + * @mainpage Asynchronous MQTT client library for C (MQTTAsync) + * + * © Copyright 2009, 2022 IBM Corp., Ian Craggs and others + * + * @brief An Asynchronous MQTT client library for C. + * + * An MQTT client application connects to MQTT-capable servers. + * A typical client is responsible for collecting information from a telemetry + * device and publishing the information to the server. It can also subscribe + * to topics, receive messages, and use this information to control the + * telemetry device. + * + * MQTT clients implement the published MQTT v3 protocol. You can write your own + * API to the MQTT protocol using the programming language and platform of your + * choice. This can be time-consuming and error-prone. + * + * To simplify writing MQTT client applications, this library encapsulates + * the MQTT v3 protocol for you. Using this library enables a fully functional + * MQTT client application to be written in a few lines of code. + * The information presented here documents the API provided + * by the Asynchronous MQTT Client library for C. + * + * Using the client
+ * Applications that use the client library typically use a similar structure: + * + * Some simple examples are shown here: + * + * Additional information about important concepts is provided here: + * + * @endcond + */ + +/* +/// @cond EXCLUDE +*/ +#if !defined(MQTTASYNC_H) +#define MQTTASYNC_H + +#if defined(__cplusplus) + extern "C" { +#endif + +#include +/* +/// @endcond +*/ + +#include "MQTTExportDeclarations.h" + +#include "MQTTProperties.h" +#include "MQTTReasonCodes.h" +#include "MQTTSubscribeOpts.h" +#if !defined(NO_PERSISTENCE) +#include "MQTTClientPersistence.h" +#endif + +/** + * Return code: No error. Indicates successful completion of an MQTT client + * operation. + */ +#define MQTTASYNC_SUCCESS 0 +/** + * Return code: A generic error code indicating the failure of an MQTT client + * operation. + */ +#define MQTTASYNC_FAILURE -1 + +/* error code -2 is MQTTAsync_PERSISTENCE_ERROR */ + +#define MQTTASYNC_PERSISTENCE_ERROR -2 + +/** + * Return code: The client is disconnected. + */ +#define MQTTASYNC_DISCONNECTED -3 +/** + * Return code: The maximum number of messages allowed to be simultaneously + * in-flight has been reached. + */ +#define MQTTASYNC_MAX_MESSAGES_INFLIGHT -4 +/** + * Return code: An invalid UTF-8 string has been detected. + */ +#define MQTTASYNC_BAD_UTF8_STRING -5 +/** + * Return code: A NULL parameter has been supplied when this is invalid. + */ +#define MQTTASYNC_NULL_PARAMETER -6 +/** + * Return code: The topic has been truncated (the topic string includes + * embedded NULL characters). String functions will not access the full topic. + * Use the topic length value to access the full topic. + */ +#define MQTTASYNC_TOPICNAME_TRUNCATED -7 +/** + * Return code: A structure parameter does not have the correct eyecatcher + * and version number. + */ +#define MQTTASYNC_BAD_STRUCTURE -8 +/** + * Return code: A qos parameter is not 0, 1 or 2 + */ +#define MQTTASYNC_BAD_QOS -9 +/** + * Return code: All 65535 MQTT msgids are being used + */ +#define MQTTASYNC_NO_MORE_MSGIDS -10 +/** + * Return code: the request is being discarded when not complete + */ +#define MQTTASYNC_OPERATION_INCOMPLETE -11 +/** + * Return code: no more messages can be buffered + */ +#define MQTTASYNC_MAX_BUFFERED_MESSAGES -12 +/** + * Return code: Attempting SSL connection using non-SSL version of library + */ +#define MQTTASYNC_SSL_NOT_SUPPORTED -13 +/** + * Return code: protocol prefix in serverURI should be: + * @li @em tcp:// or @em mqtt:// - Insecure TCP + * @li @em ssl:// or @em mqtts:// - Encrypted SSL/TLS + * @li @em ws:// - Insecure websockets + * @li @em wss:// - Secure web sockets + * + * The TLS enabled prefixes (ssl, mqtts, wss) are only valid if the TLS + * version of the library is linked with. + */ +#define MQTTASYNC_BAD_PROTOCOL -14 +/** + * Return code: don't use options for another version of MQTT + */ +#define MQTTASYNC_BAD_MQTT_OPTION -15 +/** + * Return code: call not applicable to the client's version of MQTT + */ +#define MQTTASYNC_WRONG_MQTT_VERSION -16 +/** + * Return code: 0 length will topic + */ +#define MQTTASYNC_0_LEN_WILL_TOPIC -17 +/* + * Return code: connect or disconnect command ignored because there is already a connect or disconnect + * command at the head of the list waiting to be processed. Use the onSuccess/onFailure callbacks to wait + * for the previous connect or disconnect command to be complete. + */ +#define MQTTASYNC_COMMAND_IGNORED -18 + /* + * Return code: maxBufferedMessages in the connect options must be >= 0 + */ + #define MQTTASYNC_MAX_BUFFERED -19 + +/** + * Default MQTT version to connect with. Use 3.1.1 then fall back to 3.1 + */ +#define MQTTVERSION_DEFAULT 0 +/** + * MQTT version to connect with: 3.1 + */ +#define MQTTVERSION_3_1 3 +/** + * MQTT version to connect with: 3.1.1 + */ +#define MQTTVERSION_3_1_1 4 +/** + * MQTT version to connect with: 5 + */ +#define MQTTVERSION_5 5 +/** + * Bad return code from subscribe, as defined in the 3.1.1 specification + */ +#define MQTT_BAD_SUBSCRIBE 0x80 + + +/** + * Initialization options + */ +typedef struct +{ + /** The eyecatcher for this structure. Must be MQTG. */ + char struct_id[4]; + /** The version number of this structure. Must be 0 */ + int struct_version; + /** 1 = we do openssl init, 0 = leave it to the application */ + int do_openssl_init; +} MQTTAsync_init_options; + +#define MQTTAsync_init_options_initializer { {'M', 'Q', 'T', 'G'}, 0, 0 } + +/** + * Global init of mqtt library. Call once on program start to set global behaviour. + * handle_openssl_init - if mqtt library should handle openssl init (1) or rely on the caller to init it before using mqtt (0) + */ +LIBMQTT_API void MQTTAsync_global_init(MQTTAsync_init_options* inits); + +/** + * A handle representing an MQTT client. A valid client handle is available + * following a successful call to MQTTAsync_create(). + */ +typedef void* MQTTAsync; +/** + * A value representing an MQTT message. A token is returned to the + * client application when a message is published. The token can then be used to + * check that the message was successfully delivered to its destination (see + * MQTTAsync_publish(), + * MQTTAsync_publishMessage(), + * MQTTAsync_deliveryComplete(), and + * MQTTAsync_getPendingTokens()). + */ +typedef int MQTTAsync_token; + +/** + * 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()). + */ +typedef struct +{ + /** The eyecatcher for this structure. must be MQTM. */ + char struct_id[4]; + /** The version number of this structure. Must be 0 or 1. + * 0 indicates no message properties */ + int struct_version; + /** The length of the MQTT message payload in bytes. */ + int payloadlen; + /** A pointer to the payload of the MQTT message. */ + void* payload; + /** + * 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.
+ *
+ */ + int qos; + /** + * 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. + */ + int retained; + /** + * 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. + */ + int dup; + /** 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. + */ + int msgid; + /** + * The MQTT V5 properties associated with the message. + */ + MQTTProperties properties; +} MQTTAsync_message; + +#define MQTTAsync_message_initializer { {'M', 'Q', 'T', 'M'}, 1, 0, NULL, 0, 0, 0, 0, MQTTProperties_initializer } + +/** + * This is a callback function. The client application + * must provide an implementation of this function to enable asynchronous + * receipt of messages. The function is registered with the client library by + * passing it as an argument to MQTTAsync_setCallbacks(). It is + * called by the client library when a new message that matches a client + * subscription has been received from the server. This function is executed on + * a separate thread to the one on which the client application is running. + * + * Note: Neither MQTTAsync_create() nor MQTTAsync_destroy() should be + * called within this callback. + * @param context A pointer to the context value originally passed to + * MQTTAsync_setCallbacks(), which contains any application-specific context. + * @param topicName The topic associated with the received message. + * @param topicLen The length of the topic if there are one + * more NULL characters embedded in topicName, otherwise topicLen + * is 0. If topicLen is 0, the value returned by strlen(topicName) + * can be trusted. If topicLen is greater than 0, the full topic name + * can be retrieved by accessing topicName as a byte array of length + * topicLen. + * @param message The MQTTAsync_message structure for the received message. + * This structure contains the message payload and attributes. + * @return This function must return 0 or 1 indicating whether or not + * the message has been safely received by the client application.
+ * Returning 1 indicates that the message has been successfully handled. + * To free the message storage, ::MQTTAsync_freeMessage must be called. + * To free the topic name storage, ::MQTTAsync_free must be called.
+ * Returning 0 indicates that there was a problem. In this + * case, the client library will reinvoke MQTTAsync_messageArrived() to + * attempt to deliver the message to the application again. + * Do not free the message and topic storage when returning 0, otherwise + * the redelivery will fail. + */ +typedef int MQTTAsync_messageArrived(void* context, char* topicName, int topicLen, MQTTAsync_message* message); + +/** + * This is a callback function. The client application + * must provide an implementation of this function to enable asynchronous + * notification of delivery of messages to the server. The function is + * registered with the client library by passing it as an argument to MQTTAsync_setCallbacks(). + * It is called by the client library after the client application has + * published a message to the server. It indicates that the necessary + * handshaking and acknowledgements for the requested quality of service (see + * MQTTAsync_message.qos) have been completed. This function is executed on a + * separate thread to the one on which the client application is running. + * + * Note: Neither MQTTAsync_create() nor MQTTAsync_destroy() should be + * called within this callback. + * @param context A pointer to the context value originally passed to + * MQTTAsync_setCallbacks(), which contains any application-specific context. + * @param token The ::MQTTAsync_token associated with + * the published message. Applications can check that all messages have been + * correctly published by matching the tokens returned from calls to + * MQTTAsync_send() and MQTTAsync_sendMessage() with the tokens passed + * to this callback. + */ +typedef void MQTTAsync_deliveryComplete(void* context, MQTTAsync_token token); + +/** + * This is a callback function. The client application + * must provide an implementation of this function to enable asynchronous + * notification of the loss of connection to the server. The function is + * registered with the client library by passing it as an argument to + * MQTTAsync_setCallbacks(). It is called by the client library if the client + * loses its connection to the server. The client application must take + * appropriate action, such as trying to reconnect or reporting the problem. + * This function is executed on a separate thread to the one on which the + * client application is running. + * + * Note: Neither MQTTAsync_create() nor MQTTAsync_destroy() should be + * called within this callback. + * @param context A pointer to the context value originally passed to + * MQTTAsync_setCallbacks(), which contains any application-specific context. + * @param cause The reason for the disconnection. + * Currently, cause is always set to NULL. + */ +typedef void MQTTAsync_connectionLost(void* context, char* cause); + + +/** + * This is a callback function, which will be called when the client + * library successfully connects. This is superfluous when the connection + * is made in response to a MQTTAsync_connect call, because the onSuccess + * callback can be used. It is intended for use when automatic reconnect + * is enabled, so that when a reconnection attempt succeeds in the background, + * the application is notified and can take any required actions. + * + * Note: Neither MQTTAsync_create() nor MQTTAsync_destroy() should be + * called within this callback. + * @param context A pointer to the context value originally passed to + * MQTTAsync_setCallbacks(), which contains any application-specific context. + * @param cause The reason for the disconnection. + * Currently, cause is always set to NULL. + */ +typedef void MQTTAsync_connected(void* context, char* cause); + +/** + * This is a callback function, which will be called when the client + * library receives a disconnect packet from the server. This applies to MQTT V5 and above only. + * + * Note: Neither MQTTAsync_create() nor MQTTAsync_destroy() should be + * called within this callback. + * @param context A pointer to the context value originally passed to + * MQTTAsync_setCallbacks(), which contains any application-specific context. + * @param properties the properties in the disconnect packet. + * @param properties the reason code from the disconnect packet + * Currently, cause is always set to NULL. + */ +typedef void MQTTAsync_disconnected(void* context, MQTTProperties* properties, + enum MQTTReasonCodes reasonCode); + +/** + * Sets the MQTTAsync_disconnected() callback function for a client. + * @param handle A valid client handle from a successful call to + * MQTTAsync_create(). + * + * Note: Neither MQTTAsync_create() nor MQTTAsync_destroy() should be + * called within this callback. + * @param context A pointer to any application-specific context. The + * the context pointer is passed to each of the callback functions to + * provide access to the context information in the callback. + * @param co A pointer to an MQTTAsync_connected() callback + * function. NULL removes the callback setting. + * @return ::MQTTASYNC_SUCCESS if the callbacks were correctly set, + * ::MQTTASYNC_FAILURE if an error occurred. + */ +LIBMQTT_API int MQTTAsync_setDisconnected(MQTTAsync handle, void* context, MQTTAsync_disconnected* co); + +/** The connect options that can be updated before an automatic reconnect. */ +typedef struct +{ + /** The eyecatcher for this structure. Will be MQCD. */ + char struct_id[4]; + /** The version number of this structure. Will be 0 */ + int struct_version; + /** + * MQTT servers that support the MQTT v3.1 protocol provide authentication + * and authorisation by user name and password. This is the user name parameter. + * Set data to NULL to remove. To change, allocate new + * storage with ::MQTTAsync_allocate - this will then be free later by the library. + */ + const char* username; + /** + * The password parameter of the MQTT authentication. + * Set data to NULL to remove. To change, allocate new + * storage with ::MQTTAsync_allocate - this will then be free later by the library. + */ + struct { + int len; /**< binary password length */ + const void* data; /**< binary password data */ + } binarypwd; +} MQTTAsync_connectData; + +#define MQTTAsync_connectData_initializer {{'M', 'Q', 'C', 'D'}, 0, NULL, {0, NULL}} + +/** + * This is a callback function which will allow the client application to update the + * connection data. + * @param data The connection data which can be modified by the application. + * @return Return a non-zero value to update the connect data, zero to keep the same data. + */ +typedef int MQTTAsync_updateConnectOptions(void* context, MQTTAsync_connectData* data); + +/** + * Sets the MQTTAsync_updateConnectOptions() callback function for a client. + * @param handle A valid client handle from a successful call to MQTTAsync_create(). + * @param context A pointer to any application-specific context. The + * the context pointer is passed to each of the callback functions to + * provide access to the context information in the callback. + * @param co A pointer to an MQTTAsync_updateConnectOptions() callback + * function. NULL removes the callback setting. + */ +LIBMQTT_API int MQTTAsync_setUpdateConnectOptions(MQTTAsync handle, void* context, MQTTAsync_updateConnectOptions* co); + +/** + * Sets the MQTTPersistence_beforeWrite() callback function for a client. + * @param handle A valid client handle from a successful call to MQTTAsync_create(). + * @param context A pointer to any application-specific context. The + * the context pointer is passed to the callback function to + * provide access to the context information in the callback. + * @param co A pointer to an MQTTPersistence_beforeWrite() callback + * function. NULL removes the callback setting. + */ +LIBMQTT_API int MQTTAsync_setBeforePersistenceWrite(MQTTAsync handle, void* context, MQTTPersistence_beforeWrite* co); + + +/** + * Sets the MQTTPersistence_afterRead() callback function for a client. + * @param handle A valid client handle from a successful call to MQTTAsync_create(). + * @param context A pointer to any application-specific context. The + * the context pointer is passed to the callback function to + * provide access to the context information in the callback. + * @param co A pointer to an MQTTPersistence_beforeWrite() callback + * function. NULL removes the callback setting. + */ +LIBMQTT_API int MQTTAsync_setAfterPersistenceRead(MQTTAsync handle, void* context, MQTTPersistence_afterRead* co); + + +/** The data returned on completion of an unsuccessful API call in the response callback onFailure. */ +typedef struct +{ + /** A token identifying the failed request. */ + MQTTAsync_token token; + /** A numeric code identifying the error. */ + int code; + /** Optional text explaining the error. Can be NULL. */ + const char *message; +} MQTTAsync_failureData; + + +/** The data returned on completion of an unsuccessful API call in the response callback onFailure. */ +typedef struct +{ + /** The eyecatcher for this structure. Will be MQFD. */ + char struct_id[4]; + /** The version number of this structure. Will be 0 */ + int struct_version; + /** A token identifying the failed request. */ + MQTTAsync_token token; + /** The MQTT reason code returned. */ + enum MQTTReasonCodes reasonCode; + /** The MQTT properties on the ack, if any. */ + MQTTProperties properties; + /** A numeric code identifying the MQTT client library error. */ + int code; + /** Optional further text explaining the error. Can be NULL. */ + const char *message; + /** Packet type on which the failure occurred - used for publish QoS 1/2 exchanges*/ + int packet_type; +} MQTTAsync_failureData5; + +#define MQTTAsync_failureData5_initializer {{'M', 'Q', 'F', 'D'}, 0, 0, MQTTREASONCODE_SUCCESS, MQTTProperties_initializer, 0, NULL, 0} + +/** The data returned on completion of a successful API call in the response callback onSuccess. */ +typedef struct +{ + /** A token identifying the successful request. Can be used to refer to the request later. */ + MQTTAsync_token token; + /** A union of the different values that can be returned for subscribe, unsubscribe and publish. */ + union + { + /** For subscribe, the granted QoS of the subscription returned by the server. + * Also for subscribeMany, if only 1 subscription was requested. */ + int qos; + /** For subscribeMany, if more than one subscription was requested, + * the list of granted QoSs of the subscriptions returned by the server. */ + int* qosList; + /** For publish, the message being sent to the server. */ + struct + { + MQTTAsync_message message; /**< the message being sent to the server */ + char* destinationName; /**< the topic destination for the message */ + } pub; + /* For connect, the server connected to, MQTT version used, and sessionPresent flag */ + struct + { + char* serverURI; /**< the connection string of the server */ + int MQTTVersion; /**< the version of MQTT being used */ + int sessionPresent; /**< the session present flag returned from the server */ + } connect; + } alt; +} MQTTAsync_successData; + + +/** The data returned on completion of a successful API call in the response callback onSuccess. */ +typedef struct +{ + char struct_id[4]; /**< The eyecatcher for this structure. Will be MQSD. */ + int struct_version; /**< The version number of this structure. Will be 0 */ + /** A token identifying the successful request. Can be used to refer to the request later. */ + MQTTAsync_token token; + enum MQTTReasonCodes reasonCode; /**< MQTT V5 reason code returned */ + MQTTProperties properties; /**< MQTT V5 properties returned, if any */ + /** A union of the different values that can be returned for subscribe, unsubscribe and publish. */ + union + { + /** For subscribeMany, the list of reasonCodes returned by the server. */ + struct + { + int reasonCodeCount; /**< the number of reason codes in the reasonCodes array */ + enum MQTTReasonCodes* reasonCodes; /**< an array of reasonCodes */ + } sub; + /** For publish, the message being sent to the server. */ + struct + { + MQTTAsync_message message; /**< the message being sent to the server */ + char* destinationName; /**< the topic destination for the message */ + } pub; + /* For connect, the server connected to, MQTT version used, and sessionPresent flag */ + struct + { + char* serverURI; /**< the connection string of the server */ + int MQTTVersion; /**< the version of MQTT being used */ + int sessionPresent; /**< the session present flag returned from the server */ + } connect; + /** For unsubscribeMany, the list of reasonCodes returned by the server. */ + struct + { + int reasonCodeCount; /**< the number of reason codes in the reasonCodes array */ + enum MQTTReasonCodes* reasonCodes; /**< an array of reasonCodes */ + } unsub; + } alt; +} MQTTAsync_successData5; + +#define MQTTAsync_successData5_initializer {{'M', 'Q', 'S', 'D'}, 0, 0, MQTTREASONCODE_SUCCESS, MQTTProperties_initializer, {.sub={0,0}}} + +/** + * This is a callback function. The client application + * must provide an implementation of this function to enable asynchronous + * notification of the successful completion of an API call. The function is + * registered with the client library by passing it as an argument in + * ::MQTTAsync_responseOptions. + * + * Note: Neither MQTTAsync_create() nor MQTTAsync_destroy() should be + * called within this callback. + * @param context A pointer to the context value originally passed to + * ::MQTTAsync_responseOptions, which contains any application-specific context. + * @param response Any success data associated with the API completion. + */ +typedef void MQTTAsync_onSuccess(void* context, MQTTAsync_successData* response); + +/** + * This is a callback function, the MQTT V5 version of ::MQTTAsync_onSuccess. + * The client application + * must provide an implementation of this function to enable asynchronous + * notification of the successful completion of an API call. The function is + * registered with the client library by passing it as an argument in + * ::MQTTAsync_responseOptions. + * + * Note: Neither MQTTAsync_create() nor MQTTAsync_destroy() should be + * called within this callback. + * @param context A pointer to the context value originally passed to + * ::MQTTAsync_responseOptions, which contains any application-specific context. + * @param response Any success data associated with the API completion. + */ +typedef void MQTTAsync_onSuccess5(void* context, MQTTAsync_successData5* response); + +/** + * This is a callback function. The client application + * must provide an implementation of this function to enable asynchronous + * notification of the unsuccessful completion of an API call. The function is + * registered with the client library by passing it as an argument in + * ::MQTTAsync_responseOptions. + * + * Note: Neither MQTTAsync_create() nor MQTTAsync_destroy() should be + * called within this callback. + * @param context A pointer to the context value originally passed to + * ::MQTTAsync_responseOptions, which contains any application-specific context. + * @param response Failure data associated with the API completion. + */ +typedef void MQTTAsync_onFailure(void* context, MQTTAsync_failureData* response); + +/** + * This is a callback function, the MQTT V5 version of ::MQTTAsync_onFailure. + * The application must provide an implementation of this function to enable asynchronous + * notification of the unsuccessful completion of an API call. The function is + * registered with the client library by passing it as an argument in + * ::MQTTAsync_responseOptions. + * + * Note: Neither MQTTAsync_create() nor MQTTAsync_destroy() should be + * called within this callback. + * @param context A pointer to the context value originally passed to + * ::MQTTAsync_responseOptions, which contains any application-specific context. + * @param response Failure data associated with the API completion. + */ +typedef void MQTTAsync_onFailure5(void* context, MQTTAsync_failureData5* response); + +/** Structure to define call options. For MQTT 5.0 there is input data as well as that + * describing the response method. So there is now also a synonym ::MQTTAsync_callOptions + * to better reflect the use. This responseOptions name is kept for backward + * compatibility. + */ +typedef struct MQTTAsync_responseOptions +{ + /** The eyecatcher for this structure. Must be MQTR */ + char struct_id[4]; + /** The version number of this structure. Must be 0 or 1 + * if 0, no MQTTV5 options */ + int struct_version; + /** + * A pointer to a callback function to be called if the API call successfully + * completes. Can be set to NULL, in which case no indication of successful + * completion will be received. + */ + MQTTAsync_onSuccess* onSuccess; + /** + * A pointer to a callback function to be called if the API call fails. + * Can be set to NULL, in which case no indication of unsuccessful + * completion will be received. + */ + MQTTAsync_onFailure* onFailure; + /** + * A pointer to any application-specific context. The + * the context pointer is passed to success or failure callback functions to + * provide access to the context information in the callback. + */ + void* context; + /** + * A token is returned from the call. It can be used to track + * the state of this request, both in the callbacks and in future calls + * such as ::MQTTAsync_waitForCompletion. This is output only - any + * change by the application will be ignored. + */ + MQTTAsync_token token; + /** + * A pointer to a callback function to be called if the API call successfully + * completes. Can be set to NULL, in which case no indication of successful + * completion will be received. + */ + MQTTAsync_onSuccess5* onSuccess5; + /** + * A pointer to a callback function to be called if the API call successfully + * completes. Can be set to NULL, in which case no indication of successful + * completion will be received. + */ + MQTTAsync_onFailure5* onFailure5; + /** + * MQTT V5 input properties + */ + MQTTProperties properties; + /* + * MQTT V5 subscribe options, when used with subscribe only. + */ + MQTTSubscribe_options subscribeOptions; + /* + * MQTT V5 subscribe option count, when used with subscribeMany only. + * The number of entries in the subscribe_options_list array. + */ + int subscribeOptionsCount; + /* + * MQTT V5 subscribe option array, when used with subscribeMany only. + */ + MQTTSubscribe_options* subscribeOptionsList; +} MQTTAsync_responseOptions; + +#define MQTTAsync_responseOptions_initializer { {'M', 'Q', 'T', 'R'}, 1, NULL, NULL, 0, 0, NULL, NULL, MQTTProperties_initializer, MQTTSubscribe_options_initializer, 0, NULL} + +/** A synonym for responseOptions to better reflect its usage since MQTT 5.0 */ +typedef struct MQTTAsync_responseOptions MQTTAsync_callOptions; +#define MQTTAsync_callOptions_initializer MQTTAsync_responseOptions_initializer + +/** + * This function sets the global callback functions for a specific client. + * If your client application doesn't use a particular callback, set the + * relevant parameter to NULL. Any necessary message acknowledgements and + * status communications are handled in the background without any intervention + * from the client application. If you do not set a messageArrived callback + * function, you will not be notified of the receipt of any messages as a + * result of a subscription. + * + * Note: The MQTT client must be disconnected when this function is + * called. + * @param handle A valid client handle from a successful call to + * MQTTAsync_create(). + * @param context A pointer to any application-specific context. The + * the context pointer is passed to each of the callback functions to + * provide access to the context information in the callback. + * @param cl A pointer to an MQTTAsync_connectionLost() callback + * function. You can set this to NULL if your application doesn't handle + * disconnections. + * @param ma A pointer to an MQTTAsync_messageArrived() callback + * function. If this callback is not set, an error will be returned. + * You must set this callback because otherwise there would be + * no way to deliver any incoming messages. + * @param dc A pointer to an MQTTAsync_deliveryComplete() callback + * function. You can set this to NULL if you do not want to check + * for successful delivery. + * @return ::MQTTASYNC_SUCCESS if the callbacks were correctly set, + * ::MQTTASYNC_FAILURE if an error occurred. + */ +LIBMQTT_API int MQTTAsync_setCallbacks(MQTTAsync handle, void* context, MQTTAsync_connectionLost* cl, + MQTTAsync_messageArrived* ma, MQTTAsync_deliveryComplete* dc); + +/** + * This function sets the callback function for a connection lost event for + * a specific client. Any necessary message acknowledgements and status + * communications are handled in the background without any intervention + * from the client application. + * + * Note: The MQTT client must be disconnected when this function is + * called. + * @param handle A valid client handle from a successful call to + * MQTTAsync_create(). + * @param context A pointer to any application-specific context. The + * the context pointer is passed the callback functions to provide + * access to the context information in the callback. + * @param cl A pointer to an MQTTAsync_connectionLost() callback + * function. You can set this to NULL if your application doesn't handle + * disconnections. + * @return ::MQTTASYNC_SUCCESS if the callbacks were correctly set, + * ::MQTTASYNC_FAILURE if an error occurred. + */ + +LIBMQTT_API int MQTTAsync_setConnectionLostCallback(MQTTAsync handle, void* context, + MQTTAsync_connectionLost* cl); + +/** + * This function sets the callback function for a message arrived event for + * a specific client. Any necessary message acknowledgements and status + * communications are handled in the background without any intervention + * from the client application. If you do not set a messageArrived callback + * function, you will not be notified of the receipt of any messages as a + * result of a subscription. + * + * Note: The MQTT client must be disconnected when this function is + * called. + * @param handle A valid client handle from a successful call to + * MQTTAsync_create(). + * @param context A pointer to any application-specific context. The + * the context pointer is passed to the callback functions to provide + * access to the context information in the callback. + * @param ma A pointer to an MQTTAsync_messageArrived() callback + * function. You can set this to NULL if your application doesn't handle + * receipt of messages. + * @return ::MQTTASYNC_SUCCESS if the callbacks were correctly set, + * ::MQTTASYNC_FAILURE if an error occurred. + */ +LIBMQTT_API int MQTTAsync_setMessageArrivedCallback(MQTTAsync handle, void* context, + MQTTAsync_messageArrived* ma); + +/** + * This function sets the callback function for a delivery complete event + * for a specific client. Any necessary message acknowledgements and status + * communications are handled in the background without any intervention + * from the client application. + * + * Note: The MQTT client must be disconnected when this function is + * called. + * @param handle A valid client handle from a successful call to + * MQTTAsync_create(). + * @param context A pointer to any application-specific context. The + * the context pointer is passed to the callback functions to provide + * access to the context information in the callback. + * @param dc A pointer to an MQTTAsync_deliveryComplete() callback + * function. You can set this to NULL if you do not want to check + * for successful delivery. + * @return ::MQTTASYNC_SUCCESS if the callbacks were correctly set, + * ::MQTTASYNC_FAILURE if an error occurred. + */ +LIBMQTT_API int MQTTAsync_setDeliveryCompleteCallback(MQTTAsync handle, void* context, + MQTTAsync_deliveryComplete* dc); + +/** + * Sets the MQTTAsync_connected() callback function for a client. + * @param handle A valid client handle from a successful call to + * MQTTAsync_create(). + * @param context A pointer to any application-specific context. The + * the context pointer is passed to each of the callback functions to + * provide access to the context information in the callback. + * @param co A pointer to an MQTTAsync_connected() callback + * function. NULL removes the callback setting. + * @return ::MQTTASYNC_SUCCESS if the callbacks were correctly set, + * ::MQTTASYNC_FAILURE if an error occurred. + */ +LIBMQTT_API int MQTTAsync_setConnected(MQTTAsync handle, void* context, MQTTAsync_connected* co); + + +/** + * Reconnects a client with the previously used connect options. Connect + * must have previously been called for this to work. + * @param handle A valid client handle from a successful call to + * MQTTAsync_create(). + * @return ::MQTTASYNC_SUCCESS if the callbacks were correctly set, + * ::MQTTASYNC_FAILURE if an error occurred. + */ +LIBMQTT_API int MQTTAsync_reconnect(MQTTAsync handle); + + +/** + * This function creates an MQTT client ready for connection to the + * specified server and using the specified persistent storage (see + * MQTTAsync_persistence). See also MQTTAsync_destroy(). + * @param handle A pointer to an ::MQTTAsync handle. The handle is + * populated with a valid client reference following a successful return from + * this function. + * @param serverURI A null-terminated string specifying the server to + * which the client will connect. It takes the form + * protocol://host:port where protocol must be: + *
+ * @em tcp:// or @em mqtt:// - Insecure TCP + *
+ * @em ssl:// or @em mqtts:// - Encrypted SSL/TLS + *
+ * @em ws:// - Insecure websockets + *
+ * @em wss:// - Secure web sockets + *
+ * The TLS enabled prefixes (ssl, mqtts, wss) are only valid if a TLS + * version of the library is linked with. + * For host, you can specify either an IP address or a host name. For + * instance, to connect to a server running on the local machines with the + * default MQTT port, specify tcp://localhost:1883. + * @param clientId The client identifier passed to the server when the + * client connects to it. It is a null-terminated UTF-8 encoded string. + * @param persistence_type The type of persistence to be used by the client: + *
+ * ::MQTTCLIENT_PERSISTENCE_NONE: Use in-memory persistence. If the device or + * system on which the client is running fails or is switched off, the current + * state of any in-flight messages is lost and some messages may not be + * delivered even at QoS1 and QoS2. + *
+ * ::MQTTCLIENT_PERSISTENCE_DEFAULT: Use the default (file system-based) + * persistence mechanism. Status about in-flight messages is held in persistent + * storage and provides some protection against message loss in the case of + * unexpected failure. + *
+ * ::MQTTCLIENT_PERSISTENCE_USER: Use an application-specific persistence + * implementation. Using this type of persistence gives control of the + * persistence mechanism to the application. The application has to implement + * the MQTTClient_persistence interface. + * @param persistence_context If the application uses + * ::MQTTCLIENT_PERSISTENCE_NONE persistence, this argument is unused and should + * be set to NULL. For ::MQTTCLIENT_PERSISTENCE_DEFAULT persistence, it + * should be set to the location of the persistence directory (if set + * to NULL, the persistence directory used is the working directory). + * Applications that use ::MQTTCLIENT_PERSISTENCE_USER persistence set this + * argument to point to a valid MQTTClient_persistence structure. + * @return ::MQTTASYNC_SUCCESS if the client is successfully created, otherwise + * an error code is returned. + */ +LIBMQTT_API int MQTTAsync_create(MQTTAsync* handle, const char* serverURI, const char* clientId, + int persistence_type, void* persistence_context); + +/** Options for the ::MQTTAsync_createWithOptions call */ +typedef struct +{ + /** The eyecatcher for this structure. must be MQCO. */ + char struct_id[4]; + /** The version number of this structure. Must be 0, 1, 2 or 3 + * 0 means no MQTTVersion + * 1 means no allowDisconnectedSendAtAnyTime, deleteOldestMessages, restoreMessages + * 2 means no persistQoS0 + */ + int struct_version; + /** Whether to allow messages to be sent when the client library is not connected. */ + int sendWhileDisconnected; + /** The maximum number of messages allowed to be buffered. This is intended to be used to + * limit the number of messages queued while the client is not connected. It also applies + * when the client is connected, however, so has to be greater than 0. */ + int maxBufferedMessages; + /** Whether the MQTT version is 3.1, 3.1.1, or 5. To use V5, this must be set. + * MQTT V5 has to be chosen here, because during the create call the message persistence + * is initialized, and we want to know whether the format of any persisted messages + * is appropriate for the MQTT version we are going to connect with. Selecting 3.1 or + * 3.1.1 and attempting to read 5.0 persisted messages will result in an error on create. */ + int MQTTVersion; + /** + * Allow sending of messages while disconnected before a first successful connect. + */ + int allowDisconnectedSendAtAnyTime; + /* + * When the maximum number of buffered messages is reached, delete the oldest rather than the newest. + */ + int deleteOldestMessages; + /* + * Restore messages from persistence on create - or clear it. + */ + int restoreMessages; + /* + * Persist QoS0 publish commands - an option to not persist them. + */ + int persistQoS0; +} MQTTAsync_createOptions; + +#define MQTTAsync_createOptions_initializer { {'M', 'Q', 'C', 'O'}, 2, 0, 100, MQTTVERSION_DEFAULT, 0, 0, 1, 1} + +#define MQTTAsync_createOptions_initializer5 { {'M', 'Q', 'C', 'O'}, 2, 0, 100, MQTTVERSION_5, 0, 0, 1, 1} + + +LIBMQTT_API int MQTTAsync_createWithOptions(MQTTAsync* handle, const char* serverURI, const char* clientId, + int persistence_type, void* persistence_context, MQTTAsync_createOptions* options); + +/** + * MQTTAsync_willOptions defines the MQTT "Last Will and Testament" (LWT) settings for + * the client. In the event that a client unexpectedly loses its connection to + * the server, the server publishes the LWT message to the LWT topic on + * behalf of the client. This allows other clients (subscribed to the LWT topic) + * to be made aware that the client has disconnected. To enable the LWT + * function for a specific client, a valid pointer to an MQTTAsync_willOptions + * structure is passed in the MQTTAsync_connectOptions structure used in the + * MQTTAsync_connect() call that connects the client to the server. The pointer + * to MQTTAsync_willOptions can be set to NULL if the LWT function is not + * required. + */ +typedef struct +{ + /** The eyecatcher for this structure. must be MQTW. */ + char struct_id[4]; + /** The version number of this structure. Must be 0 or 1 + 0 indicates no binary will message support + */ + int struct_version; + /** The LWT topic to which the LWT message will be published. */ + const char* topicName; + /** The LWT payload. */ + const char* message; + /** + * The retained flag for the LWT message (see MQTTAsync_message.retained). + */ + int retained; + /** + * The quality of service setting for the LWT message (see + * MQTTAsync_message.qos and @ref qos). + */ + int qos; + /** The LWT payload in binary form. This is only checked and used if the message option is NULL */ + struct + { + int len; /**< binary payload length */ + const void* data; /**< binary payload data */ + } payload; +} MQTTAsync_willOptions; + +#define MQTTAsync_willOptions_initializer { {'M', 'Q', 'T', 'W'}, 1, NULL, NULL, 0, 0, { 0, NULL } } + +#define MQTT_SSL_VERSION_DEFAULT 0 +#define MQTT_SSL_VERSION_TLS_1_0 1 +#define MQTT_SSL_VERSION_TLS_1_1 2 +#define MQTT_SSL_VERSION_TLS_1_2 3 + +/** +* MQTTAsync_sslProperties defines the settings to establish an SSL/TLS connection using the +* OpenSSL library. It covers the following scenarios: +* - Server authentication: The client needs the digital certificate of the server. It is included +* in a store containting trusted material (also known as "trust store"). +* - Mutual authentication: Both client and server are authenticated during the SSL handshake. In +* addition to the digital certificate of the server in a trust store, the client will need its own +* digital certificate and the private key used to sign its digital certificate stored in a "key store". +* - Anonymous connection: Both client and server do not get authenticated and no credentials are needed +* to establish an SSL connection. Note that this scenario is not fully secure since it is subject to +* man-in-the-middle attacks. +*/ +typedef struct +{ + /** The eyecatcher for this structure. Must be MQTS */ + char struct_id[4]; + + /** The version number of this structure. Must be 0, 1, 2, 3, 4 or 5. + * 0 means no sslVersion + * 1 means no verify, CApath + * 2 means no ssl_error_context, ssl_error_cb + * 3 means no ssl_psk_cb, ssl_psk_context, disableDefaultTrustStore + * 4 means no protos, protos_len + */ + int struct_version; + + /** The file in PEM format containing the public digital certificates trusted by the client. */ + const char* trustStore; + + /** The file in PEM format containing the public certificate chain of the client. It may also include + * the client's private key. + */ + const char* keyStore; + + /** If not included in the sslKeyStore, this setting points to the file in PEM format containing + * the client's private key. + */ + const char* privateKey; + + /** The password to load the client's privateKey if encrypted. */ + const char* privateKeyPassword; + + /** + * The list of cipher suites that the client will present to the server during the SSL handshake. For a + * full explanation of the cipher list format, please see the OpenSSL on-line documentation: + * http://www.openssl.org/docs/apps/ciphers.html#CIPHER_LIST_FORMAT + * If this setting is ommitted, its default value will be "ALL", that is, all the cipher suites -excluding + * those offering no encryption- will be considered. + * This setting can be used to set an SSL anonymous connection ("aNULL" string value, for instance). + */ + const char* enabledCipherSuites; + + /** True/False option to enable verification of the server certificate **/ + int enableServerCertAuth; + + /** The SSL/TLS version to use. Specify one of MQTT_SSL_VERSION_DEFAULT (0), + * MQTT_SSL_VERSION_TLS_1_0 (1), MQTT_SSL_VERSION_TLS_1_1 (2) or MQTT_SSL_VERSION_TLS_1_2 (3). + * Only used if struct_version is >= 1. + */ + int sslVersion; + + /** + * Whether to carry out post-connect checks, including that a certificate + * matches the given host name. + * Exists only if struct_version >= 2 + */ + int verify; + + /** + * From the OpenSSL documentation: + * If CApath is not NULL, it points to a directory containing CA certificates in PEM format. + * Exists only if struct_version >= 2 + */ + const char* CApath; + + /** + * Callback function for OpenSSL error handler ERR_print_errors_cb + * Exists only if struct_version >= 3 + */ + int (*ssl_error_cb) (const char *str, size_t len, void *u); + + /** + * Application-specific contex for OpenSSL error handler ERR_print_errors_cb + * Exists only if struct_version >= 3 + */ + void* ssl_error_context; + + /** + * Callback function for setting TLS-PSK options. Parameters correspond to that of + * SSL_CTX_set_psk_client_callback, except for u which is the pointer ssl_psk_context. + * Exists only if struct_version >= 4 + */ + unsigned int (*ssl_psk_cb) (const char *hint, char *identity, unsigned int max_identity_len, unsigned char *psk, unsigned int max_psk_len, void *u); + + /** + * Application-specific contex for ssl_psk_cb + * Exists only if struct_version >= 4 + */ + void* ssl_psk_context; + + /** + * Don't load default SSL CA. Should be used together with PSK to make sure + * regular servers with certificate in place is not accepted. + * Exists only if struct_version >= 4 + */ + int disableDefaultTrustStore; + + /** + * The protocol-lists must be in wire-format, which is defined as a vector of non-empty, 8-bit length-prefixed, byte strings. + * The length-prefix byte is not included in the length. Each string is limited to 255 bytes. A byte-string length of 0 is invalid. + * A truncated byte-string is invalid. + * Check documentation for SSL_CTX_set_alpn_protos + * Exists only if struct_version >= 5 + */ + const unsigned char *protos; + + /** + * The length of the vector protos vector + * Exists only if struct_version >= 5 + */ + unsigned int protos_len; +} MQTTAsync_SSLOptions; + +#define MQTTAsync_SSLOptions_initializer { {'M', 'Q', 'T', 'S'}, 5, NULL, NULL, NULL, NULL, NULL, 1, MQTT_SSL_VERSION_DEFAULT, 0, NULL, NULL, NULL, NULL, NULL, 0, NULL, 0 } + +/** Utility structure where name/value pairs are needed */ +typedef struct +{ + const char* name; /**< name string */ + const char* value; /**< value string */ +} MQTTAsync_nameValue; + +/** + * MQTTAsync_connectOptions defines several settings that control the way the + * client connects to an MQTT server. + * + * Suitable default values are set in the following initializers: + * - MQTTAsync_connectOptions_initializer: for MQTT 3.1.1 non-WebSockets + * - MQTTAsync_connectOptions_initializer5: for MQTT 5.0 non-WebSockets + * - MQTTAsync_connectOptions_initializer_ws: for MQTT 3.1.1 WebSockets + * - MQTTAsync_connectOptions_initializer5_ws: for MQTT 5.0 WebSockets + */ +typedef struct +{ + /** The eyecatcher for this structure. must be MQTC. */ + char struct_id[4]; + /** The version number of this structure. Must be 0, 1, 2, 3 4 5 6, 7 or 8. + * 0 signifies no SSL options and no serverURIs + * 1 signifies no serverURIs + * 2 signifies no MQTTVersion + * 3 signifies no automatic reconnect options + * 4 signifies no binary password option (just string) + * 5 signifies no MQTTV5 properties + * 6 signifies no HTTP headers option + * 7 signifies no HTTP proxy and HTTPS proxy options + */ + int struct_version; + /** The "keep alive" interval, measured in seconds, defines the maximum time + * that should pass without communication between the client and the server + * The client will ensure that at least one message travels across the + * network within each keep alive period. In the absence of a data-related + * message during the time period, the client sends a very small MQTT + * "ping" message, which the server will acknowledge. The keep alive + * interval enables the client to detect when the server is no longer + * available without having to wait for the long TCP/IP timeout. + * Set to 0 if you do not want any keep alive processing. + */ + int keepAliveInterval; + /** + * This is a boolean value. The cleansession setting controls the behaviour + * of both the client and the server at connection and disconnection time. + * The client and server both maintain session state information. This + * information is used to ensure "at least once" and "exactly once" + * delivery, and "exactly once" receipt of messages. Session state also + * includes subscriptions created by an MQTT client. You can choose to + * maintain or discard state information between sessions. + * + * When cleansession is true, the state information is discarded at + * connect and disconnect. Setting cleansession to false keeps the state + * information. When you connect an MQTT client application with + * MQTTAsync_connect(), the client identifies the connection using the + * client identifier and the address of the server. The server checks + * whether session information for this client + * has been saved from a previous connection to the server. If a previous + * session still exists, and cleansession=true, then the previous session + * information at the client and server is cleared. If cleansession=false, + * the previous session is resumed. If no previous session exists, a new + * session is started. + */ + int cleansession; + /** + * This controls how many messages can be in-flight simultaneously. + */ + int maxInflight; + /** + * This is a pointer to an MQTTAsync_willOptions structure. If your + * application does not make use of the Last Will and Testament feature, + * set this pointer to NULL. + */ + MQTTAsync_willOptions* will; + /** + * MQTT servers that support the MQTT v3.1 protocol provide authentication + * and authorisation by user name and password. This is the user name + * parameter. + */ + const char* username; + /** + * MQTT servers that support the MQTT v3.1 protocol provide authentication + * and authorisation by user name and password. This is the password + * parameter. + */ + const char* password; + /** + * The time interval in seconds to allow a connect to complete. + */ + int connectTimeout; + /** + * The time interval in seconds after which unacknowledged publish requests are + * retried during a TCP session. With MQTT 3.1.1 and later, retries are + * not required except on reconnect. 0 turns off in-session retries, and is the + * recommended setting. Adding retries to an already overloaded network only + * exacerbates the problem. + */ + int retryInterval; + /** + * This is a pointer to an MQTTAsync_SSLOptions structure. If your + * application does not make use of SSL, set this pointer to NULL. + */ + MQTTAsync_SSLOptions* ssl; + /** + * A pointer to a callback function to be called if the connect successfully + * completes. Can be set to NULL, in which case no indication of successful + * completion will be received. + */ + MQTTAsync_onSuccess* onSuccess; + /** + * A pointer to a callback function to be called if the connect fails. + * Can be set to NULL, in which case no indication of unsuccessful + * completion will be received. + */ + MQTTAsync_onFailure* onFailure; + /** + * A pointer to any application-specific context. The + * the context pointer is passed to success or failure callback functions to + * provide access to the context information in the callback. + */ + void* context; + /** + * The number of entries in the serverURIs array. + */ + int serverURIcount; + /** + * An array of null-terminated strings specifying the servers to + * which the client will connect. Each string takes the form protocol://host:port. + * protocol must be tcp, ssl, ws or wss. + * The TLS enabled prefixes (ssl, wss) are only valid if a TLS version of the library + * is linked with. + * For host, you can + * specify either an IP address or a domain name. For instance, to connect to + * a server running on the local machines with the default MQTT port, specify + * tcp://localhost:1883. + */ + char* const* serverURIs; + /** + * Sets the version of MQTT to be used on the connect. + * MQTTVERSION_DEFAULT (0) = default: start with 3.1.1, and if that fails, fall back to 3.1 + * MQTTVERSION_3_1 (3) = only try version 3.1 + * MQTTVERSION_3_1_1 (4) = only try version 3.1.1 + */ + int MQTTVersion; + /** + * Reconnect automatically in the case of a connection being lost. 0=false, 1=true + */ + int automaticReconnect; + /** + * The minimum automatic reconnect retry interval in seconds. Doubled on each failed retry. + */ + int minRetryInterval; + /** + * The maximum automatic reconnect retry interval in seconds. The doubling stops here on failed retries. + */ + int maxRetryInterval; + /** + * Optional binary password. Only checked and used if the password option is NULL + */ + struct { + int len; /**< binary password length */ + const void* data; /**< binary password data */ + } binarypwd; + /* + * MQTT V5 clean start flag. Only clears state at the beginning of the session. + */ + int cleanstart; + /** + * MQTT V5 properties for connect + */ + MQTTProperties *connectProperties; + /** + * MQTT V5 properties for the will message in the connect + */ + MQTTProperties *willProperties; + /** + * A pointer to a callback function to be called if the connect successfully + * completes. Can be set to NULL, in which case no indication of successful + * completion will be received. + */ + MQTTAsync_onSuccess5* onSuccess5; + /** + * A pointer to a callback function to be called if the connect fails. + * Can be set to NULL, in which case no indication of unsuccessful + * completion will be received. + */ + MQTTAsync_onFailure5* onFailure5; + /** + * HTTP headers for websockets + */ + const MQTTAsync_nameValue* httpHeaders; + /** + * HTTP proxy + */ + const char* httpProxy; + /** + * HTTPS proxy + */ + const char* httpsProxy; +} MQTTAsync_connectOptions; + +/** Initializer for connect options for MQTT 3.1.1 non-WebSocket connections */ +#define MQTTAsync_connectOptions_initializer { {'M', 'Q', 'T', 'C'}, 8, 60, 1, 65535, NULL, NULL, NULL, 30, 0,\ +NULL, NULL, NULL, NULL, 0, NULL, MQTTVERSION_DEFAULT, 0, 1, 60, {0, NULL}, 0, NULL, NULL, NULL, NULL, NULL, NULL, NULL} + +/** Initializer for connect options for MQTT 5.0 non-WebSocket connections */ +#define MQTTAsync_connectOptions_initializer5 { {'M', 'Q', 'T', 'C'}, 8, 60, 0, 65535, NULL, NULL, NULL, 30, 0,\ +NULL, NULL, NULL, NULL, 0, NULL, MQTTVERSION_5, 0, 1, 60, {0, NULL}, 1, NULL, NULL, NULL, NULL, NULL, NULL, NULL} + +/** Initializer for connect options for MQTT 3.1.1 WebSockets connections. + * The keepalive interval is set to 45 seconds to avoid webserver 60 second inactivity timeouts. + */ +#define MQTTAsync_connectOptions_initializer_ws { {'M', 'Q', 'T', 'C'}, 8, 45, 1, 65535, NULL, NULL, NULL, 30, 0,\ +NULL, NULL, NULL, NULL, 0, NULL, MQTTVERSION_DEFAULT, 0, 1, 60, {0, NULL}, 0, NULL, NULL, NULL, NULL, NULL, NULL, NULL} + +/** Initializer for connect options for MQTT 5.0 WebSockets connections. + * The keepalive interval is set to 45 seconds to avoid webserver 60 second inactivity timeouts. + */ +#define MQTTAsync_connectOptions_initializer5_ws { {'M', 'Q', 'T', 'C'}, 8, 45, 0, 65535, NULL, NULL, NULL, 30, 0,\ +NULL, NULL, NULL, NULL, 0, NULL, MQTTVERSION_5, 0, 1, 60, {0, NULL}, 1, NULL, NULL, NULL, NULL, NULL, NULL, NULL} + + +/** + * This function attempts to connect a previously-created client (see + * MQTTAsync_create()) to an MQTT server using the specified options. If you + * want to enable asynchronous message and status notifications, you must call + * MQTTAsync_setCallbacks() prior to MQTTAsync_connect(). + * @param handle A valid client handle from a successful call to + * MQTTAsync_create(). + * @param options A pointer to a valid MQTTAsync_connectOptions + * structure. + * @return ::MQTTASYNC_SUCCESS if the client connect request was accepted. + * If the client was unable to connect to the server, an error code is + * returned via the onFailure callback, if set. + * Error codes greater than 0 are returned by the MQTT protocol:

+ * 1: Connection refused: Unacceptable protocol version
+ * 2: Connection refused: Identifier rejected
+ * 3: Connection refused: Server unavailable
+ * 4: Connection refused: Bad user name or password
+ * 5: Connection refused: Not authorized
+ * 6-255: Reserved for future use
+ */ +LIBMQTT_API int MQTTAsync_connect(MQTTAsync handle, const MQTTAsync_connectOptions* options); + +/** Options for the ::MQTTAsync_disconnect call */ +typedef struct +{ + /** The eyecatcher for this structure. Must be MQTD. */ + char struct_id[4]; + /** The version number of this structure. Must be 0 or 1. 0 signifies no V5 properties */ + int struct_version; + /** + * The client delays disconnection for up to this time (in + * milliseconds) in order to allow in-flight message transfers to complete. + */ + int timeout; + /** + * A pointer to a callback function to be called if the disconnect successfully + * completes. Can be set to NULL, in which case no indication of successful + * completion will be received. + */ + MQTTAsync_onSuccess* onSuccess; + /** + * A pointer to a callback function to be called if the disconnect fails. + * Can be set to NULL, in which case no indication of unsuccessful + * completion will be received. + */ + MQTTAsync_onFailure* onFailure; + /** + * A pointer to any application-specific context. The + * the context pointer is passed to success or failure callback functions to + * provide access to the context information in the callback. + */ + void* context; + /** + * MQTT V5 input properties + */ + MQTTProperties properties; + /** + * Reason code for MQTTV5 disconnect + */ + enum MQTTReasonCodes reasonCode; + /** + * A pointer to a callback function to be called if the disconnect successfully + * completes. Can be set to NULL, in which case no indication of successful + * completion will be received. + */ + MQTTAsync_onSuccess5* onSuccess5; + /** + * A pointer to a callback function to be called if the disconnect fails. + * Can be set to NULL, in which case no indication of unsuccessful + * completion will be received. + */ + MQTTAsync_onFailure5* onFailure5; +} MQTTAsync_disconnectOptions; + +#define MQTTAsync_disconnectOptions_initializer { {'M', 'Q', 'T', 'D'}, 0, 0, NULL, NULL, NULL,\ + MQTTProperties_initializer, MQTTREASONCODE_SUCCESS, NULL, NULL } + +#define MQTTAsync_disconnectOptions_initializer5 { {'M', 'Q', 'T', 'D'}, 1, 0, NULL, NULL, NULL,\ + MQTTProperties_initializer, MQTTREASONCODE_SUCCESS, NULL, NULL } + +/** + * This function attempts to disconnect the client from the MQTT + * server. In order to allow the client time to complete handling of messages + * that are in-flight when this function is called, a timeout period is + * specified. When the timeout period has expired, the client disconnects even + * if there are still outstanding message acknowledgements. + * The next time the client connects to the same server, any QoS 1 or 2 + * messages which have not completed will be retried depending on the + * cleansession settings for both the previous and the new connection (see + * MQTTAsync_connectOptions.cleansession and MQTTAsync_connect()). + * @param handle A valid client handle from a successful call to + * MQTTAsync_create(). + * @param options The client delays disconnection for up to this time (in + * milliseconds) in order to allow in-flight message transfers to complete. + * @return ::MQTTASYNC_SUCCESS if the client successfully disconnects from + * the server. An error code is returned if the client was unable to disconnect + * from the server + */ +LIBMQTT_API int MQTTAsync_disconnect(MQTTAsync handle, const MQTTAsync_disconnectOptions* options); + + +/** + * This function allows the client application to test whether or not a + * client is currently connected to the MQTT server. + * @param handle A valid client handle from a successful call to + * MQTTAsync_create(). + * @return Boolean true if the client is connected, otherwise false. + */ +LIBMQTT_API int MQTTAsync_isConnected(MQTTAsync handle); + + +/** + * This function attempts to subscribe a client to a single topic, which may + * contain wildcards (see @ref wildcard). This call also specifies the + * @ref qos requested for the subscription + * (see also MQTTAsync_subscribeMany()). + * @param handle A valid client handle from a successful call to + * MQTTAsync_create(). + * @param topic The subscription topic, which may include wildcards. + * @param qos The requested quality of service for the subscription. + * @param response A pointer to a response options structure. Used to set callback functions. + * @return ::MQTTASYNC_SUCCESS if the subscription request is successful. + * An error code is returned if there was a problem registering the + * subscription. + */ +LIBMQTT_API int MQTTAsync_subscribe(MQTTAsync handle, const char* topic, int qos, MQTTAsync_responseOptions* response); + + +/** + * This function attempts to subscribe a client to a list of topics, which may + * contain wildcards (see @ref wildcard). This call also specifies the + * @ref qos requested for each topic (see also MQTTAsync_subscribe()). + * @param handle A valid client handle from a successful call to + * MQTTAsync_create(). + * @param count The number of topics for which the client is requesting + * subscriptions. + * @param topic An array (of length count) of pointers to + * topics, each of which may include wildcards. + * @param qos An array (of length count) of @ref qos + * values. qos[n] is the requested QoS for topic[n]. + * @param response A pointer to a response options structure. Used to set callback functions. + * @return ::MQTTASYNC_SUCCESS if the subscription request is successful. + * An error code is returned if there was a problem registering the + * subscriptions. + */ +LIBMQTT_API int MQTTAsync_subscribeMany(MQTTAsync handle, int count, char* const* topic, const int* qos, MQTTAsync_responseOptions* response); + +/** + * This function attempts to remove an existing subscription made by the + * specified client. + * @param handle A valid client handle from a successful call to + * MQTTAsync_create(). + * @param topic The topic for the subscription to be removed, which may + * include wildcards (see @ref wildcard). + * @param response A pointer to a response options structure. Used to set callback functions. + * @return ::MQTTASYNC_SUCCESS if the subscription is removed. + * An error code is returned if there was a problem removing the + * subscription. + */ +LIBMQTT_API int MQTTAsync_unsubscribe(MQTTAsync handle, const char* topic, MQTTAsync_responseOptions* response); + +/** + * This function attempts to remove existing subscriptions to a list of topics + * made by the specified client. + * @param handle A valid client handle from a successful call to + * MQTTAsync_create(). + * @param count The number subscriptions to be removed. + * @param topic An array (of length count) of pointers to the topics of + * the subscriptions to be removed, each of which may include wildcards. + * @param response A pointer to a response options structure. Used to set callback functions. + * @return ::MQTTASYNC_SUCCESS if the subscriptions are removed. + * An error code is returned if there was a problem removing the subscriptions. + */ +LIBMQTT_API int MQTTAsync_unsubscribeMany(MQTTAsync handle, int count, char* const* topic, MQTTAsync_responseOptions* response); + + +/** + * This function attempts to publish a message to a given topic (see also + * ::MQTTAsync_sendMessage()). An ::MQTTAsync_token is issued when + * this function returns successfully if the QoS is greater than 0. + * If the client application needs to + * test for successful delivery of messages, a callback should be set + * (see ::MQTTAsync_onSuccess() and ::MQTTAsync_deliveryComplete()). + * @param handle A valid client handle from a successful call to + * MQTTAsync_create(). + * @param destinationName The topic associated with this message. + * @param payloadlen The length of the payload in bytes. + * @param payload A pointer to the byte array payload of the message. + * @param qos The @ref qos of the message. + * @param retained The retained flag for the message. + * @param response A pointer to an ::MQTTAsync_responseOptions structure. Used to set callback functions. + * This is optional and can be set to NULL. + * @return ::MQTTASYNC_SUCCESS if the message is accepted for publication. + * An error code is returned if there was a problem accepting the message. + */ +LIBMQTT_API int MQTTAsync_send(MQTTAsync handle, const char* destinationName, int payloadlen, const void* payload, int qos, + int retained, MQTTAsync_responseOptions* response); + +/** + * This function attempts to publish a message to a given topic (see also + * MQTTAsync_publish()). An ::MQTTAsync_token is issued when + * this function returns successfully if the QoS is greater than 0. + * If the client application needs to + * test for successful delivery of messages, a callback should be set + * (see ::MQTTAsync_onSuccess() and ::MQTTAsync_deliveryComplete()). + * @param handle A valid client handle from a successful call to + * MQTTAsync_create(). + * @param destinationName The topic associated with this message. + * @param msg A pointer to a valid MQTTAsync_message structure containing + * the payload and attributes of the message to be published. + * @param response A pointer to an ::MQTTAsync_responseOptions structure. Used to set callback functions. + * @return ::MQTTASYNC_SUCCESS if the message is accepted for publication. + * An error code is returned if there was a problem accepting the message. + */ +LIBMQTT_API int MQTTAsync_sendMessage(MQTTAsync handle, const char* destinationName, const MQTTAsync_message* msg, MQTTAsync_responseOptions* response); + + +/** + * This function sets a pointer to an array of tokens for + * messages that are currently in-flight (pending completion). + * + * Important note: The memory used to hold the array of tokens is + * malloc()'d in this function. The client application is responsible for + * freeing this memory when it is no longer required. + * @param handle A valid client handle from a successful call to + * MQTTAsync_create(). + * @param tokens The address of a pointer to an ::MQTTAsync_token. + * When the function returns successfully, the pointer is set to point to an + * array of tokens representing messages pending completion. The last member of + * the array is set to -1 to indicate there are no more tokens. If no tokens + * are pending, the pointer is set to NULL. + * @return ::MQTTASYNC_SUCCESS if the function returns successfully. + * An error code is returned if there was a problem obtaining the list of + * pending tokens. + */ +LIBMQTT_API int MQTTAsync_getPendingTokens(MQTTAsync handle, MQTTAsync_token **tokens); + +/** + * Tests whether a request corresponding to a token is complete. + * + * @param handle A valid client handle from a successful call to + * MQTTAsync_create(). + * @param token An ::MQTTAsync_token associated with a request. + * @return 1 if the request has been completed, 0 if not. + */ +#define MQTTASYNC_TRUE 1 +LIBMQTT_API int MQTTAsync_isComplete(MQTTAsync handle, MQTTAsync_token token); + + +/** + * Waits for a request corresponding to a token to complete. This only works for + * messages with QoS greater than 0. A QoS 0 message has no MQTT token. + * This function will always return ::MQTTASYNC_SUCCESS for a QoS 0 message. + * + * @param handle A valid client handle from a successful call to + * MQTTAsync_create(). + * @param token An ::MQTTAsync_token associated with a request. + * @param timeout the maximum time to wait for completion, in milliseconds + * @return ::MQTTASYNC_SUCCESS if the request has been completed in the time allocated, + * ::MQTTASYNC_FAILURE or ::MQTTASYNC_DISCONNECTED if not. + */ +LIBMQTT_API int MQTTAsync_waitForCompletion(MQTTAsync handle, MQTTAsync_token token, unsigned long timeout); + + +/** + * This function frees memory allocated to an MQTT message, including the + * additional memory allocated to the message payload. The client application + * calls this function when the message has been fully processed. Important + * note: This function does not free the memory allocated to a message + * topic string. It is the responsibility of the client application to free + * this memory using the MQTTAsync_free() library function. + * @param msg The address of a pointer to the ::MQTTAsync_message structure + * to be freed. + */ +LIBMQTT_API void MQTTAsync_freeMessage(MQTTAsync_message** msg); + +/** + * This function frees memory allocated by the MQTT C client library, especially the + * topic name. This is needed on Windows when the client library and application + * program have been compiled with different versions of the C compiler. It is + * thus good policy to always use this function when freeing any MQTT C client- + * allocated memory. + * @param ptr The pointer to the client library storage to be freed. + */ +LIBMQTT_API void MQTTAsync_free(void* ptr); + +/** + * This function is used to allocate memory to be used or freed by the MQTT C client library, + * especially the data in the ::MQTTPersistence_afterRead and ::MQTTPersistence_beforeWrite + * callbacks. This is needed on Windows when the client library and application + * program have been compiled with different versions of the C compiler. + * @param size The size of the memory to be allocated. + */ +LIBMQTT_API void* MQTTAsync_malloc(size_t size); + +/** + * This function frees the memory allocated to an MQTT client (see + * MQTTAsync_create()). It should be called when the client is no longer + * required. + * @param handle A pointer to the handle referring to the ::MQTTAsync + * structure to be freed. + */ +LIBMQTT_API void MQTTAsync_destroy(MQTTAsync* handle); + + + +enum MQTTASYNC_TRACE_LEVELS +{ + MQTTASYNC_TRACE_MAXIMUM = 1, + MQTTASYNC_TRACE_MEDIUM, + MQTTASYNC_TRACE_MINIMUM, + MQTTASYNC_TRACE_PROTOCOL, + MQTTASYNC_TRACE_ERROR, + MQTTASYNC_TRACE_SEVERE, + MQTTASYNC_TRACE_FATAL, +}; + + +/** + * This function sets the level of trace information which will be + * returned in the trace callback. + * @param level the trace level required + */ +LIBMQTT_API void MQTTAsync_setTraceLevel(enum MQTTASYNC_TRACE_LEVELS level); + + +/** + * This is a callback function prototype which must be implemented if you want + * to receive trace information. Do not invoke any other Paho API calls in this + * callback function - unpredictable behavior may result. + * @param level the trace level of the message returned + * @param message the trace message. This is a pointer to a static buffer which + * will be overwritten on each call. You must copy the data if you want to keep + * it for later. + */ +typedef void MQTTAsync_traceCallback(enum MQTTASYNC_TRACE_LEVELS level, char* message); + +/** + * This function sets the trace callback if needed. If set to NULL, + * no trace information will be returned. The default trace level is + * MQTTASYNC_TRACE_MINIMUM. + * @param callback a pointer to the function which will handle the trace information + */ +LIBMQTT_API void MQTTAsync_setTraceCallback(MQTTAsync_traceCallback* callback); + +/** + * This function returns version information about the library. + * no trace information will be returned. The default trace level is + * MQTTASYNC_TRACE_MINIMUM + * @return an array of strings describing the library. The last entry is a NULL pointer. + */ +LIBMQTT_API MQTTAsync_nameValue* MQTTAsync_getVersionInfo(void); + +/** + * Returns a pointer to a string representation of the error code, or NULL. + * Do not free after use. Returns NULL if the error code is unknown. + * @param code the MQTTASYNC_ return code. + * @return a static string representation of the error code. + */ +LIBMQTT_API const char* MQTTAsync_strerror(int code); + + +/*! + * @cond MQTTAsync_main + * @page async Threading + * The client application runs on several threads. + * Processing of handshaking and maintaining + * the network connection is performed in the background. + * This API is thread safe: functions may be called by multiple application + * threads. + * Notifications of status and message reception are provided to the client + * application using callbacks registered with the library by the call to + * MQTTAsync_setCallbacks() (see MQTTAsync_messageArrived(), + * MQTTAsync_connectionLost() and MQTTAsync_deliveryComplete()). + * In addition, some functions allow success and failure callbacks to be set + * for individual requests, in the ::MQTTAsync_responseOptions structure. Applications + * can be written as a chain of callback functions. + * + * @page callbacks Callbacks + * Any function from this API may be used within a callback. It is not advisable to + * use ::MQTTAsync_waitForCompletion within a callback, however, as it is the only + * API call that may take some time to complete, which may cause unpredictable + * behaviour. All the other API calls are intended to complete quickly, starting + * a request in the background, with success or failure notified by other callbacks. + * + * If no callbacks are assigned, this will include the message arrived callback. + * This could be done if the application is a pure publisher, and does + * not subscribe to any topics. If however messages are received, and no message + * arrived callback is set, then those messages will accumulate + * and take up memory, as there is no place for them to be delivered. + * A log message will be written to highlight the issue, but it is up + * to the application to protect against this situation. + * + * @page auto_reconnect Automatic Reconnect + * The ability for the client library to reconnect automatically in the event + * of a connection failure was added in 1.1. The connection lost callback + * allows a flexible response to the loss of a connection, so almost any + * behaviour can be implemented in that way. Automatic reconnect does have the + * advantage of being a little simpler to use. + * + * To switch on automatic reconnect, the connect options field + * automaticReconnect should be set to non-zero. The minimum and maximum times + * before the next connection attempt can also be set, the defaults being 1 and + * 60 seconds. At each failure to reconnect, the retry interval is doubled until + * the maximum value is reached, and there it stays until the connection is + * successfully re-established whereupon it is reset. + * + * When a reconnection attempt is successful, the ::MQTTAsync_connected callback + * function is invoked, if set by calling ::MQTTAsync_setConnected. This allows + * the application to take any actions needed, such as amending subscriptions. + * + * @page offline_publish Publish While Disconnected + * This feature was not originally available because with persistence enabled, + * messages could be stored locally without ever knowing if they could be sent. + * The client application could have created the client with an erroneous broker + * address or port for instance. + * + * To enable messages to be published when the application is disconnected + * ::MQTTAsync_createWithOptions must be used instead of ::MQTTAsync_create to + * create the client object. The ::MQTTAsync_createOptions field sendWhileDisconnected + * must be set to non-zero, and the maxBufferedMessages field set as required - + * the default being 100. + * + * ::MQTTAsync_getPendingTokens can be called to return the ids of the messages + * waiting to be sent, or for which the sending process has not completed. + * + * @page wildcard Subscription wildcards + * Every MQTT message includes a topic that classifies it. MQTT servers use + * topics to determine which subscribers should receive messages published to + * the server. + * + * Consider the server receiving messages from several environmental sensors. + * Each sensor publishes its measurement data as a message with an associated + * topic. Subscribing applications need to know which sensor originally + * published each received message. A unique topic is thus used to identify + * each sensor and measurement type. Topics such as SENSOR1TEMP, + * SENSOR1HUMIDITY, SENSOR2TEMP and so on achieve this but are not very + * flexible. If additional sensors are added to the system at a later date, + * subscribing applications must be modified to receive them. + * + * To provide more flexibility, MQTT supports a hierarchical topic namespace. + * This allows application designers to organize topics to simplify their + * management. Levels in the hierarchy are delimited by the '/' character, + * such as SENSOR/1/HUMIDITY. Publishers and subscribers use these + * hierarchical topics as already described. + * + * For subscriptions, two wildcard characters are supported: + * + * Publishers are not allowed to use the wildcard characters in their topic + * names. + * + * Deciding on your topic hierarchy is an important step in your system design. + * + * @page qos Quality of service + * The MQTT protocol provides three qualities of service for delivering + * messages between clients and servers: "at most once", "at least once" and + * "exactly once". + * + * Quality of service (QoS) is an attribute of an individual message being + * published. An application sets the QoS for a specific message by setting the + * MQTTAsync_message.qos field to the required value. + * + * A subscribing client can set the maximum quality of service a server uses + * to send messages that match the client subscriptions. The + * MQTTAsync_subscribe() and MQTTAsync_subscribeMany() functions set this + * maximum. The QoS of a message forwarded to a subscriber thus might be + * different to the QoS given to the message by the original publisher. + * The lower of the two values is used to forward a message. + * + * The three levels are: + * + * QoS0, At most once: The message is delivered at most once, or it + * may not be delivered at all. Its delivery across the network is not + * acknowledged. The message is not stored. The message could be lost if the + * client is disconnected, or if the server fails. QoS0 is the fastest mode of + * transfer. It is sometimes called "fire and forget". + * + * The MQTT protocol does not require servers to forward publications at QoS0 + * to a client. If the client is disconnected at the time the server receives + * the publication, the publication might be discarded, depending on the + * server implementation. + * + * QoS1, At least once: The message is always delivered at least once. + * It might be delivered multiple times if there is a failure before an + * acknowledgment is received by the sender. The message must be stored + * locally at the sender, until the sender receives confirmation that the + * message has been published by the receiver. The message is stored in case + * the message must be sent again. + * + * QoS2, Exactly once: The message is always delivered exactly once. + * The message must be stored locally at the sender, until the sender receives + * confirmation that the message has been published by the receiver. The + * message is stored in case the message must be sent again. QoS2 is the + * safest, but slowest mode of transfer. A more sophisticated handshaking + * and acknowledgement sequence is used than for QoS1 to ensure no duplication + * of messages occurs. + * @page publish Publication example +@code +#include +#include +#include +#include "MQTTAsync.h" + +#if !defined(_WIN32) +#include +#else +#include +#endif + +#if defined(_WRS_KERNEL) +#include +#endif + +#define ADDRESS "tcp://mqtt.eclipseprojects.io:1883" +#define CLIENTID "ExampleClientPub" +#define TOPIC "MQTT Examples" +#define PAYLOAD "Hello World!" +#define QOS 1 +#define TIMEOUT 10000L + +int finished = 0; + +void connlost(void *context, char *cause) +{ + MQTTAsync client = (MQTTAsync)context; + MQTTAsync_connectOptions conn_opts = MQTTAsync_connectOptions_initializer; + int rc; + + printf("\nConnection lost\n"); + printf(" cause: %s\n", cause); + + printf("Reconnecting\n"); + conn_opts.keepAliveInterval = 20; + conn_opts.cleansession = 1; + if ((rc = MQTTAsync_connect(client, &conn_opts)) != MQTTASYNC_SUCCESS) + { + printf("Failed to start connect, return code %d\n", rc); + finished = 1; + } +} + +void onDisconnectFailure(void* context, MQTTAsync_failureData* response) +{ + printf("Disconnect failed\n"); + finished = 1; +} + +void onDisconnect(void* context, MQTTAsync_successData* response) +{ + printf("Successful disconnection\n"); + finished = 1; +} + +void onSendFailure(void* context, MQTTAsync_failureData* response) +{ + MQTTAsync client = (MQTTAsync)context; + MQTTAsync_disconnectOptions opts = MQTTAsync_disconnectOptions_initializer; + int rc; + + printf("Message send failed token %d error code %d\n", response->token, response->code); + opts.onSuccess = onDisconnect; + opts.onFailure = onDisconnectFailure; + opts.context = client; + if ((rc = MQTTAsync_disconnect(client, &opts)) != MQTTASYNC_SUCCESS) + { + printf("Failed to start disconnect, return code %d\n", rc); + exit(EXIT_FAILURE); + } +} + +void onSend(void* context, MQTTAsync_successData* response) +{ + MQTTAsync client = (MQTTAsync)context; + MQTTAsync_disconnectOptions opts = MQTTAsync_disconnectOptions_initializer; + int rc; + + printf("Message with token value %d delivery confirmed\n", response->token); + opts.onSuccess = onDisconnect; + opts.onFailure = onDisconnectFailure; + opts.context = client; + if ((rc = MQTTAsync_disconnect(client, &opts)) != MQTTASYNC_SUCCESS) + { + printf("Failed to start disconnect, return code %d\n", rc); + exit(EXIT_FAILURE); + } +} + + +void onConnectFailure(void* context, MQTTAsync_failureData* response) +{ + printf("Connect failed, rc %d\n", response ? response->code : 0); + finished = 1; +} + + +void onConnect(void* context, MQTTAsync_successData* response) +{ + MQTTAsync client = (MQTTAsync)context; + MQTTAsync_responseOptions opts = MQTTAsync_responseOptions_initializer; + MQTTAsync_message pubmsg = MQTTAsync_message_initializer; + int rc; + + printf("Successful connection\n"); + opts.onSuccess = onSend; + opts.onFailure = onSendFailure; + opts.context = client; + pubmsg.payload = PAYLOAD; + pubmsg.payloadlen = (int)strlen(PAYLOAD); + pubmsg.qos = QOS; + pubmsg.retained = 0; + if ((rc = MQTTAsync_sendMessage(client, TOPIC, &pubmsg, &opts)) != MQTTASYNC_SUCCESS) + { + printf("Failed to start sendMessage, return code %d\n", rc); + exit(EXIT_FAILURE); + } +} + +int messageArrived(void* context, char* topicName, int topicLen, MQTTAsync_message* m) +{ + // not expecting any messages + return 1; +} + +int main(int argc, char* argv[]) +{ + MQTTAsync client; + MQTTAsync_connectOptions conn_opts = MQTTAsync_connectOptions_initializer; + int rc; + + if ((rc = MQTTAsync_create(&client, ADDRESS, CLIENTID, MQTTCLIENT_PERSISTENCE_NONE, NULL)) != MQTTASYNC_SUCCESS) + { + printf("Failed to create client object, return code %d\n", rc); + exit(EXIT_FAILURE); + } + + if ((rc = MQTTAsync_setCallbacks(client, NULL, connlost, messageArrived, NULL)) != MQTTASYNC_SUCCESS) + { + printf("Failed to set callback, return code %d\n", rc); + exit(EXIT_FAILURE); + } + + conn_opts.keepAliveInterval = 20; + conn_opts.cleansession = 1; + conn_opts.onSuccess = onConnect; + conn_opts.onFailure = onConnectFailure; + conn_opts.context = client; + if ((rc = MQTTAsync_connect(client, &conn_opts)) != MQTTASYNC_SUCCESS) + { + printf("Failed to start connect, return code %d\n", rc); + exit(EXIT_FAILURE); + } + + printf("Waiting for publication of %s\n" + "on topic %s for client with ClientID: %s\n", + PAYLOAD, TOPIC, CLIENTID); + while (!finished) + #if defined(_WIN32) + Sleep(100); + #else + usleep(10000L); + #endif + + MQTTAsync_destroy(&client); + return rc; +} + + * @endcode + * @page subscribe Subscription example +@code +#include +#include +#include +#include "MQTTAsync.h" + +#if !defined(_WIN32) +#include +#else +#include +#endif + +#if defined(_WRS_KERNEL) +#include +#endif + +#define ADDRESS "tcp://mqtt.eclipseprojects.io:1883" +#define CLIENTID "ExampleClientSub" +#define TOPIC "MQTT Examples" +#define PAYLOAD "Hello World!" +#define QOS 1 +#define TIMEOUT 10000L + +int disc_finished = 0; +int subscribed = 0; +int finished = 0; + +void connlost(void *context, char *cause) +{ + MQTTAsync client = (MQTTAsync)context; + MQTTAsync_connectOptions conn_opts = MQTTAsync_connectOptions_initializer; + int rc; + + printf("\nConnection lost\n"); + if (cause) + printf(" cause: %s\n", cause); + + printf("Reconnecting\n"); + conn_opts.keepAliveInterval = 20; + conn_opts.cleansession = 1; + if ((rc = MQTTAsync_connect(client, &conn_opts)) != MQTTASYNC_SUCCESS) + { + printf("Failed to start connect, return code %d\n", rc); + finished = 1; + } +} + + +int msgarrvd(void *context, char *topicName, int topicLen, MQTTAsync_message *message) +{ + printf("Message arrived\n"); + printf(" topic: %s\n", topicName); + printf(" message: %.*s\n", message->payloadlen, (char*)message->payload); + MQTTAsync_freeMessage(&message); + MQTTAsync_free(topicName); + return 1; +} + +void onDisconnectFailure(void* context, MQTTAsync_failureData* response) +{ + printf("Disconnect failed, rc %d\n", response->code); + disc_finished = 1; +} + +void onDisconnect(void* context, MQTTAsync_successData* response) +{ + printf("Successful disconnection\n"); + disc_finished = 1; +} + +void onSubscribe(void* context, MQTTAsync_successData* response) +{ + printf("Subscribe succeeded\n"); + subscribed = 1; +} + +void onSubscribeFailure(void* context, MQTTAsync_failureData* response) +{ + printf("Subscribe failed, rc %d\n", response->code); + finished = 1; +} + + +void onConnectFailure(void* context, MQTTAsync_failureData* response) +{ + printf("Connect failed, rc %d\n", response->code); + finished = 1; +} + + +void onConnect(void* context, MQTTAsync_successData* response) +{ + MQTTAsync client = (MQTTAsync)context; + MQTTAsync_responseOptions opts = MQTTAsync_responseOptions_initializer; + int rc; + + printf("Successful connection\n"); + + printf("Subscribing to topic %s\nfor client %s using QoS%d\n\n" + "Press Q to quit\n\n", TOPIC, CLIENTID, QOS); + opts.onSuccess = onSubscribe; + opts.onFailure = onSubscribeFailure; + opts.context = client; + if ((rc = MQTTAsync_subscribe(client, TOPIC, QOS, &opts)) != MQTTASYNC_SUCCESS) + { + printf("Failed to start subscribe, return code %d\n", rc); + finished = 1; + } +} + + +int main(int argc, char* argv[]) +{ + MQTTAsync client; + MQTTAsync_connectOptions conn_opts = MQTTAsync_connectOptions_initializer; + MQTTAsync_disconnectOptions disc_opts = MQTTAsync_disconnectOptions_initializer; + int rc; + int ch; + + if ((rc = MQTTAsync_create(&client, ADDRESS, CLIENTID, MQTTCLIENT_PERSISTENCE_NONE, NULL)) + != MQTTASYNC_SUCCESS) + { + printf("Failed to create client, return code %d\n", rc); + rc = EXIT_FAILURE; + goto exit; + } + + if ((rc = MQTTAsync_setCallbacks(client, client, connlost, msgarrvd, NULL)) != MQTTASYNC_SUCCESS) + { + printf("Failed to set callbacks, return code %d\n", rc); + rc = EXIT_FAILURE; + goto destroy_exit; + } + + conn_opts.keepAliveInterval = 20; + conn_opts.cleansession = 1; + conn_opts.onSuccess = onConnect; + conn_opts.onFailure = onConnectFailure; + conn_opts.context = client; + if ((rc = MQTTAsync_connect(client, &conn_opts)) != MQTTASYNC_SUCCESS) + { + printf("Failed to start connect, return code %d\n", rc); + rc = EXIT_FAILURE; + goto destroy_exit; + } + + while (!subscribed && !finished) + #if defined(_WIN32) + Sleep(100); + #else + usleep(10000L); + #endif + + if (finished) + goto exit; + + do + { + ch = getchar(); + } while (ch!='Q' && ch != 'q'); + + disc_opts.onSuccess = onDisconnect; + disc_opts.onFailure = onDisconnectFailure; + if ((rc = MQTTAsync_disconnect(client, &disc_opts)) != MQTTASYNC_SUCCESS) + { + printf("Failed to start disconnect, return code %d\n", rc); + rc = EXIT_FAILURE; + goto destroy_exit; + } + while (!disc_finished) + { + #if defined(_WIN32) + Sleep(100); + #else + usleep(10000L); + #endif + } + +destroy_exit: + MQTTAsync_destroy(&client); +exit: + return rc; +} + + * @endcode +* @page tracing Tracing + * + * Runtime tracing can be controlled by environment variables or API calls. + * + * #### Environment variables + * + * Tracing is switched on by setting the MQTT_C_CLIENT_TRACE environment variable. + * A value of ON, or stdout, prints to stdout, any other value is interpreted as a file name to use. + * + * The amount of trace detail is controlled with the MQTT_C_CLIENT_TRACE_LEVEL environment + * variable - valid values are ERROR, PROTOCOL, MINIMUM, MEDIUM and MAXIMUM + * (from least to most verbose). + * + * The variable MQTT_C_CLIENT_TRACE_MAX_LINES limits the number of lines of trace that are output + * to a file. Two files are used at most, when they are full, the last one is overwritten with the + * new trace entries. The default size is 1000 lines. + * + * #### Trace API calls + * + * MQTTAsync_traceCallback() is used to set a callback function which is called whenever trace + * information is available. This will be the same information as that printed if the + * environment variables were used to control the trace. + * + * The MQTTAsync_setTraceLevel() calls is used to set the maximum level of trace entries that will be + * passed to the callback function. The levels are: + * 1. ::MQTTASYNC_TRACE_MAXIMUM + * 2. ::MQTTASYNC_TRACE_MEDIUM + * 3. ::MQTTASYNC_TRACE_MINIMUM + * 4. ::MQTTASYNC_TRACE_PROTOCOL + * 5. ::MQTTASYNC_TRACE_ERROR + * 6. ::MQTTASYNC_TRACE_SEVERE + * 7. ::MQTTASYNC_TRACE_FATAL + * + * Selecting ::MQTTASYNC_TRACE_MAXIMUM will cause all trace entries at all levels to be returned. + * Choosing ::MQTTASYNC_TRACE_ERROR will cause ERROR, SEVERE and FATAL trace entries to be returned + * to the callback function. + * + * ### MQTT Packet Tracing + * + * A feature that can be very useful is printing the MQTT packets that are sent and received. To + * achieve this, use the following environment variable settings: + * @code + MQTT_C_CLIENT_TRACE=ON + MQTT_C_CLIENT_TRACE_LEVEL=PROTOCOL + * @endcode + * The output you should see looks like this: + * @code + 20130528 155936.813 3 stdout-subscriber -> CONNECT cleansession: 1 (0) + 20130528 155936.813 3 stdout-subscriber <- CONNACK rc: 0 + 20130528 155936.813 3 stdout-subscriber -> SUBSCRIBE msgid: 1 (0) + 20130528 155936.813 3 stdout-subscriber <- SUBACK msgid: 1 + 20130528 155941.818 3 stdout-subscriber -> DISCONNECT (0) + * @endcode + * where the fields are: + * 1. date + * 2. time + * 3. socket number + * 4. client id + * 5. direction (-> from client to server, <- from server to client) + * 6. packet details + * + * ### Default Level Tracing + * + * This is an extract of a default level trace of a call to connect: + * @code + 19700101 010000.000 (1152206656) (0)> MQTTClient_connect:893 + 19700101 010000.000 (1152206656) (1)> MQTTClient_connectURI:716 + 20130528 160447.479 Connecting to serverURI localhost:1883 + 20130528 160447.479 (1152206656) (2)> MQTTProtocol_connect:98 + 20130528 160447.479 (1152206656) (3)> MQTTProtocol_addressPort:48 + 20130528 160447.479 (1152206656) (3)< MQTTProtocol_addressPort:73 + 20130528 160447.479 (1152206656) (3)> Socket_new:599 + 20130528 160447.479 New socket 4 for localhost, port 1883 + 20130528 160447.479 (1152206656) (4)> Socket_addSocket:163 + 20130528 160447.479 (1152206656) (5)> Socket_setnonblocking:73 + 20130528 160447.479 (1152206656) (5)< Socket_setnonblocking:78 (0) + 20130528 160447.479 (1152206656) (4)< Socket_addSocket:176 (0) + 20130528 160447.479 (1152206656) (4)> Socket_error:95 + 20130528 160447.479 (1152206656) (4)< Socket_error:104 (115) + 20130528 160447.479 Connect pending + 20130528 160447.479 (1152206656) (3)< Socket_new:683 (115) + 20130528 160447.479 (1152206656) (2)< MQTTProtocol_connect:131 (115) + * @endcode + * where the fields are: + * 1. date + * 2. time + * 3. thread id + * 4. function nesting level + * 5. function entry (>) or exit (<) + * 6. function name : line of source code file + * 7. return value (if there is one) + * + * ### Memory Allocation Tracing + * + * Setting the trace level to maximum causes memory allocations and frees to be traced along with + * the default trace entries, with messages like the following: + * @code + 20130528 161819.657 Allocating 16 bytes in heap at file /home/icraggs/workspaces/mqrtc/mqttv3c/src/MQTTPacket.c line 177 ptr 0x179f930 + + 20130528 161819.657 Freeing 16 bytes in heap at file /home/icraggs/workspaces/mqrtc/mqttv3c/src/MQTTPacket.c line 201, heap use now 896 bytes + * @endcode + * When the last MQTT client object is destroyed, if the trace is being recorded + * and all memory allocated by the client library has not been freed, an error message will be + * written to the trace. This can help with fixing memory leaks. The message will look like this: + * @code + 20130528 163909.208 Some memory not freed at shutdown, possible memory leak + 20130528 163909.208 Heap scan start, total 880 bytes + 20130528 163909.208 Heap element size 32, line 354, file /home/icraggs/workspaces/mqrtc/mqttv3c/src/MQTTPacket.c, ptr 0x260cb00 + 20130528 163909.208 Content + 20130528 163909.209 Heap scan end + * @endcode + * @endcond + */ + +#if defined(__cplusplus) + } +#endif + +#endif diff --git a/include/paho-mqtt/MQTTClient.h b/include/paho-mqtt/MQTTClient.h new file mode 100644 index 0000000..8d6a32a --- /dev/null +++ b/include/paho-mqtt/MQTTClient.h @@ -0,0 +1,1972 @@ +/******************************************************************************* + * Copyright (c) 2009, 2022 IBM Corp., Ian Craggs and others + * + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v2.0 + * and Eclipse Distribution License v1.0 which accompany this distribution. + * + * The Eclipse Public License is available at + * https://www.eclipse.org/legal/epl-2.0/ + * and the Eclipse Distribution License is available at + * http://www.eclipse.org/org/documents/edl-v10.php. + * + * Contributors: + * Ian Craggs - initial API and implementation and/or initial documentation + * Ian Craggs, Allan Stockdill-Mander - SSL updates + * Ian Craggs - multiple server connection support + * Ian Craggs - MQTT 3.1.1 support + * Ian Craggs - remove const from eyecatchers #168 + *******************************************************************************/ + +/** + * @cond MQTTClient_internal + * @mainpage MQTT Client Library Internals + * In the beginning there was one MQTT C client library, MQTTClient, as implemented in MQTTClient.c + * This library was designed to be easy to use for applications which didn't mind if some of the calls + * blocked for a while. For instance, the MQTTClient_connect call will block until a successful + * connection has completed, or a connection has failed, which could be as long as the "connection + * timeout" interval, whose default is 30 seconds. + * + * However in mobile devices and other windowing environments, blocking on the GUI thread is a bad + * thing as it causes the user interface to freeze. Hence a new API, MQTTAsync, implemented + * in MQTTAsync.c, was devised. There are no blocking calls in this library, so it is well suited + * to GUI and mobile environments, at the expense of some extra complexity. + * + * Both libraries are designed to be sparing in the use of threads. So multiple client objects are + * handled by one or two threads, with a select call in Socket_getReadySocket(), used to determine + * when a socket has incoming data. This API is thread safe: functions may be called by multiple application + * threads, with the exception of ::MQTTClient_yield and ::MQTTClient_receive, which are intended + * for single threaded environments only. + * + * @endcond + * @cond MQTTClient_main + * @mainpage MQTT Client library for C (MQTTClient) + * © Copyright 2009, 2022 IBM Corp., Ian Craggs and others + * + * @brief An MQTT client library in C. + * + * These pages describe the original more synchronous API which might be + * considered easier to use. Some of the calls will block. For the new + * totally asynchronous API where no calls block, which is especially suitable + * for use in windowed environments, see the + * MQTT C Client Asynchronous API Documentation. + * The MQTTClient API is not thread safe, whereas the MQTTAsync API is. + * + * An MQTT client application connects to MQTT-capable servers. + * A typical client is responsible for collecting information from a telemetry + * device and publishing the information to the server. It can also subscribe + * to topics, receive messages, and use this information to control the + * telemetry device. + * + * MQTT clients implement the published MQTT v3 protocol. You can write your own + * API to the MQTT protocol using the programming language and platform of your + * choice. This can be time-consuming and error-prone. + * + * To simplify writing MQTT client applications, this library encapsulates + * the MQTT v3 protocol for you. Using this library enables a fully functional + * MQTT client application to be written in a few lines of code. + * The information presented here documents the API provided + * by the MQTT Client library for C. + * + * Using the client
+ * Applications that use the client library typically use a similar structure: + *
    + *
  • Create a client object
  • + *
  • Set the options to connect to an MQTT server
  • + *
  • Set up callback functions if multi-threaded (asynchronous mode) + * operation is being used (see @ref async).
  • + *
  • Subscribe to any topics the client needs to receive
  • + *
  • Repeat until finished:
  • + *
      + *
    • Publish any messages the client needs to
    • + *
    • Handle any incoming messages
    • + *
    + *
  • Disconnect the client
  • + *
  • Free any memory being used by the client
  • + *
+ * Some simple examples are shown here: + *
    + *
  • @ref pubsync
  • + *
  • @ref pubasync
  • + *
  • @ref subasync
  • + *
+ * Additional information about important concepts is provided here: + *
    + *
  • @ref async
  • + *
  • @ref callbacks
  • + *
  • @ref wildcard
  • + *
  • @ref qos
  • + *
  • @ref tracing
  • + *
+ * @endcond + */ + +/* +/// @cond EXCLUDE +*/ +#if !defined(MQTTCLIENT_H) +#define MQTTCLIENT_H + +#if defined(__cplusplus) + extern "C" { +#endif + +#include +/* +/// @endcond +*/ + +#include "MQTTExportDeclarations.h" + +#include "MQTTProperties.h" +#include "MQTTReasonCodes.h" +#include "MQTTSubscribeOpts.h" +#if !defined(NO_PERSISTENCE) +#include "MQTTClientPersistence.h" +#endif + +/** + * Return code: No error. Indicates successful completion of an MQTT client + * operation. + */ +#define MQTTCLIENT_SUCCESS 0 +/** + * Return code: A generic error code indicating the failure of an MQTT client + * operation. + */ +#define MQTTCLIENT_FAILURE -1 + +/* error code -2 is MQTTCLIENT_PERSISTENCE_ERROR */ + +/** + * Return code: The client is disconnected. + */ +#define MQTTCLIENT_DISCONNECTED -3 +/** + * Return code: The maximum number of messages allowed to be simultaneously + * in-flight has been reached. + */ +#define MQTTCLIENT_MAX_MESSAGES_INFLIGHT -4 +/** + * Return code: An invalid UTF-8 string has been detected. + */ +#define MQTTCLIENT_BAD_UTF8_STRING -5 +/** + * Return code: A NULL parameter has been supplied when this is invalid. + */ +#define MQTTCLIENT_NULL_PARAMETER -6 +/** + * Return code: The topic has been truncated (the topic string includes + * embedded NULL characters). String functions will not access the full topic. + * Use the topic length value to access the full topic. + */ +#define MQTTCLIENT_TOPICNAME_TRUNCATED -7 +/** + * Return code: A structure parameter does not have the correct eyecatcher + * and version number. + */ +#define MQTTCLIENT_BAD_STRUCTURE -8 +/** + * Return code: A QoS value that falls outside of the acceptable range (0,1,2) + */ +#define MQTTCLIENT_BAD_QOS -9 +/** + * Return code: Attempting SSL connection using non-SSL version of library + */ +#define MQTTCLIENT_SSL_NOT_SUPPORTED -10 + /** + * Return code: unrecognized MQTT version + */ + #define MQTTCLIENT_BAD_MQTT_VERSION -11 +/** + * Return code: protocol prefix in serverURI should be: + * @li @em tcp:// or @em mqtt:// - Insecure TCP + * @li @em ssl:// or @em mqtts:// - Encrypted SSL/TLS + * @li @em ws:// - Insecure websockets + * @li @em wss:// - Secure web sockets + * The TLS enabled prefixes (ssl, mqtts, wss) are only valid if a TLS + * version of the library is linked with. + */ +#define MQTTCLIENT_BAD_PROTOCOL -14 + /** + * Return code: option not applicable to the requested version of MQTT + */ + #define MQTTCLIENT_BAD_MQTT_OPTION -15 + /** + * Return code: call not applicable to the requested version of MQTT + */ + #define MQTTCLIENT_WRONG_MQTT_VERSION -16 + /** + * Return code: 0 length will topic on connect + */ + #define MQTTCLIENT_0_LEN_WILL_TOPIC -17 + + +/** + * Default MQTT version to connect with. Use 3.1.1 then fall back to 3.1 + */ +#define MQTTVERSION_DEFAULT 0 +/** + * MQTT version to connect with: 3.1 + */ +#define MQTTVERSION_3_1 3 +/** + * MQTT version to connect with: 3.1.1 + */ +#define MQTTVERSION_3_1_1 4 + /** + * MQTT version to connect with: 5 + */ + #define MQTTVERSION_5 5 +/** + * Bad return code from subscribe, as defined in the 3.1.1 specification + */ +#define MQTT_BAD_SUBSCRIBE 0x80 + +/** + * Initialization options + */ +typedef struct +{ + /** The eyecatcher for this structure. Must be MQTG. */ + char struct_id[4]; + /** The version number of this structure. Must be 0 */ + int struct_version; + /** 1 = we do openssl init, 0 = leave it to the application */ + int do_openssl_init; +} MQTTClient_init_options; + +#define MQTTClient_init_options_initializer { {'M', 'Q', 'T', 'G'}, 0, 0 } + +/** + * Global init of mqtt library. Call once on program start to set global behaviour. + * do_openssl_init - if mqtt library should initialize OpenSSL (1) or rely on the caller to do it before using the library (0) + */ +LIBMQTT_API void MQTTClient_global_init(MQTTClient_init_options* inits); + +/** + * A handle representing an MQTT client. A valid client handle is available + * following a successful call to MQTTClient_create(). + */ +typedef void* MQTTClient; +/** + * A value representing an MQTT message. A delivery token is returned to the + * client application when a message is published. The token can then be used to + * check that the message was successfully delivered to its destination (see + * MQTTClient_publish(), + * MQTTClient_publishMessage(), + * MQTTClient_deliveryComplete(), + * MQTTClient_waitForCompletion() and + * MQTTClient_getPendingDeliveryTokens()). + */ +typedef int MQTTClient_deliveryToken; +typedef int MQTTClient_token; + +/** + * A structure representing the payload and attributes of an MQTT message. The + * message topic is not part of this structure (see MQTTClient_publishMessage(), + * MQTTClient_publish(), MQTTClient_receive(), MQTTClient_freeMessage() + * and MQTTClient_messageArrived()). + */ +typedef struct +{ + /** The eyecatcher for this structure. must be MQTM. */ + char struct_id[4]; + /** The version number of this structure. Must be 0 or 1 + * 0 indicates no message properties */ + int struct_version; + /** The length of the MQTT message payload in bytes. */ + int payloadlen; + /** A pointer to the payload of the MQTT message. */ + void* payload; + /** + * 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.
+ *
+ */ + int qos; + /** + * 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. + */ + int retained; + /** + * 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. + */ + int dup; + /** The message identifier is normally reserved for internal use by the + * MQTT client and server. + */ + int msgid; + /** + * The MQTT V5 properties associated with the message. + */ + MQTTProperties properties; +} MQTTClient_message; + +#define MQTTClient_message_initializer { {'M', 'Q', 'T', 'M'}, 1, 0, NULL, 0, 0, 0, 0, MQTTProperties_initializer } + +/** + * This is a callback function. The client application + * must provide an implementation of this function to enable asynchronous + * receipt of messages. The function is registered with the client library by + * passing it as an argument to MQTTClient_setCallbacks(). It is + * called by the client library when a new message that matches a client + * subscription has been received from the server. This function is executed on + * a separate thread to the one on which the client application is running. + * @param context A pointer to the context value originally passed to + * MQTTClient_setCallbacks(), which contains any application-specific context. + * @param topicName The topic associated with the received message. + * @param topicLen The length of the topic if there are one + * more NULL characters embedded in topicName, otherwise topicLen + * is 0. If topicLen is 0, the value returned by strlen(topicName) + * can be trusted. If topicLen is greater than 0, the full topic name + * can be retrieved by accessing topicName as a byte array of length + * topicLen. + * @param message The MQTTClient_message structure for the received message. + * This structure contains the message payload and attributes. + * @return This function must return 0 or 1 indicating whether or not + * the message has been safely received by the client application.
+ * Returning 1 indicates that the message has been successfully handled. + * To free the message storage, ::MQTTClient_freeMessage must be called. + * To free the topic name storage, ::MQTTClient_free must be called.
+ * Returning 0 indicates that there was a problem. In this + * case, the client library will reinvoke MQTTClient_messageArrived() to + * attempt to deliver the message to the application again. + * Do not free the message and topic storage when returning 0, otherwise + * the redelivery will fail. + */ +typedef int MQTTClient_messageArrived(void* context, char* topicName, int topicLen, MQTTClient_message* message); + +/** + * This is a callback function. The client application + * must provide an implementation of this function to enable asynchronous + * notification of delivery of messages. The function is registered with the + * client library by passing it as an argument to MQTTClient_setCallbacks(). + * It is called by the client library after the client application has + * published a message to the server. It indicates that the necessary + * handshaking and acknowledgements for the requested quality of service (see + * MQTTClient_message.qos) have been completed. This function is executed on a + * separate thread to the one on which the client application is running. + * Note:MQTTClient_deliveryComplete() is not called when messages are + * published at QoS0. + * @param context A pointer to the context value originally passed to + * MQTTClient_setCallbacks(), which contains any application-specific context. + * @param dt The ::MQTTClient_deliveryToken associated with + * the published message. Applications can check that all messages have been + * correctly published by matching the delivery tokens returned from calls to + * MQTTClient_publish() and MQTTClient_publishMessage() with the tokens passed + * to this callback. + */ +typedef void MQTTClient_deliveryComplete(void* context, MQTTClient_deliveryToken dt); + +/** + * This is a callback function. The client application + * must provide an implementation of this function to enable asynchronous + * notification of the loss of connection to the server. The function is + * registered with the client library by passing it as an argument to + * MQTTClient_setCallbacks(). It is called by the client library if the client + * loses its connection to the server. The client application must take + * appropriate action, such as trying to reconnect or reporting the problem. + * This function is executed on a separate thread to the one on which the + * client application is running. + * @param context A pointer to the context value originally passed to + * MQTTClient_setCallbacks(), which contains any application-specific context. + * @param cause The reason for the disconnection. + * Currently, cause is always set to NULL. + */ +typedef void MQTTClient_connectionLost(void* context, char* cause); + +/** + * This function sets the callback functions for a specific client. + * If your client application doesn't use a particular callback, set the + * relevant parameter to NULL. Calling MQTTClient_setCallbacks() puts the + * client into multi-threaded mode. Any necessary message acknowledgements and + * status communications are handled in the background without any intervention + * from the client application. See @ref async for more information. + * + * Note: The MQTT client must be disconnected when this function is + * called. + * @param handle A valid client handle from a successful call to + * MQTTClient_create(). + * @param context A pointer to any application-specific context. The + * the context pointer is passed to each of the callback functions to + * provide access to the context information in the callback. + * @param cl A pointer to an MQTTClient_connectionLost() callback + * function. You can set this to NULL if your application doesn't handle + * disconnections. + * @param ma A pointer to an MQTTClient_messageArrived() callback + * function. This callback function must be set when you call + * MQTTClient_setCallbacks(), as otherwise there would be nowhere to deliver + * any incoming messages. + * @param dc A pointer to an MQTTClient_deliveryComplete() callback + * function. You can set this to NULL if your application publishes + * synchronously or if you do not want to check for successful delivery. + * @return ::MQTTCLIENT_SUCCESS if the callbacks were correctly set, + * ::MQTTCLIENT_FAILURE if an error occurred. + */ +LIBMQTT_API int MQTTClient_setCallbacks(MQTTClient handle, void* context, MQTTClient_connectionLost* cl, + MQTTClient_messageArrived* ma, MQTTClient_deliveryComplete* dc); + + +/** + * This is a callback function, which will be called when the a disconnect + * packet is received from the server. This applies to MQTT V5 and above only. + * @param context A pointer to the context value originally passed to + * ::MQTTClient_setDisconnected(), which contains any application-specific context. + * @param properties The MQTT V5 properties received with the disconnect, if any. + * @param reasonCode The MQTT V5 reason code received with the disconnect. + * Currently, cause is always set to NULL. + */ +typedef void MQTTClient_disconnected(void* context, MQTTProperties* properties, + enum MQTTReasonCodes reasonCode); + +/** + * Sets the MQTTClient_disconnected() callback function for a client. This will be called + * if a disconnect packet is received from the server. Only valid for MQTT V5 and above. + * @param handle A valid client handle from a successful call to + * MQTTClient_create(). + * @param context A pointer to any application-specific context. The + * the context pointer is passed to each of the callback functions to + * provide access to the context information in the callback. + * @param co A pointer to an MQTTClient_disconnected() callback + * function. NULL removes the callback setting. + * @return ::MQTTCLIENT_SUCCESS if the callbacks were correctly set, + * ::MQTTCLIENT_FAILURE if an error occurred. + */ +LIBMQTT_API int MQTTClient_setDisconnected(MQTTClient handle, void* context, MQTTClient_disconnected* co); + +/** + * This is a callback function, the MQTT V5 version of MQTTClient_deliveryComplete(). + * The client application + * must provide an implementation of this function to enable asynchronous + * notification of the completed delivery of messages. + * It is called by the client library after the client application has + * published a message to the server. It indicates that the necessary + * handshaking and acknowledgements for the requested quality of service (see + * MQTTClient_message.qos) have been completed. This function is executed on a + * separate thread to the one on which the client application is running. + * Note: It is not called when messages are published at QoS0. + * @param context A pointer to the context value originally passed to + * MQTTClient_setCallbacks(), which contains any application-specific context. + * @param dt The ::MQTTClient_deliveryToken associated with + * the published message. Applications can check that all messages have been + * correctly published by matching the delivery tokens returned from calls to + * MQTTClient_publish() and MQTTClient_publishMessage() with the tokens passed + * to this callback. + * @param packet_type the last received packet type for this completion. For QoS 1 + * always PUBACK. For QoS 2 could be PUBREC or PUBCOMP. + * @param properties the MQTT V5 properties returned with the last packet from the server + * @param reasonCode the reason code returned from the server + */ +typedef void MQTTClient_published(void* context, int dt, int packet_type, MQTTProperties* properties, + enum MQTTReasonCodes reasonCode); + +LIBMQTT_API int MQTTClient_setPublished(MQTTClient handle, void* context, MQTTClient_published* co); + +/** + * This function creates an MQTT client ready for connection to the + * specified server and using the specified persistent storage (see + * MQTTClient_persistence). See also MQTTClient_destroy(). + * @param handle A pointer to an ::MQTTClient handle. The handle is + * populated with a valid client reference following a successful return from + * this function. + * @param serverURI A null-terminated string specifying the server to + * which the client will connect. It takes the form protocol://host:port. + * Currently, protocol must be: + *
+ * @em tcp:// or @em mqtt:// - Insecure TCP + *
+ * @em ssl:// or @em mqtts:// - Encrypted SSL/TLS + *
+ * @em ws:// - Insecure websockets + *
+ * @em wss:// - Secure web sockets + *
+ * The TLS enabled prefixes (ssl, mqtts, wss) are only valid if a TLS + * version of the library is linked with. + * For host, you can specify either an IP address or a host name. For + * instance, to connect to a server running on the local machines with the + * default MQTT port, specify tcp://localhost:1883. + * @param clientId The client identifier passed to the server when the + * client connects to it. It is a null-terminated UTF-8 encoded string. + * @param persistence_type The type of persistence to be used by the client: + *
+ * ::MQTTCLIENT_PERSISTENCE_NONE: Use in-memory persistence. If the device or + * system on which the client is running fails or is switched off, the current + * state of any in-flight messages is lost and some messages may not be + * delivered even at QoS1 and QoS2. + *
+ * ::MQTTCLIENT_PERSISTENCE_DEFAULT: Use the default (file system-based) + * persistence mechanism. Status about in-flight messages is held in persistent + * storage and provides some protection against message loss in the case of + * unexpected failure. + *
+ * ::MQTTCLIENT_PERSISTENCE_USER: Use an application-specific persistence + * implementation. Using this type of persistence gives control of the + * persistence mechanism to the application. The application has to implement + * the MQTTClient_persistence interface. + * @param persistence_context If the application uses + * ::MQTTCLIENT_PERSISTENCE_NONE persistence, this argument is unused and should + * be set to NULL. For ::MQTTCLIENT_PERSISTENCE_DEFAULT persistence, it + * should be set to the location of the persistence directory (if set + * to NULL, the persistence directory used is the working directory). + * Applications that use ::MQTTCLIENT_PERSISTENCE_USER persistence set this + * argument to point to a valid MQTTClient_persistence structure. + * @return ::MQTTCLIENT_SUCCESS if the client is successfully created, otherwise + * an error code is returned. + */ +LIBMQTT_API int MQTTClient_create(MQTTClient* handle, const char* serverURI, const char* clientId, + int persistence_type, void* persistence_context); + +/** Options for the ::MQTTClient_createWithOptions call */ +typedef struct +{ + /** The eyecatcher for this structure. must be MQCO. */ + char struct_id[4]; + /** The version number of this structure. Must be 0 */ + int struct_version; + /** Whether the MQTT version is 3.1, 3.1.1, or 5. To use V5, this must be set. + * MQTT V5 has to be chosen here, because during the create call the message persistence + * is initialized, and we want to know whether the format of any persisted messages + * is appropriate for the MQTT version we are going to connect with. Selecting 3.1 or + * 3.1.1 and attempting to read 5.0 persisted messages will result in an error on create. */ + int MQTTVersion; +} MQTTClient_createOptions; + +#define MQTTClient_createOptions_initializer { {'M', 'Q', 'C', 'O'}, 0, MQTTVERSION_DEFAULT } + +/** + * A version of :MQTTClient_create() with additional options. + * This function creates an MQTT client ready for connection to the + * specified server and using the specified persistent storage (see + * MQTTClient_persistence). See also MQTTClient_destroy(). + * @param handle A pointer to an ::MQTTClient handle. The handle is + * populated with a valid client reference following a successful return from + * this function. + * @param serverURI A null-terminated string specifying the server to + * which the client will connect. It takes the form protocol://host:port. + * Currently, protocol must be tcp or ssl. + * For host, you can + * specify either an IP address or a host name. For instance, to connect to + * a server running on the local machines with the default MQTT port, specify + * tcp://localhost:1883. + * @param clientId The client identifier passed to the server when the + * client connects to it. It is a null-terminated UTF-8 encoded string. + * @param persistence_type The type of persistence to be used by the client: + *
+ * ::MQTTCLIENT_PERSISTENCE_NONE: Use in-memory persistence. If the device or + * system on which the client is running fails or is switched off, the current + * state of any in-flight messages is lost and some messages may not be + * delivered even at QoS1 and QoS2. + *
+ * ::MQTTCLIENT_PERSISTENCE_DEFAULT: Use the default (file system-based) + * persistence mechanism. Status about in-flight messages is held in persistent + * storage and provides some protection against message loss in the case of + * unexpected failure. + *
+ * ::MQTTCLIENT_PERSISTENCE_USER: Use an application-specific persistence + * implementation. Using this type of persistence gives control of the + * persistence mechanism to the application. The application has to implement + * the MQTTClient_persistence interface. + * @param persistence_context If the application uses + * ::MQTTCLIENT_PERSISTENCE_NONE persistence, this argument is unused and should + * be set to NULL. For ::MQTTCLIENT_PERSISTENCE_DEFAULT persistence, it + * should be set to the location of the persistence directory (if set + * to NULL, the persistence directory used is the working directory). + * Applications that use ::MQTTCLIENT_PERSISTENCE_USER persistence set this + * argument to point to a valid MQTTClient_persistence structure. + * @param options additional options for the create. + * @return ::MQTTCLIENT_SUCCESS if the client is successfully created, otherwise + * an error code is returned. + */ +LIBMQTT_API int MQTTClient_createWithOptions(MQTTClient* handle, const char* serverURI, const char* clientId, + int persistence_type, void* persistence_context, MQTTClient_createOptions* options); + +/** + * MQTTClient_willOptions defines the MQTT "Last Will and Testament" (LWT) settings for + * the client. In the event that a client unexpectedly loses its connection to + * the server, the server publishes the LWT message to the LWT topic on + * behalf of the client. This allows other clients (subscribed to the LWT topic) + * to be made aware that the client has disconnected. To enable the LWT + * function for a specific client, a valid pointer to an MQTTClient_willOptions + * structure is passed in the MQTTClient_connectOptions structure used in the + * MQTTClient_connect() call that connects the client to the server. The pointer + * to MQTTClient_willOptions can be set to NULL if the LWT function is not + * required. + */ +typedef struct +{ + /** The eyecatcher for this structure. must be MQTW. */ + char struct_id[4]; + /** The version number of this structure. Must be 0 or 1 + 0 means there is no binary payload option + */ + int struct_version; + /** The LWT topic to which the LWT message will be published. */ + const char* topicName; + /** The LWT payload in string form. */ + const char* message; + /** + * The retained flag for the LWT message (see MQTTClient_message.retained). + */ + int retained; + /** + * The quality of service setting for the LWT message (see + * MQTTClient_message.qos and @ref qos). + */ + int qos; + /** The LWT payload in binary form. This is only checked and used if the message option is NULL */ + struct + { + int len; /**< binary payload length */ + const void* data; /**< binary payload data */ + } payload; +} MQTTClient_willOptions; + +#define MQTTClient_willOptions_initializer { {'M', 'Q', 'T', 'W'}, 1, NULL, NULL, 0, 0, {0, NULL} } + +#define MQTT_SSL_VERSION_DEFAULT 0 +#define MQTT_SSL_VERSION_TLS_1_0 1 +#define MQTT_SSL_VERSION_TLS_1_1 2 +#define MQTT_SSL_VERSION_TLS_1_2 3 + +/** +* MQTTClient_sslProperties defines the settings to establish an SSL/TLS connection using the +* OpenSSL library. It covers the following scenarios: +* - Server authentication: The client needs the digital certificate of the server. It is included +* in a store containting trusted material (also known as "trust store"). +* - Mutual authentication: Both client and server are authenticated during the SSL handshake. In +* addition to the digital certificate of the server in a trust store, the client will need its own +* digital certificate and the private key used to sign its digital certificate stored in a "key store". +* - Anonymous connection: Both client and server do not get authenticated and no credentials are needed +* to establish an SSL connection. Note that this scenario is not fully secure since it is subject to +* man-in-the-middle attacks. +*/ +typedef struct +{ + /** The eyecatcher for this structure. Must be MQTS */ + char struct_id[4]; + + /** The version number of this structure. Must be 0, 1, 2, 3, 4 or 5. + * 0 means no sslVersion + * 1 means no verify, CApath + * 2 means no ssl_error_context, ssl_error_cb + * 3 means no ssl_psk_cb, ssl_psk_context, disableDefaultTrustStore + * 4 means no protos, protos_len + */ + int struct_version; + + /** The file in PEM format containing the public digital certificates trusted by the client. */ + const char* trustStore; + + /** The file in PEM format containing the public certificate chain of the client. It may also include + * the client's private key. + */ + const char* keyStore; + + /** If not included in the sslKeyStore, this setting points to the file in PEM format containing + * the client's private key. + */ + const char* privateKey; + + /** The password to load the client's privateKey if encrypted. */ + const char* privateKeyPassword; + + /** + * The list of cipher suites that the client will present to the server during the SSL handshake. For a + * full explanation of the cipher list format, please see the OpenSSL on-line documentation: + * http://www.openssl.org/docs/apps/ciphers.html#CIPHER_LIST_FORMAT + * If this setting is ommitted, its default value will be "ALL", that is, all the cipher suites -excluding + * those offering no encryption- will be considered. + * This setting can be used to set an SSL anonymous connection ("aNULL" string value, for instance). + */ + const char* enabledCipherSuites; + + /** True/False option to enable verification of the server certificate **/ + int enableServerCertAuth; + + /** The SSL/TLS version to use. Specify one of MQTT_SSL_VERSION_DEFAULT (0), + * MQTT_SSL_VERSION_TLS_1_0 (1), MQTT_SSL_VERSION_TLS_1_1 (2) or MQTT_SSL_VERSION_TLS_1_2 (3). + * Only used if struct_version is >= 1. + */ + int sslVersion; + + /** + * Whether to carry out post-connect checks, including that a certificate + * matches the given host name. + * Exists only if struct_version >= 2 + */ + int verify; + + /** + * From the OpenSSL documentation: + * If CApath is not NULL, it points to a directory containing CA certificates in PEM format. + * Exists only if struct_version >= 2 + */ + const char* CApath; + + /** + * Callback function for OpenSSL error handler ERR_print_errors_cb + * Exists only if struct_version >= 3 + */ + int (*ssl_error_cb) (const char *str, size_t len, void *u); + + /** + * Application-specific contex for OpenSSL error handler ERR_print_errors_cb + * Exists only if struct_version >= 3 + */ + void* ssl_error_context; + + /** + * Callback function for setting TLS-PSK options. Parameters correspond to that of + * SSL_CTX_set_psk_client_callback, except for u which is the pointer ssl_psk_context. + * Exists only if struct_version >= 4 + */ + unsigned int (*ssl_psk_cb) (const char *hint, char *identity, unsigned int max_identity_len, unsigned char *psk, unsigned int max_psk_len, void *u); + + /** + * Application-specific contex for ssl_psk_cb + * Exists only if struct_version >= 4 + */ + void* ssl_psk_context; + + /** + * Don't load default SSL CA. Should be used together with PSK to make sure + * regular servers with certificate in place is not accepted. + * Exists only if struct_version >= 4 + */ + int disableDefaultTrustStore; + + /** + * The protocol-lists must be in wire-format, which is defined as a vector of non-empty, 8-bit length-prefixed, byte strings. + * The length-prefix byte is not included in the length. Each string is limited to 255 bytes. A byte-string length of 0 is invalid. + * A truncated byte-string is invalid. + * Check documentation for SSL_CTX_set_alpn_protos + * Exists only if struct_version >= 5 + */ + const unsigned char *protos; + + /** + * The length of the vector protos vector + * Exists only if struct_version >= 5 + */ + unsigned int protos_len; +} MQTTClient_SSLOptions; + +#define MQTTClient_SSLOptions_initializer { {'M', 'Q', 'T', 'S'}, 5, NULL, NULL, NULL, NULL, NULL, 1, MQTT_SSL_VERSION_DEFAULT, 0, NULL, NULL, NULL, NULL, NULL, 0, NULL, 0 } + +/** + * MQTTClient_libraryInfo is used to store details relating to the currently used + * library such as the version in use, the time it was built and relevant openSSL + * options. + * There is one static instance of this struct in MQTTClient.c + */ + +typedef struct +{ + const char* name; + const char* value; +} MQTTClient_nameValue; + +/** + * This function returns version information about the library. + * no trace information will be returned. + * @return an array of strings describing the library. The last entry is a NULL pointer. + */ +LIBMQTT_API MQTTClient_nameValue* MQTTClient_getVersionInfo(void); + +/** + * MQTTClient_connectOptions defines several settings that control the way the + * client connects to an MQTT server. + * + * Note: Default values are not defined for members of + * MQTTClient_connectOptions so it is good practice to specify all settings. + * If the MQTTClient_connectOptions structure is defined as an automatic + * variable, all members are set to random values and thus must be set by the + * client application. If the MQTTClient_connectOptions structure is defined + * as a static variable, initialization (in compliant compilers) sets all + * values to 0 (NULL for pointers). A #keepAliveInterval setting of 0 prevents + * correct operation of the client and so you must at least set a value + * for #keepAliveInterval. + * + * Suitable default values are set in the following initializers: + * - MQTTClient_connectOptions_initializer: for MQTT 3.1.1 non-WebSockets + * - MQTTClient_connectOptions_initializer5: for MQTT 5.0 non-WebSockets + * - MQTTClient_connectOptions_initializer_ws: for MQTT 3.1.1 WebSockets + * - MQTTClient_connectOptions_initializer5_ws: for MQTT 5.0 WebSockets + */ +typedef struct +{ + /** The eyecatcher for this structure. must be MQTC. */ + char struct_id[4]; + /** The version number of this structure. Must be 0, 1, 2, 3, 4, 5, 6, 7 or 8. + * 0 signifies no SSL options and no serverURIs + * 1 signifies no serverURIs + * 2 signifies no MQTTVersion + * 3 signifies no returned values + * 4 signifies no binary password option + * 5 signifies no maxInflightMessages and cleanstart + * 6 signifies no HTTP headers option + * 7 signifies no HTTP proxy and HTTPS proxy options + */ + int struct_version; + /** The "keep alive" interval, measured in seconds, defines the maximum time + * that should pass without communication between the client and the server + * The client will ensure that at least one message travels across the + * network within each keep alive period. In the absence of a data-related + * message during the time period, the client sends a very small MQTT + * "ping" message, which the server will acknowledge. The keep alive + * interval enables the client to detect when the server is no longer + * available without having to wait for the long TCP/IP timeout. + */ + int keepAliveInterval; + /** + * This is a boolean value. The cleansession setting controls the behaviour + * of both the client and the server at connection and disconnection time. + * The client and server both maintain session state information. This + * information is used to ensure "at least once" and "exactly once" + * delivery, and "exactly once" receipt of messages. Session state also + * includes subscriptions created by an MQTT client. You can choose to + * maintain or discard state information between sessions. + * + * When cleansession is true, the state information is discarded at + * connect and disconnect. Setting cleansession to false keeps the state + * information. When you connect an MQTT client application with + * MQTTClient_connect(), the client identifies the connection using the + * client identifier and the address of the server. The server checks + * whether session information for this client + * has been saved from a previous connection to the server. If a previous + * session still exists, and cleansession=true, then the previous session + * information at the client and server is cleared. If cleansession=false, + * the previous session is resumed. If no previous session exists, a new + * session is started. + */ + int cleansession; + /** + * This is a boolean value that controls how many messages can be in-flight + * simultaneously. Setting reliable to true means that a published + * message must be completed (acknowledgements received) before another + * can be sent. Attempts to publish additional messages receive an + * ::MQTTCLIENT_MAX_MESSAGES_INFLIGHT return code. Setting this flag to + * false allows up to 10 messages to be in-flight. This can increase + * overall throughput in some circumstances. + */ + int reliable; + /** + * This is a pointer to an MQTTClient_willOptions structure. If your + * application does not make use of the Last Will and Testament feature, + * set this pointer to NULL. + */ + MQTTClient_willOptions* will; + /** + * MQTT servers that support the MQTT v3.1.1 protocol provide authentication + * and authorisation by user name and password. This is the user name + * parameter. + */ + const char* username; + /** + * MQTT servers that support the MQTT v3.1.1 protocol provide authentication + * and authorisation by user name and password. This is the password + * parameter. + */ + const char* password; + /** + * The time interval in seconds to allow a connect to complete. + */ + int connectTimeout; + /** + * The time interval in seconds after which unacknowledged publish requests are + * retried during a TCP session. With MQTT 3.1.1 and later, retries are + * not required except on reconnect. 0 turns off in-session retries, and is the + * recommended setting. Adding retries to an already overloaded network only + * exacerbates the problem. + */ + int retryInterval; + /** + * This is a pointer to an MQTTClient_SSLOptions structure. If your + * application does not make use of SSL, set this pointer to NULL. + */ + MQTTClient_SSLOptions* ssl; + /** + * The number of entries in the optional serverURIs array. Defaults to 0. + */ + int serverURIcount; + /** + * An optional array of null-terminated strings specifying the servers to + * which the client will connect. Each string takes the form protocol://host:port. + * protocol must be tcp, ssl, ws or wss. + * The TLS enabled prefixes (ssl, wss) are only valid if a TLS version of the library + * is linked with. + * For host, you can + * specify either an IP address or a host name. For instance, to connect to + * a server running on the local machines with the default MQTT port, specify + * tcp://localhost:1883. + * If this list is empty (the default), the server URI specified on MQTTClient_create() + * is used. + */ + char* const* serverURIs; + /** + * Sets the version of MQTT to be used on the connect. + * MQTTVERSION_DEFAULT (0) = default: start with 3.1.1, and if that fails, fall back to 3.1 + * MQTTVERSION_3_1 (3) = only try version 3.1 + * MQTTVERSION_3_1_1 (4) = only try version 3.1.1 + * MQTTVERSION_5 (5) = only try version 5.0 + */ + int MQTTVersion; + /** + * Returned from the connect when the MQTT version used to connect is 3.1.1 + */ + struct + { + const char* serverURI; /**< the serverURI connected to */ + int MQTTVersion; /**< the MQTT version used to connect with */ + int sessionPresent; /**< if the MQTT version is 3.1.1, the value of sessionPresent returned in the connack */ + } returned; + /** + * Optional binary password. Only checked and used if the password option is NULL + */ + struct + { + int len; /**< binary password length */ + const void* data; /**< binary password data */ + } binarypwd; + /** + * The maximum number of messages in flight + */ + int maxInflightMessages; + /* + * MQTT V5 clean start flag. Only clears state at the beginning of the session. + */ + int cleanstart; + /** + * HTTP headers for websockets + */ + const MQTTClient_nameValue* httpHeaders; + /** + * HTTP proxy + */ + const char* httpProxy; + /** + * HTTPS proxy + */ + const char* httpsProxy; +} MQTTClient_connectOptions; + +/** Initializer for connect options for MQTT 3.1.1 non-WebSocket connections */ +#define MQTTClient_connectOptions_initializer { {'M', 'Q', 'T', 'C'}, 8, 60, 1, 1, NULL, NULL, NULL, 30, 0, NULL,\ +0, NULL, MQTTVERSION_DEFAULT, {NULL, 0, 0}, {0, NULL}, -1, 0, NULL, NULL, NULL} + +/** Initializer for connect options for MQTT 5.0 non-WebSocket connections */ +#define MQTTClient_connectOptions_initializer5 { {'M', 'Q', 'T', 'C'}, 8, 60, 0, 1, NULL, NULL, NULL, 30, 0, NULL,\ +0, NULL, MQTTVERSION_5, {NULL, 0, 0}, {0, NULL}, -1, 1, NULL, NULL, NULL} + +/** Initializer for connect options for MQTT 3.1.1 WebSockets connections. + * The keepalive interval is set to 45 seconds to avoid webserver 60 second inactivity timeouts. + */ +#define MQTTClient_connectOptions_initializer_ws { {'M', 'Q', 'T', 'C'}, 8, 45, 1, 1, NULL, NULL, NULL, 30, 0, NULL,\ +0, NULL, MQTTVERSION_DEFAULT, {NULL, 0, 0}, {0, NULL}, -1, 0, NULL, NULL, NULL} + +/** Initializer for connect options for MQTT 5.0 WebSockets connections. + * The keepalive interval is set to 45 seconds to avoid webserver 60 second inactivity timeouts. + */ +#define MQTTClient_connectOptions_initializer5_ws { {'M', 'Q', 'T', 'C'}, 8, 45, 0, 1, NULL, NULL, NULL, 30, 0, NULL,\ +0, NULL, MQTTVERSION_5, {NULL, 0, 0}, {0, NULL}, -1, 1, NULL, NULL, NULL} + +/** + * This function attempts to connect a previously-created client (see + * MQTTClient_create()) to an MQTT server using the specified options. If you + * want to enable asynchronous message and status notifications, you must call + * MQTTClient_setCallbacks() prior to MQTTClient_connect(). + * @param handle A valid client handle from a successful call to + * MQTTClient_create(). + * @param options A pointer to a valid MQTTClient_connectOptions + * structure. + * @return ::MQTTCLIENT_SUCCESS if the client successfully connects to the + * server. An error code is returned if the client was unable to connect to + * the server. + * Error codes greater than 0 are returned by the MQTT protocol:

+ * 1: Connection refused: Unacceptable protocol version
+ * 2: Connection refused: Identifier rejected
+ * 3: Connection refused: Server unavailable
+ * 4: Connection refused: Bad user name or password
+ * 5: Connection refused: Not authorized
+ * 6-255: Reserved for future use
+ */ +LIBMQTT_API int MQTTClient_connect(MQTTClient handle, MQTTClient_connectOptions* options); + +/** MQTT version 5.0 response information */ +typedef struct MQTTResponse +{ + int version; /* the version number of this structure */ + enum MQTTReasonCodes reasonCode; /* the MQTT 5.0 reason code returned */ + int reasonCodeCount; /* the number of reason codes. Used for subscribeMany5 and unsubscribeMany5 */ + enum MQTTReasonCodes* reasonCodes; /* a list of reason codes. Used for subscribeMany5 and unsubscribeMany5 */ + MQTTProperties* properties; /* optionally, the MQTT 5.0 properties returned */ +} MQTTResponse; + +#define MQTTResponse_initializer {1, MQTTREASONCODE_SUCCESS, 0, NULL, NULL} + +/** + * Frees the storage associated with the MQTT response. + * @param response the response structure to be freed + */ +LIBMQTT_API void MQTTResponse_free(MQTTResponse response); + +/** + * Attempts to connect a previously-created client (see + * MQTTClient_create()) to an MQTT server using MQTT version 5.0 and the specified options. If you + * want to enable asynchronous message and status notifications, you must call + * MQTTClient_setCallbacks() prior to MQTTClient_connect(). + * @param handle A valid client handle from a successful call to + * MQTTClient_create(). + * @param options A pointer to a valid MQTTClient_connectOptions + * structure. + * @param connectProperties the MQTT 5.0 connect properties to use + * @param willProperties the MQTT 5.0 properties to set on the will message + * @return the MQTT 5.0 response information: error codes and properties. + */ +LIBMQTT_API MQTTResponse MQTTClient_connect5(MQTTClient handle, MQTTClient_connectOptions* options, + MQTTProperties* connectProperties, MQTTProperties* willProperties); + +/** + * This function attempts to disconnect the client from the MQTT + * server. In order to allow the client time to complete handling of messages + * that are in-flight when this function is called, a timeout period is + * specified. When the timeout period has expired, the client disconnects even + * if there are still outstanding message acknowledgements. + * The next time the client connects to the same server, any QoS 1 or 2 + * messages which have not completed will be retried depending on the + * cleansession settings for both the previous and the new connection (see + * MQTTClient_connectOptions.cleansession and MQTTClient_connect()). + * @param handle A valid client handle from a successful call to + * MQTTClient_create(). + * @param timeout The client delays disconnection for up to this time (in + * milliseconds) in order to allow in-flight message transfers to complete. + * @return ::MQTTCLIENT_SUCCESS if the client successfully disconnects from + * the server. An error code is returned if the client was unable to disconnect + * from the server + */ +LIBMQTT_API int MQTTClient_disconnect(MQTTClient handle, int timeout); + +LIBMQTT_API int MQTTClient_disconnect5(MQTTClient handle, int timeout, enum MQTTReasonCodes reason, MQTTProperties* props); + +/** + * This function allows the client application to test whether or not a + * client is currently connected to the MQTT server. + * @param handle A valid client handle from a successful call to + * MQTTClient_create(). + * @return Boolean true if the client is connected, otherwise false. + */ +LIBMQTT_API int MQTTClient_isConnected(MQTTClient handle); + + +/* Subscribe is synchronous. QoS list parameter is changed on return to granted QoSs. + Returns return code, MQTTCLIENT_SUCCESS == success, non-zero some sort of error (TBD) */ + +/** + * This function attempts to subscribe a client to a single topic, which may + * contain wildcards (see @ref wildcard). This call also specifies the + * @ref qos requested for the subscription + * (see also MQTTClient_subscribeMany()). + * @param handle A valid client handle from a successful call to + * MQTTClient_create(). + * @param topic The subscription topic, which may include wildcards. + * @param qos The requested quality of service for the subscription. + * @return ::MQTTCLIENT_SUCCESS if the subscription request is successful. + * An error code is returned if there was a problem registering the + * subscription. + */ +LIBMQTT_API int MQTTClient_subscribe(MQTTClient handle, const char* topic, int qos); + +/** + * This function attempts to subscribe an MQTT version 5.0 client to a single topic, which may + * contain wildcards (see @ref wildcard). This call also specifies the + * @ref qos requested for the subscription + * (see also MQTTClient_subscribeMany()). + * @param handle A valid client handle from a successful call to + * MQTTClient_create(). + * @param topic The subscription topic, which may include wildcards. + * @param qos The requested quality of service for the subscription. + * @param opts the MQTT 5.0 subscribe options to be used + * @param props the MQTT 5.0 properties to be used + * @return the MQTT 5.0 response information: error codes and properties. + */ +LIBMQTT_API MQTTResponse MQTTClient_subscribe5(MQTTClient handle, const char* topic, int qos, + MQTTSubscribe_options* opts, MQTTProperties* props); + +/** + * This function attempts to subscribe a client to a list of topics, which may + * contain wildcards (see @ref wildcard). This call also specifies the + * @ref qos requested for each topic (see also MQTTClient_subscribe()). + * @param handle A valid client handle from a successful call to + * MQTTClient_create(). + * @param count The number of topics for which the client is requesting + * subscriptions. + * @param topic An array (of length count) of pointers to + * topics, each of which may include wildcards. + * @param qos An array (of length count) of @ref qos + * values. qos[n] is the requested QoS for topic[n]. + * @return ::MQTTCLIENT_SUCCESS if the subscription request is successful. + * An error code is returned if there was a problem registering the + * subscriptions. + */ +LIBMQTT_API int MQTTClient_subscribeMany(MQTTClient handle, int count, char* const* topic, int* qos); + +/** + * This function attempts to subscribe an MQTT version 5.0 client to a list of topics, which may + * contain wildcards (see @ref wildcard). This call also specifies the + * @ref qos requested for each topic (see also MQTTClient_subscribe()). + * @param handle A valid client handle from a successful call to + * MQTTClient_create(). + * @param count The number of topics for which the client is requesting + * subscriptions. + * @param topic An array (of length count) of pointers to + * topics, each of which may include wildcards. + * @param qos An array (of length count) of @ref qos + * values. qos[n] is the requested QoS for topic[n]. + * @param opts the MQTT 5.0 subscribe options to be used + * @param props the MQTT 5.0 properties to be used + * @return the MQTT 5.0 response information: error codes and properties. + */ +LIBMQTT_API MQTTResponse MQTTClient_subscribeMany5(MQTTClient handle, int count, char* const* topic, + int* qos, MQTTSubscribe_options* opts, MQTTProperties* props); + +/** + * This function attempts to remove an existing subscription made by the + * specified client. + * @param handle A valid client handle from a successful call to + * MQTTClient_create(). + * @param topic The topic for the subscription to be removed, which may + * include wildcards (see @ref wildcard). + * @return ::MQTTCLIENT_SUCCESS if the subscription is removed. + * An error code is returned if there was a problem removing the + * subscription. + */ +LIBMQTT_API int MQTTClient_unsubscribe(MQTTClient handle, const char* topic); + +/** + * This function attempts to remove an existing subscription made by the + * specified client using MQTT 5.0. + * @param handle A valid client handle from a successful call to + * MQTTClient_create(). + * @param topic The topic for the subscription to be removed, which may + * include wildcards (see @ref wildcard). + * @param props the MQTT 5.0 properties to be used + * @return the MQTT 5.0 response information: error codes and properties. + */ +LIBMQTT_API MQTTResponse MQTTClient_unsubscribe5(MQTTClient handle, const char* topic, MQTTProperties* props); + +/** + * This function attempts to remove existing subscriptions to a list of topics + * made by the specified client. + * @param handle A valid client handle from a successful call to + * MQTTClient_create(). + * @param count The number subscriptions to be removed. + * @param topic An array (of length count) of pointers to the topics of + * the subscriptions to be removed, each of which may include wildcards. + * @return ::MQTTCLIENT_SUCCESS if the subscriptions are removed. + * An error code is returned if there was a problem removing the subscriptions. + */ +LIBMQTT_API int MQTTClient_unsubscribeMany(MQTTClient handle, int count, char* const* topic); + +/** + * This function attempts to remove existing subscriptions to a list of topics + * made by the specified client using MQTT version 5.0. + * @param handle A valid client handle from a successful call to + * MQTTClient_create(). + * @param count The number subscriptions to be removed. + * @param topic An array (of length count) of pointers to the topics of + * the subscriptions to be removed, each of which may include wildcards. + * @param props the MQTT 5.0 properties to be used + * @return the MQTT 5.0 response information: error codes and properties. + */ +LIBMQTT_API MQTTResponse MQTTClient_unsubscribeMany5(MQTTClient handle, int count, char* const* topic, MQTTProperties* props); + +/** + * This function attempts to publish a message to a given topic (see also + * MQTTClient_publishMessage()). An ::MQTTClient_deliveryToken is issued when + * this function returns successfully. If the client application needs to + * test for succesful delivery of QoS1 and QoS2 messages, this can be done + * either asynchronously or synchronously (see @ref async, + * ::MQTTClient_waitForCompletion and MQTTClient_deliveryComplete()). + * @param handle A valid client handle from a successful call to + * MQTTClient_create(). + * @param topicName The topic associated with this message. + * @param payloadlen The length of the payload in bytes. + * @param payload A pointer to the byte array payload of the message. + * @param qos The @ref qos of the message. + * @param retained The retained flag for the message. + * @param dt A pointer to an ::MQTTClient_deliveryToken. This is populated + * with a token representing the message when the function returns + * successfully. If your application does not use delivery tokens, set this + * argument to NULL. + * @return ::MQTTCLIENT_SUCCESS if the message is accepted for publication. + * An error code is returned if there was a problem accepting the message. + */ +LIBMQTT_API int MQTTClient_publish(MQTTClient handle, const char* topicName, int payloadlen, const void* payload, int qos, int retained, + MQTTClient_deliveryToken* dt); + +/** + * Attempts to publish a message to a given topic using MQTT version 5.0 (see also + * MQTTClient_publishMessage5()). An ::MQTTClient_deliveryToken is issued when + * this function returns successfully. If the client application needs to + * test for succesful delivery of QoS1 and QoS2 messages, this can be done + * either asynchronously or synchronously (see @ref async, + * ::MQTTClient_waitForCompletion and MQTTClient_deliveryComplete()). + * @param handle A valid client handle from a successful call to + * MQTTClient_create(). + * @param topicName The topic associated with this message. + * @param payloadlen The length of the payload in bytes. + * @param payload A pointer to the byte array payload of the message. + * @param qos The @ref qos of the message. + * @param retained The retained flag for the message. + * @param properties the MQTT 5.0 properties to be used + * @param dt A pointer to an ::MQTTClient_deliveryToken. This is populated + * with a token representing the message when the function returns + * successfully. If your application does not use delivery tokens, set this + * argument to NULL. + * @return the MQTT 5.0 response information: error codes and properties. + */ +LIBMQTT_API MQTTResponse MQTTClient_publish5(MQTTClient handle, const char* topicName, int payloadlen, const void* payload, + int qos, int retained, MQTTProperties* properties, MQTTClient_deliveryToken* dt); +/** + * This function attempts to publish a message to a given topic (see also + * MQTTClient_publish()). An ::MQTTClient_deliveryToken is issued when + * this function returns successfully. If the client application needs to + * test for succesful delivery of QoS1 and QoS2 messages, this can be done + * either asynchronously or synchronously (see @ref async, + * ::MQTTClient_waitForCompletion and MQTTClient_deliveryComplete()). + * @param handle A valid client handle from a successful call to + * MQTTClient_create(). + * @param topicName The topic associated with this message. + * @param msg A pointer to a valid MQTTClient_message structure containing + * the payload and attributes of the message to be published. + * @param dt A pointer to an ::MQTTClient_deliveryToken. This is populated + * with a token representing the message when the function returns + * successfully. If your application does not use delivery tokens, set this + * argument to NULL. + * @return ::MQTTCLIENT_SUCCESS if the message is accepted for publication. + * An error code is returned if there was a problem accepting the message. + */ +LIBMQTT_API int MQTTClient_publishMessage(MQTTClient handle, const char* topicName, MQTTClient_message* msg, MQTTClient_deliveryToken* dt); + + +/** + * Attempts to publish a message to the given topic using MQTT version 5.0 + * (see also + * MQTTClient_publish5()). An ::MQTTClient_deliveryToken is issued when + * this function returns successfully. If the client application needs to + * test for succesful delivery of QoS1 and QoS2 messages, this can be done + * either asynchronously or synchronously (see @ref async, + * ::MQTTClient_waitForCompletion and MQTTClient_deliveryComplete()). + * @param handle A valid client handle from a successful call to + * MQTTClient_create(). + * @param topicName The topic associated with this message. + * @param msg A pointer to a valid MQTTClient_message structure containing + * the payload and attributes of the message to be published. + * @param dt A pointer to an ::MQTTClient_deliveryToken. This is populated + * with a token representing the message when the function returns + * successfully. If your application does not use delivery tokens, set this + * argument to NULL. + * @return the MQTT 5.0 response information: error codes and properties. + */ +LIBMQTT_API MQTTResponse MQTTClient_publishMessage5(MQTTClient handle, const char* topicName, MQTTClient_message* msg, + MQTTClient_deliveryToken* dt); + +/** + * This function is called by the client application to synchronize execution + * of the main thread with completed publication of a message. When called, + * MQTTClient_waitForCompletion() blocks execution until the message has been + * successful delivered or the specified timeout has expired. See @ref async. + * @param handle A valid client handle from a successful call to + * MQTTClient_create(). + * @param dt The ::MQTTClient_deliveryToken that represents the message being + * tested for successful delivery. Delivery tokens are issued by the + * publishing functions MQTTClient_publish() and MQTTClient_publishMessage(). + * @param timeout The maximum time to wait in milliseconds. + * @return ::MQTTCLIENT_SUCCESS if the message was successfully delivered. + * An error code is returned if the timeout expires or there was a problem + * checking the token. + */ +LIBMQTT_API int MQTTClient_waitForCompletion(MQTTClient handle, MQTTClient_deliveryToken dt, unsigned long timeout); + + +/** + * This function sets a pointer to an array of delivery tokens for + * messages that are currently in-flight (pending completion). + * + * Important note: The memory used to hold the array of tokens is + * malloc()'d in this function. The client application is responsible for + * freeing this memory when it is no longer required. + * @param handle A valid client handle from a successful call to + * MQTTClient_create(). + * @param tokens The address of a pointer to an ::MQTTClient_deliveryToken. + * When the function returns successfully, the pointer is set to point to an + * array of tokens representing messages pending completion. The last member of + * the array is set to -1 to indicate there are no more tokens. If no tokens + * are pending, the pointer is set to NULL. + * @return ::MQTTCLIENT_SUCCESS if the function returns successfully. + * An error code is returned if there was a problem obtaining the list of + * pending tokens. + */ +LIBMQTT_API int MQTTClient_getPendingDeliveryTokens(MQTTClient handle, MQTTClient_deliveryToken **tokens); + +/** + * When implementing a single-threaded client, call this function periodically + * to allow processing of message retries and to send MQTT keepalive pings. + * If the application is calling MQTTClient_receive() regularly, then it is + * not necessary to call this function. + */ +LIBMQTT_API void MQTTClient_yield(void); + +/** + * This function performs a synchronous receive of incoming messages. It should + * be used only when the client application has not set callback methods to + * support asynchronous receipt of messages (see @ref async and + * MQTTClient_setCallbacks()). Using this function allows a single-threaded + * client subscriber application to be written. When called, this function + * blocks until the next message arrives or the specified timeout expires + *(see also MQTTClient_yield()). + * + * Important note: The application must free() the memory allocated + * to the topic and the message when processing is complete (see + * MQTTClient_freeMessage()). + * @param handle A valid client handle from a successful call to + * MQTTClient_create(). + * @param topicName The address of a pointer to a topic. This function + * allocates the memory for the topic and returns it to the application + * by setting topicName to point to the topic. + * @param topicLen The length of the topic. If the return code from this + * function is ::MQTTCLIENT_TOPICNAME_TRUNCATED, the topic contains embedded + * NULL characters and the full topic should be retrieved by using + * topicLen. + * @param message The address of a pointer to the received message. This + * function allocates the memory for the message and returns it to the + * application by setting message to point to the received message. + * The pointer is set to NULL if the timeout expires. + * @param timeout The length of time to wait for a message in milliseconds. + * @return ::MQTTCLIENT_SUCCESS or ::MQTTCLIENT_TOPICNAME_TRUNCATED if a + * message is received. ::MQTTCLIENT_SUCCESS can also indicate that the + * timeout expired, in which case message is NULL. An error code is + * returned if there was a problem trying to receive a message. + */ +LIBMQTT_API int MQTTClient_receive(MQTTClient handle, char** topicName, int* topicLen, MQTTClient_message** message, + unsigned long timeout); + +/** + * This function frees memory allocated to an MQTT message, including the + * additional memory allocated to the message payload. The client application + * calls this function when the message has been fully processed. Important + * note: This function does not free the memory allocated to a message + * topic string. It is the responsibility of the client application to free + * this memory using the MQTTClient_free() library function. + * @param msg The address of a pointer to the ::MQTTClient_message structure + * to be freed. + */ +LIBMQTT_API void MQTTClient_freeMessage(MQTTClient_message** msg); + +/** + * This function frees memory allocated by the MQTT C client library, especially the + * topic name. This is needed on Windows when the client libary and application + * program have been compiled with different versions of the C compiler. It is + * thus good policy to always use this function when freeing any MQTT C client- + * allocated memory. + * @param ptr The pointer to the client library storage to be freed. + */ +LIBMQTT_API void MQTTClient_free(void* ptr); + +/** + * This function frees the memory allocated to an MQTT client (see + * MQTTClient_create()). It should be called when the client is no longer + * required. + * @param handle A pointer to the handle referring to the ::MQTTClient + * structure to be freed. + */ +LIBMQTT_API void MQTTClient_destroy(MQTTClient* handle); + + +enum MQTTCLIENT_TRACE_LEVELS +{ + MQTTCLIENT_TRACE_MAXIMUM = 1, + MQTTCLIENT_TRACE_MEDIUM, + MQTTCLIENT_TRACE_MINIMUM, + MQTTCLIENT_TRACE_PROTOCOL, + MQTTCLIENT_TRACE_ERROR, + MQTTCLIENT_TRACE_SEVERE, + MQTTCLIENT_TRACE_FATAL, +}; + + +/** + * This function sets the level of trace information which will be + * returned in the trace callback. + * @param level the trace level required + */ +LIBMQTT_API void MQTTClient_setTraceLevel(enum MQTTCLIENT_TRACE_LEVELS level); + + +/** + * This is a callback function prototype which must be implemented if you want + * to receive trace information. Do not invoke any other Paho API calls in this + * callback function - unpredictable behavior may result. + * @param level the trace level of the message returned + * @param message the trace message. This is a pointer to a static buffer which + * will be overwritten on each call. You must copy the data if you want to keep + * it for later. + */ +typedef void MQTTClient_traceCallback(enum MQTTCLIENT_TRACE_LEVELS level, char* message); + +/** + * This function sets the trace callback if needed. If set to NULL, + * no trace information will be returned. The default trace level is + * MQTTASYNC_TRACE_MINIMUM. + * @param callback a pointer to the function which will handle the trace information + */ +LIBMQTT_API void MQTTClient_setTraceCallback(MQTTClient_traceCallback* callback); + +/** + * Sets the timeout value for un/subscribe commands when waiting for the un/suback response from + * the server. Values less than 5000 are not allowed. + * @param handle A valid client handle from a successful call to MQTTClient_create(). + * @param milliSeconds the maximum number of milliseconds to wait + * @return MQTTCLIENT_SUCCESS or MQTTCLIENT_FAILURE + */ +LIBMQTT_API int MQTTClient_setCommandTimeout(MQTTClient handle, unsigned long milliSeconds); + +/** + * Returns a pointer to the string representation of the error or NULL. + * + * Do not free after use. Returns NULL if the error code is unknown. + */ +LIBMQTT_API const char* MQTTClient_strerror(int code); + +#if defined(__cplusplus) + } +#endif + +#endif + +/*! + * @cond MQTTClient_main + * @page async Asynchronous vs synchronous client applications + * This client library supports two modes of operation. These are referred to + * as synchronous and asynchronous modes. If your application + * calls MQTTClient_setCallbacks(), this puts the client into asynchronous + * mode, otherwise it operates in synchronous mode. + * + * In synchronous mode, the client application runs on a single thread. + * Messages are published using the MQTTClient_publish() and + * MQTTClient_publishMessage() functions. To determine that a QoS1 or QoS2 + * (see @ref qos) message has been successfully delivered, the application + * must call the MQTTClient_waitForCompletion() function. An example showing + * synchronous publication is shown in @ref pubsync. Receiving messages in + * synchronous mode uses the MQTTClient_receive() function. Client applications + * must call either MQTTClient_receive() or MQTTClient_yield() relatively + * frequently in order to allow processing of acknowledgements and the MQTT + * "pings" that keep the network connection to the server alive. + * + * In asynchronous mode, the client application runs on several threads. The + * main program calls functions in the client library to publish and subscribe, + * just as for the synchronous mode. Processing of handshaking and maintaining + * the network connection is performed in the background, however. + * Notifications of status and message reception are provided to the client + * application using callbacks registered with the library by the call to + * MQTTClient_setCallbacks() (see MQTTClient_messageArrived(), + * MQTTClient_connectionLost() and MQTTClient_deliveryComplete()). + * This API is not thread safe however - it is not possible to call it from multiple + * threads without synchronization. You can use the MQTTAsync API for that. + * + * @page callbacks Callbacks + * You must not call a function from this API from within a callback otherwise + * a deadlock might result. The only exception to this is the ability to call + * connect within the connection lost callback, to allow a reconnect. + * + * When using MQTT 5.0, you can also call connect from within the disconnected + * callback, which is invoked when the MQTT server sends a disconnect packet. + * This server behaviour is allowed in MQTT 5.0, but not in MQTT 3.1.1, so the + * disconnected callback will never be invoked if you use MQTT 3.1.1. + * + * In particular, you must make a publish call within the message arrived callback. + * These restrictions are all lifted in the + * MQTTAsync API. + * + * If no callbacks are assigned, this will include the message arrived callback. + * This could be done if the application is a pure publisher, and does + * not subscribe to any topics. If however messages are received, and no message + * arrived callback is set, or receive not called, then those messages will accumulate + * and take up memory, as there is no place for them to be delivered. + * It is up to the application to protect against this situation. + * + * @page wildcard Subscription wildcards + * Every MQTT message includes a topic that classifies it. MQTT servers use + * topics to determine which subscribers should receive messages published to + * the server. + * + * Consider the server receiving messages from several environmental sensors. + * Each sensor publishes its measurement data as a message with an associated + * topic. Subscribing applications need to know which sensor originally + * published each received message. A unique topic is thus used to identify + * each sensor and measurement type. Topics such as SENSOR1TEMP, + * SENSOR1HUMIDITY, SENSOR2TEMP and so on achieve this but are not very + * flexible. If additional sensors are added to the system at a later date, + * subscribing applications must be modified to receive them. + * + * To provide more flexibility, MQTT supports a hierarchical topic namespace. + * This allows application designers to organize topics to simplify their + * management. Levels in the hierarchy are delimited by the '/' character, + * such as SENSOR/1/HUMIDITY. Publishers and subscribers use these + * hierarchical topics as already described. + * + * For subscriptions, two wildcard characters are supported: + *
    + *
  • A '#' character represents a complete sub-tree of the hierarchy and + * thus must be the last character in a subscription topic string, such as + * SENSOR/#. This will match any topic starting with SENSOR/, such as + * SENSOR/1/TEMP and SENSOR/2/HUMIDITY.
  • + *
  • A '+' character represents a single level of the hierarchy and is + * used between delimiters. For example, SENSOR/+/TEMP will match + * SENSOR/1/TEMP and SENSOR/2/TEMP.
  • + *
+ * Publishers are not allowed to use the wildcard characters in their topic + * names. + * + * Deciding on your topic hierarchy is an important step in your system design. + * + * @page qos Quality of service + * The MQTT protocol provides three qualities of service for delivering + * messages between clients and servers: "at most once", "at least once" and + * "exactly once". + * + * Quality of service (QoS) is an attribute of an individual message being + * published. An application sets the QoS for a specific message by setting the + * MQTTClient_message.qos field to the required value. + * + * A subscribing client can set the maximum quality of service a server uses + * to send messages that match the client subscriptions. The + * MQTTClient_subscribe() and MQTTClient_subscribeMany() functions set this + * maximum. The QoS of a message forwarded to a subscriber thus might be + * different to the QoS given to the message by the original publisher. + * The lower of the two values is used to forward a message. + * + * The three levels are: + * + * QoS0, At most once: The message is delivered at most once, or it + * may not be delivered at all. Its delivery across the network is not + * acknowledged. The message is not stored. The message could be lost if the + * client is disconnected, or if the server fails. QoS0 is the fastest mode of + * transfer. It is sometimes called "fire and forget". + * + * The MQTT protocol does not require servers to forward publications at QoS0 + * to a client. If the client is disconnected at the time the server receives + * the publication, the publication might be discarded, depending on the + * server implementation. + * + * QoS1, At least once: The message is always delivered at least once. + * It might be delivered multiple times if there is a failure before an + * acknowledgment is received by the sender. The message must be stored + * locally at the sender, until the sender receives confirmation that the + * message has been published by the receiver. The message is stored in case + * the message must be sent again. + * + * QoS2, Exactly once: The message is always delivered exactly once. + * The message must be stored locally at the sender, until the sender receives + * confirmation that the message has been published by the receiver. The + * message is stored in case the message must be sent again. QoS2 is the + * safest, but slowest mode of transfer. A more sophisticated handshaking + * and acknowledgement sequence is used than for QoS1 to ensure no duplication + * of messages occurs. + * @page pubsync Synchronous publication example +@code +#include +#include +#include +#include "MQTTClient.h" + +#define ADDRESS "tcp://mqtt.eclipseprojects.io:1883" +#define CLIENTID "ExampleClientPub" +#define TOPIC "MQTT Examples" +#define PAYLOAD "Hello World!" +#define QOS 1 +#define TIMEOUT 10000L + +int main(int argc, char* argv[]) +{ + MQTTClient client; + MQTTClient_connectOptions conn_opts = MQTTClient_connectOptions_initializer; + MQTTClient_message pubmsg = MQTTClient_message_initializer; + MQTTClient_deliveryToken token; + int rc; + + if ((rc = MQTTClient_create(&client, ADDRESS, CLIENTID, + MQTTCLIENT_PERSISTENCE_NONE, NULL)) != MQTTCLIENT_SUCCESS) + { + printf("Failed to create client, return code %d\n", rc); + exit(EXIT_FAILURE); + } + + conn_opts.keepAliveInterval = 20; + conn_opts.cleansession = 1; + if ((rc = MQTTClient_connect(client, &conn_opts)) != MQTTCLIENT_SUCCESS) + { + printf("Failed to connect, return code %d\n", rc); + exit(EXIT_FAILURE); + } + + pubmsg.payload = PAYLOAD; + pubmsg.payloadlen = (int)strlen(PAYLOAD); + pubmsg.qos = QOS; + pubmsg.retained = 0; + if ((rc = MQTTClient_publishMessage(client, TOPIC, &pubmsg, &token)) != MQTTCLIENT_SUCCESS) + { + printf("Failed to publish message, return code %d\n", rc); + exit(EXIT_FAILURE); + } + + printf("Waiting for up to %d seconds for publication of %s\n" + "on topic %s for client with ClientID: %s\n", + (int)(TIMEOUT/1000), PAYLOAD, TOPIC, CLIENTID); + rc = MQTTClient_waitForCompletion(client, token, TIMEOUT); + printf("Message with delivery token %d delivered\n", token); + + if ((rc = MQTTClient_disconnect(client, 10000)) != MQTTCLIENT_SUCCESS) + printf("Failed to disconnect, return code %d\n", rc); + MQTTClient_destroy(&client); + return rc; +} + + * @endcode + * + * @page pubasync Asynchronous publication example +@code{.c} +#include +#include +#include +#include "MQTTClient.h" + +#if !defined(_WIN32) +#include +#else +#include +#endif + +#define ADDRESS "tcp://mqtt.eclipseprojects.io:1883" +#define CLIENTID "ExampleClientPub" +#define TOPIC "MQTT Examples" +#define PAYLOAD "Hello World!" +#define QOS 1 +#define TIMEOUT 10000L + +MQTTClient_deliveryToken deliveredtoken; + +void delivered(void *context, MQTTClient_deliveryToken dt) +{ + printf("Message with token value %d delivery confirmed\n", dt); + deliveredtoken = dt; +} + +int msgarrvd(void *context, char *topicName, int topicLen, MQTTClient_message *message) +{ + printf("Message arrived\n"); + printf(" topic: %s\n", topicName); + printf(" message: %.*s\n", message->payloadlen, (char*)message->payload); + MQTTClient_freeMessage(&message); + MQTTClient_free(topicName); + return 1; +} + +void connlost(void *context, char *cause) +{ + printf("\nConnection lost\n"); + printf(" cause: %s\n", cause); +} + +int main(int argc, char* argv[]) +{ + MQTTClient client; + MQTTClient_connectOptions conn_opts = MQTTClient_connectOptions_initializer; + MQTTClient_message pubmsg = MQTTClient_message_initializer; + MQTTClient_deliveryToken token; + int rc; + + if ((rc = MQTTClient_create(&client, ADDRESS, CLIENTID, + MQTTCLIENT_PERSISTENCE_NONE, NULL)) != MQTTCLIENT_SUCCESS) + { + printf("Failed to create client, return code %d\n", rc); + rc = EXIT_FAILURE; + goto exit; + } + + if ((rc = MQTTClient_setCallbacks(client, NULL, connlost, msgarrvd, delivered)) != MQTTCLIENT_SUCCESS) + { + printf("Failed to set callbacks, return code %d\n", rc); + rc = EXIT_FAILURE; + goto destroy_exit; + } + + conn_opts.keepAliveInterval = 20; + conn_opts.cleansession = 1; + if ((rc = MQTTClient_connect(client, &conn_opts)) != MQTTCLIENT_SUCCESS) + { + printf("Failed to connect, return code %d\n", rc); + rc = EXIT_FAILURE; + goto destroy_exit; + } + + pubmsg.payload = PAYLOAD; + pubmsg.payloadlen = (int)strlen(PAYLOAD); + pubmsg.qos = QOS; + pubmsg.retained = 0; + deliveredtoken = 0; + if ((rc = MQTTClient_publishMessage(client, TOPIC, &pubmsg, &token)) != MQTTCLIENT_SUCCESS) + { + printf("Failed to publish message, return code %d\n", rc); + rc = EXIT_FAILURE; + } + else + { + printf("Waiting for publication of %s\n" + "on topic %s for client with ClientID: %s\n", + PAYLOAD, TOPIC, CLIENTID); + while (deliveredtoken != token) + { + #if defined(_WIN32) + Sleep(100); + #else + usleep(10000L); + #endif + } + } + + if ((rc = MQTTClient_disconnect(client, 10000)) != MQTTCLIENT_SUCCESS) + { + printf("Failed to disconnect, return code %d\n", rc); + rc = EXIT_FAILURE; + } + +destroy_exit: + MQTTClient_destroy(&client); + +exit: + return rc; +} + + * @endcode + * @page subasync Asynchronous subscription example +@code +#include +#include +#include +#include "MQTTClient.h" + +#define ADDRESS "tcp://mqtt.eclipseprojects.io:1883" +#define CLIENTID "ExampleClientSub" +#define TOPIC "MQTT Examples" +#define PAYLOAD "Hello World!" +#define QOS 1 +#define TIMEOUT 10000L + +volatile MQTTClient_deliveryToken deliveredtoken; + +void delivered(void *context, MQTTClient_deliveryToken dt) +{ + printf("Message with token value %d delivery confirmed\n", dt); + deliveredtoken = dt; +} + +int msgarrvd(void *context, char *topicName, int topicLen, MQTTClient_message *message) +{ + printf("Message arrived\n"); + printf(" topic: %s\n", topicName); + printf(" message: %.*s\n", message->payloadlen, (char*)message->payload); + MQTTClient_freeMessage(&message); + MQTTClient_free(topicName); + return 1; +} + +void connlost(void *context, char *cause) +{ + printf("\nConnection lost\n"); + printf(" cause: %s\n", cause); +} + +int main(int argc, char* argv[]) +{ + MQTTClient client; + MQTTClient_connectOptions conn_opts = MQTTClient_connectOptions_initializer; + int rc; + + if ((rc = MQTTClient_create(&client, ADDRESS, CLIENTID, + MQTTCLIENT_PERSISTENCE_NONE, NULL)) != MQTTCLIENT_SUCCESS) + { + printf("Failed to create client, return code %d\n", rc); + rc = EXIT_FAILURE; + goto exit; + } + + if ((rc = MQTTClient_setCallbacks(client, NULL, connlost, msgarrvd, delivered)) != MQTTCLIENT_SUCCESS) + { + printf("Failed to set callbacks, return code %d\n", rc); + rc = EXIT_FAILURE; + goto destroy_exit; + } + + conn_opts.keepAliveInterval = 20; + conn_opts.cleansession = 1; + if ((rc = MQTTClient_connect(client, &conn_opts)) != MQTTCLIENT_SUCCESS) + { + printf("Failed to connect, return code %d\n", rc); + rc = EXIT_FAILURE; + goto destroy_exit; + } + + printf("Subscribing to topic %s\nfor client %s using QoS%d\n\n" + "Press Q to quit\n\n", TOPIC, CLIENTID, QOS); + if ((rc = MQTTClient_subscribe(client, TOPIC, QOS)) != MQTTCLIENT_SUCCESS) + { + printf("Failed to subscribe, return code %d\n", rc); + rc = EXIT_FAILURE; + } + else + { + int ch; + do + { + ch = getchar(); + } while (ch!='Q' && ch != 'q'); + + if ((rc = MQTTClient_unsubscribe(client, TOPIC)) != MQTTCLIENT_SUCCESS) + { + printf("Failed to unsubscribe, return code %d\n", rc); + rc = EXIT_FAILURE; + } + } + + if ((rc = MQTTClient_disconnect(client, 10000)) != MQTTCLIENT_SUCCESS) + { + printf("Failed to disconnect, return code %d\n", rc); + rc = EXIT_FAILURE; + } +destroy_exit: + MQTTClient_destroy(&client); +exit: + return rc; +} + + * @endcode + * @page tracing Tracing + * + * Runtime tracing is controlled by environment variables. + * + * Tracing is switched on by setting MQTT_C_CLIENT_TRACE. A value of ON, or stdout, prints to + * stdout, any other value is interpreted as a file name to use. + * + * The amount of trace detail is controlled with the MQTT_C_CLIENT_TRACE_LEVEL environment + * variable - valid values are ERROR, PROTOCOL, MINIMUM, MEDIUM and MAXIMUM + * (from least to most verbose). + * + * The variable MQTT_C_CLIENT_TRACE_MAX_LINES limits the number of lines of trace that are output + * to a file. Two files are used at most, when they are full, the last one is overwritten with the + * new trace entries. The default size is 1000 lines. + * + * ### MQTT Packet Tracing + * + * A feature that can be very useful is printing the MQTT packets that are sent and received. To + * achieve this, use the following environment variable settings: + * @code + MQTT_C_CLIENT_TRACE=ON + MQTT_C_CLIENT_TRACE_LEVEL=PROTOCOL + * @endcode + * The output you should see looks like this: + * @code + 20130528 155936.813 3 stdout-subscriber -> CONNECT cleansession: 1 (0) + 20130528 155936.813 3 stdout-subscriber <- CONNACK rc: 0 + 20130528 155936.813 3 stdout-subscriber -> SUBSCRIBE msgid: 1 (0) + 20130528 155936.813 3 stdout-subscriber <- SUBACK msgid: 1 + 20130528 155941.818 3 stdout-subscriber -> DISCONNECT (0) + * @endcode + * where the fields are: + * 1. date + * 2. time + * 3. socket number + * 4. client id + * 5. direction (-> from client to server, <- from server to client) + * 6. packet details + * + * ### Default Level Tracing + * + * This is an extract of a default level trace of a call to connect: + * @code + 19700101 010000.000 (1152206656) (0)> MQTTClient_connect:893 + 19700101 010000.000 (1152206656) (1)> MQTTClient_connectURI:716 + 20130528 160447.479 Connecting to serverURI localhost:1883 + 20130528 160447.479 (1152206656) (2)> MQTTProtocol_connect:98 + 20130528 160447.479 (1152206656) (3)> MQTTProtocol_addressPort:48 + 20130528 160447.479 (1152206656) (3)< MQTTProtocol_addressPort:73 + 20130528 160447.479 (1152206656) (3)> Socket_new:599 + 20130528 160447.479 New socket 4 for localhost, port 1883 + 20130528 160447.479 (1152206656) (4)> Socket_addSocket:163 + 20130528 160447.479 (1152206656) (5)> Socket_setnonblocking:73 + 20130528 160447.479 (1152206656) (5)< Socket_setnonblocking:78 (0) + 20130528 160447.479 (1152206656) (4)< Socket_addSocket:176 (0) + 20130528 160447.479 (1152206656) (4)> Socket_error:95 + 20130528 160447.479 (1152206656) (4)< Socket_error:104 (115) + 20130528 160447.479 Connect pending + 20130528 160447.479 (1152206656) (3)< Socket_new:683 (115) + 20130528 160447.479 (1152206656) (2)< MQTTProtocol_connect:131 (115) + * @endcode + * where the fields are: + * 1. date + * 2. time + * 3. thread id + * 4. function nesting level + * 5. function entry (>) or exit (<) + * 6. function name : line of source code file + * 7. return value (if there is one) + * + * ### Memory Allocation Tracing + * + * Setting the trace level to maximum causes memory allocations and frees to be traced along with + * the default trace entries, with messages like the following: + * @code + 20130528 161819.657 Allocating 16 bytes in heap at file /home/icraggs/workspaces/mqrtc/mqttv3c/src/MQTTPacket.c line 177 ptr 0x179f930 + + 20130528 161819.657 Freeing 16 bytes in heap at file /home/icraggs/workspaces/mqrtc/mqttv3c/src/MQTTPacket.c line 201, heap use now 896 bytes + * @endcode + * When the last MQTT client object is destroyed, if the trace is being recorded + * and all memory allocated by the client library has not been freed, an error message will be + * written to the trace. This can help with fixing memory leaks. The message will look like this: + * @code + 20130528 163909.208 Some memory not freed at shutdown, possible memory leak + 20130528 163909.208 Heap scan start, total 880 bytes + 20130528 163909.208 Heap element size 32, line 354, file /home/icraggs/workspaces/mqrtc/mqttv3c/src/MQTTPacket.c, ptr 0x260cb00 + 20130528 163909.208 Content + 20130528 163909.209 Heap scan end + * @endcode + * @endcond + */ diff --git a/include/paho-mqtt/MQTTClientPersistence.h b/include/paho-mqtt/MQTTClientPersistence.h new file mode 100644 index 0000000..d3caae4 --- /dev/null +++ b/include/paho-mqtt/MQTTClientPersistence.h @@ -0,0 +1,277 @@ +/******************************************************************************* + * Copyright (c) 2009, 2020 IBM Corp. + * + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v2.0 + * and Eclipse Distribution License v1.0 which accompany this distribution. + * + * The Eclipse Public License is available at + * https://www.eclipse.org/legal/epl-2.0/ + * and the Eclipse Distribution License is available at + * http://www.eclipse.org/org/documents/edl-v10.php. + * + * Contributors: + * Ian Craggs - initial API and implementation and/or initial documentation + *******************************************************************************/ + +/** + * @file + * \brief This structure represents a persistent data store, used to store + * outbound and inbound messages, in order to achieve reliable messaging. + * + * The MQTT Client persists QoS1 and QoS2 messages in order to meet the + * assurances of delivery associated with these @ref qos levels. The messages + * are saved in persistent storage + * The type and context of the persistence implementation are specified when + * the MQTT client is created (see MQTTClient_create()). The default + * persistence type (::MQTTCLIENT_PERSISTENCE_DEFAULT) uses a file system-based + * persistence mechanism. The persistence_context argument passed to + * MQTTClient_create() when using the default peristence is a string + * representing the location of the persistence directory. If the context + * argument is NULL, the working directory will be used. + * + * To use memory-based persistence, an application passes + * ::MQTTCLIENT_PERSISTENCE_NONE as the persistence_type to + * MQTTClient_create(). This can lead to message loss in certain situations, + * but can be appropriate in some cases (see @ref qos). + * + * Client applications can provide their own persistence mechanism by passing + * ::MQTTCLIENT_PERSISTENCE_USER as the persistence_type. To implement a + * custom persistence mechanism, the application must pass an initialized + * ::MQTTClient_persistence structure as the persistence_context + * argument to MQTTClient_create(). + * + * If the functions defined return an ::MQTTCLIENT_PERSISTENCE_ERROR then the + * state of the persisted data should remain as it was prior to the function + * being called. For example, if Persistence_put() returns + * ::MQTTCLIENT_PERSISTENCE_ERROR, then it is assumed tha tthe persistent store + * does not contain the data that was passed to the function. Similarly, if + * Persistence_remove() returns ::MQTTCLIENT_PERSISTENCE_ERROR then it is + * assumed that the data to be removed is still held in the persistent store. + * + * It is up to the persistence implementation to log any error information that + * may be required to diagnose a persistence mechanism failure. + */ + +/* +/// @cond EXCLUDE +*/ +#if !defined(MQTTCLIENTPERSISTENCE_H) +#define MQTTCLIENTPERSISTENCE_H +/* +/// @endcond +*/ + +/** + * This persistence_type value specifies the default file system-based + * persistence mechanism (see MQTTClient_create()). + */ +#define MQTTCLIENT_PERSISTENCE_DEFAULT 0 +/** + * This persistence_type value specifies a memory-based + * persistence mechanism (see MQTTClient_create()). + */ +#define MQTTCLIENT_PERSISTENCE_NONE 1 +/** + * This persistence_type value specifies an application-specific + * persistence mechanism (see MQTTClient_create()). + */ +#define MQTTCLIENT_PERSISTENCE_USER 2 + +/** + * Application-specific persistence functions must return this error code if + * there is a problem executing the function. + */ +#define MQTTCLIENT_PERSISTENCE_ERROR -2 + +/** + * @brief Initialize the persistent store. + * + * Either open the existing persistent store for this client ID or create a new + * one if one doesn't exist. If the persistent store is already open, return + * without taking any action. + * + * An application can use the same client identifier to connect to many + * different servers. The clientid in conjunction with the + * serverURI uniquely identifies the persistence store required. + * + * @param handle The address of a pointer to a handle for this persistence + * implementation. This function must set handle to a valid reference to the + * persistence following a successful return. + * The handle pointer is passed as an argument to all the other + * persistence functions. It may include the context parameter and/or any other + * data for use by the persistence functions. + * @param clientID The client identifier for which the persistent store should + * be opened. + * @param serverURI The connection string specified when the MQTT client was + * created (see MQTTClient_create()). + * @param context A pointer to any data required to initialize the persistent + * store (see ::MQTTClient_persistence). + * @return Return 0 if the function completes successfully, otherwise return + * ::MQTTCLIENT_PERSISTENCE_ERROR. + */ +typedef int (*Persistence_open)(void** handle, const char* clientID, const char* serverURI, void* context); + +/** + * @brief Close the persistent store referred to by the handle. + * + * @param handle The handle pointer from a successful call to + * Persistence_open(). + * @return Return 0 if the function completes successfully, otherwise return + * ::MQTTCLIENT_PERSISTENCE_ERROR. + */ +typedef int (*Persistence_close)(void* handle); + +/** + * @brief Put the specified data into the persistent store. + * + * @param handle The handle pointer from a successful call to + * Persistence_open(). + * @param key A string used as the key for the data to be put in the store. The + * key is later used to retrieve data from the store with Persistence_get(). + * @param bufcount The number of buffers to write to the persistence store. + * @param buffers An array of pointers to the data buffers associated with + * this key. + * @param buflens An array of lengths of the data buffers. buflen[n] + * gives the length of buffer[n]. + * @return Return 0 if the function completes successfully, otherwise return + * ::MQTTCLIENT_PERSISTENCE_ERROR. + */ +typedef int (*Persistence_put)(void* handle, char* key, int bufcount, char* buffers[], int buflens[]); + +/** + * @brief Retrieve the specified data from the persistent store. + * + * @param handle The handle pointer from a successful call to + * Persistence_open(). + * @param key A string that is the key for the data to be retrieved. This is + * the same key used to save the data to the store with Persistence_put(). + * @param buffer The address of a pointer to a buffer. This function sets the + * pointer to point at the retrieved data, if successful. + * @param buflen The address of an int that is set to the length of + * buffer by this function if successful. + * @return Return 0 if the function completes successfully, otherwise return + * ::MQTTCLIENT_PERSISTENCE_ERROR. + */ +typedef int (*Persistence_get)(void* handle, char* key, char** buffer, int* buflen); + +/** + * @brief Remove the data for the specified key from the store. + * + * @param handle The handle pointer from a successful call to + * Persistence_open(). + * @param key A string that is the key for the data to be removed from the + * store. This is the same key used to save the data to the store with + * Persistence_put(). + * @return Return 0 if the function completes successfully, otherwise return + * ::MQTTCLIENT_PERSISTENCE_ERROR. + */ +typedef int (*Persistence_remove)(void* handle, char* key); + +/** + * @brief Returns the keys in this persistent data store. + * + * @param handle The handle pointer from a successful call to + * Persistence_open(). + * @param keys The address of a pointer to pointers to strings. Assuming + * successful execution, this function allocates memory to hold the returned + * keys (strings used to store the data with Persistence_put()). It also + * allocates memory to hold an array of pointers to these strings. keys + * is set to point to the array of pointers to strings. + * @param nkeys A pointer to the number of keys in this persistent data store. + * This function sets the number of keys, if successful. + * @return Return 0 if the function completes successfully, otherwise return + * ::MQTTCLIENT_PERSISTENCE_ERROR. + */ +typedef int (*Persistence_keys)(void* handle, char*** keys, int* nkeys); + +/** + * @brief Clears the persistence store, so that it no longer contains any + * persisted data. + * + * @param handle The handle pointer from a successful call to + * Persistence_open(). + * @return Return 0 if the function completes successfully, otherwise return + * ::MQTTCLIENT_PERSISTENCE_ERROR. + */ +typedef int (*Persistence_clear)(void* handle); + +/** + * @brief Returns whether any data has been persisted using the specified key. + * + * @param handle The handle pointer from a successful call to + * Persistence_open(). + * @param key The string to be tested for existence in the store. + * @return Return 0 if the key was found in the store, otherwise return + * ::MQTTCLIENT_PERSISTENCE_ERROR. + */ +typedef int (*Persistence_containskey)(void* handle, char* key); + +/** + * @brief A structure containing the function pointers to a persistence + * implementation and the context or state that will be shared across all + * the persistence functions. + */ +typedef struct { + /** + * A pointer to any data required to initialize the persistent store. + */ + void* context; + /** + * A function pointer to an implementation of Persistence_open(). + */ + Persistence_open popen; + /** + * A function pointer to an implementation of Persistence_close(). + */ + Persistence_close pclose; + /** + * A function pointer to an implementation of Persistence_put(). + */ + Persistence_put pput; + /** + * A function pointer to an implementation of Persistence_get(). + */ + Persistence_get pget; + /** + * A function pointer to an implementation of Persistence_remove(). + */ + Persistence_remove premove; + /** + * A function pointer to an implementation of Persistence_keys(). + */ + Persistence_keys pkeys; + /** + * A function pointer to an implementation of Persistence_clear(). + */ + Persistence_clear pclear; + /** + * A function pointer to an implementation of Persistence_containskey(). + */ + Persistence_containskey pcontainskey; +} MQTTClient_persistence; + + +/** + * A callback which is invoked just before a write to persistence. This can be + * used to transform the data, for instance to encrypt it. + * @param context The context as set in ::MQTTAsync_setBeforePersistenceWrite + * @param bufcount The number of buffers to write to the persistence store. + * @param buffers An array of pointers to the data buffers. + * @param buflens An array of lengths of the data buffers. + * @return Return 0 if the function completes successfully, otherwise non 0. + */ +typedef int MQTTPersistence_beforeWrite(void* context, int bufcount, char* buffers[], int buflens[]); + + +/** + * A callback which is invoked just after a read from persistence. This can be + * used to transform the data, for instance to decrypt it. + * @param context The context as set in ::MQTTAsync_setAfterPersistenceRead + * @param buffer The address of a pointer to a buffer. + * @param buflen The address of an int that is the length of the buffer. + * @return Return 0 if the function completes successfully, otherwise non 0. + */ +typedef int MQTTPersistence_afterRead(void* context, char** buffer, int* buflen); + +#endif diff --git a/include/paho-mqtt/MQTTExportDeclarations.h b/include/paho-mqtt/MQTTExportDeclarations.h new file mode 100644 index 0000000..d492ef1 --- /dev/null +++ b/include/paho-mqtt/MQTTExportDeclarations.h @@ -0,0 +1,36 @@ +/******************************************************************************* + * Copyright (c) 2020, 2020 Andreas Walter + * + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v2.0 + * and Eclipse Distribution License v1.0 which accompany this distribution. + * + * The Eclipse Public License is available at + * https://www.eclipse.org/legal/epl-2.0/ + * and the Eclipse Distribution License is available at + * http://www.eclipse.org/org/documents/edl-v10.php. + * + * Contributors: + * Andreas Walter - initially moved export declarations into separate fle + *******************************************************************************/ + +#if !defined(EXPORTDECLARATIONS_H) +#define EXPORTDECLARATIONS_H + +#if defined(_WIN32) || defined(_WIN64) +# if defined(PAHO_MQTT_EXPORTS) +# define LIBMQTT_API __declspec(dllexport) +# elif defined(PAHO_MQTT_IMPORTS) +# define LIBMQTT_API __declspec(dllimport) +# else +# define LIBMQTT_API +# endif +#else +# if defined(PAHO_MQTT_EXPORTS) +# define LIBMQTT_API __attribute__ ((visibility ("default"))) +# else +# define LIBMQTT_API extern +# endif +#endif + +#endif diff --git a/include/paho-mqtt/MQTTProperties.h b/include/paho-mqtt/MQTTProperties.h new file mode 100644 index 0000000..81b8e3a --- /dev/null +++ b/include/paho-mqtt/MQTTProperties.h @@ -0,0 +1,219 @@ +/******************************************************************************* + * Copyright (c) 2017, 2020 IBM Corp. and others + * + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v2.0 + * and Eclipse Distribution License v1.0 which accompany this distribution. + * + * The Eclipse Public License is available at + * https://www.eclipse.org/legal/epl-2.0/ + * and the Eclipse Distribution License is available at + * http://www.eclipse.org/org/documents/edl-v10.php. + * + * Contributors: + * Ian Craggs - initial API and implementation and/or initial documentation + *******************************************************************************/ + +#if !defined(MQTTPROPERTIES_H) +#define MQTTPROPERTIES_H + +#include "MQTTExportDeclarations.h" + +#define MQTT_INVALID_PROPERTY_ID -2 + +/** The one byte MQTT V5 property indicator */ +enum MQTTPropertyCodes { + MQTTPROPERTY_CODE_PAYLOAD_FORMAT_INDICATOR = 1, /**< The value is 1 */ + MQTTPROPERTY_CODE_MESSAGE_EXPIRY_INTERVAL = 2, /**< The value is 2 */ + MQTTPROPERTY_CODE_CONTENT_TYPE = 3, /**< The value is 3 */ + MQTTPROPERTY_CODE_RESPONSE_TOPIC = 8, /**< The value is 8 */ + MQTTPROPERTY_CODE_CORRELATION_DATA = 9, /**< The value is 9 */ + MQTTPROPERTY_CODE_SUBSCRIPTION_IDENTIFIER = 11, /**< The value is 11 */ + MQTTPROPERTY_CODE_SESSION_EXPIRY_INTERVAL = 17, /**< The value is 17 */ + MQTTPROPERTY_CODE_ASSIGNED_CLIENT_IDENTIFER = 18,/**< The value is 18 */ + MQTTPROPERTY_CODE_SERVER_KEEP_ALIVE = 19, /**< The value is 19 */ + MQTTPROPERTY_CODE_AUTHENTICATION_METHOD = 21, /**< The value is 21 */ + MQTTPROPERTY_CODE_AUTHENTICATION_DATA = 22, /**< The value is 22 */ + MQTTPROPERTY_CODE_REQUEST_PROBLEM_INFORMATION = 23,/**< The value is 23 */ + MQTTPROPERTY_CODE_WILL_DELAY_INTERVAL = 24, /**< The value is 24 */ + MQTTPROPERTY_CODE_REQUEST_RESPONSE_INFORMATION = 25,/**< The value is 25 */ + MQTTPROPERTY_CODE_RESPONSE_INFORMATION = 26, /**< The value is 26 */ + MQTTPROPERTY_CODE_SERVER_REFERENCE = 28, /**< The value is 28 */ + MQTTPROPERTY_CODE_REASON_STRING = 31, /**< The value is 31 */ + MQTTPROPERTY_CODE_RECEIVE_MAXIMUM = 33, /**< The value is 33*/ + MQTTPROPERTY_CODE_TOPIC_ALIAS_MAXIMUM = 34, /**< The value is 34 */ + MQTTPROPERTY_CODE_TOPIC_ALIAS = 35, /**< The value is 35 */ + MQTTPROPERTY_CODE_MAXIMUM_QOS = 36, /**< The value is 36 */ + MQTTPROPERTY_CODE_RETAIN_AVAILABLE = 37, /**< The value is 37 */ + MQTTPROPERTY_CODE_USER_PROPERTY = 38, /**< The value is 38 */ + MQTTPROPERTY_CODE_MAXIMUM_PACKET_SIZE = 39, /**< The value is 39 */ + MQTTPROPERTY_CODE_WILDCARD_SUBSCRIPTION_AVAILABLE = 40,/**< The value is 40 */ + MQTTPROPERTY_CODE_SUBSCRIPTION_IDENTIFIERS_AVAILABLE = 41,/**< The value is 41 */ + MQTTPROPERTY_CODE_SHARED_SUBSCRIPTION_AVAILABLE = 42/**< The value is 241 */ +}; + +/** + * Returns a printable string description of an MQTT V5 property code. + * @param value an MQTT V5 property code. + * @return the printable string description of the input property code. + * NULL if the code was not found. + */ +LIBMQTT_API const char* MQTTPropertyName(enum MQTTPropertyCodes value); + +/** The one byte MQTT V5 property type */ +enum MQTTPropertyTypes { + MQTTPROPERTY_TYPE_BYTE, + MQTTPROPERTY_TYPE_TWO_BYTE_INTEGER, + MQTTPROPERTY_TYPE_FOUR_BYTE_INTEGER, + MQTTPROPERTY_TYPE_VARIABLE_BYTE_INTEGER, + MQTTPROPERTY_TYPE_BINARY_DATA, + MQTTPROPERTY_TYPE_UTF_8_ENCODED_STRING, + MQTTPROPERTY_TYPE_UTF_8_STRING_PAIR +}; + +/** + * Returns the MQTT V5 type code of an MQTT V5 property. + * @param value an MQTT V5 property code. + * @return the MQTT V5 type code of the input property. -1 if the code was not found. + */ +LIBMQTT_API int MQTTProperty_getType(enum MQTTPropertyCodes value); + +/** + * The data for a length delimited string + */ +typedef struct +{ + int len; /**< the length of the string */ + char* data; /**< pointer to the string data */ +} MQTTLenString; + + +/** + * Structure to hold an MQTT version 5 property of any type + */ +typedef struct +{ + enum MQTTPropertyCodes identifier; /**< The MQTT V5 property id. A multi-byte integer. */ + /** The value of the property, as a union of the different possible types. */ + union { + unsigned char byte; /**< holds the value of a byte property type */ + unsigned short integer2; /**< holds the value of a 2 byte integer property type */ + unsigned int integer4; /**< holds the value of a 4 byte integer property type */ + struct { + MQTTLenString data; /**< The value of a string property, or the name of a user property. */ + MQTTLenString value; /**< The value of a user property. */ + }; + } value; +} MQTTProperty; + +/** + * MQTT version 5 property list + */ +typedef struct MQTTProperties +{ + int count; /**< number of property entries in the array */ + int max_count; /**< max number of properties that the currently allocated array can store */ + int length; /**< mbi: byte length of all properties */ + MQTTProperty *array; /**< array of properties */ +} MQTTProperties; + +#define MQTTProperties_initializer {0, 0, 0, NULL} + +/** + * Returns the length of the properties structure when serialized ready for network transmission. + * @param props an MQTT V5 property structure. + * @return the length in bytes of the properties when serialized. + */ +int MQTTProperties_len(MQTTProperties* props); + +/** + * Add a property pointer to the property array. There is no memory allocation. + * @param props The property list to add the property to. + * @param prop The property to add to the list. + * @return 0 on success, -1 on failure. + */ +LIBMQTT_API int MQTTProperties_add(MQTTProperties* props, const MQTTProperty* prop); + +/** + * Serialize the given property list to a character buffer, e.g. for writing to the network. + * @param pptr pointer to the buffer - move the pointer as we add data + * @param properties pointer to the property list, can be NULL + * @return whether the write succeeded or not: number of bytes written, or < 0 on failure. + */ +int MQTTProperties_write(char** pptr, const MQTTProperties* properties); + +/** + * Reads a property list from a character buffer into an array. + * @param properties pointer to the property list to be filled. Should be initalized but empty. + * @param pptr pointer to the character buffer. + * @param enddata pointer to the end of the character buffer so we don't read beyond. + * @return 1 if the properties were read successfully. + */ +int MQTTProperties_read(MQTTProperties* properties, char** pptr, char* enddata); + +/** + * Free all memory allocated to the property list, including any to individual properties. + * @param properties pointer to the property list. + */ +LIBMQTT_API void MQTTProperties_free(MQTTProperties* properties); + +/** + * Copy the contents of a property list, allocating additional memory if needed. + * @param props pointer to the property list. + * @return the duplicated property list. + */ +LIBMQTT_API MQTTProperties MQTTProperties_copy(const MQTTProperties* props); + +/** + * Checks if property list contains a specific property. + * @param props pointer to the property list. + * @param propid the property id to check for. + * @return 1 if found, 0 if not. + */ +LIBMQTT_API int MQTTProperties_hasProperty(MQTTProperties *props, enum MQTTPropertyCodes propid); + +/** + * Returns the number of instances of a property id. Most properties can exist only once. + * User properties and subscription ids can exist more than once. + * @param props pointer to the property list. + * @param propid the property id to check for. + * @return the number of times found. Can be 0. + */ +LIBMQTT_API int MQTTProperties_propertyCount(MQTTProperties *props, enum MQTTPropertyCodes propid); + +/** + * Returns the integer value of a specific property. The property given must be a numeric type. + * @param props pointer to the property list. + * @param propid the property id to check for. + * @return the integer value of the property. -9999999 on failure. + */ +LIBMQTT_API int MQTTProperties_getNumericValue(MQTTProperties *props, enum MQTTPropertyCodes propid); + +/** + * Returns the integer value of a specific property when it's not the only instance. + * The property given must be a numeric type. + * @param props pointer to the property list. + * @param propid the property id to check for. + * @param index the instance number, starting at 0. + * @return the integer value of the property. -9999999 on failure. + */ +LIBMQTT_API int MQTTProperties_getNumericValueAt(MQTTProperties *props, enum MQTTPropertyCodes propid, int index); + +/** + * Returns a pointer to the property structure for a specific property. + * @param props pointer to the property list. + * @param propid the property id to check for. + * @return the pointer to the property structure if found. NULL if not found. + */ +LIBMQTT_API MQTTProperty* MQTTProperties_getProperty(MQTTProperties *props, enum MQTTPropertyCodes propid); + +/** + * Returns a pointer to the property structure for a specific property when it's not the only instance. + * @param props pointer to the property list. + * @param propid the property id to check for. + * @param index the instance number, starting at 0. + * @return the pointer to the property structure if found. NULL if not found. + */ +LIBMQTT_API MQTTProperty* MQTTProperties_getPropertyAt(MQTTProperties *props, enum MQTTPropertyCodes propid, int index); + +#endif /* MQTTPROPERTIES_H */ diff --git a/include/paho-mqtt/MQTTReasonCodes.h b/include/paho-mqtt/MQTTReasonCodes.h new file mode 100644 index 0000000..2dc08ea --- /dev/null +++ b/include/paho-mqtt/MQTTReasonCodes.h @@ -0,0 +1,79 @@ +/******************************************************************************* + * Copyright (c) 2017, 2020 IBM Corp. and others + * + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v2.0 + * and Eclipse Distribution License v1.0 which accompany this distribution. + * + * The Eclipse Public License is available at + * https://www.eclipse.org/legal/epl-2.0/ + * and the Eclipse Distribution License is available at + * http://www.eclipse.org/org/documents/edl-v10.php. + * + * Contributors: + * Ian Craggs - initial API and implementation and/or initial documentation + *******************************************************************************/ + +#if !defined(MQTTREASONCODES_H) +#define MQTTREASONCODES_H + +#include "MQTTExportDeclarations.h" + +/** The MQTT V5 one byte reason code */ +enum MQTTReasonCodes { + MQTTREASONCODE_SUCCESS = 0, + MQTTREASONCODE_NORMAL_DISCONNECTION = 0, + MQTTREASONCODE_GRANTED_QOS_0 = 0, + MQTTREASONCODE_GRANTED_QOS_1 = 1, + MQTTREASONCODE_GRANTED_QOS_2 = 2, + MQTTREASONCODE_DISCONNECT_WITH_WILL_MESSAGE = 4, + MQTTREASONCODE_NO_MATCHING_SUBSCRIBERS = 16, + MQTTREASONCODE_NO_SUBSCRIPTION_FOUND = 17, + MQTTREASONCODE_CONTINUE_AUTHENTICATION = 24, + MQTTREASONCODE_RE_AUTHENTICATE = 25, + MQTTREASONCODE_UNSPECIFIED_ERROR = 128, + MQTTREASONCODE_MALFORMED_PACKET = 129, + MQTTREASONCODE_PROTOCOL_ERROR = 130, + MQTTREASONCODE_IMPLEMENTATION_SPECIFIC_ERROR = 131, + MQTTREASONCODE_UNSUPPORTED_PROTOCOL_VERSION = 132, + MQTTREASONCODE_CLIENT_IDENTIFIER_NOT_VALID = 133, + MQTTREASONCODE_BAD_USER_NAME_OR_PASSWORD = 134, + MQTTREASONCODE_NOT_AUTHORIZED = 135, + MQTTREASONCODE_SERVER_UNAVAILABLE = 136, + MQTTREASONCODE_SERVER_BUSY = 137, + MQTTREASONCODE_BANNED = 138, + MQTTREASONCODE_SERVER_SHUTTING_DOWN = 139, + MQTTREASONCODE_BAD_AUTHENTICATION_METHOD = 140, + MQTTREASONCODE_KEEP_ALIVE_TIMEOUT = 141, + MQTTREASONCODE_SESSION_TAKEN_OVER = 142, + MQTTREASONCODE_TOPIC_FILTER_INVALID = 143, + MQTTREASONCODE_TOPIC_NAME_INVALID = 144, + MQTTREASONCODE_PACKET_IDENTIFIER_IN_USE = 145, + MQTTREASONCODE_PACKET_IDENTIFIER_NOT_FOUND = 146, + MQTTREASONCODE_RECEIVE_MAXIMUM_EXCEEDED = 147, + MQTTREASONCODE_TOPIC_ALIAS_INVALID = 148, + MQTTREASONCODE_PACKET_TOO_LARGE = 149, + MQTTREASONCODE_MESSAGE_RATE_TOO_HIGH = 150, + MQTTREASONCODE_QUOTA_EXCEEDED = 151, + MQTTREASONCODE_ADMINISTRATIVE_ACTION = 152, + MQTTREASONCODE_PAYLOAD_FORMAT_INVALID = 153, + MQTTREASONCODE_RETAIN_NOT_SUPPORTED = 154, + MQTTREASONCODE_QOS_NOT_SUPPORTED = 155, + MQTTREASONCODE_USE_ANOTHER_SERVER = 156, + MQTTREASONCODE_SERVER_MOVED = 157, + MQTTREASONCODE_SHARED_SUBSCRIPTIONS_NOT_SUPPORTED = 158, + MQTTREASONCODE_CONNECTION_RATE_EXCEEDED = 159, + MQTTREASONCODE_MAXIMUM_CONNECT_TIME = 160, + MQTTREASONCODE_SUBSCRIPTION_IDENTIFIERS_NOT_SUPPORTED = 161, + MQTTREASONCODE_WILDCARD_SUBSCRIPTIONS_NOT_SUPPORTED = 162 +}; + +/** + * Returns a printable string description of an MQTT V5 reason code. + * @param value an MQTT V5 reason code. + * @return the printable string description of the input reason code. + * NULL if the code was not found. + */ +LIBMQTT_API const char* MQTTReasonCode_toString(enum MQTTReasonCodes value); + +#endif diff --git a/include/paho-mqtt/MQTTSubscribeOpts.h b/include/paho-mqtt/MQTTSubscribeOpts.h new file mode 100644 index 0000000..264e4d0 --- /dev/null +++ b/include/paho-mqtt/MQTTSubscribeOpts.h @@ -0,0 +1,46 @@ +/******************************************************************************* + * Copyright (c) 2018 IBM Corp. + * + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v2.0 + * and Eclipse Distribution License v1.0 which accompany this distribution. + * + * The Eclipse Public License is available at + * https://www.eclipse.org/legal/epl-2.0/ + * and the Eclipse Distribution License is available at + * http://www.eclipse.org/org/documents/edl-v10.php. + * + * Contributors: + * Ian Craggs - initial API and implementation and/or initial documentation + *******************************************************************************/ + +#if !defined(SUBOPTS_H) +#define SUBOPTS_H + +/** The MQTT V5 subscribe options, apart from QoS which existed before V5. */ +typedef struct MQTTSubscribe_options +{ + /** The eyecatcher for this structure. Must be MQSO. */ + char struct_id[4]; + /** The version number of this structure. Must be 0. + */ + int struct_version; + /** To not receive our own publications, set to 1. + * 0 is the original MQTT behaviour - all messages matching the subscription are received. + */ + unsigned char noLocal; + /** To keep the retain flag as on the original publish message, set to 1. + * If 0, defaults to the original MQTT behaviour where the retain flag is only set on + * publications sent by a broker if in response to a subscribe request. + */ + unsigned char retainAsPublished; + /** 0 - send retained messages at the time of the subscribe (original MQTT behaviour) + * 1 - send retained messages on subscribe only if the subscription is new + * 2 - do not send retained messages at all + */ + unsigned char retainHandling; +} MQTTSubscribe_options; + +#define MQTTSubscribe_options_initializer { {'M', 'Q', 'S', 'O'}, 0, 0, 0, 0 } + +#endif diff --git a/libs/paho-mqtt/libpaho-mqtt3a.so b/libs/paho-mqtt/libpaho-mqtt3a.so new file mode 120000 index 0000000..9710c1b --- /dev/null +++ b/libs/paho-mqtt/libpaho-mqtt3a.so @@ -0,0 +1 @@ +libpaho-mqtt3a.so.1 \ No newline at end of file diff --git a/libs/paho-mqtt/libpaho-mqtt3a.so.1 b/libs/paho-mqtt/libpaho-mqtt3a.so.1 new file mode 120000 index 0000000..d821bc5 --- /dev/null +++ b/libs/paho-mqtt/libpaho-mqtt3a.so.1 @@ -0,0 +1 @@ +libpaho-mqtt3a.so.1.3.12 \ No newline at end of file diff --git a/libs/paho-mqtt/libpaho-mqtt3a.so.1.3.12 b/libs/paho-mqtt/libpaho-mqtt3a.so.1.3.12 new file mode 100644 index 0000000000000000000000000000000000000000..b8b17b5ee1115b69c30f18ea7fdf35b4fe84133d GIT binary patch literal 401344 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°rEpfK?3xZO;a^0O3*_8-`_d&Jp1e>h5Ekl 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

-3E8)vS~sAZ5gHUWNg)v=Q6kgJQ>O(ujlEJEXAH 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ÿ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 XA^Vuky@sW@xUbF7QE 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

$=a}6rU2(u#^6N85@tGu)GJ2`IjiN9^vC4> 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 -#include - - -void gpio_init(unsigned int p){ - bcm2835_init(); -} - -void gpio_set_dir(unsigned int gpio, int out){ - printf("DEBUG: set gpio pin %d to an %s\n", gpio, (out) ? "output" : "input"); - bcm2835_gpio_fsel(gpio, (out) ? BCM2835_GPIO_FSEL_OUTP : BCM2835_GPIO_FSEL_INPT); -} - -void gpio_put(unsigned int gpio, int value){ - bcm2835_gpio_write(gpio, (value) ? HIGH : LOW); -} diff --git a/src/gpio.h b/src/gpio.h deleted file mode 100644 index aebeb90..0000000 --- a/src/gpio.h +++ /dev/null @@ -1,5 +0,0 @@ - - -void gpio_init(unsigned int p); -void gpio_set_dir(unsigned int gpio, int out); -void gpio_put(unsigned int gpio, int value); diff --git a/src/main.c b/src/main.c index c8faf35..1892e76 100644 --- a/src/main.c +++ b/src/main.c @@ -1,126 +1,84 @@ #include #include #include +#include #include "conf.h" #include "MQTTAsync.h" #include "mqtt.h" -#include "gpio.h" - -// 4: relay displays -// 17: led strip -// 22: relay2 -// 27: relay3 void onConnect(void* context){ - MQTT_subscribe("coolhaven/relayClient", 1); -} - -const int gpio_pin[] = {4, 17, 22, 27, -1, -1, -1, -1, -1, -1}; -typedef enum action_e {TURN_ON, TURN_OFF, TOGGLE} action_t; -void action(int relay, action_t acct){ - if(gpio_pin[relay] == -1){ - printf("WARING: invalid relay number"); - return; - } - switch (acct) { - case TURN_ON: - printf("ACTION: turn relay%d on\n", relay); - gpio_put(gpio_pin[relay], 0); - break; - case TURN_OFF: - printf("ACTION: turn relay%d off\n", relay); - gpio_put(gpio_pin[relay], 1); - break; - case TOGGLE: - // printf("ACTION: Toggle relay%d\n", relay); - printf("WARNING: Toogle not suported yet\n"); - break; - } -} - -void relayClient(MQTTAsync_message* message){ - //message->payloadlen, (char*)message->payload - if(message->payloadlen < 6){ - printf("ERROR: playload to short\n"); - return; - } - if(!strncmp(message->payload, "relay", 5)){ - printf("ERROR: invalid playload\n"); - return; - } - char relay = *((char*)(message->payload + 5)); - if(relay < '0' && relay > '9'){ - printf("ERROR: invalid playload\n"); - return; - } - relay -= '0'; - if(message->payloadlen == 6){ - action(relay, TOGGLE); - return; - } - if(*((char*)(message->payload + 6)) != '='){ - printf("ERROR: invalid playload\n"); - return; - } - if(message->payloadlen == 9 && strncmp(message->payload + 6, "on", 2)){ - action(relay, TURN_ON); - return; - } - if(message->payloadlen == 10 && strncmp(message->payload + 6, "off", 3)){ - action(relay, TURN_OFF); - return; - } + return; } void onMessage(char* topicName, int topicLen, MQTTAsync_message* message){ - char* topic = "coolhaven/relayClient"; - char result = 1; - for (int i = 0; i < topicLen && i < strlen(topic); i++) { - if(*(topicName+i) != *(topic+i)){ - result = 0; - printf("topic corect until char %d\n", i); - break; - } - } - if(result){ - relayClient(message); - return; - } - // if(strncmp(topicName, "coolhaven/relayClient", topicLen)){ - // relayClient(message); - // return; - // } - printf("invlid topic (%.*s; %d)\n", topicLen, topicName, topicLen); - return; + return; +} + +void sendTick(char* name, struct tm* t) +{ + + char topic[100] = TOPIC "/"; + strcat(&topic[0], name); + + char payload[50]; + sprintf(&payload[0], "%04d-%02d-%02dT%02d:%02d:%02d", + t->tm_year, + t->tm_mon + 1, + t->tm_mday, + t->tm_hour, + t->tm_min, + t->tm_sec + ); + + MQTT_publish(topic, &payload[0], 1); } int main(int argc, char* argv[]){ - printf("==============================\n" - "=== relayClient ==============\n" - "==============================\n\n"); + printf("==============================\n" + "=== mqttClock ================\n" + "==============================\n\n"); - gpio_init(5); - for(int i=0; i<10; i++){ - if(gpio_pin[i] == 0) - continue; - gpio_set_dir(gpio_pin[i], 1); - } + clientConf_t* client = MQTT_connect(&onConnect, &onMessage); - clientConf_t* client = MQTT_connect(&onConnect, &onMessage); - if(client == NULL){ - return -1; - } + if(client != NULL){ + int lastMin = 0; + int lastHour = 0; - char ch = 0; - while(ch != 'Q' && ch != 'q'){ - ch = getchar(); - switch (ch) { - case 'q': - case 'Q': - MQTT_disconnect(client); - return 0; - } + int returnCode = 1; + while (returnCode = 1) + { + time_t rowNow = time(NULL); + struct tm* now = gmtime(&rowNow); + + sendTick("second", now); + if (now->tm_min != lastMin) + { + sendTick("minute", now); + lastMin = now->tm_min; + + if (now->tm_hour != lastHour) + { + sendTick("hour", now); + lastHour = now->tm_hour; + } + } + + char ch = getchar(); + switch (ch) { + case 'q': + case 'Q': + returnCode = 0; + MQTT_disconnect(client); + } + } } + else + { + printf("failt to connect to mqtt\n"); + return -1; + } + + return 0; } diff --git a/src/mqtt.c b/src/mqtt.c index 2ebe9c5..5783327 100644 --- a/src/mqtt.c +++ b/src/mqtt.c @@ -4,105 +4,106 @@ #include "conf.h" +#include "MQTTClient.h" #include "MQTTAsync.h" #include "mqtt.h" clientConf_t* client; void reconnect(){ - int rc; + int rc; - if(client->last_reconn.t + RECON_TIMEOUT > time(NULL)){ - if(client->last_reconn.c < 10){ - printf("Wait %d seconds until reconect. reconect counter on %d\n", RECON_TIMEOUT, client->last_reconn.c); - SLEEP(RECON_TIMEOUT); - } else { - printf("Wait one hour until reconect. reconect counter on %d\n", client->last_reconn.c); - SLEEP(3600); - } - } + if(client->last_reconn.t + RECON_TIMEOUT > time(NULL)){ + if(client->last_reconn.c < 10){ + printf("Wait %d seconds until reconect. reconect counter on %d\n", RECON_TIMEOUT, client->last_reconn.c); + SLEEP(RECON_TIMEOUT); + } else { + printf("Wait one hour until reconect. reconect counter on %d\n", client->last_reconn.c); + SLEEP(3600); + } + } printf("Reconnecting to MQTT server\n"); - rc = MQTTAsync_connect(client->client, &(client->conn_opts)); + rc = MQTTAsync_connect(client->client, &(client->conn_opts)); if (rc != MQTTASYNC_SUCCESS){ printf("ERROR: Failed to reconnect, return code %d\n", rc); - client->last_reconn.t = time(NULL); - client->last_reconn.c++; + client->last_reconn.t = time(NULL); + client->last_reconn.c++; } else { - client->last_reconn.c = 0; - } + client->last_reconn.c = 0; + } } void connlost(void *context, char *cause){ printf("\nERROR: Lost connection to MQTT\n"); if(cause){ printf(" cause: %s\n", cause); - } + } - reconnect(); + reconnect(); } int msgarrvd(void *context, char *topicName, int topicLen, MQTTAsync_message *message){ - printf("Message arrived\n"); - printf(" topic: %s\n", topicName); - printf(" message: %.*s\n", message->payloadlen, (char*)message->payload); + printf("Message arrived\n"); + printf(" topic: %s\n", topicName); + printf(" message: %.*s\n", message->payloadlen, (char*)message->payload); - (*(client->onMessage))(topicName, topicLen, message); + (*(client->onMessage))(topicName, topicLen, message); - MQTTAsync_freeMessage(&message); - MQTTAsync_free(topicName); - return 1; + MQTTAsync_freeMessage(&message); + MQTTAsync_free(topicName); + return 1; } void onConnectFailure(void* context, MQTTAsync_failureData* response){ printf("Connect failed, rc %d\n", response->code); - reconnect(); + reconnect(); } void onConn(void* context, MQTTAsync_successData* response){ printf("connected to MQTT server\n"); - (*(client->onConnect))(client); + (*(client->onConnect))(client); } clientConf_t* MQTT_connect(void (*onConnect_cb)(void* context), void (*onMessage)(char* topicName, int topicLen, MQTTAsync_message* message)){ - client = (clientConf_t*) malloc(sizeof(clientConf_t)); // keep this util i say so + client = (clientConf_t*) malloc(sizeof(clientConf_t)); // keep this util i say so int rc; int ch; - rc = MQTTAsync_create(&(client->client), ADDRESS, CLIENTID, MQTTCLIENT_PERSISTENCE_NONE, NULL); + rc = MQTTAsync_create(&(client->client), ADDRESS, CLIENTID, MQTTCLIENT_PERSISTENCE_NONE, NULL); if (rc != MQTTASYNC_SUCCESS){ printf("Failed to create client, return code %d\n", rc); - free(client); + free(client); return NULL; } - client->onMessage = onMessage; - client->onConnect = onConnect_cb; - client->last_reconn.c = 0; - client->last_reconn.t = 0; + client->onMessage = onMessage; + client->onConnect = onConnect_cb; + client->last_reconn.c = 0; + client->last_reconn.t = 0; - rc = MQTTAsync_setCallbacks(client->client, client, &connlost, &msgarrvd, NULL); + rc = MQTTAsync_setCallbacks(client->client, client, &connlost, &msgarrvd, NULL); if (rc != MQTTASYNC_SUCCESS){ printf("Failed to set callbacks, return code %d\n", rc); - MQTTAsync_destroy(&(client->client)); - free(client); + MQTTAsync_destroy(&(client->client)); + free(client); return NULL; } - MQTTAsync_connectOptions conn_opts = MQTTAsync_connectOptions_initializer; - client->conn_opts = conn_opts; + MQTTAsync_connectOptions conn_opts = MQTTAsync_connectOptions_initializer; + client->conn_opts = conn_opts; client->conn_opts.keepAliveInterval = 20; client->conn_opts.cleansession = 1; client->conn_opts.onSuccess = onConn; client->conn_opts.onFailure = onConnectFailure; client->conn_opts.context = &client; - printf("connecting to MQTT server (%s)\n", ADDRESS); - rc = MQTTAsync_connect(client->client, &(client->conn_opts)); + printf("connecting to MQTT server (%s)\n", ADDRESS); + rc = MQTTAsync_connect(client->client, &(client->conn_opts)); if(rc != MQTTASYNC_SUCCESS){ printf("Failed to start connect, return code %d\n", rc); - MQTTAsync_destroy(&(client->client)); - free(client); + MQTTAsync_destroy(&(client->client)); + free(client); return NULL; } @@ -113,22 +114,22 @@ clientConf_t* MQTT_connect(void (*onConnect_cb)(void* context), void (*onMessage void onDisconnectFailure(void* context, MQTTAsync_failureData* response){ printf("Faild to discontect from MQTT, rc %d\n", response->code); - MQTTAsync_destroy(client->client); - free(client); + MQTTAsync_destroy(client->client); + free(client); } void onDisconnect(void* context, MQTTAsync_successData* response){ printf("disconnected from MQTT server\n"); - MQTTAsync_destroy(client->client); - free(client); + MQTTAsync_destroy(client->client); + free(client); } void MQTT_disconnect(){ - int rc; - MQTTAsync_disconnectOptions disc_opts = MQTTAsync_disconnectOptions_initializer; + int rc; + MQTTAsync_disconnectOptions disc_opts = MQTTAsync_disconnectOptions_initializer; disc_opts.onSuccess = &onDisconnect; disc_opts.onFailure = &onDisconnectFailure; - rc = MQTTAsync_disconnect(client->client, &disc_opts); + rc = MQTTAsync_disconnect(client->client, &disc_opts); if (rc != MQTTASYNC_SUCCESS){ printf("Failed to start disconnect, return code %d\n", rc); MQTTAsync_destroy(client->client); @@ -154,9 +155,14 @@ void MQTT_subscribe(char* topic, int qos){ MQTTAsync_responseOptions opts = MQTTAsync_responseOptions_initializer; opts.onSuccess = &onSubscribe; opts.onFailure = &onSubscribeFailure; - opts.context = topic; - rc = MQTTAsync_subscribe(client->client, topic, qos, &opts); + opts.context = topic; + rc = MQTTAsync_subscribe(client->client, topic, qos, &opts); if (rc != MQTTASYNC_SUCCESS){ printf("ERROR: Failed to start subscribe, return code %d\n", rc); } } + +void MQTT_publish(char* topic, char* payload, int qos) +{ + MQTTClient_publish(client->client, topic, len(topic), payload, qos, 0, NULL); +} diff --git a/src/mqtt.h b/src/mqtt.h index 3d46ccf..9d6068b 100644 --- a/src/mqtt.h +++ b/src/mqtt.h @@ -20,5 +20,6 @@ clientConf_t* MQTT_connect(void (*onConnect)(void* context), void (*onMessage)(c void MQTT_disconnect(); void MQTT_subscribe(char* topic, int qos); +void MQTT_publish(char* topic, char* payload, int qos); #endif