1
1
<?xml version =" 1.0" ?>
2
2
<!--
3
- Copyright (c) 2022 Project CHIP Authors
3
+ Copyright (c) 2022-2025 Project CHIP Authors
4
4
5
5
Licensed under the Apache License, Version 2.0 (the "License");
6
6
you may not use this file except in compliance with the License.
@@ -14,54 +14,60 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
14
See the License for the specific language governing permissions and
15
15
limitations under the License.
16
16
-->
17
- <configurator >
17
+ <!--
18
+ XML generated by Alchemy; DO NOT EDIT.
19
+ Source: src/app_clusters/Scenes.adoc
20
+ Parameters: in-progress
21
+ Git: 1.4-1773-g2b8c413df
22
+ -->
23
+ <configurator xmlns : xsi =" http://www.w3.org/2001/XMLSchema-instance" xsi : noNamespaceSchemaLocation =" ../../zcl.xsd" >
18
24
<bitmap name =" CopyModeBitmap" type =" bitmap8" >
19
25
<cluster code =" 0x0062" />
20
26
<field name =" CopyAllScenes" mask =" 0x01" />
21
27
</bitmap >
22
28
23
29
<struct name =" SceneInfoStruct" isFabricScoped =" true" >
24
30
<cluster code =" 0x0062" />
25
- <item name =" SceneCount" type =" int8u" optional = " false " />
26
- <item name =" CurrentScene" type =" int8u" optional = " false " isFabricSensitive = " true " />
27
- <item name =" CurrentGroup" type =" group_id" optional = " false " isFabricSensitive = " true " />
28
- <item name =" SceneValid" type =" boolean" optional = " false " isFabricSensitive = " true " />
29
- <item name =" RemainingCapacity" type =" int8u" optional = " false " />
31
+ <item fieldId = " 0 " name =" SceneCount" type =" int8u" default = " 0 " />
32
+ <item fieldId = " 1 " name =" CurrentScene" type =" int8u" isFabricSensitive = " true " default = " 0xFF " />
33
+ <item fieldId = " 2 " name =" CurrentGroup" type =" group_id" isFabricSensitive = " true " default = " 0 " />
34
+ <item fieldId = " 3 " name =" SceneValid" type =" boolean" isFabricSensitive = " true " default = " 0 " />
35
+ <item fieldId = " 4 " name =" RemainingCapacity" type =" int8u" max = " 253 " />
30
36
</struct >
31
37
32
38
<struct name =" AttributeValuePairStruct" >
33
39
<cluster code =" 0x0062" />
34
- <item name = " AttributeID " type = " attrib_id " optional = " false " />
35
- <item name =" ValueUnsigned8" type =" int8u" optional =" true" >
40
+ <item fieldId = " 0 " name = " AttributeID " type = " attrib_id " />
41
+ <item fieldId = " 1 " name =" ValueUnsigned8" type =" int8u" optional =" true" >
36
42
<optionalConform choice =" a" />
37
43
</item >
38
- <item name =" ValueSigned8" type =" int8s" optional =" true" >
44
+ <item fieldId = " 2 " name =" ValueSigned8" type =" int8s" optional =" true" >
39
45
<optionalConform choice =" a" />
40
46
</item >
41
- <item name =" ValueUnsigned16" type =" int16u" optional =" true" >
47
+ <item fieldId = " 3 " name =" ValueUnsigned16" type =" int16u" optional =" true" >
42
48
<optionalConform choice =" a" />
43
49
</item >
44
- <item name =" ValueSigned16" type =" int16s" optional =" true" >
50
+ <item fieldId = " 4 " name =" ValueSigned16" type =" int16s" optional =" true" >
45
51
<optionalConform choice =" a" />
46
52
</item >
47
- <item name =" ValueUnsigned32" type =" int32u" optional =" true" >
53
+ <item fieldId = " 5 " name =" ValueUnsigned32" type =" int32u" optional =" true" >
48
54
<optionalConform choice =" a" />
49
55
</item >
50
- <item name =" ValueSigned32" type =" int32s" optional =" true" >
56
+ <item fieldId = " 6 " name =" ValueSigned32" type =" int32s" optional =" true" >
51
57
<optionalConform choice =" a" />
52
58
</item >
53
- <item name =" ValueUnsigned64" type =" int64u" optional =" true" >
59
+ <item fieldId = " 7 " name =" ValueUnsigned64" type =" int64u" optional =" true" >
54
60
<optionalConform choice =" a" />
55
61
</item >
56
- <item name =" ValueSigned64" type =" int64s" optional =" true" >
62
+ <item fieldId = " 8 " name =" ValueSigned64" type =" int64s" optional =" true" >
57
63
<optionalConform choice =" a" />
58
64
</item >
59
65
</struct >
60
66
61
- <struct name =" ExtensionFieldSet " >
67
+ <struct name =" ExtensionFieldSetStruct " >
62
68
<cluster code =" 0x0062" />
63
- <item name =" ClusterID" type =" cluster_id" />
64
- <item name =" AttributeValueList" type =" AttributeValuePairStruct" array =" true" />
69
+ <item fieldId = " 0 " name =" ClusterID" type =" cluster_id" />
70
+ <item fieldId = " 1 " name =" AttributeValueList" type =" AttributeValuePairStruct" array =" true" />
65
71
</struct >
66
72
67
73
<domain name =" CHIP" />
@@ -74,178 +80,150 @@ limitations under the License.
74
80
<client tick =" false" init =" false" >true</client >
75
81
<server tick =" false" init =" false" >true</server >
76
82
<globalAttribute side =" either" code =" 0xFFFD" value =" 1" />
77
-
78
83
<features >
79
84
<feature bit =" 0" code =" SN" name =" SceneNames" summary =" The ability to store a name for a scene." >
80
85
<optionalConform />
81
86
</feature >
82
87
</features >
83
- <attribute side =" server" code =" 0x0000" name =" LastConfiguredBy" define =" LAST_CONFIGURED_BY" type =" node_id" isNullable =" true" optional =" true" >
84
- <optionalConform />
85
- </attribute >
86
- <attribute side =" server" code =" 0x0001" name =" SceneTableSize" define =" SCENE_TABLE_SIZE" type =" int16u" min =" 16" default =" 16" >
87
- <mandatoryConform />
88
- </attribute >
89
- <attribute side =" server" code =" 0x0002" name =" FabricSceneInfo" define =" FABRIC_SCENE_INFO" type =" array" entryType =" SceneInfoStruct" >
90
- <mandatoryConform />
91
- </attribute >
92
-
88
+ <attribute side =" server" code =" 0x0000" name =" SceneTableSize" define =" SCENE_TABLE_SIZE" type =" int16u" default =" 16" >SceneTableSize</attribute >
89
+ <attribute side =" server" code =" 0x0001" name =" FabricSceneInfo" define =" FABRIC_SCENE_INFO" type =" array" entryType =" SceneInfoStruct" >FabricSceneInfo</attribute >
93
90
<command source =" client" code =" 0x00" name =" AddScene" response =" AddSceneResponse" isFabricScoped =" true" optional =" false" cli =" chip scenes add" >
94
- <description >
95
- Add a scene to the scene table. Extension field sets are supported, and are inputed as '{"ClusterID": VALUE, "AttributeValueList":[{"AttributeID": VALUE, "Value*": VALUE}]}'
96
- </description >
97
- <arg name =" GroupID" type =" group_id" />
98
- <arg name =" SceneID" type =" int8u" />
99
- <arg name =" TransitionTime" type =" int32u" />
100
- <arg name =" SceneName" type =" char_string" />
101
- <arg name =" ExtensionFieldSets" type =" ExtensionFieldSet" array =" true" />
91
+ <description >It is not mandatory for an extension field set to be included in the command for every cluster on that endpoint that has a defined extension field set.</description >
92
+ <arg id =" 0" name =" GroupID" type =" group_id" />
93
+ <arg id =" 1" name =" SceneID" type =" int8u" max =" 254" />
94
+ <arg id =" 2" name =" TransitionTime" type =" int32u" max =" 60000000" />
95
+ <arg id =" 3" name =" SceneName" type =" char_string" length =" 16" />
96
+ <arg id =" 4" name =" ExtensionFieldSetStructs" type =" ExtensionFieldSetStruct" array =" true" />
102
97
<access op =" invoke" role =" manage" />
103
- <mandatoryConform />
104
98
</command >
105
-
99
+
106
100
<command source =" client" code =" 0x01" name =" ViewScene" response =" ViewSceneResponse" isFabricScoped =" true" optional =" false" cli =" chip scenes view" >
107
101
<description >
108
102
Retrieves the requested scene entry from its Scene table.
109
103
</description >
110
- <arg name =" GroupID" type =" group_id" />
111
- <arg name =" SceneID" type =" int8u" />
112
- <mandatoryConform />
104
+ <arg id =" 0" name =" GroupID" type =" group_id" />
105
+ <arg id =" 1" name =" SceneID" type =" int8u" max =" 254" />
113
106
</command >
114
-
107
+
115
108
<command source =" client" code =" 0x02" name =" RemoveScene" response =" RemoveSceneResponse" isFabricScoped =" true" optional =" false" cli =" chip scenes remove" >
116
109
<description >
117
110
Removes the requested scene entry, corresponding to the value of the GroupID field, from its Scene Table
118
111
</description >
119
- <arg name =" GroupID" type =" group_id" />
120
- <arg name =" SceneID" type =" int8u" />
112
+ <arg id = " 0 " name =" GroupID" type =" group_id" />
113
+ <arg id = " 1 " name =" SceneID" type =" int8u" max = " 254 " />
121
114
<access op =" invoke" role =" manage" />
122
- <mandatoryConform />
123
115
</command >
124
-
116
+
125
117
<command source =" client" code =" 0x03" name =" RemoveAllScenes" response =" RemoveAllScenesResponse" isFabricScoped =" true" optional =" false" cli =" chip scenes rmall" >
126
118
<description >
127
119
Remove all scenes, corresponding to the value of the GroupID field, from its Scene Table
128
120
</description >
129
- <arg name =" GroupID" type =" group_id" />
121
+ <arg id = " 0 " name =" GroupID" type =" group_id" />
130
122
<access op =" invoke" role =" manage" />
131
- <mandatoryConform />
132
123
</command >
133
-
124
+
134
125
<command source =" client" code =" 0x04" name =" StoreScene" response =" StoreSceneResponse" isFabricScoped =" true" optional =" false" cli =" chip scenes store" >
135
126
<description >
136
127
Adds the scene entry into its Scene Table along with all extension field sets corresponding to the current state of other clusters on the same endpoint
137
128
</description >
138
- <arg name =" GroupID" type =" group_id" />
139
- <arg name =" SceneID" type =" int8u" />
129
+ <arg id = " 0 " name =" GroupID" type =" group_id" />
130
+ <arg id = " 1 " name =" SceneID" type =" int8u" max = " 254 " />
140
131
<access op =" invoke" role =" manage" />
141
- <mandatoryConform />
142
132
</command >
143
-
133
+
144
134
<command source =" client" code =" 0x05" name =" RecallScene" isFabricScoped =" true" optional =" false" cli =" chip scenes recall" >
145
135
<description >
146
136
Set the attributes and corresponding state for each other cluster implemented on the endpoint accordingly to the resquested scene entry in the Scene Table
147
137
</description >
148
- <arg name =" GroupID" type =" group_id" />
149
- <arg name =" SceneID" type =" int8u" />
150
- <arg name =" TransitionTime" type =" int32u" optional =" true" isNullable =" true" />
151
- <mandatoryConform />
138
+ <arg id =" 0" name =" GroupID" type =" group_id" />
139
+ <arg id =" 1" name =" SceneID" type =" int8u" max =" 254" />
140
+ <arg id =" 2" name =" TransitionTime" type =" int32u" optional =" true" isNullable =" true" max =" 60000000" />
152
141
</command >
153
-
142
+
154
143
<command source =" client" code =" 0x06" name =" GetSceneMembership" response =" GetSceneMembershipResponse" isFabricScoped =" true" optional =" false" cli =" chip scenes get" >
155
- <description >
156
- Get an unused scene identifier when no commissioning tool is in the network, or for a commissioning tool to get the used scene identifiers within a certain group
157
- </description >
158
- <arg name =" GroupID" type =" group_id" />
159
- <mandatoryConform />
144
+ <description >This command can be used to get the used scene identifiers within a certain group, for the endpoint that implements this cluster.</description >
145
+ <arg id =" 0" name =" GroupID" type =" group_id" />
160
146
</command >
161
147
162
148
<command source =" client" code =" 0x40" name =" CopyScene" response =" CopySceneResponse" isFabricScoped =" true" optional =" true" cli =" chip scenes copy" >
163
- <description >
164
- Allows a client to efficiently copy scenes from one group/scene identifier pair to another group/scene identifier pair.
165
- </description >
166
- <arg name =" Mode" type =" CopyModeBitmap" />
167
- <arg name =" GroupIdentifierFrom" type =" group_id" />
168
- <arg name =" SceneIdentifierFrom" type =" int8u" />
169
- <arg name =" GroupIdentifierTo" type =" group_id" />
170
- <arg name =" SceneIdentifierTo" type =" int8u" />
171
- <optionalConform />
149
+ <description >This command allows a client to efficiently copy scenes from one group/scene identifier pair to another group/scene identifier pair.</description >
150
+ <arg id =" 0" name =" Mode" type =" CopyModeBitmap" min =" 0x00" max =" 0x01" />
151
+ <arg id =" 1" name =" GroupIdentifierFrom" type =" group_id" />
152
+ <arg id =" 2" name =" SceneIdentifierFrom" type =" int8u" max =" 254" />
153
+ <arg id =" 3" name =" GroupIdentifierTo" type =" group_id" />
154
+ <arg id =" 4" name =" SceneIdentifierTo" type =" int8u" max =" 254" />
172
155
<access op =" invoke" role =" manage" />
156
+ <optionalConform />
173
157
</command >
174
-
158
+
175
159
<command source =" server" code =" 0x00" name =" AddSceneResponse" optional =" false" disableDefaultResponse =" true" >
176
160
<description >
177
161
The command is generated in response to a received unicast AddScene command,
178
162
</description >
179
- <arg name =" Status" type =" status" />
180
- <arg name =" GroupID" type =" group_id" />
181
- <arg name =" SceneID" type =" int8u" />
182
- <mandatoryConform />
163
+ <arg id =" 0" name =" Status" type =" status" />
164
+ <arg id =" 1" name =" GroupID" type =" group_id" />
165
+ <arg id =" 2" name =" SceneID" type =" int8u" max =" 254" />
183
166
</command >
184
-
167
+
185
168
<command source =" server" code =" 0x01" name =" ViewSceneResponse" optional =" false" disableDefaultResponse =" true" >
186
169
<description >
187
170
The command is generated in response to a received unicast ViewScene command
188
171
</description >
189
- <arg name =" Status" type =" status" />
190
- <arg name =" GroupID" type =" group_id" />
191
- <arg name =" SceneID" type =" int8u" />
192
- <arg name =" TransitionTime" type =" int32u" optional =" true" />
193
- <arg name =" SceneName" type =" char_string" optional =" true" />
194
- <arg name =" ExtensionFieldSets" type =" ExtensionFieldSet" array =" true" optional =" true" />
195
- <mandatoryConform />
172
+ <arg id =" 0" name =" Status" type =" status" />
173
+ <arg id =" 1" name =" GroupID" type =" group_id" />
174
+ <arg id =" 2" name =" SceneID" type =" int8u" max =" 254" />
175
+ <arg id =" 3" name =" TransitionTime" type =" int32u" optional =" true" max =" 60000000" />
176
+ <arg id =" 4" name =" SceneName" type =" char_string" optional =" true" length =" 16" />
177
+ <arg id =" 5" name =" ExtensionFieldSetStructs" type =" ExtensionFieldSetStruct" array =" true" optional =" true" />
196
178
</command >
197
-
179
+
198
180
<command source =" server" code =" 0x02" name =" RemoveSceneResponse" optional =" false" disableDefaultResponse =" true" >
199
181
<description >
200
182
The command is generated in response to a received unicast RemoveScene command
201
183
</description >
202
- <arg name =" Status" type =" status" />
203
- <arg name =" GroupID" type =" group_id" />
204
- <arg name =" SceneID" type =" int8u" />
205
- <mandatoryConform />
184
+ <arg id =" 0" name =" Status" type =" status" />
185
+ <arg id =" 1" name =" GroupID" type =" group_id" />
186
+ <arg id =" 2" name =" SceneID" type =" int8u" max =" 254" />
206
187
</command >
207
-
188
+
208
189
<command source =" server" code =" 0x03" name =" RemoveAllScenesResponse" optional =" false" disableDefaultResponse =" true" >
209
190
<description >
210
191
The command is generated in response to a received unicast RemoveAllScenes command
211
192
</description >
212
- <arg name =" Status" type =" status" />
213
- <arg name =" GroupID" type =" group_id" />
214
- <mandatoryConform />
193
+ <arg id =" 0" name =" Status" type =" status" />
194
+ <arg id =" 1" name =" GroupID" type =" group_id" />
215
195
</command >
216
-
196
+
217
197
<command source =" server" code =" 0x04" name =" StoreSceneResponse" optional =" false" disableDefaultResponse =" true" >
218
198
<description >
219
199
The command is generated in response to a received unicast StoreScene command
220
200
</description >
221
- <arg name =" Status" type =" status" />
222
- <arg name =" GroupID" type =" group_id" />
223
- <arg name =" SceneID" type =" int8u" />
224
- <mandatoryConform />
201
+ <arg id =" 0" name =" Status" type =" status" />
202
+ <arg id =" 1" name =" GroupID" type =" group_id" />
203
+ <arg id =" 2" name =" SceneID" type =" int8u" max =" 254" />
225
204
</command >
226
-
205
+
227
206
<command source =" server" code =" 0x06" name =" GetSceneMembershipResponse" optional =" false" disableDefaultResponse =" true" >
228
207
<description >
229
208
The command is generated in response to a received unicast GetSceneMembership command
230
209
</description >
231
- <arg name =" Status" type =" status" />
232
- <arg name =" Capacity" type =" int8u" isNullable =" true" />
233
- <arg name =" GroupID" type =" group_id" />
234
- <arg name =" SceneList" type =" int8u" array =" true" optional =" true" />
235
- <mandatoryConform />
210
+ <arg id =" 0" name =" Status" type =" status" />
211
+ <arg id =" 1" name =" Capacity" type =" int8u" isNullable =" true" />
212
+ <arg id =" 2" name =" GroupID" type =" group_id" />
213
+ <arg id =" 3" name =" SceneList" type =" int8u" array =" true" optional =" true" />
236
214
</command >
237
215
238
216
<command source =" server" code =" 0x40" name =" CopySceneResponse" optional =" true" disableDefaultResponse =" true" >
239
217
<description >
240
218
The command is generated in response to a received unicast CopyScene command
241
219
</description >
242
- <arg name =" Status" type =" status" />
243
- <arg name =" GroupIdentifierFrom" type =" group_id" />
244
- <arg name =" SceneIdentifierFrom" type =" int8u" />
220
+ <arg id = " 0 " name =" Status" type =" status" />
221
+ <arg id = " 1 " name =" GroupIdentifierFrom" type =" group_id" />
222
+ <arg id = " 2 " name =" SceneIdentifierFrom" type =" int8u" max = " 254 " />
245
223
<mandatoryConform >
246
224
<command name =" CopyScene" />
247
225
</mandatoryConform >
248
226
</command >
249
- </cluster >
250
227
228
+ </cluster >
251
229
</configurator >
0 commit comments