struct

Matter::InteractionModel::ReportDataMessage

Inherits TLV::Serializable < Struct < Value < Object

ReportDataMessage - the actual ReadResponse/ReportData message Per matter.js TlvDataReportForSend Note: fixed_size: true on subscription_id ensures 4-byte encoding for iOS compatibility

Constructors

new(any : TLV::Any)
Source
new(subscription_id : UInt32 | Nil = nil, attribute_reports : Nil | Array(Matter::InteractionModel::AttributeReportIB) = nil, event_reports : Nil | Array(TLV::Any) = nil, more_chunked_messages : Bool | Nil = nil, suppress_response : Bool | Nil = nil, interaction_model_revision : UInt8 = 12_u8)
Source

Class methods

from_io(io : IO, format : IO::ByteFormat = IO::ByteFormat::LittleEndian)
Source
from_slice(bytes : Bytes)
Source
from_tlv(any : TLV::Any)
Source
from_tlv(data : Bytes)
Source

Instance methods

attribute_reports

Tag 1: AttributeReports (array of AttributeReportIB)

Source
attribute_reports=(attribute_reports : Array(AttributeReportIB) | Nil)

Tag 1: AttributeReports (array of AttributeReportIB)

Source
event_reports

Tag 2: EventReports (optional, array)

Source
event_reports=(event_reports : Array(TLV::Any) | Nil)

Tag 2: EventReports (optional, array)

Source
interaction_model_revision

Tag 0xFF: InteractionModelRevision (REQUIRED!)

Source
interaction_model_revision=(interaction_model_revision : UInt8)

Tag 0xFF: InteractionModelRevision (REQUIRED!)

Source
more_chunked_messages

Tag 3: MoreChunkedMessages (optional)

Source
more_chunked_messages=(more_chunked_messages : Bool | Nil)

Tag 3: MoreChunkedMessages (optional)

Source
subscription_id

Tag 0: SubscriptionId (optional, fixed 4-byte for iOS compatibility)

Source
subscription_id=(subscription_id : UInt32 | Nil)

Tag 0: SubscriptionId (optional, fixed 4-byte for iOS compatibility)

Source
suppress_response

Tag 4: SuppressResponse (optional)

Source
suppress_response=(suppress_response : Bool | Nil)

Tag 4: SuppressResponse (optional)

Source
to_io(io : IO, format : IO::ByteFormat = IO::ByteFormat::LittleEndian) : Nil
Source
to_slice
Source
to_tlv(outer_tag : Nil | UInt8 | Tuple(UInt16, UInt16) | Tuple(UInt16, UInt16, UInt16) = nil) : TLV::Any
Source