A small footprint MQTT library
Dependents: STM32F746_iothub_client_sample_mqtt FXOS8700CQ_To_Azure_IoT f767zi_mqtt FXOS8700CQ_To_Azure_IoT ... more
azure_umqtt_c/mqtt_client.h@25:413b95a07625, 2018-03-20 (annotated)
- Committer:
- AzureIoTClient
- Date:
- Tue Mar 20 10:30:11 2018 -0700
- Revision:
- 25:413b95a07625
- Parent:
- 19:e283dcf26037
- Child:
- 29:7bb0aae34648
1.2.1
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Azure.IoT Build | 0:ef4901974abc | 1 | // Copyright (c) Microsoft. All rights reserved. |
Azure.IoT Build | 0:ef4901974abc | 2 | // Licensed under the MIT license. See LICENSE file in the project root for full license information. |
Azure.IoT Build | 0:ef4901974abc | 3 | |
Azure.IoT Build | 0:ef4901974abc | 4 | #ifndef MQTT_CLIENT_H |
Azure.IoT Build | 0:ef4901974abc | 5 | #define MQTT_CLIENT_H |
Azure.IoT Build | 0:ef4901974abc | 6 | |
Azure.IoT Build | 0:ef4901974abc | 7 | #ifdef __cplusplus |
Azure.IoT Build | 0:ef4901974abc | 8 | #include <cstdint> |
Azure.IoT Build | 0:ef4901974abc | 9 | extern "C" { |
Azure.IoT Build | 0:ef4901974abc | 10 | #else |
Azure.IoT Build | 0:ef4901974abc | 11 | #include <stdint.h> |
Azure.IoT Build | 0:ef4901974abc | 12 | #endif // __cplusplus |
Azure.IoT Build | 0:ef4901974abc | 13 | |
Azure.IoT Build | 0:ef4901974abc | 14 | #include "azure_c_shared_utility/xio.h" |
Azure.IoT Build | 0:ef4901974abc | 15 | #include "azure_c_shared_utility/macro_utils.h" |
Azure.IoT Build | 0:ef4901974abc | 16 | #include "azure_umqtt_c/mqttconst.h" |
Azure.IoT Build | 0:ef4901974abc | 17 | #include "azure_umqtt_c/mqtt_message.h" |
AzureIoTClient | 7:cd90a7a97be1 | 18 | #include "azure_c_shared_utility/umock_c_prod.h" |
Azure.IoT Build | 0:ef4901974abc | 19 | |
Azure.IoT Build | 0:ef4901974abc | 20 | typedef struct MQTT_CLIENT_TAG* MQTT_CLIENT_HANDLE; |
Azure.IoT Build | 0:ef4901974abc | 21 | |
AzureIoTClient | 3:9b4e7158ca0d | 22 | #define MQTT_CLIENT_EVENT_VALUES \ |
Azure.IoT Build | 0:ef4901974abc | 23 | MQTT_CLIENT_ON_CONNACK, \ |
Azure.IoT Build | 0:ef4901974abc | 24 | MQTT_CLIENT_ON_PUBLISH_ACK, \ |
Azure.IoT Build | 0:ef4901974abc | 25 | MQTT_CLIENT_ON_PUBLISH_RECV, \ |
Azure.IoT Build | 0:ef4901974abc | 26 | MQTT_CLIENT_ON_PUBLISH_REL, \ |
Azure.IoT Build | 0:ef4901974abc | 27 | MQTT_CLIENT_ON_PUBLISH_COMP, \ |
Azure.IoT Build | 0:ef4901974abc | 28 | MQTT_CLIENT_ON_SUBSCRIBE_ACK, \ |
Azure.IoT Build | 0:ef4901974abc | 29 | MQTT_CLIENT_ON_UNSUBSCRIBE_ACK, \ |
AzureIoTClient | 18:6d13ad04e8a0 | 30 | MQTT_CLIENT_ON_PING_RESPONSE, \ |
AzureIoTClient | 9:37d14c31ff6e | 31 | MQTT_CLIENT_ON_DISCONNECT |
Azure.IoT Build | 0:ef4901974abc | 32 | |
Azure.IoT Build | 0:ef4901974abc | 33 | DEFINE_ENUM(MQTT_CLIENT_EVENT_RESULT, MQTT_CLIENT_EVENT_VALUES); |
Azure.IoT Build | 0:ef4901974abc | 34 | |
AzureIoTClient | 9:37d14c31ff6e | 35 | #define MQTT_CLIENT_EVENT_ERROR_VALUES \ |
AzureIoTClient | 9:37d14c31ff6e | 36 | MQTT_CLIENT_CONNECTION_ERROR, \ |
AzureIoTClient | 9:37d14c31ff6e | 37 | MQTT_CLIENT_PARSE_ERROR, \ |
AzureIoTClient | 9:37d14c31ff6e | 38 | MQTT_CLIENT_MEMORY_ERROR, \ |
AzureIoTClient | 9:37d14c31ff6e | 39 | MQTT_CLIENT_COMMUNICATION_ERROR, \ |
AzureIoTClient | 9:37d14c31ff6e | 40 | MQTT_CLIENT_NO_PING_RESPONSE, \ |
AzureIoTClient | 9:37d14c31ff6e | 41 | MQTT_CLIENT_UNKNOWN_ERROR |
AzureIoTClient | 9:37d14c31ff6e | 42 | |
AzureIoTClient | 9:37d14c31ff6e | 43 | DEFINE_ENUM(MQTT_CLIENT_EVENT_ERROR, MQTT_CLIENT_EVENT_ERROR_VALUES); |
AzureIoTClient | 9:37d14c31ff6e | 44 | |
Azure.IoT Build | 0:ef4901974abc | 45 | typedef void(*ON_MQTT_OPERATION_CALLBACK)(MQTT_CLIENT_HANDLE handle, MQTT_CLIENT_EVENT_RESULT actionResult, const void* msgInfo, void* callbackCtx); |
AzureIoTClient | 9:37d14c31ff6e | 46 | typedef void(*ON_MQTT_ERROR_CALLBACK)(MQTT_CLIENT_HANDLE handle, MQTT_CLIENT_EVENT_ERROR error, void* callbackCtx); |
Azure.IoT Build | 0:ef4901974abc | 47 | typedef void(*ON_MQTT_MESSAGE_RECV_CALLBACK)(MQTT_MESSAGE_HANDLE msgHandle, void* callbackCtx); |
AzureIoTClient | 19:e283dcf26037 | 48 | typedef void(*ON_MQTT_DISCONNECTED_CALLBACK)(void* callbackCtx); |
Azure.IoT Build | 0:ef4901974abc | 49 | |
AzureIoTClient | 9:37d14c31ff6e | 50 | MOCKABLE_FUNCTION(, MQTT_CLIENT_HANDLE, mqtt_client_init, ON_MQTT_MESSAGE_RECV_CALLBACK, msgRecv, ON_MQTT_OPERATION_CALLBACK, opCallback, void*, opCallbackCtx, ON_MQTT_ERROR_CALLBACK, onErrorCallBack, void*, errorCBCtx); |
AzureIoTClient | 7:cd90a7a97be1 | 51 | MOCKABLE_FUNCTION(, void, mqtt_client_deinit, MQTT_CLIENT_HANDLE, handle); |
Azure.IoT Build | 0:ef4901974abc | 52 | |
AzureIoTClient | 7:cd90a7a97be1 | 53 | MOCKABLE_FUNCTION(, int, mqtt_client_connect, MQTT_CLIENT_HANDLE, handle, XIO_HANDLE, xioHandle, MQTT_CLIENT_OPTIONS*, mqttOptions); |
AzureIoTClient | 19:e283dcf26037 | 54 | MOCKABLE_FUNCTION(, int, mqtt_client_disconnect, MQTT_CLIENT_HANDLE, handle, ON_MQTT_DISCONNECTED_CALLBACK, callback, void*, ctx); |
Azure.IoT Build | 0:ef4901974abc | 55 | |
AzureIoTClient | 7:cd90a7a97be1 | 56 | MOCKABLE_FUNCTION(, int, mqtt_client_subscribe, MQTT_CLIENT_HANDLE, handle, uint16_t, packetId, SUBSCRIBE_PAYLOAD*, subscribeList, size_t, count); |
AzureIoTClient | 7:cd90a7a97be1 | 57 | MOCKABLE_FUNCTION(, int, mqtt_client_unsubscribe, MQTT_CLIENT_HANDLE, handle, uint16_t, packetId, const char**, unsubscribeList, size_t, count); |
Azure.IoT Build | 0:ef4901974abc | 58 | |
AzureIoTClient | 7:cd90a7a97be1 | 59 | MOCKABLE_FUNCTION(, int, mqtt_client_publish, MQTT_CLIENT_HANDLE, handle, MQTT_MESSAGE_HANDLE, msgHandle); |
Azure.IoT Build | 0:ef4901974abc | 60 | |
AzureIoTClient | 7:cd90a7a97be1 | 61 | MOCKABLE_FUNCTION(, void, mqtt_client_dowork, MQTT_CLIENT_HANDLE, handle); |
Azure.IoT Build | 0:ef4901974abc | 62 | |
AzureIoTClient | 7:cd90a7a97be1 | 63 | MOCKABLE_FUNCTION(, void, mqtt_client_set_trace, MQTT_CLIENT_HANDLE, handle, bool, traceOn, bool, rawBytesOn); |
Azure.IoT Build | 0:ef4901974abc | 64 | |
Azure.IoT Build | 0:ef4901974abc | 65 | #ifdef __cplusplus |
Azure.IoT Build | 0:ef4901974abc | 66 | } |
Azure.IoT Build | 0:ef4901974abc | 67 | #endif // __cplusplus |
Azure.IoT Build | 0:ef4901974abc | 68 | |
Azure.IoT Build | 0:ef4901974abc | 69 | #endif // MQTTCLIENT_H |