 |
Paho Asynchronous MQTT C Client Library
|
Go to the documentation of this file.
88 #if !defined(MQTTASYNC_H)
91 #if defined(__cplusplus)
100 #include "MQTTExportDeclarations.h"
105 #if !defined(NO_PERSISTENCE)
113 #define MQTTASYNC_SUCCESS 0
118 #define MQTTASYNC_FAILURE -1
122 #define MQTTASYNC_PERSISTENCE_ERROR -2
127 #define MQTTASYNC_DISCONNECTED -3
132 #define MQTTASYNC_MAX_MESSAGES_INFLIGHT -4
136 #define MQTTASYNC_BAD_UTF8_STRING -5
140 #define MQTTASYNC_NULL_PARAMETER -6
146 #define MQTTASYNC_TOPICNAME_TRUNCATED -7
151 #define MQTTASYNC_BAD_STRUCTURE -8
155 #define MQTTASYNC_BAD_QOS -9
159 #define MQTTASYNC_NO_MORE_MSGIDS -10
163 #define MQTTASYNC_OPERATION_INCOMPLETE -11
167 #define MQTTASYNC_MAX_BUFFERED_MESSAGES -12
171 #define MQTTASYNC_SSL_NOT_SUPPORTED -13
182 #define MQTTASYNC_BAD_PROTOCOL -14
186 #define MQTTASYNC_BAD_MQTT_OPTION -15
190 #define MQTTASYNC_WRONG_MQTT_VERSION -16
194 #define MQTTASYNC_0_LEN_WILL_TOPIC -17
200 #define MQTTASYNC_COMMAND_IGNORED -18
204 #define MQTTASYNC_MAX_BUFFERED -19
209 #define MQTTVERSION_DEFAULT 0
213 #define MQTTVERSION_3_1 3
217 #define MQTTVERSION_3_1_1 4
221 #define MQTTVERSION_5 5
225 #define MQTT_BAD_SUBSCRIBE 0x80
241 #define MQTTAsync_init_options_initializer { {'M', 'Q', 'T', 'G'}, 0, 0 }
334 #define MQTTAsync_message_initializer { {'M', 'Q', 'T', 'M'}, 1, 0, NULL, 0, 0, 0, 0, MQTTProperties_initializer }
489 #define MQTTAsync_connectData_initializer {{'M', 'Q', 'C', 'D'}, 0, NULL, {0, NULL}}
567 #define MQTTAsync_failureData5_initializer {{'M', 'Q', 'F', 'D'}, 0, 0, MQTTREASONCODE_SUCCESS, MQTTProperties_initializer, 0, NULL, 0}
640 #define MQTTAsync_successData5_initializer {{'M', 'Q', 'S', 'D'}, 0, 0, MQTTREASONCODE_SUCCESS, MQTTProperties_initializer, {.sub={0,0}}}
771 #define MQTTAsync_responseOptions_initializer { {'M', 'Q', 'T', 'R'}, 1, NULL, NULL, 0, 0, NULL, NULL, MQTTProperties_initializer, MQTTSubscribe_options_initializer, 0, NULL}
775 #define MQTTAsync_callOptions_initializer MQTTAsync_responseOptions_initializer
957 int persistence_type,
void* persistence_context);
1000 #define MQTTAsync_createOptions_initializer { {'M', 'Q', 'C', 'O'}, 2, 0, 100, MQTTVERSION_DEFAULT, 0, 0, 1, 1}
1002 #define MQTTAsync_createOptions_initializer5 { {'M', 'Q', 'C', 'O'}, 2, 0, 100, MQTTVERSION_5, 0, 0, 1, 1}
1049 #define MQTTAsync_willOptions_initializer { {'M', 'Q', 'T', 'W'}, 1, NULL, NULL, 0, 0, { 0, NULL } }
1051 #define MQTT_SSL_VERSION_DEFAULT 0
1052 #define MQTT_SSL_VERSION_TLS_1_0 1
1053 #define MQTT_SSL_VERSION_TLS_1_1 2
1054 #define MQTT_SSL_VERSION_TLS_1_2 3
1135 int (*ssl_error_cb) (
const char *str,
size_t len,
void *u);
1148 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);
1179 #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 }
1384 #define MQTTAsync_connectOptions_initializer { {'M', 'Q', 'T', 'C'}, 8, 60, 1, 65535, NULL, NULL, NULL, 30, 0,\
1385 NULL, NULL, NULL, NULL, 0, NULL, MQTTVERSION_DEFAULT, 0, 1, 60, {0, NULL}, 0, NULL, NULL, NULL, NULL, NULL, NULL, NULL}
1388 #define MQTTAsync_connectOptions_initializer5 { {'M', 'Q', 'T', 'C'}, 8, 60, 0, 65535, NULL, NULL, NULL, 30, 0,\
1389 NULL, NULL, NULL, NULL, 0, NULL, MQTTVERSION_5, 0, 1, 60, {0, NULL}, 1, NULL, NULL, NULL, NULL, NULL, NULL, NULL}
1394 #define MQTTAsync_connectOptions_initializer_ws { {'M', 'Q', 'T', 'C'}, 8, 45, 1, 65535, NULL, NULL, NULL, 30, 0,\
1395 NULL, NULL, NULL, NULL, 0, NULL, MQTTVERSION_DEFAULT, 0, 1, 60, {0, NULL}, 0, NULL, NULL, NULL, NULL, NULL, NULL, NULL}
1400 #define MQTTAsync_connectOptions_initializer5_ws { {'M', 'Q', 'T', 'C'}, 8, 45, 0, 65535, NULL, NULL, NULL, 30, 0,\
1401 NULL, NULL, NULL, NULL, 0, NULL, MQTTVERSION_5, 0, 1, 60, {0, NULL}, 1, NULL, NULL, NULL, NULL, NULL, NULL, NULL}
1478 #define MQTTAsync_disconnectOptions_initializer { {'M', 'Q', 'T', 'D'}, 0, 0, NULL, NULL, NULL,\
1479 MQTTProperties_initializer, MQTTREASONCODE_SUCCESS, NULL, NULL }
1481 #define MQTTAsync_disconnectOptions_initializer5 { {'M', 'Q', 'T', 'D'}, 1, 0, NULL, NULL, NULL,\
1482 MQTTProperties_initializer, MQTTREASONCODE_SUCCESS, NULL, NULL }
1599 LIBMQTT_API
int MQTTAsync_send(
MQTTAsync handle,
const char* destinationName,
int payloadlen,
const void* payload,
int qos,
1649 #define MQTTASYNC_TRUE 1
2379 #if defined(__cplusplus)
int MQTTAsync_isConnected(MQTTAsync handle)
unsigned int protos_len
Definition: MQTTAsync.h:1176
int MQTTAsync_waitForCompletion(MQTTAsync handle, MQTTAsync_token token, unsigned long timeout)
int * qosList
Definition: MQTTAsync.h:582
const MQTTAsync_nameValue * httpHeaders
Definition: MQTTAsync.h:1372
void * context
Definition: MQTTAsync.h:732
int sessionPresent
Definition: MQTTAsync.h:629
int MQTTAsync_token
Definition: MQTTAsync.h:263
int MQTTVersion
Definition: MQTTAsync.h:593
int allowDisconnectedSendAtAnyTime
Definition: MQTTAsync.h:985
int MQTTVersion
Definition: MQTTAsync.h:981
int MQTTAsync_setDisconnected(MQTTAsync handle, void *context, MQTTAsync_disconnected *co)
int MQTTAsync_createWithOptions(MQTTAsync *handle, const char *serverURI, const char *clientId, int persistence_type, void *persistence_context, MQTTAsync_createOptions *options)
int struct_version
Definition: MQTTAsync.h:969
MQTTAsync_nameValue * MQTTAsync_getVersionInfo(void)
int MQTTAsync_subscribe(MQTTAsync handle, const char *topic, int qos, MQTTAsync_responseOptions *response)
void * MQTTAsync
Definition: MQTTAsync.h:253
const char * httpProxy
Definition: MQTTAsync.h:1376
int struct_version
Definition: MQTTAsync.h:1212
char * serverURI
Definition: MQTTAsync.h:592
int sessionPresent
Definition: MQTTAsync.h:594
int do_openssl_init
Definition: MQTTAsync.h:238
void MQTTAsync_setTraceCallback(MQTTAsync_traceCallback *callback)
int MQTTAsync_setMessageArrivedCallback(MQTTAsync handle, void *context, MQTTAsync_messageArrived *ma)
Definition: MQTTAsync.h:601
void MQTTAsync_deliveryComplete(void *context, MQTTAsync_token token)
Definition: MQTTAsync.h:392
int MQTTAsync_isComplete(MQTTAsync handle, MQTTAsync_token token)
int cleanstart
Definition: MQTTAsync.h:1348
MQTTAsync_token token
Definition: MQTTAsync.h:606
int retained
Definition: MQTTAsync.h:314
Definition: MQTTAsync.h:547
const char * message
Definition: MQTTAsync.h:542
int struct_version
Definition: MQTTAsync.h:1080
Definition: MQTTProperties.h:112
const char * trustStore
Definition: MQTTAsync.h:1083
MQTTProperties properties
Definition: MQTTAsync.h:755
int automaticReconnect
Definition: MQTTAsync.h:1329
const char * privateKey
Definition: MQTTAsync.h:1093
int struct_version
Definition: MQTTAsync.h:604
int msgid
Definition: MQTTAsync.h:327
int code
Definition: MQTTAsync.h:560
char *const * serverURIs
Definition: MQTTAsync.h:1318
char struct_id[4]
Definition: MQTTAsync.h:711
int packet_type
Definition: MQTTAsync.h:564
MQTTProperties properties
Definition: MQTTAsync.h:1459
int MQTTAsync_setCallbacks(MQTTAsync handle, void *context, MQTTAsync_connectionLost *cl, MQTTAsync_messageArrived *ma, MQTTAsync_deliveryComplete *dc)
int MQTTAsync_sendMessage(MQTTAsync handle, const char *destinationName, const MQTTAsync_message *msg, MQTTAsync_responseOptions *response)
MQTTAsync_willOptions * will
Definition: MQTTAsync.h:1255
const char * CApath
Definition: MQTTAsync.h:1129
MQTTAsync_token token
Definition: MQTTAsync.h:538
int MQTTAsync_send(MQTTAsync handle, const char *destinationName, int payloadlen, const void *payload, int qos, int retained, MQTTAsync_responseOptions *response)
Definition: MQTTAsync.h:1068
void * MQTTAsync_malloc(size_t size)
int MQTTAsync_disconnect(MQTTAsync handle, const MQTTAsync_disconnectOptions *options)
@ MQTTASYNC_TRACE_SEVERE
Definition: MQTTAsync.h:1717
int MQTTAsync_subscribeMany(MQTTAsync handle, int count, char *const *topic, const int *qos, MQTTAsync_responseOptions *response)
MQTTProperties * willProperties
Definition: MQTTAsync.h:1356
MQTTAsync_onSuccess5 * onSuccess5
Definition: MQTTAsync.h:1362
int payloadlen
Definition: MQTTAsync.h:279
int sslVersion
Definition: MQTTAsync.h:1115
int MQTTVersion
Definition: MQTTAsync.h:628
const char * username
Definition: MQTTAsync.h:477
const char * keyStore
Definition: MQTTAsync.h:1088
void MQTTAsync_destroy(MQTTAsync *handle)
int MQTTAsync_unsubscribeMany(MQTTAsync handle, int count, char *const *topic, MQTTAsync_responseOptions *response)
int serverURIcount
Definition: MQTTAsync.h:1306
MQTTAsync_onFailure5 * onFailure5
Definition: MQTTAsync.h:1475
int len
Definition: MQTTAsync.h:484
MQTTAsync_message message
Definition: MQTTAsync.h:621
MQTTAsync_onFailure5 * onFailure5
Definition: MQTTAsync.h:1368
int connectTimeout
Definition: MQTTAsync.h:1271
MQTTAsync_token token
Definition: MQTTAsync.h:554
void MQTTAsync_setTraceLevel(enum MQTTASYNC_TRACE_LEVELS level)
const char * httpsProxy
Definition: MQTTAsync.h:1380
MQTTProperties * connectProperties
Definition: MQTTAsync.h:1352
int maxRetryInterval
Definition: MQTTAsync.h:1337
Definition: MQTTAsync.h:570
int MQTTAsync_setBeforePersistenceWrite(MQTTAsync handle, void *context, MQTTPersistence_beforeWrite *co)
int MQTTAsync_setConnectionLostCallback(MQTTAsync handle, void *context, MQTTAsync_connectionLost *cl)
MQTTAsync_onSuccess * onSuccess
Definition: MQTTAsync.h:1443
@ MQTTASYNC_TRACE_FATAL
Definition: MQTTAsync.h:1718
void MQTTAsync_onFailure(void *context, MQTTAsync_failureData *response)
Definition: MQTTAsync.h:686
MQTTAsync_onFailure5 * onFailure5
Definition: MQTTAsync.h:751
int MQTTAsync_setUpdateConnectOptions(MQTTAsync handle, void *context, MQTTAsync_updateConnectOptions *co)
void MQTTAsync_traceCallback(enum MQTTASYNC_TRACE_LEVELS level, char *message)
Definition: MQTTAsync.h:1739
int MQTTAsync_getPendingTokens(MQTTAsync handle, MQTTAsync_token **tokens)
int MQTTAsync_updateConnectOptions(void *context, MQTTAsync_connectData *data)
Definition: MQTTAsync.h:497
int retryInterval
Definition: MQTTAsync.h:1279
void * context
Definition: MQTTAsync.h:1455
MQTTAsync_message message
Definition: MQTTAsync.h:586
int minRetryInterval
Definition: MQTTAsync.h:1333
int struct_version
Definition: MQTTAsync.h:552
Definition: MQTTAsync.h:708
Definition: MQTTAsync.h:465
void * ssl_psk_context
Definition: MQTTAsync.h:1154
MQTTProperties properties
Definition: MQTTAsync.h:608
@ MQTTASYNC_TRACE_MAXIMUM
Definition: MQTTAsync.h:1712
int MQTTPersistence_beforeWrite(void *context, int bufcount, char *buffers[], int buflens[])
Definition: MQTTClientPersistence.h:264
int MQTTAsync_create(MQTTAsync *handle, const char *serverURI, const char *clientId, int persistence_type, void *persistence_context)
const char * topicName
Definition: MQTTAsync.h:1029
void MQTTAsync_connectionLost(void *context, char *cause)
Definition: MQTTAsync.h:412
void MQTTAsync_global_init(MQTTAsync_init_options *inits)
Definition: MQTTAsync.h:231
void MQTTAsync_onFailure5(void *context, MQTTAsync_failureData5 *response)
Definition: MQTTAsync.h:701
int keepAliveInterval
Definition: MQTTAsync.h:1223
char * destinationName
Definition: MQTTAsync.h:622
MQTTAsync_onSuccess5 * onSuccess5
Definition: MQTTAsync.h:1469
const char * enabledCipherSuites
Definition: MQTTAsync.h:1106
int qos
Definition: MQTTAsync.h:295
int struct_version
Definition: MQTTAsync.h:1432
int MQTTAsync_unsubscribe(MQTTAsync handle, const char *topic, MQTTAsync_responseOptions *response)
void MQTTAsync_disconnected(void *context, MQTTProperties *properties, enum MQTTReasonCodes reasonCode)
Definition: MQTTAsync.h:444
int MQTTAsync_messageArrived(void *context, char *topicName, int topicLen, MQTTAsync_message *message)
Definition: MQTTAsync.h:369
Definition: MQTTAsync.h:1020
void * payload
Definition: MQTTAsync.h:281
@ MQTTASYNC_TRACE_MINIMUM
Definition: MQTTAsync.h:1714
MQTTAsync_token token
Definition: MQTTAsync.h:739
int MQTTAsync_reconnect(MQTTAsync handle)
const void * data
Definition: MQTTAsync.h:1343
const void * data
Definition: MQTTAsync.h:485
MQTTASYNC_TRACE_LEVELS
Definition: MQTTAsync.h:1710
int struct_version
Definition: MQTTAsync.h:1027
const char * name
Definition: MQTTAsync.h:1184
int MQTTAsync_setDeliveryCompleteCallback(MQTTAsync handle, void *context, MQTTAsync_deliveryComplete *dc)
char * destinationName
Definition: MQTTAsync.h:587
int MQTTAsync_connect(MQTTAsync handle, const MQTTAsync_connectOptions *options)
int sendWhileDisconnected
Definition: MQTTAsync.h:971
Definition: MQTTAsync.h:271
MQTTAsync_onFailure * onFailure
Definition: MQTTAsync.h:726
int MQTTVersion
Definition: MQTTAsync.h:1325
const unsigned char * protos
Definition: MQTTAsync.h:1170
int struct_version
Definition: MQTTAsync.h:470
const char * username
Definition: MQTTAsync.h:1261
void MQTTAsync_free(void *ptr)
Definition: MQTTAsync.h:1198
MQTTAsync_onSuccess5 * onSuccess5
Definition: MQTTAsync.h:745
MQTTProperties properties
Definition: MQTTAsync.h:558
@ MQTTASYNC_TRACE_PROTOCOL
Definition: MQTTAsync.h:1715
const char * MQTTAsync_strerror(int code)
int verify
Definition: MQTTAsync.h:1122
char * serverURI
Definition: MQTTAsync.h:627
Definition: MQTTAsync.h:1182
const char * privateKeyPassword
Definition: MQTTAsync.h:1096
Definition: MQTTAsync.h:535
Definition: MQTTSubscribeOpts.h:21
int disableDefaultTrustStore
Definition: MQTTAsync.h:1161
const void * data
Definition: MQTTAsync.h:1045
int maxInflight
Definition: MQTTAsync.h:1249
MQTTAsync_onSuccess * onSuccess
Definition: MQTTAsync.h:720
MQTTAsync_SSLOptions * ssl
Definition: MQTTAsync.h:1284
struct MQTTAsync_responseOptions MQTTAsync_responseOptions
int persistQoS0
Definition: MQTTAsync.h:997
int retained
Definition: MQTTAsync.h:1035
int maxBufferedMessages
Definition: MQTTAsync.h:975
int deleteOldestMessages
Definition: MQTTAsync.h:989
enum MQTTReasonCodes * reasonCodes
Definition: MQTTAsync.h:616
const char * password
Definition: MQTTAsync.h:1267
int code
Definition: MQTTAsync.h:540
MQTTSubscribe_options subscribeOptions
Definition: MQTTAsync.h:759
const char * message
Definition: MQTTAsync.h:1031
MQTTAsync_onFailure * onFailure
Definition: MQTTAsync.h:1449
const char * value
Definition: MQTTAsync.h:1185
int MQTTAsync_setConnected(MQTTAsync handle, void *context, MQTTAsync_connected *co)
const char * message
Definition: MQTTAsync.h:562
Definition: MQTTAsync.h:1427
MQTTSubscribe_options * subscribeOptionsList
Definition: MQTTAsync.h:768
int MQTTPersistence_afterRead(void *context, char **buffer, int *buflen)
Definition: MQTTClientPersistence.h:275
int subscribeOptionsCount
Definition: MQTTAsync.h:764
int len
Definition: MQTTAsync.h:1342
@ MQTTASYNC_TRACE_ERROR
Definition: MQTTAsync.h:1716
int struct_version
Definition: MQTTAsync.h:236
void MQTTAsync_connected(void *context, char *cause)
Definition: MQTTAsync.h:430
int enableServerCertAuth
Definition: MQTTAsync.h:1109
int MQTTAsync_setAfterPersistenceRead(MQTTAsync handle, void *context, MQTTPersistence_afterRead *co)
void MQTTAsync_onSuccess5(void *context, MQTTAsync_successData5 *response)
Definition: MQTTAsync.h:671
This structure represents a persistent data store, used to store outbound and inbound messages,...
int reasonCodeCount
Definition: MQTTAsync.h:615
int qos
Definition: MQTTAsync.h:579
int timeout
Definition: MQTTAsync.h:1437
int dup
Definition: MQTTAsync.h:321
MQTTProperties properties
Definition: MQTTAsync.h:331
int struct_version
Definition: MQTTAsync.h:277
int len
Definition: MQTTAsync.h:1044
void * ssl_error_context
Definition: MQTTAsync.h:1141
int struct_version
Definition: MQTTAsync.h:714
int qos
Definition: MQTTAsync.h:1040
MQTTAsync_token token
Definition: MQTTAsync.h:573
int cleansession
Definition: MQTTAsync.h:1245
int restoreMessages
Definition: MQTTAsync.h:993
@ MQTTASYNC_TRACE_MEDIUM
Definition: MQTTAsync.h:1713
void MQTTAsync_freeMessage(MQTTAsync_message **msg)
MQTTReasonCodes
Definition: MQTTReasonCodes.h:23
void * context
Definition: MQTTAsync.h:1302
void MQTTAsync_onSuccess(void *context, MQTTAsync_successData *response)
Definition: MQTTAsync.h:655
MQTTAsync_onFailure * onFailure
Definition: MQTTAsync.h:1296
Definition: MQTTAsync.h:960
MQTTAsync_onSuccess * onSuccess
Definition: MQTTAsync.h:1290