123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219 |
- enum MQTTPropertyCodes {
- MQTTPROPERTY_CODE_PAYLOAD_FORMAT_INDICATOR = 1,
- MQTTPROPERTY_CODE_MESSAGE_EXPIRY_INTERVAL = 2,
- MQTTPROPERTY_CODE_CONTENT_TYPE = 3,
- MQTTPROPERTY_CODE_RESPONSE_TOPIC = 8,
- MQTTPROPERTY_CODE_CORRELATION_DATA = 9,
- MQTTPROPERTY_CODE_SUBSCRIPTION_IDENTIFIER = 11,
- MQTTPROPERTY_CODE_SESSION_EXPIRY_INTERVAL = 17,
- MQTTPROPERTY_CODE_ASSIGNED_CLIENT_IDENTIFER = 18,
- MQTTPROPERTY_CODE_SERVER_KEEP_ALIVE = 19,
- MQTTPROPERTY_CODE_AUTHENTICATION_METHOD = 21,
- MQTTPROPERTY_CODE_AUTHENTICATION_DATA = 22,
- MQTTPROPERTY_CODE_REQUEST_PROBLEM_INFORMATION = 23,
- MQTTPROPERTY_CODE_WILL_DELAY_INTERVAL = 24,
- MQTTPROPERTY_CODE_REQUEST_RESPONSE_INFORMATION = 25,
- MQTTPROPERTY_CODE_RESPONSE_INFORMATION = 26,
- MQTTPROPERTY_CODE_SERVER_REFERENCE = 28,
- MQTTPROPERTY_CODE_REASON_STRING = 31,
- MQTTPROPERTY_CODE_RECEIVE_MAXIMUM = 33,
- MQTTPROPERTY_CODE_TOPIC_ALIAS_MAXIMUM = 34,
- MQTTPROPERTY_CODE_TOPIC_ALIAS = 35,
- MQTTPROPERTY_CODE_MAXIMUM_QOS = 36,
- MQTTPROPERTY_CODE_RETAIN_AVAILABLE = 37,
- MQTTPROPERTY_CODE_USER_PROPERTY = 38,
- MQTTPROPERTY_CODE_MAXIMUM_PACKET_SIZE = 39,
- MQTTPROPERTY_CODE_WILDCARD_SUBSCRIPTION_AVAILABLE = 40,
- MQTTPROPERTY_CODE_SUBSCRIPTION_IDENTIFIERS_AVAILABLE = 41,
- MQTTPROPERTY_CODE_SHARED_SUBSCRIPTION_AVAILABLE = 42
- };
- LIBMQTT_API const char* MQTTPropertyName(enum MQTTPropertyCodes value);
- 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
- };
- LIBMQTT_API int MQTTProperty_getType(enum MQTTPropertyCodes value);
- typedef struct
- {
- int len;
- char* data;
- } MQTTLenString;
- typedef struct
- {
- enum MQTTPropertyCodes identifier;
-
- union {
- unsigned char byte;
- unsigned short integer2;
- unsigned int integer4;
- struct {
- MQTTLenString data;
- MQTTLenString value;
- };
- } value;
- } MQTTProperty;
- typedef struct MQTTProperties
- {
- int count;
- int max_count;
- int length;
- MQTTProperty *array;
- } MQTTProperties;
- int MQTTProperties_len(MQTTProperties* props);
- LIBMQTT_API int MQTTProperties_add(MQTTProperties* props, const MQTTProperty* prop);
- int MQTTProperties_write(char** pptr, const MQTTProperties* properties);
- int MQTTProperties_read(MQTTProperties* properties, char** pptr, char* enddata);
- LIBMQTT_API void MQTTProperties_free(MQTTProperties* properties);
- LIBMQTT_API MQTTProperties MQTTProperties_copy(const MQTTProperties* props);
- LIBMQTT_API int MQTTProperties_hasProperty(MQTTProperties *props, enum MQTTPropertyCodes propid);
- LIBMQTT_API int MQTTProperties_propertyCount(MQTTProperties *props, enum MQTTPropertyCodes propid);
- LIBMQTT_API int MQTTProperties_getNumericValue(MQTTProperties *props, enum MQTTPropertyCodes propid);
- LIBMQTT_API int MQTTProperties_getNumericValueAt(MQTTProperties *props, enum MQTTPropertyCodes propid, int index);
- LIBMQTT_API MQTTProperty* MQTTProperties_getProperty(MQTTProperties *props, enum MQTTPropertyCodes propid);
- LIBMQTT_API MQTTProperty* MQTTProperties_getPropertyAt(MQTTProperties *props, enum MQTTPropertyCodes propid, int index);
|