class
MQTT::V5::Subscribe
- MQTT::V5::Subscribe
- MQTT::Header
- BinData
- Reference
- Object
Overview
MQTT-3.8
Defined in:
mqtt/v5/subscribe.crConstant Summary
-
AFTER_DESERIALIZE =
[] of Nil -
MQTT-3.8
-
ALLOWED_PROPERTIES =
[PropertyId::SubscriptionIdentifier, PropertyId::UserProperty] -
BEFORE_SERIALIZE =
[] of Nil -
MQTT-3.8
-
ENDIAN =
["big"] -
MQTT-3.8
-
KLASS_NAME =
[MQTT::V5::Subscribe] -
MQTT-3.8
-
PARTS =
[{type: "basic", name: message_id, cls: UInt16, onlyif: nil, verify: nil, value: nil, endian: nil}, {type: "basic", name: properties, cls: MQTT::V5::Properties, onlyif: nil, verify: nil, value: nil}, {type: "variable_array", name: topics, cls: MQTT::V5::SubTopic, container: Array(MQTT::V5::SubTopic), onlyif: nil, verify: nil, read_next: -> do consumed < packet_length end, value: nil}] of Nil -
MQTT-3.8
-
REMAINING =
[] of Nil -
MQTT-3.8
Class Method Summary
-
.bit_fields
MQTT-3.8
Instance Method Summary
-
#__format__ : IO::ByteFormat
A
grouporbit_fieldcaptures the endianness at its declaration point, so declaringendianafter one would silently leave it system-endian. - #add_user_property(key : String, value : String) : Nil
- #calculate_length : UInt32
- #message_id : UInt16
- #message_id=(message_id : UInt16)
- #properties : Properties
- #properties=(properties : Properties)
-
#subscription_identifier : UInt32 | Nil
Tags every message delivered by this subscription, so a client can route by identifier instead of re-matching the filter
- #subscription_identifier=(value : UInt32 | Nil)
- #topic_hash
- #topics : Array(MQTT::V5::SubTopic)
- #topics=(topics : Array(MQTT::V5::SubTopic))
- #topics=(hash : Enumerable(Tuple(String, QoS)))
- #topics=(array : Enumerable(String))
- #user_properties : Array(Tuple(String, String))
- #validate! : self
Instance methods inherited from class MQTT::Header
__format__ : IO::ByteFormat
__format__,
duplicate : Bool
duplicate,
duplicate=(duplicate : UInt8)duplicate=(value : Bool) duplicate=, fixed_header_size : Int32 fixed_header_size, id : MQTT::RequestType id, id=(id : UInt8)
id=(value : MQTT::RequestType) id=, packet_length : UInt32 packet_length, packet_length=(size : UInt32) : UInt32 packet_length=, qos : MQTT::QoS qos, qos=(qos : UInt8)
qos=(value : MQTT::QoS) qos=, qos? qos?, retain : Bool retain, retain=(retain : UInt8)
retain=(value : Bool) retain=, variable_length1 : UInt8 variable_length1, variable_length1=(value : UInt8) : UInt8 variable_length1=, variable_length2 : UInt8 variable_length2, variable_length2=(value : UInt8) : UInt8 variable_length2=, variable_length3 : UInt8 variable_length3, variable_length3=(value : UInt8) : UInt8 variable_length3=, variable_length4 : UInt8 variable_length4, variable_length4=(value : UInt8) : UInt8 variable_length4=
Class methods inherited from class MQTT::Header
bit_fields
bit_fields
Class Method Detail
Instance Method Detail
def __format__ : IO::ByteFormat
#
A group or bit_field captures the endianness at its declaration point, so
declaring endian after one would silently leave it system-endian. Fail loudly.
def subscription_identifier : UInt32 | Nil
#
Tags every message delivered by this subscription, so a client can route by identifier instead of re-matching the filter