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/mqttconst.h@29:7bb0aae34648, 2018-09-11 (annotated)
- Committer:
- AzureIoTClient
- Date:
- Tue Sep 11 11:14:10 2018 -0700
- Revision:
- 29:7bb0aae34648
- Parent:
- 28:35eea447689a
1.2.9
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 MQTTCONST_H |
Azure.IoT Build | 0:ef4901974abc | 5 | #define MQTTCONST_H |
Azure.IoT Build | 0:ef4901974abc | 6 | |
AzureIoTClient | 29:7bb0aae34648 | 7 | #include "azure_c_shared_utility/crt_abstractions.h" |
AzureIoTClient | 29:7bb0aae34648 | 8 | |
Azure.IoT Build | 0:ef4901974abc | 9 | #ifdef __cplusplus |
Azure.IoT Build | 0:ef4901974abc | 10 | #include <cstddef> |
Azure.IoT Build | 0:ef4901974abc | 11 | #include <cstdint> |
Azure.IoT Build | 0:ef4901974abc | 12 | extern "C" { |
Azure.IoT Build | 0:ef4901974abc | 13 | #else |
Azure.IoT Build | 0:ef4901974abc | 14 | #include <stddef.h> |
Azure.IoT Build | 0:ef4901974abc | 15 | #include <stdint.h> |
Azure.IoT Build | 0:ef4901974abc | 16 | #endif /* __cplusplus */ |
Azure.IoT Build | 0:ef4901974abc | 17 | |
AzureIoTClient | 2:f3140ae5c35c | 18 | #define CONTROL_PACKET_TYPE_VALUES \ |
AzureIoTClient | 2:f3140ae5c35c | 19 | CONNECT_TYPE = 0x10, \ |
AzureIoTClient | 2:f3140ae5c35c | 20 | CONNACK_TYPE = 0x20, \ |
AzureIoTClient | 2:f3140ae5c35c | 21 | PUBLISH_TYPE = 0x30, \ |
AzureIoTClient | 2:f3140ae5c35c | 22 | PUBACK_TYPE = 0x40, \ |
AzureIoTClient | 2:f3140ae5c35c | 23 | PUBREC_TYPE = 0x50, \ |
AzureIoTClient | 2:f3140ae5c35c | 24 | PUBREL_TYPE = 0x60, \ |
AzureIoTClient | 2:f3140ae5c35c | 25 | PUBCOMP_TYPE = 0x70, \ |
AzureIoTClient | 2:f3140ae5c35c | 26 | SUBSCRIBE_TYPE = 0x80, \ |
AzureIoTClient | 2:f3140ae5c35c | 27 | SUBACK_TYPE = 0x90, \ |
AzureIoTClient | 2:f3140ae5c35c | 28 | UNSUBSCRIBE_TYPE = 0xA0, \ |
AzureIoTClient | 2:f3140ae5c35c | 29 | UNSUBACK_TYPE = 0xB0, \ |
AzureIoTClient | 2:f3140ae5c35c | 30 | PINGREQ_TYPE = 0xC0, \ |
AzureIoTClient | 2:f3140ae5c35c | 31 | PINGRESP_TYPE = 0xD0, \ |
AzureIoTClient | 2:f3140ae5c35c | 32 | DISCONNECT_TYPE = 0xE0, \ |
AzureIoTClient | 2:f3140ae5c35c | 33 | PACKET_TYPE_ERROR, \ |
Azure.IoT Build | 0:ef4901974abc | 34 | UNKNOWN_TYPE |
AzureIoTClient | 2:f3140ae5c35c | 35 | |
AzureIoTClient | 2:f3140ae5c35c | 36 | DEFINE_ENUM(CONTROL_PACKET_TYPE, CONTROL_PACKET_TYPE_VALUES) |
Azure.IoT Build | 0:ef4901974abc | 37 | |
AzureIoTClient | 2:f3140ae5c35c | 38 | #define QOS_VALUE_VALUES \ |
AzureIoTClient | 2:f3140ae5c35c | 39 | DELIVER_AT_MOST_ONCE = 0x00, \ |
AzureIoTClient | 2:f3140ae5c35c | 40 | DELIVER_AT_LEAST_ONCE = 0x01, \ |
AzureIoTClient | 2:f3140ae5c35c | 41 | DELIVER_EXACTLY_ONCE = 0x02, \ |
Azure.IoT Build | 0:ef4901974abc | 42 | DELIVER_FAILURE = 0x80 |
AzureIoTClient | 2:f3140ae5c35c | 43 | |
AzureIoTClient | 2:f3140ae5c35c | 44 | DEFINE_ENUM(QOS_VALUE, QOS_VALUE_VALUES) |
Azure.IoT Build | 0:ef4901974abc | 45 | |
Azure.IoT Build | 0:ef4901974abc | 46 | typedef struct APP_PAYLOAD_TAG |
Azure.IoT Build | 0:ef4901974abc | 47 | { |
Azure.IoT Build | 0:ef4901974abc | 48 | uint8_t* message; |
Azure.IoT Build | 0:ef4901974abc | 49 | size_t length; |
Azure.IoT Build | 0:ef4901974abc | 50 | } APP_PAYLOAD; |
Azure.IoT Build | 0:ef4901974abc | 51 | |
Azure.IoT Build | 0:ef4901974abc | 52 | typedef struct MQTT_CLIENT_OPTIONS_TAG |
Azure.IoT Build | 0:ef4901974abc | 53 | { |
Azure.IoT Build | 0:ef4901974abc | 54 | char* clientId; |
Azure.IoT Build | 0:ef4901974abc | 55 | char* willTopic; |
Azure.IoT Build | 0:ef4901974abc | 56 | char* willMessage; |
Azure.IoT Build | 0:ef4901974abc | 57 | char* username; |
Azure.IoT Build | 0:ef4901974abc | 58 | char* password; |
AzureIoTClient | 5:34779607059c | 59 | uint16_t keepAliveInterval; |
Azure.IoT Build | 0:ef4901974abc | 60 | bool messageRetain; |
Azure.IoT Build | 0:ef4901974abc | 61 | bool useCleanSession; |
Azure.IoT Build | 0:ef4901974abc | 62 | QOS_VALUE qualityOfServiceValue; |
Azure.IoT Build | 0:ef4901974abc | 63 | bool log_trace; |
Azure.IoT Build | 0:ef4901974abc | 64 | } MQTT_CLIENT_OPTIONS; |
Azure.IoT Build | 0:ef4901974abc | 65 | |
Azure.IoT Build | 0:ef4901974abc | 66 | typedef enum CONNECT_RETURN_CODE_TAG |
Azure.IoT Build | 0:ef4901974abc | 67 | { |
Azure.IoT Build | 0:ef4901974abc | 68 | CONNECTION_ACCEPTED = 0x00, |
Azure.IoT Build | 0:ef4901974abc | 69 | CONN_REFUSED_UNACCEPTABLE_VERSION = 0x01, |
Azure.IoT Build | 0:ef4901974abc | 70 | CONN_REFUSED_ID_REJECTED = 0x02, |
Azure.IoT Build | 0:ef4901974abc | 71 | CONN_REFUSED_SERVER_UNAVAIL = 0x03, |
Azure.IoT Build | 0:ef4901974abc | 72 | CONN_REFUSED_BAD_USERNAME_PASSWORD = 0x04, |
Azure.IoT Build | 0:ef4901974abc | 73 | CONN_REFUSED_NOT_AUTHORIZED = 0x05, |
Azure.IoT Build | 0:ef4901974abc | 74 | CONN_REFUSED_UNKNOWN |
Azure.IoT Build | 0:ef4901974abc | 75 | } CONNECT_RETURN_CODE; |
Azure.IoT Build | 0:ef4901974abc | 76 | |
Azure.IoT Build | 0:ef4901974abc | 77 | typedef struct CONNECT_ACK_TAG |
Azure.IoT Build | 0:ef4901974abc | 78 | { |
Azure.IoT Build | 0:ef4901974abc | 79 | bool isSessionPresent; |
Azure.IoT Build | 0:ef4901974abc | 80 | CONNECT_RETURN_CODE returnCode; |
Azure.IoT Build | 0:ef4901974abc | 81 | } CONNECT_ACK; |
Azure.IoT Build | 0:ef4901974abc | 82 | |
Azure.IoT Build | 0:ef4901974abc | 83 | typedef struct SUBSCRIBE_PAYLOAD_TAG |
Azure.IoT Build | 0:ef4901974abc | 84 | { |
Azure.IoT Build | 0:ef4901974abc | 85 | const char* subscribeTopic; |
Azure.IoT Build | 0:ef4901974abc | 86 | QOS_VALUE qosReturn; |
Azure.IoT Build | 0:ef4901974abc | 87 | } SUBSCRIBE_PAYLOAD; |
Azure.IoT Build | 0:ef4901974abc | 88 | |
Azure.IoT Build | 0:ef4901974abc | 89 | typedef struct SUBSCRIBE_ACK_TAG |
Azure.IoT Build | 0:ef4901974abc | 90 | { |
Azure.IoT Build | 0:ef4901974abc | 91 | uint16_t packetId; |
Azure.IoT Build | 0:ef4901974abc | 92 | QOS_VALUE* qosReturn; |
Azure.IoT Build | 0:ef4901974abc | 93 | size_t qosCount; |
Azure.IoT Build | 0:ef4901974abc | 94 | } SUBSCRIBE_ACK; |
Azure.IoT Build | 0:ef4901974abc | 95 | |
Azure.IoT Build | 0:ef4901974abc | 96 | typedef struct UNSUBSCRIBE_ACK_TAG |
Azure.IoT Build | 0:ef4901974abc | 97 | { |
Azure.IoT Build | 0:ef4901974abc | 98 | uint16_t packetId; |
Azure.IoT Build | 0:ef4901974abc | 99 | } UNSUBSCRIBE_ACK; |
Azure.IoT Build | 0:ef4901974abc | 100 | |
Azure.IoT Build | 0:ef4901974abc | 101 | typedef struct PUBLISH_ACK_TAG |
Azure.IoT Build | 0:ef4901974abc | 102 | { |
Azure.IoT Build | 0:ef4901974abc | 103 | uint16_t packetId; |
Azure.IoT Build | 0:ef4901974abc | 104 | } PUBLISH_ACK; |
Azure.IoT Build | 0:ef4901974abc | 105 | |
Azure.IoT Build | 0:ef4901974abc | 106 | #ifdef __cplusplus |
Azure.IoT Build | 0:ef4901974abc | 107 | } |
Azure.IoT Build | 0:ef4901974abc | 108 | #endif /* __cplusplus */ |
Azure.IoT Build | 0:ef4901974abc | 109 | |
AzureIoTClient | 28:35eea447689a | 110 | #endif // MQTTCONST_H |