Class: MQTT::SN::Packet::Puback

Inherits:
MQTT::SN::Packet show all
Defined in:
lib/mqtt/sn/packet.rb

Constant Summary collapse

DEFAULTS =
{
  :id => 0x00,
  :topic_id => nil,
  :return_code => 0x00,
}

Instance Attribute Summary collapse

Attributes inherited from MQTT::SN::Packet

#clean_session, #duplicate, #qos, #request_will, #retain, #topic_id_type

Instance Method Summary collapse

Methods inherited from MQTT::SN::Packet

#initialize, parse, #to_s, #type_id, #update_attributes

Constructor Details

This class inherits a constructor from MQTT::SN::Packet

Instance Attribute Details

#idObject

Returns the value of attribute id


435
436
437
# File 'lib/mqtt/sn/packet.rb', line 435

def id
  @id
end

#return_codeObject

Returns the value of attribute return_code


436
437
438
# File 'lib/mqtt/sn/packet.rb', line 436

def return_code
  @return_code
end

#topic_idObject

Returns the value of attribute topic_id


434
435
436
# File 'lib/mqtt/sn/packet.rb', line 434

def topic_id
  @topic_id
end

Instance Method Details

#encode_bodyObject


444
445
446
447
448
449
450
451
452
453
454
# File 'lib/mqtt/sn/packet.rb', line 444

def encode_body
  unless id.is_a?(Integer)
    raise "id must be an Integer"
  end

  unless topic_id.is_a?(Integer)
    raise "topic_id must be an Integer"
  end

  [topic_id, id, return_code].pack('nnC')
end

#parse_body(buffer) ⇒ Object


456
457
458
# File 'lib/mqtt/sn/packet.rb', line 456

def parse_body(buffer)
  self.topic_id, self.id, self.return_code = buffer.unpack('nnC')
end