88 #if !defined(MQTTASYNC_H)
91 #if defined(__cplusplus)
95 #if defined(WIN32) || defined(WIN64)
96 #define DLLImport __declspec(dllimport)
97 #define DLLExport __declspec(dllexport)
99 #define DLLImport extern
100 #define DLLExport __attribute__ ((visibility ("default")))
111 #if !defined(NO_PERSISTENCE)
119 #define MQTTASYNC_SUCCESS 0
124 #define MQTTASYNC_FAILURE -1
128 #define MQTTASYNC_PERSISTENCE_ERROR -2
133 #define MQTTASYNC_DISCONNECTED -3
138 #define MQTTASYNC_MAX_MESSAGES_INFLIGHT -4
142 #define MQTTASYNC_BAD_UTF8_STRING -5
146 #define MQTTASYNC_NULL_PARAMETER -6
152 #define MQTTASYNC_TOPICNAME_TRUNCATED -7
157 #define MQTTASYNC_BAD_STRUCTURE -8
161 #define MQTTASYNC_BAD_QOS -9
165 #define MQTTASYNC_NO_MORE_MSGIDS -10
169 #define MQTTASYNC_OPERATION_INCOMPLETE -11
173 #define MQTTASYNC_MAX_BUFFERED_MESSAGES -12
177 #define MQTTASYNC_SSL_NOT_SUPPORTED -13
183 #define MQTTASYNC_BAD_PROTOCOL -14
187 #define MQTTASYNC_BAD_MQTT_OPTION -15
191 #define MQTTASYNC_WRONG_MQTT_VERSION -16
197 #define MQTTVERSION_DEFAULT 0
201 #define MQTTVERSION_3_1 3
205 #define MQTTVERSION_3_1_1 4
209 #define MQTTVERSION_5 5
213 #define MQTT_BAD_SUBSCRIBE 0x80
229 #define MQTTAsync_init_options_initializer { {'M', 'Q', 'T', 'G'}, 0, 0 }
320 #define MQTTAsync_message_initializer { {'M', 'Q', 'T', 'M'}, 1, 0, NULL, 0, 0, 0, 0, MQTTProperties_initializer }
462 #define MQTTAsync_failureData5_initializer {{'M', 'Q', 'F', 'D'}, 0, 0, MQTTREASONCODE_SUCCESS, MQTTProperties_initializer, 0, NULL}
533 #define MQTTAsync_successData5_initializer {{'M', 'Q', 'S', 'D'}, 0, 0, MQTTREASONCODE_SUCCESS, MQTTProperties_initializer}
646 #define MQTTAsync_responseOptions_initializer { {'M', 'Q', 'T', 'R'}, 1, NULL, NULL, 0, 0, NULL, NULL, MQTTProperties_initializer, MQTTSubscribe_options_initializer, 0, NULL}
649 #define MQTTAsync_callOptions_initializer MQTTAsync_responseOptions_initializer
819 int persistence_type,
void* persistence_context);
841 #define MQTTAsync_createOptions_initializer { {'M', 'Q', 'C', 'O'}, 1, 0, 100, MQTTVERSION_DEFAULT }
843 #define MQTTAsync_createOptions_initializer5 { {'M', 'Q', 'C', 'O'}, 1, 0, 100, MQTTVERSION_5 }
890 #define MQTTAsync_willOptions_initializer { {'M', 'Q', 'T', 'W'}, 1, NULL, NULL, 0, 0, { 0, NULL } }
892 #define MQTT_SSL_VERSION_DEFAULT 0
893 #define MQTT_SSL_VERSION_TLS_1_0 1
894 #define MQTT_SSL_VERSION_TLS_1_1 2
895 #define MQTT_SSL_VERSION_TLS_1_2 3
968 int (*ssl_error_cb) (
const char *str,
size_t len,
void *u);
981 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);
998 #define MQTTAsync_SSLOptions_initializer { {'M', 'Q', 'T', 'S'}, 4, NULL, NULL, NULL, NULL, NULL, 1, MQTT_SSL_VERSION_DEFAULT, 0, NULL, NULL, NULL, NULL, NULL, 0}
1174 #define MQTTAsync_connectOptions_initializer { {'M', 'Q', 'T', 'C'}, 6, 60, 1, 65535, NULL, NULL, NULL, 30, 0,\
1175 NULL, NULL, NULL, NULL, 0, NULL, MQTTVERSION_DEFAULT, 0, 1, 60, {0, NULL}, 0, NULL, NULL, NULL, NULL}
1177 #define MQTTAsync_connectOptions_initializer5 { {'M', 'Q', 'T', 'C'}, 6, 60, 0, 65535, NULL, NULL, NULL, 30, 0,\
1178 NULL, NULL, NULL, NULL, 0, NULL, MQTTVERSION_5, 0, 1, 60, {0, NULL}, 1, NULL, NULL, NULL, NULL}
1255 #define MQTTAsync_disconnectOptions_initializer { {'M', 'Q', 'T', 'D'}, 0, 0, NULL, NULL, NULL,\
1256 MQTTProperties_initializer, MQTTREASONCODE_SUCCESS }
1258 #define MQTTAsync_disconnectOptions_initializer5 { {'M', 'Q', 'T', 'D'}, 1, 0, NULL, NULL, NULL,\
1259 MQTTProperties_initializer, MQTTREASONCODE_SUCCESS, NULL, NULL }
1375 DLLExport int MQTTAsync_send(MQTTAsync handle,
const char* destinationName,
int payloadlen,
const void* payload,
int qos,
1425 #define MQTTASYNC_TRUE 1
int sendWhileDisconnected
Definition: MQTTAsync.h:830
MQTTAsync_token token
Definition: MQTTAsync.h:468
int MQTTAsync_subscribeMany(MQTTAsync handle, int count, char *const *topic, int *qos, MQTTAsync_responseOptions *response)
MQTTAsync_onSuccess5 * onSuccess5
Definition: MQTTAsync.h:620
Definition: MQTTAsync.h:1481
int struct_version
Definition: MQTTAsync.h:497
int len
Definition: MQTTAsync.h:885
void * ssl_error_context
Definition: MQTTAsync.h:974
int MQTTAsync_getPendingTokens(MQTTAsync handle, MQTTAsync_token **tokens)
void MQTTAsync_setTraceCallback(MQTTAsync_traceCallback *callback)
int MQTTAsync_isConnected(MQTTAsync handle)
const char * message
Definition: MQTTAsync.h:437
int MQTTAsync_token
Definition: MQTTAsync.h:251
int * qosList
Definition: MQTTAsync.h:475
MQTTProperties properties
Definition: MQTTAsync.h:630
char *const * serverURIs
Definition: MQTTAsync.h:1120
char * serverURI
Definition: MQTTAsync.h:520
int struct_version
Definition: MQTTAsync.h:1017
char * destinationName
Definition: MQTTAsync.h:515
MQTTAsync_token token
Definition: MQTTAsync.h:499
MQTTAsync_token token
Definition: MQTTAsync.h:433
Definition: MQTTAsync.h:861
void MQTTAsync_connectionLost(void *context, char *cause)
Definition: MQTTAsync.h:385
int MQTTVersion
Definition: MQTTAsync.h:486
MQTTProperties properties
Definition: MQTTAsync.h:1236
MQTTAsync_willOptions * will
Definition: MQTTAsync.h:1060
MQTTAsync_token token
Definition: MQTTAsync.h:614
void MQTTAsync_connected(void *context, char *cause)
Definition: MQTTAsync.h:400
int MQTTAsync_disconnect(MQTTAsync handle, const MQTTAsync_disconnectOptions *options)
int struct_version
Definition: MQTTAsync.h:224
const char * keyStore
Definition: MQTTAsync.h:922
const void * data
Definition: MQTTAsync.h:1145
int MQTTAsync_createWithOptions(MQTTAsync *handle, const char *serverURI, const char *clientId, int persistence_type, void *persistence_context, MQTTAsync_createOptions *options)
int MQTTVersion
Definition: MQTTAsync.h:838
int MQTTAsync_setMessageArrivedCallback(MQTTAsync handle, void *context, MQTTAsync_messageArrived *ma)
int sessionPresent
Definition: MQTTAsync.h:487
Definition: MQTTAsync.h:259
int MQTTAsync_unsubscribeMany(MQTTAsync handle, int count, char *const *topic, MQTTAsync_responseOptions *response)
int MQTTVersion
Definition: MQTTAsync.h:1127
int struct_version
Definition: MQTTAsync.h:590
const char * password
Definition: MQTTAsync.h:1072
MQTTAsync_onFailure5 * onFailure5
Definition: MQTTAsync.h:626
int cleanstart
Definition: MQTTAsync.h:1150
MQTTAsync_onFailure * onFailure
Definition: MQTTAsync.h:602
int keepAliveInterval
Definition: MQTTAsync.h:1028
void MQTTAsync_deliveryComplete(void *context, MQTTAsync_token token)
Definition: MQTTAsync.h:368
int qos
Definition: MQTTAsync.h:283
int MQTTVersion
Definition: MQTTAsync.h:521
MQTTProperties * willProperties
Definition: MQTTAsync.h:1158
Definition: MQTTSubscribeOpts.h:21
MQTTASYNC_TRACE_LEVELS
Definition: MQTTAsync.h:1475
int automaticReconnect
Definition: MQTTAsync.h:1131
void * payload
Definition: MQTTAsync.h:269
int MQTTAsync_connect(MQTTAsync handle, const MQTTAsync_connectOptions *options)
const char * trustStore
Definition: MQTTAsync.h:917
void * context
Definition: MQTTAsync.h:608
char struct_id[4]
Definition: MQTTAsync.h:587
int MQTTAsync_setCallbacks(MQTTAsync handle, void *context, MQTTAsync_connectionLost *cl, MQTTAsync_messageArrived *ma, MQTTAsync_deliveryComplete *dc)
const char * CApath
Definition: MQTTAsync.h:962
#define DLLExport
Definition: MQTTProperties.h:58
int payloadlen
Definition: MQTTAsync.h:267
MQTTAsync_message message
Definition: MQTTAsync.h:479
MQTTSubscribe_options subscribeOptions
Definition: MQTTAsync.h:634
int packet_type
Definition: MQTTAsync.h:459
Definition: MQTTAsync.h:584
int MQTTAsync_send(MQTTAsync handle, const char *destinationName, int payloadlen, const void *payload, int qos, int retained, MQTTAsync_responseOptions *response)
int msgid
Definition: MQTTAsync.h:313
MQTTProperties * connectProperties
Definition: MQTTAsync.h:1154
int struct_version
Definition: MQTTAsync.h:914
int struct_version
Definition: MQTTAsync.h:828
MQTTAsync_onFailure5 * onFailure5
Definition: MQTTAsync.h:1252
MQTTAsync_onSuccess5 * onSuccess5
Definition: MQTTAsync.h:1246
MQTTAsync_onFailure * onFailure
Definition: MQTTAsync.h:1101
int struct_version
Definition: MQTTAsync.h:1209
struct MQTTAsync_responseOptions MQTTAsync_responseOptions
MQTTAsync_SSLOptions * ssl
Definition: MQTTAsync.h:1089
const char * privateKeyPassword
Definition: MQTTAsync.h:929
int sslVersion
Definition: MQTTAsync.h:948
const char * topicName
Definition: MQTTAsync.h:870
Definition: MQTTAsync.h:1480
int MQTTAsync_messageArrived(void *context, char *topicName, int topicLen, MQTTAsync_message *message)
Definition: MQTTAsync.h:348
int subscribeOptionsCount
Definition: MQTTAsync.h:639
MQTTAsync_onSuccess * onSuccess
Definition: MQTTAsync.h:1220
Definition: MQTTAsync.h:1005
MQTTAsync_onFailure5 * onFailure5
Definition: MQTTAsync.h:1170
const char * name
Definition: MQTTAsync.h:1516
Definition: MQTTAsync.h:1482
Definition: MQTTAsync.h:909
void * context
Definition: MQTTAsync.h:1232
MQTTProperties properties
Definition: MQTTAsync.h:453
MQTTAsync_onSuccess * onSuccess
Definition: MQTTAsync.h:596
int reasonCodeCount
Definition: MQTTAsync.h:508
void MQTTAsync_free(void *ptr)
int struct_version
Definition: MQTTAsync.h:868
char * destinationName
Definition: MQTTAsync.h:480
int retryInterval
Definition: MQTTAsync.h:1084
MQTTAsync_onSuccess * onSuccess
Definition: MQTTAsync.h:1095
void MQTTAsync_freeMessage(MQTTAsync_message **msg)
int MQTTAsync_create(MQTTAsync *handle, const char *serverURI, const char *clientId, int persistence_type, void *persistence_context)
Definition: MQTTAsync.h:821
MQTTSubscribe_options * subscribeOptionsList
Definition: MQTTAsync.h:643
int struct_version
Definition: MQTTAsync.h:447
void MQTTAsync_onFailure5(void *context, MQTTAsync_failureData5 *response)
Definition: MQTTAsync.h:582
void * ssl_psk_context
Definition: MQTTAsync.h:987
Definition: MQTTProperties.h:118
Definition: MQTTAsync.h:1483
int verify
Definition: MQTTAsync.h:955
MQTTAsync_token token
Definition: MQTTAsync.h:449
void MQTTAsync_onSuccess(void *context, MQTTAsync_successData *response)
Definition: MQTTAsync.h:545
MQTTProperties properties
Definition: MQTTAsync.h:501
void MQTTAsync_global_init(MQTTAsync_init_options *inits)
int do_openssl_init
Definition: MQTTAsync.h:226
MQTTReasonCodes
Definition: MQTTReasonCodes.h:21
Definition: MQTTAsync.h:430
int connectTimeout
Definition: MQTTAsync.h:1076
Definition: MQTTAsync.h:442
int maxBufferedMessages
Definition: MQTTAsync.h:832
int maxInflight
Definition: MQTTAsync.h:1054
void MQTTAsync_disconnected(void *context, MQTTProperties *properties, enum MQTTReasonCodes reasonCode)
Definition: MQTTAsync.h:411
MQTTAsync_message message
Definition: MQTTAsync.h:514
int MQTTAsync_subscribe(MQTTAsync handle, const char *topic, int qos, MQTTAsync_responseOptions *response)
Definition: MQTTAsync.h:1514
Definition: MQTTAsync.h:1477
int len
Definition: MQTTAsync.h:1144
const char * MQTTAsync_strerror(int code)
int MQTTAsync_setDeliveryCompleteCallback(MQTTAsync handle, void *context, MQTTAsync_deliveryComplete *dc)
const void * data
Definition: MQTTAsync.h:886
Definition: MQTTAsync.h:1478
int MQTTAsync_setConnectionLostCallback(MQTTAsync handle, void *context, MQTTAsync_connectionLost *cl)
int serverURIcount
Definition: MQTTAsync.h:1111
const char * value
Definition: MQTTAsync.h:1517
void * MQTTAsync
Definition: MQTTAsync.h:241
int qos
Definition: MQTTAsync.h:473
int disableDefaultTrustStore
Definition: MQTTAsync.h:994
const char * username
Definition: MQTTAsync.h:1066
int enableServerCertAuth
Definition: MQTTAsync.h:942
int MQTTAsync_isComplete(MQTTAsync handle, MQTTAsync_token token)
void MQTTAsync_onFailure(void *context, MQTTAsync_failureData *response)
Definition: MQTTAsync.h:570
int code
Definition: MQTTAsync.h:455
const char * message
Definition: MQTTAsync.h:457
Definition: MQTTAsync.h:1204
int retained
Definition: MQTTAsync.h:876
int timeout
Definition: MQTTAsync.h:1214
void MQTTAsync_traceCallback(enum MQTTASYNC_TRACE_LEVELS level, char *message)
Definition: MQTTAsync.h:1503
int struct_version
Definition: MQTTAsync.h:265
void * context
Definition: MQTTAsync.h:1107
int code
Definition: MQTTAsync.h:435
MQTTAsync_onFailure * onFailure
Definition: MQTTAsync.h:1226
Definition: MQTTAsync.h:219
const char * privateKey
Definition: MQTTAsync.h:927
int maxRetryInterval
Definition: MQTTAsync.h:1139
int MQTTAsync_sendMessage(MQTTAsync handle, const char *destinationName, const MQTTAsync_message *msg, MQTTAsync_responseOptions *response)
MQTTAsync_onSuccess5 * onSuccess5
Definition: MQTTAsync.h:1164
const char * enabledCipherSuites
Definition: MQTTAsync.h:939
int MQTTAsync_waitForCompletion(MQTTAsync handle, MQTTAsync_token token, unsigned long timeout)
int qos
Definition: MQTTAsync.h:881
int MQTTAsync_setConnected(MQTTAsync handle, void *context, MQTTAsync_connected *co)
int cleansession
Definition: MQTTAsync.h:1050
enum MQTTReasonCodes * reasonCodes
Definition: MQTTAsync.h:509
const char * message
Definition: MQTTAsync.h:872
int MQTTAsync_unsubscribe(MQTTAsync handle, const char *topic, MQTTAsync_responseOptions *response)
This structure represents a persistent data store, used to store outbound and inbound messages...
void MQTTAsync_destroy(MQTTAsync *handle)
Definition: MQTTAsync.h:494
int minRetryInterval
Definition: MQTTAsync.h:1135
int MQTTAsync_reconnect(MQTTAsync handle)
int retained
Definition: MQTTAsync.h:302
Definition: MQTTAsync.h:1479
int dup
Definition: MQTTAsync.h:309
MQTTAsync_nameValue * MQTTAsync_getVersionInfo(void)
MQTTProperties properties
Definition: MQTTAsync.h:317
Definition: MQTTAsync.h:465
void MQTTAsync_onSuccess5(void *context, MQTTAsync_successData5 *response)
Definition: MQTTAsync.h:558
char * serverURI
Definition: MQTTAsync.h:485
int sessionPresent
Definition: MQTTAsync.h:522
int MQTTAsync_setDisconnected(MQTTAsync handle, void *context, MQTTAsync_disconnected *co)
void MQTTAsync_setTraceLevel(enum MQTTASYNC_TRACE_LEVELS level)