abstract class
Matter::Cluster::Base
- Matter::Cluster::Base
- Reference
- Object
Overview
Base class for all cluster implementations
Direct Known Subclasses
- Matter::Cluster::AccessControlCluster
- Matter::Cluster::AdministratorCommissioningCluster
- Matter::Cluster::BasicInformationCluster
- Matter::Cluster::CarbonDioxideConcentrationMeasurementCluster
- Matter::Cluster::ColorControlCluster
- Matter::Cluster::DescriptorCluster
- Matter::Cluster::DiagnosticLogsCluster
- Matter::Cluster::EthernetNetworkDiagnosticsCluster
- Matter::Cluster::FanControlCluster
- Matter::Cluster::GeneralCommissioningCluster
- Matter::Cluster::GeneralDiagnosticsCluster
- Matter::Cluster::GroupKeyManagementCluster
- Matter::Cluster::GroupsCluster
- Matter::Cluster::IcdManagementCluster
- Matter::Cluster::IdentifyCluster
- Matter::Cluster::IlluminanceMeasurementCluster
- Matter::Cluster::LevelControlCluster
- Matter::Cluster::NetworkCommissioningCluster
- Matter::Cluster::OccupancySensingCluster
- Matter::Cluster::OnOffCluster
- Matter::Cluster::OperationalCredentialsCluster
- Matter::Cluster::OtaRequestorCluster
- Matter::Cluster::PowerSourceCluster
- Matter::Cluster::PressureMeasurementCluster
- Matter::Cluster::RelativeHumidityMeasurementCluster
- Matter::Cluster::ScenesCluster
- Matter::Cluster::ScenesManagementCluster
- Matter::Cluster::TemperatureMeasurementCluster
- Matter::Cluster::TimeFormatLocalizationCluster
- Matter::Cluster::WindowCoveringCluster
Defined in:
matter/cluster/cluster.crConstant Summary
-
GLOBAL_ACCEPTED_COMMAND_LIST =
65529_u32 -
GLOBAL_ATTRIBUTE_LIST =
65531_u32 -
Global attribute IDs (mandatory on all clusters)
-
GLOBAL_CLUSTER_REVISION =
65533_u32 -
GLOBAL_FEATURE_MAP =
65532_u32 -
GLOBAL_GENERATED_COMMAND_LIST =
65528_u32
Constructors
Instance Method Summary
-
#attributes : Array(AttributeMetadata)
Get all attribute metadata
- #cluster_id : DataType::ClusterId
- #cluster_id=(cluster_id : DataType::ClusterId)
-
#commands : Array(CommandMetadata)
Get all command metadata
- #data_version : UInt32
- #data_version=(data_version : UInt32)
- #endpoint_id : DataType::EndpointNumber
- #endpoint_id=(endpoint_id : DataType::EndpointNumber)
-
#events : Array(EventMetadata)
Get all event metadata
-
#get_attribute_metadata(attribute_id : UInt32) : AttributeMetadata | Nil
Get attribute metadata by ID
-
#get_command_metadata(command_id : UInt32) : CommandMetadata | Nil
Get command metadata by ID
-
#invoke_command(command_id : UInt32, fields : Bytes = Bytes.new(0), session_id : UInt64 | Nil = nil, is_case_session : Bool = false, fabric_index : UInt8 | Nil = nil) : InteractionModel::Status | CommandResponse
Invoke a command
-
#name : String
Get cluster name
-
#on_attribute_changed : Proc(UInt16, UInt32, UInt32, Nil) | Nil
Callback for attribute change notifications (used by subscription system) Parameters: endpoint_id, cluster_id, attribute_id
-
#on_attribute_changed=(on_attribute_changed : Proc(UInt16, UInt32, UInt32, Nil) | Nil)
Callback for attribute change notifications (used by subscription system) Parameters: endpoint_id, cluster_id, attribute_id
-
#read_attribute(attribute_id : UInt32, fabric_index : UInt8 | Nil = nil) : InteractionModel::Status | Bytes
Read an attribute value The fabric_index parameter is optional and used for fabric-scoped attributes like CurrentFabricIndex in OperationalCredentialsCluster
-
#write_attribute(attribute_id : UInt32, value : Bytes) : InteractionModel::Status
Write an attribute value
Constructor Detail
Instance Method Detail
Get attribute metadata by ID
Invoke a command
Callback for attribute change notifications (used by subscription system) Parameters: endpoint_id, cluster_id, attribute_id
Callback for attribute change notifications (used by subscription system) Parameters: endpoint_id, cluster_id, attribute_id
Read an attribute value The fabric_index parameter is optional and used for fabric-scoped attributes like CurrentFabricIndex in OperationalCredentialsCluster
Write an attribute value