scapy.contrib.mqttsn
MQTT for Sensor Networks (MQTT-SN)
Specification: http://www.mqtt.org/new/wp-content/uploads/2009/06/MQTT-SN_spec_v1.2.pdf
- class scapy.contrib.mqttsn.MQTTSN(_pkt, /, *, len=None, type=0)[源代码]
基类:
Packet- aliastypes
- fields_desc
Display RFC-like schema
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | LEN | TYPE | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. MQTTSNMQTTSN fields len
Nonetype
0
- payload_guess
Possible sublayers:
MQTTSNAdvertise,MQTTSNConnack,MQTTSNConnect,MQTTSNDisconnect,MQTTSNEncaps,MQTTSNGwInfo,MQTTSNPingReq,MQTTSNPingResp,MQTTSNPuback,MQTTSNPubcomp,MQTTSNPublish,MQTTSNPubrec,MQTTSNPubrel,MQTTSNRegack,MQTTSNRegister,MQTTSNSearchGW,MQTTSNSuback,MQTTSNSubscribe,MQTTSNUnsuback,MQTTSNUnsubscribe,MQTTSNWillMsgReq,MQTTSNWillMsgResp,MQTTSNWillMsgUpd,MQTTSNWillMsg,MQTTSNWillTopicReq,MQTTSNWillTopicResp,MQTTSNWillTopicUpd,MQTTSNWillTopic
- class scapy.contrib.mqttsn.MQTTSNAdvertise(_pkt, /, *, gw_id=0, duration=0)[源代码]
基类:
Packet- aliastypes
- fields_desc
Display RFC-like schema
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | GW ID | DURATION | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. MQTTSNAdvertiseMQTTSNAdvertise fields gw_id
0duration
0
- class scapy.contrib.mqttsn.MQTTSNConnack(_pkt, /, *, return_code=0)[源代码]
基类:
Packet- aliastypes
- class scapy.contrib.mqttsn.MQTTSNConnect(_pkt, /, *, dup=0, qos=0, retain=0, will=0, cleansess=0, tid_type=0, prot_id=1, duration=0, client_id=b'')[源代码]
基类:
Packet- aliastypes
- fields_desc
Display RFC-like schema
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |D|QOS|R|W|C|TID| PROT ID | DURATION | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | CLIENT ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. MQTTSNConnectMQTTSNConnect fields dup
BitField(1 bit)0qos
0retain
BitField(1 bit)0will
BitField(1 bit)0cleansess
BitField(1 bit)0tid_type
0prot_id
1duration
0client_id
b''
- class scapy.contrib.mqttsn.MQTTSNDisconnect(_pkt, /, *, duration=None)[源代码]
基类:
Packet- aliastypes
- fields_desc
Display RFC-like schema
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | DURATION | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. MQTTSNDisconnectMQTTSNDisconnect fields duration
ShortField(Cond)None
- class scapy.contrib.mqttsn.MQTTSNEncaps(_pkt, /, *, resvd=0, radius=0, w_node_id=b'')[源代码]
基类:
Packet- aliastypes
- fields_desc
Display RFC-like schema
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | RESVD |RAD| W NODE ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. MQTTSNEncapsMQTTSNEncaps fields resvd
BitField(6 bits)0radius
BitField(2 bits)0w_node_id
b''
- class scapy.contrib.mqttsn.MQTTSNGwInfo(_pkt, /, *, gw_id=0, gw_addr=b'')[源代码]
基类:
Packet- aliastypes
- fields_desc
Display RFC-like schema
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | GW ID | GW ADDR | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. MQTTSNGwInfoMQTTSNGwInfo fields gw_id
0gw_addr
b''
- class scapy.contrib.mqttsn.MQTTSNPingReq(_pkt, /, *, client_id=b'')[源代码]
基类:
Packet- aliastypes
- class scapy.contrib.mqttsn.MQTTSNPuback(_pkt, /, *, tid=0, mid=0, return_code=0)[源代码]
基类:
Packet- aliastypes
- fields_desc
Display RFC-like schema
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | TID | MID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | RETURN CODE | +-+-+-+-+-+-+-+-+ Fig. MQTTSNPubackMQTTSNPuback fields tid
0mid
0return_code
0
- class scapy.contrib.mqttsn.MQTTSNPubcomp(_pkt, /, *, mid=0)[源代码]
基类:
Packet- aliastypes
- class scapy.contrib.mqttsn.MQTTSNPublish(_pkt, /, *, dup=0, qos=0, retain=0, will=0, cleansess=0, tid_type=0, tid=0, mid=0, data=b'')[源代码]
基类:
Packet- aliastypes
- fields_desc
Display RFC-like schema
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |D|QOS|R|W|C|TID| TID | MID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | DATA | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. MQTTSNPublishMQTTSNPublish fields dup
BitField(1 bit)0qos
0retain
BitField(1 bit)0will
BitField(1 bit)0cleansess
BitField(1 bit)0tid_type
0tid
0mid
0data
b''
- class scapy.contrib.mqttsn.MQTTSNPubrec(_pkt, /, *, mid=0)[源代码]
基类:
Packet- aliastypes
- class scapy.contrib.mqttsn.MQTTSNPubrel(_pkt, /, *, mid=0)[源代码]
基类:
Packet- aliastypes
- class scapy.contrib.mqttsn.MQTTSNRegack(_pkt, /, *, tid=0, mid=0, return_code=0)[源代码]
基类:
Packet- aliastypes
- fields_desc
Display RFC-like schema
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | TID | MID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | RETURN CODE | +-+-+-+-+-+-+-+-+ Fig. MQTTSNRegackMQTTSNRegack fields tid
0mid
0return_code
0
- class scapy.contrib.mqttsn.MQTTSNRegister(_pkt, /, *, tid=0, mid=0, topic_name=b'')[源代码]
基类:
Packet- aliastypes
- fields_desc
Display RFC-like schema
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | TID | MID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | TOPIC NAME | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. MQTTSNRegisterMQTTSNRegister fields tid
0mid
0topic_name
b''
- class scapy.contrib.mqttsn.MQTTSNSuback(_pkt, /, *, dup=0, qos=0, retain=0, will=0, cleansess=0, tid_type=0, tid=0, mid=0, return_code=0)[源代码]
基类:
Packet- aliastypes
- fields_desc
Display RFC-like schema
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |D|QOS|R|W|C|TID| TID | MID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | RETURN CODE | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. MQTTSNSubackMQTTSNSuback fields dup
BitField(1 bit)0qos
0retain
BitField(1 bit)0will
BitField(1 bit)0cleansess
BitField(1 bit)0tid_type
0tid
0mid
0return_code
0
- class scapy.contrib.mqttsn.MQTTSNSubscribe(_pkt, /, *, dup=0, qos=0, retain=0, will=0, cleansess=0, tid_type=0, mid=0, tid=None, short_topic=None, topic_name=None)[源代码]
基类:
Packet- aliastypes
- fields_desc
Display RFC-like schema
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |D|QOS|R|W|C|TID| MID | TID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | SHORT TOPIC | TOPIC NAME | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | +-+-+-+-+-+-+-+-+ Fig. MQTTSNSubscribeMQTTSNSubscribe fields dup
BitField(1 bit)0qos
0retain
BitField(1 bit)0will
BitField(1 bit)0cleansess
BitField(1 bit)0tid_type
0mid
0tid
ShortField(Cond)Noneshort_topic
StrFixedLenField(Cond)Nonetopic_name
StrLenField(Cond)None
- class scapy.contrib.mqttsn.MQTTSNUnsuback(_pkt, /, *, mid=0)[源代码]
基类:
Packet- aliastypes
- class scapy.contrib.mqttsn.MQTTSNUnsubscribe(_pkt, /, *, dup=0, qos=0, retain=0, will=0, cleansess=0, tid_type=0, mid=0, tid=None, short_topic=None, topic_name=None)[源代码]
基类:
Packet- aliastypes
- fields_desc
Display RFC-like schema
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |D|QOS|R|W|C|TID| MID | TID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | SHORT TOPIC | TOPIC NAME | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | +-+-+-+-+-+-+-+-+ Fig. MQTTSNUnsubscribeMQTTSNUnsubscribe fields dup
BitField(1 bit)0qos
0retain
BitField(1 bit)0will
BitField(1 bit)0cleansess
BitField(1 bit)0tid_type
0mid
0tid
ShortField(Cond)Noneshort_topic
StrFixedLenField(Cond)Nonetopic_name
StrLenField(Cond)None
- class scapy.contrib.mqttsn.MQTTSNWillMsg(_pkt, /, *, will_msg=b'')[源代码]
基类:
Packet- aliastypes
- class scapy.contrib.mqttsn.MQTTSNWillMsgResp(_pkt, /, *, return_code=0)[源代码]
基类:
Packet- aliastypes
- class scapy.contrib.mqttsn.MQTTSNWillMsgUpd(_pkt, /, *, will_msg=b'')[源代码]
基类:
Packet- aliastypes
- class scapy.contrib.mqttsn.MQTTSNWillTopic(_pkt, /, *, dup=0, qos=0, retain=0, will=0, cleansess=0, tid_type=0, will_topic=b'')[源代码]
基类:
Packet- aliastypes
- fields_desc
Display RFC-like schema
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |D|QOS|R|W|C|TID| WILL TOPIC | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. MQTTSNWillTopicMQTTSNWillTopic fields dup
BitField(1 bit)0qos
0retain
BitField(1 bit)0will
BitField(1 bit)0cleansess
BitField(1 bit)0tid_type
0will_topic
b''
- class scapy.contrib.mqttsn.MQTTSNWillTopicResp(_pkt, /, *, return_code=0)[源代码]
基类:
Packet- aliastypes
- class scapy.contrib.mqttsn.MQTTSNWillTopicUpd(_pkt, /, *, dup=0, qos=0, retain=0, will=0, cleansess=0, tid_type=0, will_topic=b'')[源代码]
基类:
Packet- aliastypes
- fields_desc
Display RFC-like schema
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |D|QOS|R|W|C|TID| WILL TOPIC | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. MQTTSNWillTopicUpdMQTTSNWillTopicUpd fields dup
BitField(1 bit)0qos
0retain
BitField(1 bit)0will
BitField(1 bit)0cleansess
BitField(1 bit)0tid_type
0will_topic
b''
- class scapy.contrib.mqttsn.VariableFieldLenField(*args, **kwargs)[源代码]
-
MQTT-SN length field either has 1 byte for values [0x02, 0xff] or 3 bytes for values [0x0100, 0xffff]. If the first byte is 0x01 the length value comes in network byte-order in the next 2 bytes. MQTT-SN packets are at least 2 bytes long (length field + type field).