mqttsn.h
Go to the documentation of this file.
1 /*
2  * SPDX-FileCopyrightText: 2018 Freie Universität Berlin
3  * SPDX-License-Identifier: LGPL-2.1-only
4  */
5 
6 #pragma once
7 
22 #ifdef __cplusplus
23 extern "C" {
24 #endif
25 
32 #define MQTTSN_CLI_ID_MINLEN (1U)
33 #define MQTTSN_CLI_ID_MAXLEN (23U)
44 enum {
45  MQTTSN_DUP = 0x80,
46  MQTTSN_QOS_MASK = 0x60,
47  MQTTSN_QOS_2 = 0x40,
48  MQTTSN_QOS_1 = 0x20,
49  MQTTSN_QOS_NEG1 = 0x60,
50  MQTTSN_QOS_0 = 0x00,
51  MQTTSN_RETAIN = 0x10,
52  MQTTSN_WILL = 0x08,
53  MQTTSN_CS = 0x04,
54  MQTTSN_TIT_MASK = 0x03,
58 };
59 
63 enum {
65  MQTTSN_SEARCHGW = 0x01,
66  MQTTSN_GWINFO = 0x02,
67  MQTTSN_CONNECT = 0x04,
68  MQTTSN_CONNACK = 0x05,
72  MQTTSN_WILLMSG = 0x09,
73  MQTTSN_REGISTER = 0x0a,
74  MQTTSN_REGACK = 0x0b,
75  MQTTSN_PUBLISH = 0x0c,
76  MQTTSN_PUBACK = 0x0d,
77  MQTTSN_PUBCOMP = 0x0e,
78  MQTTSN_PUBREC = 0x0f,
79  MQTTSN_PUBREL = 0x10,
81  MQTTSN_SUBACK = 0x13,
83  MQTTSN_UNSUBACK = 0x15,
84  MQTTSN_PINGREQ = 0x16,
85  MQTTSN_PINGRESP = 0x17,
91 };
92 
98 enum {
99  MQTTSN_ACCEPTED = 0x00,
103 };
104 
105 #ifdef __cplusplus
106 }
107 #endif
108 
@ MQTTSN_REJ_CONGESTION
rejected: congestion
Definition: mqttsn.h:100
@ MQTTSN_REJ_INV_TOPIC_ID
rejected: invalid topic id
Definition: mqttsn.h:101
@ MQTTSN_REJ_NOTSUP
rejected: not supported
Definition: mqttsn.h:102
@ MQTTSN_ACCEPTED
accepted
Definition: mqttsn.h:99
@ MQTTSN_QOS_1
QoS level 1.
Definition: mqttsn.h:48
@ MQTTSN_DUP
duplicate flag
Definition: mqttsn.h:45
@ MQTTSN_RETAIN
retain flag
Definition: mqttsn.h:51
@ MQTTSN_CS
clean session flag
Definition: mqttsn.h:53
@ MQTTSN_QOS_2
QoS level 2.
Definition: mqttsn.h:47
@ MQTTSN_TIT_SHORT
topic ID: short
Definition: mqttsn.h:55
@ MQTTSN_TIT_PREDEF
topic ID: pre-defined
Definition: mqttsn.h:56
@ MQTTSN_QOS_NEG1
QoS level -1 (negative 1)
Definition: mqttsn.h:49
@ MQTTSN_QOS_0
QoS level 0.
Definition: mqttsn.h:50
@ MQTTSN_TIT_MASK
topic ID type mask
Definition: mqttsn.h:54
@ MQTTSN_WILL
will flag, used during CONNECT
Definition: mqttsn.h:52
@ MQTTSN_TIT_NORMAL
topic ID: normal
Definition: mqttsn.h:57
@ MQTTSN_QOS_MASK
QoS level mask.
Definition: mqttsn.h:46
@ MQTTSN_UNSUBACK
unsubscription acknowledgment
Definition: mqttsn.h:83
@ MQTTSN_WILLTOPICUPD
will topic update request
Definition: mqttsn.h:87
@ MQTTSN_WILLTOPIC
will topic
Definition: mqttsn.h:70
@ MQTTSN_CONNACK
connection acknowledgment message
Definition: mqttsn.h:68
@ MQTTSN_PUBLISH
publish message
Definition: mqttsn.h:75
@ MQTTSN_WILLMSGRESP
will topic update response
Definition: mqttsn.h:90
@ MQTTSN_PUBREC
publish complete (QoS 2)
Definition: mqttsn.h:78
@ MQTTSN_PINGREQ
ping request
Definition: mqttsn.h:84
@ MQTTSN_SEARCHGW
search gateway message
Definition: mqttsn.h:65
@ MQTTSN_CONNECT
connect message
Definition: mqttsn.h:67
@ MQTTSN_SUBSCRIBE
subscribe message
Definition: mqttsn.h:80
@ MQTTSN_ADVERTISE
advertise message
Definition: mqttsn.h:64
@ MQTTSN_WILLTOPICREQ
will topic request
Definition: mqttsn.h:69
@ MQTTSN_PINGRESP
ping response
Definition: mqttsn.h:85
@ MQTTSN_WILLMSGUPD
will message update request
Definition: mqttsn.h:89
@ MQTTSN_UNSUBSCRIBE
unsubscribe message
Definition: mqttsn.h:82
@ MQTTSN_WILLMSGREQ
will message request
Definition: mqttsn.h:71
@ MQTTSN_PUBACK
publish acknowledgment
Definition: mqttsn.h:76
@ MQTTSN_SUBACK
subscription acknowledgment
Definition: mqttsn.h:81
@ MQTTSN_WILLTOPICRESP
will topic update response
Definition: mqttsn.h:88
@ MQTTSN_GWINFO
gateway info message
Definition: mqttsn.h:66
@ MQTTSN_REGACK
topic registration acknowledgment
Definition: mqttsn.h:74
@ MQTTSN_WILLMSG
will message
Definition: mqttsn.h:72
@ MQTTSN_REGISTER
topic registration request
Definition: mqttsn.h:73
@ MQTTSN_PUBREL
publish release (QoS 2)
Definition: mqttsn.h:79
@ MQTTSN_DISCONNECT
disconnect message
Definition: mqttsn.h:86
@ MQTTSN_PUBCOMP
publish received (QoS 2)
Definition: mqttsn.h:77