Module: Takagi::Network::Framing::Udp

Defined in:
lib/takagi/network/framing/udp.rb

Overview

RFC 7252 CoAP over UDP framing

Class Method Summary collapse

Class Method Details

.decode(data) ⇒ Message::Inbound

Decode UDP datagram to message

Parameters:

  • data (String)

    Binary UDP datagram

Returns:



23
24
25
# File 'lib/takagi/network/framing/udp.rb', line 23

def decode(data)
  Message::Inbound.new(data, transport: :udp)
end

.encode(message) ⇒ String

Encode message to UDP datagram format

Parameters:

Returns:

  • (String)

    Binary UDP datagram



12
13
14
15
16
17
18
# File 'lib/takagi/network/framing/udp.rb', line 12

def encode(message)
  packet = build_header(message)
  packet += message.token.to_s.b
  packet += build_options(message)
  packet += build_payload(message)
  packet.b
end