class
Matter::Cluster::ScenesCluster
- Matter::Cluster::ScenesCluster
- Matter::Cluster::Base
- Reference
- Object
Overview
Scenes Cluster Implementation (0x0005) Provides scene storage and recall functionality
Defined in:
matter/cluster/scenes_cluster.crConstant Summary
-
CLUSTER_ID =
5_u32 -
CLUSTER_REVISION =
65533_u32 -
Global attributes
-
CMD_ADD_SCENE =
0_u32 -
Command IDs
-
CMD_ADD_SCENE_RESPONSE =
0_u32 -
Response IDs
-
CMD_COPY_SCENE =
64_u32 -
CMD_COPY_SCENE_RESPONSE =
64_u32 -
CMD_GET_SCENE_MEMBERSHIP =
6_u32 -
CMD_GET_SCENE_MEMBERSHIP_RESPONSE =
6_u32 -
CMD_RECALL_SCENE =
5_u32 -
CMD_REMOVE_ALL_SCENES =
3_u32 -
CMD_REMOVE_ALL_SCENES_RESPONSE =
3_u32 -
CMD_REMOVE_SCENE =
2_u32 -
CMD_REMOVE_SCENE_RESPONSE =
2_u32 -
CMD_STORE_SCENE =
4_u32 -
CMD_STORE_SCENE_RESPONSE =
4_u32 -
CMD_VIEW_SCENE =
1_u32 -
CMD_VIEW_SCENE_RESPONSE =
1_u32 -
CURRENT_GROUP =
2_u32 -
CURRENT_SCENE =
1_u32 -
FEATURE_MAP =
65532_u32 -
LAST_CONFIGURED_BY =
5_u32 -
NAME_SUPPORT =
4_u32 -
SCENE_COUNT =
0_u32 -
Attribute IDs
-
SCENE_VALID =
3_u32
Constructors
- .new(endpoint_id : DataType::EndpointNumber, name_support : Bool = true, max_scenes : UInt8 = 16_u8)
Instance Method Summary
-
#attributes : Array(AttributeMetadata)
Get all attribute metadata
-
#commands : Array(CommandMetadata)
Get all command metadata
- #current_group : UInt16
- #current_group=(current_group : UInt16)
- #current_scene : UInt8
- #current_scene=(current_scene : UInt8)
- #has_scene?(group_id : UInt16, scene_id : UInt8) : Bool
- #invalidate_current_scene
-
#name : String
Get cluster name
- #name_support : Bool
- #name_support=(name_support : Bool)
-
#on_recall_scene : Proc(UInt16, UInt8, Nil) | Nil
Callback for when scene is recalled
-
#on_recall_scene=(on_recall_scene : Proc(UInt16, UInt8, Nil) | Nil)
Callback for when scene is recalled
-
#read_attribute(attribute_id : UInt32) : InteractionModel::Status | Bytes
Read an attribute value
- #scene_count : Int32
- #scene_valid : Bool
- #scene_valid=(scene_valid : Bool)
-
#scenes : Hash(Tuple(UInt16, UInt8), SceneData)
Scene storage: {group_id, scene_id} => SceneData
-
#scenes=(scenes : Hash(Tuple(UInt16, UInt8), SceneData))
Scene storage: {group_id, scene_id} => SceneData
Instance methods inherited from class Matter::Cluster::Base
attributes : Array(AttributeMetadata)
attributes,
cluster_id : DataType::ClusterId
cluster_id,
cluster_id=(cluster_id : DataType::ClusterId)
cluster_id=,
commands : Array(CommandMetadata)
commands,
data_version : UInt32
data_version,
data_version=(data_version : UInt32)
data_version=,
endpoint_id : DataType::EndpointNumber
endpoint_id,
endpoint_id=(endpoint_id : DataType::EndpointNumber)
endpoint_id=,
events : Array(EventMetadata)
events,
get_attribute_metadata(attribute_id : UInt32) : AttributeMetadata | Nil
get_attribute_metadata,
get_command_metadata(command_id : UInt32) : CommandMetadata | Nil
get_command_metadata,
invoke_command(command_id : UInt32, fields : Bytes = Bytes.new(0)) : InteractionModel::Status | Bytes
invoke_command,
name : String
name,
read_attribute(attribute_id : UInt32) : InteractionModel::Status | Bytes
read_attribute,
write_attribute(attribute_id : UInt32, value : Bytes) : InteractionModel::Status
write_attribute
Constructor methods inherited from class Matter::Cluster::Base
new(endpoint_id : DataType::EndpointNumber, cluster_id : DataType::ClusterId)
new
Constructor Detail
def self.new(endpoint_id : DataType::EndpointNumber, name_support : Bool = true, max_scenes : UInt8 = 16_u8)
#
Instance Method Detail
def attributes : Array(AttributeMetadata)
#
Description copied from class Matter::Cluster::Base
Get all attribute metadata
def commands : Array(CommandMetadata)
#
Description copied from class Matter::Cluster::Base
Get all command metadata
def on_recall_scene=(on_recall_scene : Proc(UInt16, UInt8, Nil) | Nil)
#
Callback for when scene is recalled
def read_attribute(attribute_id : UInt32) : InteractionModel::Status | Bytes
#
Description copied from class Matter::Cluster::Base
Read an attribute value
Scene storage: {group_id, scene_id} => SceneData
Scene storage: {group_id, scene_id} => SceneData