mqttsn.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2018 Freie Universität Berlin
3  *
4  * This file is subject to the terms and conditions of the GNU Lesser
5  * General Public License v2.1. See the file LICENSE in the top level
6  * directory for more details.
7  */
8 
23 #ifndef NET_MQTTSN_H
24 #define NET_MQTTSN_H
25 
26 #ifdef __cplusplus
27 extern "C" {
28 #endif
29 
36 #define MQTTSN_CLI_ID_MINLEN (1U)
37 #define MQTTSN_CLI_ID_MAXLEN (23U)
48 enum {
49  MQTTSN_DUP = 0x80,
50  MQTTSN_QOS_MASK = 0x60,
51  MQTTSN_QOS_2 = 0x40,
52  MQTTSN_QOS_1 = 0x20,
53  MQTTSN_QOS_NEG1 = 0x60,
54  MQTTSN_QOS_0 = 0x00,
55  MQTTSN_RETAIN = 0x10,
56  MQTTSN_WILL = 0x08,
57  MQTTSN_CS = 0x04,
58  MQTTSN_TIT_MASK = 0x03,
62 };
63 
67 enum {
69  MQTTSN_SEARCHGW = 0x01,
70  MQTTSN_GWINFO = 0x02,
71  MQTTSN_CONNECT = 0x04,
72  MQTTSN_CONNACK = 0x05,
76  MQTTSN_WILLMSG = 0x09,
77  MQTTSN_REGISTER = 0x0a,
78  MQTTSN_REGACK = 0x0b,
79  MQTTSN_PUBLISH = 0x0c,
80  MQTTSN_PUBACK = 0x0d,
81  MQTTSN_PUBCOMP = 0x0e,
82  MQTTSN_PUBREC = 0x0f,
83  MQTTSN_PUBREL = 0x10,
85  MQTTSN_SUBACK = 0x13,
87  MQTTSN_UNSUBACK = 0x15,
88  MQTTSN_PINGREQ = 0x16,
89  MQTTSN_PINGRESP = 0x17,
95 };
96 
102 enum {
107 };
108 
109 #ifdef __cplusplus
110 }
111 #endif
112 
113 #endif /* NET_MQTTSN_H */
@ MQTTSN_UNSUBACK
unsubscription acknowledgment
Definition: mqttsn.h:87
@ MQTTSN_WILLTOPICUPD
will topic update request
Definition: mqttsn.h:91
@ MQTTSN_WILLTOPIC
will topic
Definition: mqttsn.h:74
@ MQTTSN_CONNACK
connection acknowledgment message
Definition: mqttsn.h:72
@ MQTTSN_PUBLISH
publish message
Definition: mqttsn.h:79
@ MQTTSN_WILLMSGRESP
will topic update response
Definition: mqttsn.h:94
@ MQTTSN_PUBREC
publish complete (QoS 2)
Definition: mqttsn.h:82
@ MQTTSN_PINGREQ
ping request
Definition: mqttsn.h:88
@ MQTTSN_SEARCHGW
search gateway message
Definition: mqttsn.h:69
@ MQTTSN_CONNECT
connect message
Definition: mqttsn.h:71
@ MQTTSN_SUBSCRIBE
subscribe message
Definition: mqttsn.h:84
@ MQTTSN_ADVERTISE
advertise message
Definition: mqttsn.h:68
@ MQTTSN_WILLTOPICREQ
will topic request
Definition: mqttsn.h:73
@ MQTTSN_PINGRESP
ping response
Definition: mqttsn.h:89
@ MQTTSN_WILLMSGUPD
will message update request
Definition: mqttsn.h:93
@ MQTTSN_UNSUBSCRIBE
unsubscribe message
Definition: mqttsn.h:86
@ MQTTSN_WILLMSGREQ
will message request
Definition: mqttsn.h:75
@ MQTTSN_PUBACK
publish acknowledgment
Definition: mqttsn.h:80
@ MQTTSN_SUBACK
subscription acknowledgment
Definition: mqttsn.h:85
@ MQTTSN_WILLTOPICRESP
will topic update response
Definition: mqttsn.h:92
@ MQTTSN_GWINFO
gateway info message
Definition: mqttsn.h:70
@ MQTTSN_REGACK
topic registration acknowledgment
Definition: mqttsn.h:78
@ MQTTSN_WILLMSG
will message
Definition: mqttsn.h:76
@ MQTTSN_REGISTER
topic registration request
Definition: mqttsn.h:77
@ MQTTSN_PUBREL
publish release (QoS 2)
Definition: mqttsn.h:83
@ MQTTSN_DISCONNECT
disconnect message
Definition: mqttsn.h:90
@ MQTTSN_PUBCOMP
publish received (QoS 2)
Definition: mqttsn.h:81
@ MQTTSN_QOS_1
QoS level 1.
Definition: mqttsn.h:52
@ MQTTSN_DUP
duplicate flag
Definition: mqttsn.h:49
@ MQTTSN_RETAIN
retain flag
Definition: mqttsn.h:55
@ MQTTSN_CS
clean session flag
Definition: mqttsn.h:57
@ MQTTSN_QOS_2
QoS level 2.
Definition: mqttsn.h:51
@ MQTTSN_TIT_SHORT
topic ID: short
Definition: mqttsn.h:59
@ MQTTSN_TIT_PREDEF
topic ID: pre-defined
Definition: mqttsn.h:60
@ MQTTSN_QOS_NEG1
QoS level -1 (negative 1)
Definition: mqttsn.h:53
@ MQTTSN_QOS_0
QoS level 0.
Definition: mqttsn.h:54
@ MQTTSN_TIT_MASK
topic ID type mask
Definition: mqttsn.h:58
@ MQTTSN_WILL
will flag, used during CONNECT
Definition: mqttsn.h:56
@ MQTTSN_TIT_NORMAL
topic ID: normal
Definition: mqttsn.h:61
@ MQTTSN_QOS_MASK
QoS level mask.
Definition: mqttsn.h:50
@ MQTTSN_REJ_CONGESTION
rejected: congestion
Definition: mqttsn.h:104
@ MQTTSN_REJ_INV_TOPIC_ID
rejected: invalid topic id
Definition: mqttsn.h:105
@ MQTTSN_REJ_NOTSUP
rejected: not supported
Definition: mqttsn.h:106
@ MQTTSN_ACCEPTED
accepted
Definition: mqttsn.h:103