d80a5e99869c5d94896b99960087a673a6b6d8ef
[platform/upstream/connectedhomeip.git] / src / app / chip-zcl-zpro-codec-api.h
1 /*
2  *
3  *    Copyright (c) 2021 Project CHIP Authors
4  *
5  *    Licensed under the Apache License, Version 2.0 (the "License");
6  *    you may not use this file except in compliance with the License.
7  *    You may obtain a copy of the License at
8  *
9  *        http://www.apache.org/licenses/LICENSE-2.0
10  *
11  *    Unless required by applicable law or agreed to in writing, software
12  *    distributed under the License is distributed on an "AS IS" BASIS,
13  *    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  *    See the License for the specific language governing permissions and
15  *    limitations under the License.
16  */
17
18 // THIS FILE IS GENERATED BY ZAP
19
20 // Prevent multiple inclusion
21 #pragma once
22
23 #include <app/util/basic-types.h>
24 #include <lib/support/Span.h>
25 #include <stdint.h>
26 #include <system/SystemPacketBuffer.h>
27
28 /*----------------------------------------------------------------------------*\
29 | Cluster Name                                                        |   ID   |
30 |---------------------------------------------------------------------+--------|
31 | ApplicationBasic                                                    | 0x050D |
32 | BarrierControl                                                      | 0x0103 |
33 | Basic                                                               | 0x0000 |
34 | Binding                                                             | 0xF000 |
35 | ColorControl                                                        | 0x0300 |
36 | ContentLaunch                                                       | 0xF002 |
37 | DoorLock                                                            | 0x0101 |
38 | GeneralCommissioning                                                | 0x0030 |
39 | Groups                                                              | 0x0004 |
40 | IasZone                                                             | 0x0500 |
41 | Identify                                                            | 0x0003 |
42 | LevelControl                                                        | 0x0008 |
43 | LowPower                                                            | 0x0508 |
44 | MediaPlayback                                                       | 0xF001 |
45 | NetworkCommissioning                                                | 0xAAAA |
46 | OnOff                                                               | 0x0006 |
47 | Scenes                                                              | 0x0005 |
48 | TemperatureMeasurement                                              | 0x0402 |
49 \*----------------------------------------------------------------------------*/
50
51 /*----------------------------------------------------------------------------*\
52 | Cluster ApplicationBasic                                            | 0x050D |
53 |------------------------------------------------------------------------------|
54 | Commands:                                                           |        |
55 |------------------------------------------------------------------------------|
56 | Attributes:                                                         |        |
57 | * VendorName                                                        | 0x0000 |
58 | * VendorId                                                          | 0x0001 |
59 | * ApplicationName                                                   | 0x0002 |
60 | * ProductId                                                         | 0x0003 |
61 | * ApplicationId                                                     | 0x0005 |
62 | * CatalogVendorId                                                   | 0x0006 |
63 | * ApplicationSatus                                                  | 0x0007 |
64 | * ClusterRevision                                                   | 0xFFFD |
65 \*----------------------------------------------------------------------------*/
66
67 /**
68  * @brief
69  *    Encode a Application Basic server discover command into buffer including the APS frame
70  */
71 chip::System::PacketBufferHandle encodeApplicationBasicClusterDiscoverAttributes(uint8_t seqNum,
72                                                                                  chip::EndpointId destinationEndpoint);
73
74 /**
75  * @brief
76  *    Encode a Application Basic server read command for the vendor name attribute into buffer including the APS frame
77  */
78 chip::System::PacketBufferHandle encodeApplicationBasicClusterReadVendorNameAttribute(uint8_t seqNum,
79                                                                                       chip::EndpointId destinationEndpoint);
80
81 /**
82  * @brief
83  *    Encode a Application Basic server read command for the vendor id attribute into buffer including the APS frame
84  */
85 chip::System::PacketBufferHandle encodeApplicationBasicClusterReadVendorIdAttribute(uint8_t seqNum,
86                                                                                     chip::EndpointId destinationEndpoint);
87
88 /**
89  * @brief
90  *    Encode a Application Basic server read command for the application name attribute into buffer including the APS frame
91  */
92 chip::System::PacketBufferHandle encodeApplicationBasicClusterReadApplicationNameAttribute(uint8_t seqNum,
93                                                                                            chip::EndpointId destinationEndpoint);
94
95 /**
96  * @brief
97  *    Encode a Application Basic server read command for the product id attribute into buffer including the APS frame
98  */
99 chip::System::PacketBufferHandle encodeApplicationBasicClusterReadProductIdAttribute(uint8_t seqNum,
100                                                                                      chip::EndpointId destinationEndpoint);
101
102 /**
103  * @brief
104  *    Encode a Application Basic server read command for the application id attribute into buffer including the APS frame
105  */
106 chip::System::PacketBufferHandle encodeApplicationBasicClusterReadApplicationIdAttribute(uint8_t seqNum,
107                                                                                          chip::EndpointId destinationEndpoint);
108
109 /**
110  * @brief
111  *    Encode a Application Basic server read command for the catalog vendor id attribute into buffer including the APS frame
112  */
113 chip::System::PacketBufferHandle encodeApplicationBasicClusterReadCatalogVendorIdAttribute(uint8_t seqNum,
114                                                                                            chip::EndpointId destinationEndpoint);
115
116 /**
117  * @brief
118  *    Encode a Application Basic server read command for the application satus attribute into buffer including the APS frame
119  */
120 chip::System::PacketBufferHandle encodeApplicationBasicClusterReadApplicationSatusAttribute(uint8_t seqNum,
121                                                                                             chip::EndpointId destinationEndpoint);
122
123 /**
124  * @brief
125  *    Encode a Application Basic server read command for the cluster revision attribute into buffer including the APS frame
126  */
127 chip::System::PacketBufferHandle encodeApplicationBasicClusterReadClusterRevisionAttribute(uint8_t seqNum,
128                                                                                            chip::EndpointId destinationEndpoint);
129
130 /*----------------------------------------------------------------------------*\
131 | Cluster BarrierControl                                              | 0x0103 |
132 |------------------------------------------------------------------------------|
133 | Commands:                                                           |        |
134 | * BarrierControlGoToPercent                                         |   0x00 |
135 | * BarrierControlStop                                                |   0x01 |
136 |------------------------------------------------------------------------------|
137 | Attributes:                                                         |        |
138 | * BarrierMovingState                                                | 0x0001 |
139 | * BarrierSafetyStatus                                               | 0x0002 |
140 | * BarrierCapabilities                                               | 0x0003 |
141 | * BarrierPosition                                                   | 0x000A |
142 | * ClusterRevision                                                   | 0xFFFD |
143 \*----------------------------------------------------------------------------*/
144
145 /**
146  * @brief
147  *    Encode an BarrierControlGoToPercent command for Barrier Control server into buffer including the APS frame
148  */
149 chip::System::PacketBufferHandle encodeBarrierControlClusterBarrierControlGoToPercentCommand(uint8_t seqNum,
150                                                                                              chip::EndpointId destinationEndpoint,
151                                                                                              uint8_t percentOpen);
152
153 /**
154  * @brief
155  *    Encode an BarrierControlStop command for Barrier Control server into buffer including the APS frame
156  */
157 chip::System::PacketBufferHandle encodeBarrierControlClusterBarrierControlStopCommand(uint8_t seqNum,
158                                                                                       chip::EndpointId destinationEndpoint);
159
160 /**
161  * @brief
162  *    Encode a Barrier Control server discover command into buffer including the APS frame
163  */
164 chip::System::PacketBufferHandle encodeBarrierControlClusterDiscoverAttributes(uint8_t seqNum,
165                                                                                chip::EndpointId destinationEndpoint);
166
167 /**
168  * @brief
169  *    Encode a Barrier Control server read command for the barrier moving state attribute into buffer including the APS frame
170  */
171 chip::System::PacketBufferHandle encodeBarrierControlClusterReadBarrierMovingStateAttribute(uint8_t seqNum,
172                                                                                             chip::EndpointId destinationEndpoint);
173
174 /**
175  * @brief
176  *    Encode a Barrier Control server read command for the barrier safety status attribute into buffer including the APS frame
177  */
178 chip::System::PacketBufferHandle encodeBarrierControlClusterReadBarrierSafetyStatusAttribute(uint8_t seqNum,
179                                                                                              chip::EndpointId destinationEndpoint);
180
181 /**
182  * @brief
183  *    Encode a Barrier Control server read command for the barrier capabilities attribute into buffer including the APS frame
184  */
185 chip::System::PacketBufferHandle encodeBarrierControlClusterReadBarrierCapabilitiesAttribute(uint8_t seqNum,
186                                                                                              chip::EndpointId destinationEndpoint);
187
188 /**
189  * @brief
190  *    Encode a Barrier Control server read command for the barrier position attribute into buffer including the APS frame
191  */
192 chip::System::PacketBufferHandle encodeBarrierControlClusterReadBarrierPositionAttribute(uint8_t seqNum,
193                                                                                          chip::EndpointId destinationEndpoint);
194
195 /**
196  * @brief
197  *    Encode a Barrier Control server read command for the cluster revision attribute into buffer including the APS frame
198  */
199 chip::System::PacketBufferHandle encodeBarrierControlClusterReadClusterRevisionAttribute(uint8_t seqNum,
200                                                                                          chip::EndpointId destinationEndpoint);
201
202 /*----------------------------------------------------------------------------*\
203 | Cluster Basic                                                       | 0x0000 |
204 |------------------------------------------------------------------------------|
205 | Commands:                                                           |        |
206 | * MfgSpecificPing                                                   |   0x00 |
207 | * ResetToFactoryDefaults                                            |   0x00 |
208 |------------------------------------------------------------------------------|
209 | Attributes:                                                         |        |
210 | * ZclVersion                                                        | 0x0000 |
211 | * PowerSource                                                       | 0x0007 |
212 | * ClusterRevision                                                   | 0xFFFD |
213 \*----------------------------------------------------------------------------*/
214
215 /**
216  * @brief
217  *    Encode an MfgSpecificPing command for Basic server into buffer including the APS frame
218  */
219 chip::System::PacketBufferHandle encodeBasicClusterMfgSpecificPingCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint);
220
221 /**
222  * @brief
223  *    Encode an ResetToFactoryDefaults command for Basic server into buffer including the APS frame
224  */
225 chip::System::PacketBufferHandle encodeBasicClusterResetToFactoryDefaultsCommand(uint8_t seqNum,
226                                                                                  chip::EndpointId destinationEndpoint);
227
228 /**
229  * @brief
230  *    Encode a Basic server discover command into buffer including the APS frame
231  */
232 chip::System::PacketBufferHandle encodeBasicClusterDiscoverAttributes(uint8_t seqNum, chip::EndpointId destinationEndpoint);
233
234 /**
235  * @brief
236  *    Encode a Basic server read command for the ZCL version attribute into buffer including the APS frame
237  */
238 chip::System::PacketBufferHandle encodeBasicClusterReadZclVersionAttribute(uint8_t seqNum, chip::EndpointId destinationEndpoint);
239
240 /**
241  * @brief
242  *    Encode a Basic server read command for the power source attribute into buffer including the APS frame
243  */
244 chip::System::PacketBufferHandle encodeBasicClusterReadPowerSourceAttribute(uint8_t seqNum, chip::EndpointId destinationEndpoint);
245
246 /**
247  * @brief
248  *    Encode a Basic server read command for the cluster revision attribute into buffer including the APS frame
249  */
250 chip::System::PacketBufferHandle encodeBasicClusterReadClusterRevisionAttribute(uint8_t seqNum,
251                                                                                 chip::EndpointId destinationEndpoint);
252
253 /*----------------------------------------------------------------------------*\
254 | Cluster Binding                                                     | 0xF000 |
255 |------------------------------------------------------------------------------|
256 | Commands:                                                           |        |
257 | * Bind                                                              |   0x00 |
258 | * Unbind                                                            |   0x01 |
259 |------------------------------------------------------------------------------|
260 | Attributes:                                                         |        |
261 | * ClusterRevision                                                   | 0xFFFD |
262 \*----------------------------------------------------------------------------*/
263
264 /**
265  * @brief
266  *    Encode an Bind command for Binding server into buffer including the APS frame
267  */
268 chip::System::PacketBufferHandle encodeBindingClusterBindCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
269                                                                  chip::NodeId nodeId, chip::GroupId groupId,
270                                                                  chip::EndpointId endpointId, chip::ClusterId clusterId);
271
272 /**
273  * @brief
274  *    Encode an Unbind command for Binding server into buffer including the APS frame
275  */
276 chip::System::PacketBufferHandle encodeBindingClusterUnbindCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
277                                                                    chip::NodeId nodeId, chip::GroupId groupId,
278                                                                    chip::EndpointId endpointId, chip::ClusterId clusterId);
279
280 /**
281  * @brief
282  *    Encode a Binding server discover command into buffer including the APS frame
283  */
284 chip::System::PacketBufferHandle encodeBindingClusterDiscoverAttributes(uint8_t seqNum, chip::EndpointId destinationEndpoint);
285
286 /**
287  * @brief
288  *    Encode a Binding server read command for the cluster revision attribute into buffer including the APS frame
289  */
290 chip::System::PacketBufferHandle encodeBindingClusterReadClusterRevisionAttribute(uint8_t seqNum,
291                                                                                   chip::EndpointId destinationEndpoint);
292
293 /*----------------------------------------------------------------------------*\
294 | Cluster ColorControl                                                | 0x0300 |
295 |------------------------------------------------------------------------------|
296 | Commands:                                                           |        |
297 | * MoveColor                                                         |   0x08 |
298 | * MoveColorTemperature                                              |   0x4B |
299 | * MoveHue                                                           |   0x01 |
300 | * MoveSaturation                                                    |   0x04 |
301 | * MoveToColor                                                       |   0x07 |
302 | * MoveToColorTemperature                                            |   0x0A |
303 | * MoveToHue                                                         |   0x00 |
304 | * MoveToHueAndSaturation                                            |   0x06 |
305 | * MoveToSaturation                                                  |   0x03 |
306 | * StepColor                                                         |   0x09 |
307 | * StepColorTemperature                                              |   0x4C |
308 | * StepHue                                                           |   0x02 |
309 | * StepSaturation                                                    |   0x05 |
310 | * StopMoveStep                                                      |   0x47 |
311 |------------------------------------------------------------------------------|
312 | Attributes:                                                         |        |
313 | * CurrentHue                                                        | 0x0000 |
314 | * CurrentSaturation                                                 | 0x0001 |
315 | * RemainingTime                                                     | 0x0002 |
316 | * CurrentX                                                          | 0x0003 |
317 | * CurrentY                                                          | 0x0004 |
318 | * DriftCompensation                                                 | 0x0005 |
319 | * CompensationText                                                  | 0x0006 |
320 | * ColorTemperature                                                  | 0x0007 |
321 | * ColorMode                                                         | 0x0008 |
322 | * ColorControlOptions                                               | 0x000F |
323 | * NumberOfPrimaries                                                 | 0x0010 |
324 | * Primary1X                                                         | 0x0011 |
325 | * Primary1Y                                                         | 0x0012 |
326 | * Primary1Intensity                                                 | 0x0013 |
327 | * Primary2X                                                         | 0x0015 |
328 | * Primary2Y                                                         | 0x0016 |
329 | * Primary2Intensity                                                 | 0x0017 |
330 | * Primary3X                                                         | 0x0019 |
331 | * Primary3Y                                                         | 0x001A |
332 | * Primary3Intensity                                                 | 0x001B |
333 | * Primary4X                                                         | 0x0020 |
334 | * Primary4Y                                                         | 0x0021 |
335 | * Primary4Intensity                                                 | 0x0022 |
336 | * Primary5X                                                         | 0x0024 |
337 | * Primary5Y                                                         | 0x0025 |
338 | * Primary5Intensity                                                 | 0x0026 |
339 | * Primary6X                                                         | 0x0028 |
340 | * Primary6Y                                                         | 0x0029 |
341 | * Primary6Intensity                                                 | 0x002A |
342 | * WhitePointX                                                       | 0x0030 |
343 | * WhitePointY                                                       | 0x0031 |
344 | * ColorPointRX                                                      | 0x0032 |
345 | * ColorPointRY                                                      | 0x0033 |
346 | * ColorPointRIntensity                                              | 0x0034 |
347 | * ColorPointGX                                                      | 0x0036 |
348 | * ColorPointGY                                                      | 0x0037 |
349 | * ColorPointGIntensity                                              | 0x0038 |
350 | * ColorPointBX                                                      | 0x003A |
351 | * ColorPointBY                                                      | 0x003B |
352 | * ColorPointBIntensity                                              | 0x003C |
353 | * EnhancedCurrentHue                                                | 0x4000 |
354 | * EnhancedColorMode                                                 | 0x4001 |
355 | * ColorLoopActive                                                   | 0x4002 |
356 | * ColorLoopDirection                                                | 0x4003 |
357 | * ColorLoopTime                                                     | 0x4004 |
358 | * ColorCapabilities                                                 | 0x400A |
359 | * ColorTempPhysicalMin                                              | 0x400B |
360 | * ColorTempPhysicalMax                                              | 0x400C |
361 | * CoupleColorTempToLevelMinMireds                                   | 0x400D |
362 | * StartUpColorTemperatureMireds                                     | 0x4010 |
363 | * ClusterRevision                                                   | 0xFFFD |
364 \*----------------------------------------------------------------------------*/
365
366 /**
367  * @brief
368  *    Encode an MoveColor command for Color Control server into buffer including the APS frame
369  */
370 chip::System::PacketBufferHandle encodeColorControlClusterMoveColorCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
371                                                                            int16_t rateX, int16_t rateY, uint8_t optionsMask,
372                                                                            uint8_t optionsOverride);
373
374 /**
375  * @brief
376  *    Encode an MoveColorTemperature command for Color Control server into buffer including the APS frame
377  */
378 chip::System::PacketBufferHandle encodeColorControlClusterMoveColorTemperatureCommand(
379     uint8_t seqNum, chip::EndpointId destinationEndpoint, uint8_t moveMode, uint16_t rate, uint16_t colorTemperatureMinimum,
380     uint16_t colorTemperatureMaximum, uint8_t optionsMask, uint8_t optionsOverride);
381
382 /**
383  * @brief
384  *    Encode an MoveHue command for Color Control server into buffer including the APS frame
385  */
386 chip::System::PacketBufferHandle encodeColorControlClusterMoveHueCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
387                                                                          uint8_t moveMode, uint8_t rate, uint8_t optionsMask,
388                                                                          uint8_t optionsOverride);
389
390 /**
391  * @brief
392  *    Encode an MoveSaturation command for Color Control server into buffer including the APS frame
393  */
394 chip::System::PacketBufferHandle encodeColorControlClusterMoveSaturationCommand(uint8_t seqNum,
395                                                                                 chip::EndpointId destinationEndpoint,
396                                                                                 uint8_t moveMode, uint8_t rate, uint8_t optionsMask,
397                                                                                 uint8_t optionsOverride);
398
399 /**
400  * @brief
401  *    Encode an MoveToColor command for Color Control server into buffer including the APS frame
402  */
403 chip::System::PacketBufferHandle encodeColorControlClusterMoveToColorCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
404                                                                              uint16_t colorX, uint16_t colorY,
405                                                                              uint16_t transitionTime, uint8_t optionsMask,
406                                                                              uint8_t optionsOverride);
407
408 /**
409  * @brief
410  *    Encode an MoveToColorTemperature command for Color Control server into buffer including the APS frame
411  */
412 chip::System::PacketBufferHandle
413 encodeColorControlClusterMoveToColorTemperatureCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
414                                                        uint16_t colorTemperature, uint16_t transitionTime, uint8_t optionsMask,
415                                                        uint8_t optionsOverride);
416
417 /**
418  * @brief
419  *    Encode an MoveToHue command for Color Control server into buffer including the APS frame
420  */
421 chip::System::PacketBufferHandle encodeColorControlClusterMoveToHueCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
422                                                                            uint8_t hue, uint8_t direction, uint16_t transitionTime,
423                                                                            uint8_t optionsMask, uint8_t optionsOverride);
424
425 /**
426  * @brief
427  *    Encode an MoveToHueAndSaturation command for Color Control server into buffer including the APS frame
428  */
429 chip::System::PacketBufferHandle
430 encodeColorControlClusterMoveToHueAndSaturationCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint, uint8_t hue,
431                                                        uint8_t saturation, uint16_t transitionTime, uint8_t optionsMask,
432                                                        uint8_t optionsOverride);
433
434 /**
435  * @brief
436  *    Encode an MoveToSaturation command for Color Control server into buffer including the APS frame
437  */
438 chip::System::PacketBufferHandle encodeColorControlClusterMoveToSaturationCommand(uint8_t seqNum,
439                                                                                   chip::EndpointId destinationEndpoint,
440                                                                                   uint8_t saturation, uint16_t transitionTime,
441                                                                                   uint8_t optionsMask, uint8_t optionsOverride);
442
443 /**
444  * @brief
445  *    Encode an StepColor command for Color Control server into buffer including the APS frame
446  */
447 chip::System::PacketBufferHandle encodeColorControlClusterStepColorCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
448                                                                            int16_t stepX, int16_t stepY, uint16_t transitionTime,
449                                                                            uint8_t optionsMask, uint8_t optionsOverride);
450
451 /**
452  * @brief
453  *    Encode an StepColorTemperature command for Color Control server into buffer including the APS frame
454  */
455 chip::System::PacketBufferHandle encodeColorControlClusterStepColorTemperatureCommand(
456     uint8_t seqNum, chip::EndpointId destinationEndpoint, uint8_t stepMode, uint16_t stepSize, uint16_t transitionTime,
457     uint16_t colorTemperatureMinimum, uint16_t colorTemperatureMaximum, uint8_t optionsMask, uint8_t optionsOverride);
458
459 /**
460  * @brief
461  *    Encode an StepHue command for Color Control server into buffer including the APS frame
462  */
463 chip::System::PacketBufferHandle encodeColorControlClusterStepHueCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
464                                                                          uint8_t stepMode, uint8_t stepSize, uint8_t transitionTime,
465                                                                          uint8_t optionsMask, uint8_t optionsOverride);
466
467 /**
468  * @brief
469  *    Encode an StepSaturation command for Color Control server into buffer including the APS frame
470  */
471 chip::System::PacketBufferHandle encodeColorControlClusterStepSaturationCommand(uint8_t seqNum,
472                                                                                 chip::EndpointId destinationEndpoint,
473                                                                                 uint8_t stepMode, uint8_t stepSize,
474                                                                                 uint8_t transitionTime, uint8_t optionsMask,
475                                                                                 uint8_t optionsOverride);
476
477 /**
478  * @brief
479  *    Encode an StopMoveStep command for Color Control server into buffer including the APS frame
480  */
481 chip::System::PacketBufferHandle encodeColorControlClusterStopMoveStepCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
482                                                                               uint8_t optionsMask, uint8_t optionsOverride);
483
484 /**
485  * @brief
486  *    Encode a Color Control server discover command into buffer including the APS frame
487  */
488 chip::System::PacketBufferHandle encodeColorControlClusterDiscoverAttributes(uint8_t seqNum, chip::EndpointId destinationEndpoint);
489
490 /**
491  * @brief
492  *    Encode a Color Control server read command for the current hue attribute into buffer including the APS frame
493  */
494 chip::System::PacketBufferHandle encodeColorControlClusterReadCurrentHueAttribute(uint8_t seqNum,
495                                                                                   chip::EndpointId destinationEndpoint);
496
497 /**
498  * @brief
499  *    Encode a Color Control server configure report command for the current hue attribute into buffer including the APS frame
500  */
501 chip::System::PacketBufferHandle encodeColorControlClusterConfigureCurrentHueAttribute(uint8_t seqNum,
502                                                                                        chip::EndpointId destinationEndpoint,
503                                                                                        uint16_t minInterval, uint16_t maxInterval,
504                                                                                        uint8_t change);
505
506 /**
507  * @brief
508  *    Encode a Color Control server read command for the current saturation attribute into buffer including the APS frame
509  */
510 chip::System::PacketBufferHandle encodeColorControlClusterReadCurrentSaturationAttribute(uint8_t seqNum,
511                                                                                          chip::EndpointId destinationEndpoint);
512
513 /**
514  * @brief
515  *    Encode a Color Control server configure report command for the current saturation attribute into buffer including the APS
516  * frame
517  */
518 chip::System::PacketBufferHandle encodeColorControlClusterConfigureCurrentSaturationAttribute(uint8_t seqNum,
519                                                                                               chip::EndpointId destinationEndpoint,
520                                                                                               uint16_t minInterval,
521                                                                                               uint16_t maxInterval, uint8_t change);
522
523 /**
524  * @brief
525  *    Encode a Color Control server read command for the remaining time attribute into buffer including the APS frame
526  */
527 chip::System::PacketBufferHandle encodeColorControlClusterReadRemainingTimeAttribute(uint8_t seqNum,
528                                                                                      chip::EndpointId destinationEndpoint);
529
530 /**
531  * @brief
532  *    Encode a Color Control server read command for the current x attribute into buffer including the APS frame
533  */
534 chip::System::PacketBufferHandle encodeColorControlClusterReadCurrentXAttribute(uint8_t seqNum,
535                                                                                 chip::EndpointId destinationEndpoint);
536
537 /**
538  * @brief
539  *    Encode a Color Control server configure report command for the current x attribute into buffer including the APS frame
540  */
541 chip::System::PacketBufferHandle encodeColorControlClusterConfigureCurrentXAttribute(uint8_t seqNum,
542                                                                                      chip::EndpointId destinationEndpoint,
543                                                                                      uint16_t minInterval, uint16_t maxInterval,
544                                                                                      uint16_t change);
545
546 /**
547  * @brief
548  *    Encode a Color Control server read command for the current y attribute into buffer including the APS frame
549  */
550 chip::System::PacketBufferHandle encodeColorControlClusterReadCurrentYAttribute(uint8_t seqNum,
551                                                                                 chip::EndpointId destinationEndpoint);
552
553 /**
554  * @brief
555  *    Encode a Color Control server configure report command for the current y attribute into buffer including the APS frame
556  */
557 chip::System::PacketBufferHandle encodeColorControlClusterConfigureCurrentYAttribute(uint8_t seqNum,
558                                                                                      chip::EndpointId destinationEndpoint,
559                                                                                      uint16_t minInterval, uint16_t maxInterval,
560                                                                                      uint16_t change);
561
562 /**
563  * @brief
564  *    Encode a Color Control server read command for the drift compensation attribute into buffer including the APS frame
565  */
566 chip::System::PacketBufferHandle encodeColorControlClusterReadDriftCompensationAttribute(uint8_t seqNum,
567                                                                                          chip::EndpointId destinationEndpoint);
568
569 /**
570  * @brief
571  *    Encode a Color Control server read command for the compensation text attribute into buffer including the APS frame
572  */
573 chip::System::PacketBufferHandle encodeColorControlClusterReadCompensationTextAttribute(uint8_t seqNum,
574                                                                                         chip::EndpointId destinationEndpoint);
575
576 /**
577  * @brief
578  *    Encode a Color Control server read command for the color temperature attribute into buffer including the APS frame
579  */
580 chip::System::PacketBufferHandle encodeColorControlClusterReadColorTemperatureAttribute(uint8_t seqNum,
581                                                                                         chip::EndpointId destinationEndpoint);
582
583 /**
584  * @brief
585  *    Encode a Color Control server configure report command for the color temperature attribute into buffer including the APS frame
586  */
587 chip::System::PacketBufferHandle encodeColorControlClusterConfigureColorTemperatureAttribute(uint8_t seqNum,
588                                                                                              chip::EndpointId destinationEndpoint,
589                                                                                              uint16_t minInterval,
590                                                                                              uint16_t maxInterval, uint16_t change);
591
592 /**
593  * @brief
594  *    Encode a Color Control server read command for the color mode attribute into buffer including the APS frame
595  */
596 chip::System::PacketBufferHandle encodeColorControlClusterReadColorModeAttribute(uint8_t seqNum,
597                                                                                  chip::EndpointId destinationEndpoint);
598
599 /**
600  * @brief
601  *    Encode a Color Control server read command for the color control options attribute into buffer including the APS frame
602  */
603 chip::System::PacketBufferHandle encodeColorControlClusterReadColorControlOptionsAttribute(uint8_t seqNum,
604                                                                                            chip::EndpointId destinationEndpoint);
605
606 /**
607  * @brief
608  *    Encode a Color Control server write command for the color control options attribute into buffer including the APS frame
609  */
610 chip::System::PacketBufferHandle encodeColorControlClusterWriteColorControlOptionsAttribute(uint8_t seqNum,
611                                                                                             chip::EndpointId destinationEndpoint,
612                                                                                             uint8_t colorControlOptions);
613
614 /**
615  * @brief
616  *    Encode a Color Control server read command for the number of primaries attribute into buffer including the APS frame
617  */
618 chip::System::PacketBufferHandle encodeColorControlClusterReadNumberOfPrimariesAttribute(uint8_t seqNum,
619                                                                                          chip::EndpointId destinationEndpoint);
620
621 /**
622  * @brief
623  *    Encode a Color Control server read command for the primary 1 x attribute into buffer including the APS frame
624  */
625 chip::System::PacketBufferHandle encodeColorControlClusterReadPrimary1XAttribute(uint8_t seqNum,
626                                                                                  chip::EndpointId destinationEndpoint);
627
628 /**
629  * @brief
630  *    Encode a Color Control server read command for the primary 1 y attribute into buffer including the APS frame
631  */
632 chip::System::PacketBufferHandle encodeColorControlClusterReadPrimary1YAttribute(uint8_t seqNum,
633                                                                                  chip::EndpointId destinationEndpoint);
634
635 /**
636  * @brief
637  *    Encode a Color Control server read command for the primary 1 intensity attribute into buffer including the APS frame
638  */
639 chip::System::PacketBufferHandle encodeColorControlClusterReadPrimary1IntensityAttribute(uint8_t seqNum,
640                                                                                          chip::EndpointId destinationEndpoint);
641
642 /**
643  * @brief
644  *    Encode a Color Control server read command for the primary 2 x attribute into buffer including the APS frame
645  */
646 chip::System::PacketBufferHandle encodeColorControlClusterReadPrimary2XAttribute(uint8_t seqNum,
647                                                                                  chip::EndpointId destinationEndpoint);
648
649 /**
650  * @brief
651  *    Encode a Color Control server read command for the primary 2 y attribute into buffer including the APS frame
652  */
653 chip::System::PacketBufferHandle encodeColorControlClusterReadPrimary2YAttribute(uint8_t seqNum,
654                                                                                  chip::EndpointId destinationEndpoint);
655
656 /**
657  * @brief
658  *    Encode a Color Control server read command for the primary 2 intensity attribute into buffer including the APS frame
659  */
660 chip::System::PacketBufferHandle encodeColorControlClusterReadPrimary2IntensityAttribute(uint8_t seqNum,
661                                                                                          chip::EndpointId destinationEndpoint);
662
663 /**
664  * @brief
665  *    Encode a Color Control server read command for the primary 3 x attribute into buffer including the APS frame
666  */
667 chip::System::PacketBufferHandle encodeColorControlClusterReadPrimary3XAttribute(uint8_t seqNum,
668                                                                                  chip::EndpointId destinationEndpoint);
669
670 /**
671  * @brief
672  *    Encode a Color Control server read command for the primary 3 y attribute into buffer including the APS frame
673  */
674 chip::System::PacketBufferHandle encodeColorControlClusterReadPrimary3YAttribute(uint8_t seqNum,
675                                                                                  chip::EndpointId destinationEndpoint);
676
677 /**
678  * @brief
679  *    Encode a Color Control server read command for the primary 3 intensity attribute into buffer including the APS frame
680  */
681 chip::System::PacketBufferHandle encodeColorControlClusterReadPrimary3IntensityAttribute(uint8_t seqNum,
682                                                                                          chip::EndpointId destinationEndpoint);
683
684 /**
685  * @brief
686  *    Encode a Color Control server read command for the primary 4 x attribute into buffer including the APS frame
687  */
688 chip::System::PacketBufferHandle encodeColorControlClusterReadPrimary4XAttribute(uint8_t seqNum,
689                                                                                  chip::EndpointId destinationEndpoint);
690
691 /**
692  * @brief
693  *    Encode a Color Control server read command for the primary 4 y attribute into buffer including the APS frame
694  */
695 chip::System::PacketBufferHandle encodeColorControlClusterReadPrimary4YAttribute(uint8_t seqNum,
696                                                                                  chip::EndpointId destinationEndpoint);
697
698 /**
699  * @brief
700  *    Encode a Color Control server read command for the primary 4 intensity attribute into buffer including the APS frame
701  */
702 chip::System::PacketBufferHandle encodeColorControlClusterReadPrimary4IntensityAttribute(uint8_t seqNum,
703                                                                                          chip::EndpointId destinationEndpoint);
704
705 /**
706  * @brief
707  *    Encode a Color Control server read command for the primary 5 x attribute into buffer including the APS frame
708  */
709 chip::System::PacketBufferHandle encodeColorControlClusterReadPrimary5XAttribute(uint8_t seqNum,
710                                                                                  chip::EndpointId destinationEndpoint);
711
712 /**
713  * @brief
714  *    Encode a Color Control server read command for the primary 5 y attribute into buffer including the APS frame
715  */
716 chip::System::PacketBufferHandle encodeColorControlClusterReadPrimary5YAttribute(uint8_t seqNum,
717                                                                                  chip::EndpointId destinationEndpoint);
718
719 /**
720  * @brief
721  *    Encode a Color Control server read command for the primary 5 intensity attribute into buffer including the APS frame
722  */
723 chip::System::PacketBufferHandle encodeColorControlClusterReadPrimary5IntensityAttribute(uint8_t seqNum,
724                                                                                          chip::EndpointId destinationEndpoint);
725
726 /**
727  * @brief
728  *    Encode a Color Control server read command for the primary 6 x attribute into buffer including the APS frame
729  */
730 chip::System::PacketBufferHandle encodeColorControlClusterReadPrimary6XAttribute(uint8_t seqNum,
731                                                                                  chip::EndpointId destinationEndpoint);
732
733 /**
734  * @brief
735  *    Encode a Color Control server read command for the primary 6 y attribute into buffer including the APS frame
736  */
737 chip::System::PacketBufferHandle encodeColorControlClusterReadPrimary6YAttribute(uint8_t seqNum,
738                                                                                  chip::EndpointId destinationEndpoint);
739
740 /**
741  * @brief
742  *    Encode a Color Control server read command for the primary 6 intensity attribute into buffer including the APS frame
743  */
744 chip::System::PacketBufferHandle encodeColorControlClusterReadPrimary6IntensityAttribute(uint8_t seqNum,
745                                                                                          chip::EndpointId destinationEndpoint);
746
747 /**
748  * @brief
749  *    Encode a Color Control server read command for the white point x attribute into buffer including the APS frame
750  */
751 chip::System::PacketBufferHandle encodeColorControlClusterReadWhitePointXAttribute(uint8_t seqNum,
752                                                                                    chip::EndpointId destinationEndpoint);
753
754 /**
755  * @brief
756  *    Encode a Color Control server write command for the white point x attribute into buffer including the APS frame
757  */
758 chip::System::PacketBufferHandle
759 encodeColorControlClusterWriteWhitePointXAttribute(uint8_t seqNum, chip::EndpointId destinationEndpoint, uint16_t whitePointX);
760
761 /**
762  * @brief
763  *    Encode a Color Control server read command for the white point y attribute into buffer including the APS frame
764  */
765 chip::System::PacketBufferHandle encodeColorControlClusterReadWhitePointYAttribute(uint8_t seqNum,
766                                                                                    chip::EndpointId destinationEndpoint);
767
768 /**
769  * @brief
770  *    Encode a Color Control server write command for the white point y attribute into buffer including the APS frame
771  */
772 chip::System::PacketBufferHandle
773 encodeColorControlClusterWriteWhitePointYAttribute(uint8_t seqNum, chip::EndpointId destinationEndpoint, uint16_t whitePointY);
774
775 /**
776  * @brief
777  *    Encode a Color Control server read command for the color point r x attribute into buffer including the APS frame
778  */
779 chip::System::PacketBufferHandle encodeColorControlClusterReadColorPointRXAttribute(uint8_t seqNum,
780                                                                                     chip::EndpointId destinationEndpoint);
781
782 /**
783  * @brief
784  *    Encode a Color Control server write command for the color point r x attribute into buffer including the APS frame
785  */
786 chip::System::PacketBufferHandle
787 encodeColorControlClusterWriteColorPointRXAttribute(uint8_t seqNum, chip::EndpointId destinationEndpoint, uint16_t colorPointRX);
788
789 /**
790  * @brief
791  *    Encode a Color Control server read command for the color point r y attribute into buffer including the APS frame
792  */
793 chip::System::PacketBufferHandle encodeColorControlClusterReadColorPointRYAttribute(uint8_t seqNum,
794                                                                                     chip::EndpointId destinationEndpoint);
795
796 /**
797  * @brief
798  *    Encode a Color Control server write command for the color point r y attribute into buffer including the APS frame
799  */
800 chip::System::PacketBufferHandle
801 encodeColorControlClusterWriteColorPointRYAttribute(uint8_t seqNum, chip::EndpointId destinationEndpoint, uint16_t colorPointRY);
802
803 /**
804  * @brief
805  *    Encode a Color Control server read command for the color point r intensity attribute into buffer including the APS frame
806  */
807 chip::System::PacketBufferHandle encodeColorControlClusterReadColorPointRIntensityAttribute(uint8_t seqNum,
808                                                                                             chip::EndpointId destinationEndpoint);
809
810 /**
811  * @brief
812  *    Encode a Color Control server write command for the color point r intensity attribute into buffer including the APS frame
813  */
814 chip::System::PacketBufferHandle encodeColorControlClusterWriteColorPointRIntensityAttribute(uint8_t seqNum,
815                                                                                              chip::EndpointId destinationEndpoint,
816                                                                                              uint8_t colorPointRIntensity);
817
818 /**
819  * @brief
820  *    Encode a Color Control server read command for the color point g x attribute into buffer including the APS frame
821  */
822 chip::System::PacketBufferHandle encodeColorControlClusterReadColorPointGXAttribute(uint8_t seqNum,
823                                                                                     chip::EndpointId destinationEndpoint);
824
825 /**
826  * @brief
827  *    Encode a Color Control server write command for the color point g x attribute into buffer including the APS frame
828  */
829 chip::System::PacketBufferHandle
830 encodeColorControlClusterWriteColorPointGXAttribute(uint8_t seqNum, chip::EndpointId destinationEndpoint, uint16_t colorPointGX);
831
832 /**
833  * @brief
834  *    Encode a Color Control server read command for the color point g y attribute into buffer including the APS frame
835  */
836 chip::System::PacketBufferHandle encodeColorControlClusterReadColorPointGYAttribute(uint8_t seqNum,
837                                                                                     chip::EndpointId destinationEndpoint);
838
839 /**
840  * @brief
841  *    Encode a Color Control server write command for the color point g y attribute into buffer including the APS frame
842  */
843 chip::System::PacketBufferHandle
844 encodeColorControlClusterWriteColorPointGYAttribute(uint8_t seqNum, chip::EndpointId destinationEndpoint, uint16_t colorPointGY);
845
846 /**
847  * @brief
848  *    Encode a Color Control server read command for the color point g intensity attribute into buffer including the APS frame
849  */
850 chip::System::PacketBufferHandle encodeColorControlClusterReadColorPointGIntensityAttribute(uint8_t seqNum,
851                                                                                             chip::EndpointId destinationEndpoint);
852
853 /**
854  * @brief
855  *    Encode a Color Control server write command for the color point g intensity attribute into buffer including the APS frame
856  */
857 chip::System::PacketBufferHandle encodeColorControlClusterWriteColorPointGIntensityAttribute(uint8_t seqNum,
858                                                                                              chip::EndpointId destinationEndpoint,
859                                                                                              uint8_t colorPointGIntensity);
860
861 /**
862  * @brief
863  *    Encode a Color Control server read command for the color point b x attribute into buffer including the APS frame
864  */
865 chip::System::PacketBufferHandle encodeColorControlClusterReadColorPointBXAttribute(uint8_t seqNum,
866                                                                                     chip::EndpointId destinationEndpoint);
867
868 /**
869  * @brief
870  *    Encode a Color Control server write command for the color point b x attribute into buffer including the APS frame
871  */
872 chip::System::PacketBufferHandle
873 encodeColorControlClusterWriteColorPointBXAttribute(uint8_t seqNum, chip::EndpointId destinationEndpoint, uint16_t colorPointBX);
874
875 /**
876  * @brief
877  *    Encode a Color Control server read command for the color point b y attribute into buffer including the APS frame
878  */
879 chip::System::PacketBufferHandle encodeColorControlClusterReadColorPointBYAttribute(uint8_t seqNum,
880                                                                                     chip::EndpointId destinationEndpoint);
881
882 /**
883  * @brief
884  *    Encode a Color Control server write command for the color point b y attribute into buffer including the APS frame
885  */
886 chip::System::PacketBufferHandle
887 encodeColorControlClusterWriteColorPointBYAttribute(uint8_t seqNum, chip::EndpointId destinationEndpoint, uint16_t colorPointBY);
888
889 /**
890  * @brief
891  *    Encode a Color Control server read command for the color point b intensity attribute into buffer including the APS frame
892  */
893 chip::System::PacketBufferHandle encodeColorControlClusterReadColorPointBIntensityAttribute(uint8_t seqNum,
894                                                                                             chip::EndpointId destinationEndpoint);
895
896 /**
897  * @brief
898  *    Encode a Color Control server write command for the color point b intensity attribute into buffer including the APS frame
899  */
900 chip::System::PacketBufferHandle encodeColorControlClusterWriteColorPointBIntensityAttribute(uint8_t seqNum,
901                                                                                              chip::EndpointId destinationEndpoint,
902                                                                                              uint8_t colorPointBIntensity);
903
904 /**
905  * @brief
906  *    Encode a Color Control server read command for the enhanced current hue attribute into buffer including the APS frame
907  */
908 chip::System::PacketBufferHandle encodeColorControlClusterReadEnhancedCurrentHueAttribute(uint8_t seqNum,
909                                                                                           chip::EndpointId destinationEndpoint);
910
911 /**
912  * @brief
913  *    Encode a Color Control server read command for the enhanced color mode attribute into buffer including the APS frame
914  */
915 chip::System::PacketBufferHandle encodeColorControlClusterReadEnhancedColorModeAttribute(uint8_t seqNum,
916                                                                                          chip::EndpointId destinationEndpoint);
917
918 /**
919  * @brief
920  *    Encode a Color Control server read command for the color loop active attribute into buffer including the APS frame
921  */
922 chip::System::PacketBufferHandle encodeColorControlClusterReadColorLoopActiveAttribute(uint8_t seqNum,
923                                                                                        chip::EndpointId destinationEndpoint);
924
925 /**
926  * @brief
927  *    Encode a Color Control server read command for the color loop direction attribute into buffer including the APS frame
928  */
929 chip::System::PacketBufferHandle encodeColorControlClusterReadColorLoopDirectionAttribute(uint8_t seqNum,
930                                                                                           chip::EndpointId destinationEndpoint);
931
932 /**
933  * @brief
934  *    Encode a Color Control server read command for the color loop time attribute into buffer including the APS frame
935  */
936 chip::System::PacketBufferHandle encodeColorControlClusterReadColorLoopTimeAttribute(uint8_t seqNum,
937                                                                                      chip::EndpointId destinationEndpoint);
938
939 /**
940  * @brief
941  *    Encode a Color Control server read command for the color capabilities attribute into buffer including the APS frame
942  */
943 chip::System::PacketBufferHandle encodeColorControlClusterReadColorCapabilitiesAttribute(uint8_t seqNum,
944                                                                                          chip::EndpointId destinationEndpoint);
945
946 /**
947  * @brief
948  *    Encode a Color Control server read command for the color temp physical min attribute into buffer including the APS frame
949  */
950 chip::System::PacketBufferHandle encodeColorControlClusterReadColorTempPhysicalMinAttribute(uint8_t seqNum,
951                                                                                             chip::EndpointId destinationEndpoint);
952
953 /**
954  * @brief
955  *    Encode a Color Control server read command for the color temp physical max attribute into buffer including the APS frame
956  */
957 chip::System::PacketBufferHandle encodeColorControlClusterReadColorTempPhysicalMaxAttribute(uint8_t seqNum,
958                                                                                             chip::EndpointId destinationEndpoint);
959
960 /**
961  * @brief
962  *    Encode a Color Control server read command for the couple color temp to level min-mireds attribute into buffer including the
963  * APS frame
964  */
965 chip::System::PacketBufferHandle
966 encodeColorControlClusterReadCoupleColorTempToLevelMinMiredsAttribute(uint8_t seqNum, chip::EndpointId destinationEndpoint);
967
968 /**
969  * @brief
970  *    Encode a Color Control server read command for the start up color temperature mireds attribute into buffer including the APS
971  * frame
972  */
973 chip::System::PacketBufferHandle
974 encodeColorControlClusterReadStartUpColorTemperatureMiredsAttribute(uint8_t seqNum, chip::EndpointId destinationEndpoint);
975
976 /**
977  * @brief
978  *    Encode a Color Control server write command for the start up color temperature mireds attribute into buffer including the APS
979  * frame
980  */
981 chip::System::PacketBufferHandle
982 encodeColorControlClusterWriteStartUpColorTemperatureMiredsAttribute(uint8_t seqNum, chip::EndpointId destinationEndpoint,
983                                                                      uint16_t startUpColorTemperatureMireds);
984
985 /**
986  * @brief
987  *    Encode a Color Control server read command for the cluster revision attribute into buffer including the APS frame
988  */
989 chip::System::PacketBufferHandle encodeColorControlClusterReadClusterRevisionAttribute(uint8_t seqNum,
990                                                                                        chip::EndpointId destinationEndpoint);
991
992 /*----------------------------------------------------------------------------*\
993 | Cluster ContentLaunch                                               | 0xF002 |
994 |------------------------------------------------------------------------------|
995 | Commands:                                                           |        |
996 | * LaunchContent                                                     |   0x00 |
997 | * LaunchURL                                                         |   0x01 |
998 |------------------------------------------------------------------------------|
999 | Attributes:                                                         |        |
1000 | * ClusterRevision                                                   | 0xFFFD |
1001 \*----------------------------------------------------------------------------*/
1002
1003 /**
1004  * @brief
1005  *    Encode an LaunchContent command for Content Launch server into buffer including the APS frame
1006  */
1007 chip::System::PacketBufferHandle encodeContentLaunchClusterLaunchContentCommand(uint8_t seqNum,
1008                                                                                 chip::EndpointId destinationEndpoint);
1009
1010 /**
1011  * @brief
1012  *    Encode an LaunchURL command for Content Launch server into buffer including the APS frame
1013  */
1014 chip::System::PacketBufferHandle encodeContentLaunchClusterLaunchURLCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint);
1015
1016 /**
1017  * @brief
1018  *    Encode a Content Launch server discover command into buffer including the APS frame
1019  */
1020 chip::System::PacketBufferHandle encodeContentLaunchClusterDiscoverAttributes(uint8_t seqNum, chip::EndpointId destinationEndpoint);
1021
1022 /**
1023  * @brief
1024  *    Encode a Content Launch server read command for the cluster revision attribute into buffer including the APS frame
1025  */
1026 chip::System::PacketBufferHandle encodeContentLaunchClusterReadClusterRevisionAttribute(uint8_t seqNum,
1027                                                                                         chip::EndpointId destinationEndpoint);
1028
1029 /*----------------------------------------------------------------------------*\
1030 | Cluster DoorLock                                                    | 0x0101 |
1031 |------------------------------------------------------------------------------|
1032 | Commands:                                                           |        |
1033 | * ClearAllPins                                                      |   0x08 |
1034 | * ClearAllRfids                                                     |   0x19 |
1035 | * ClearHolidaySchedule                                              |   0x13 |
1036 | * ClearPin                                                          |   0x07 |
1037 | * ClearRfid                                                         |   0x18 |
1038 | * ClearWeekdaySchedule                                              |   0x0D |
1039 | * ClearYeardaySchedule                                              |   0x10 |
1040 | * GetHolidaySchedule                                                |   0x12 |
1041 | * GetLogRecord                                                      |   0x04 |
1042 | * GetPin                                                            |   0x06 |
1043 | * GetRfid                                                           |   0x17 |
1044 | * GetUserType                                                       |   0x15 |
1045 | * GetWeekdaySchedule                                                |   0x0C |
1046 | * GetYeardaySchedule                                                |   0x0F |
1047 | * LockDoor                                                          |   0x00 |
1048 | * SetHolidaySchedule                                                |   0x11 |
1049 | * SetPin                                                            |   0x05 |
1050 | * SetRfid                                                           |   0x16 |
1051 | * SetUserType                                                       |   0x14 |
1052 | * SetWeekdaySchedule                                                |   0x0B |
1053 | * SetYeardaySchedule                                                |   0x0E |
1054 | * UnlockDoor                                                        |   0x01 |
1055 | * UnlockWithTimeout                                                 |   0x03 |
1056 |------------------------------------------------------------------------------|
1057 | Attributes:                                                         |        |
1058 | * LockState                                                         | 0x0000 |
1059 | * LockType                                                          | 0x0001 |
1060 | * ActuatorEnabled                                                   | 0x0002 |
1061 | * ClusterRevision                                                   | 0xFFFD |
1062 \*----------------------------------------------------------------------------*/
1063
1064 /**
1065  * @brief
1066  *    Encode an ClearAllPins command for Door Lock server into buffer including the APS frame
1067  */
1068 chip::System::PacketBufferHandle encodeDoorLockClusterClearAllPinsCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint);
1069
1070 /**
1071  * @brief
1072  *    Encode an ClearAllRfids command for Door Lock server into buffer including the APS frame
1073  */
1074 chip::System::PacketBufferHandle encodeDoorLockClusterClearAllRfidsCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint);
1075
1076 /**
1077  * @brief
1078  *    Encode an ClearHolidaySchedule command for Door Lock server into buffer including the APS frame
1079  */
1080 chip::System::PacketBufferHandle
1081 encodeDoorLockClusterClearHolidayScheduleCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint, uint8_t scheduleId);
1082
1083 /**
1084  * @brief
1085  *    Encode an ClearPin command for Door Lock server into buffer including the APS frame
1086  */
1087 chip::System::PacketBufferHandle encodeDoorLockClusterClearPinCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
1088                                                                       uint16_t userId);
1089
1090 /**
1091  * @brief
1092  *    Encode an ClearRfid command for Door Lock server into buffer including the APS frame
1093  */
1094 chip::System::PacketBufferHandle encodeDoorLockClusterClearRfidCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
1095                                                                        uint16_t userId);
1096
1097 /**
1098  * @brief
1099  *    Encode an ClearWeekdaySchedule command for Door Lock server into buffer including the APS frame
1100  */
1101 chip::System::PacketBufferHandle encodeDoorLockClusterClearWeekdayScheduleCommand(uint8_t seqNum,
1102                                                                                   chip::EndpointId destinationEndpoint,
1103                                                                                   uint8_t scheduleId, uint16_t userId);
1104
1105 /**
1106  * @brief
1107  *    Encode an ClearYeardaySchedule command for Door Lock server into buffer including the APS frame
1108  */
1109 chip::System::PacketBufferHandle encodeDoorLockClusterClearYeardayScheduleCommand(uint8_t seqNum,
1110                                                                                   chip::EndpointId destinationEndpoint,
1111                                                                                   uint8_t scheduleId, uint16_t userId);
1112
1113 /**
1114  * @brief
1115  *    Encode an GetHolidaySchedule command for Door Lock server into buffer including the APS frame
1116  */
1117 chip::System::PacketBufferHandle
1118 encodeDoorLockClusterGetHolidayScheduleCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint, uint8_t scheduleId);
1119
1120 /**
1121  * @brief
1122  *    Encode an GetLogRecord command for Door Lock server into buffer including the APS frame
1123  */
1124 chip::System::PacketBufferHandle encodeDoorLockClusterGetLogRecordCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
1125                                                                           uint16_t logIndex);
1126
1127 /**
1128  * @brief
1129  *    Encode an GetPin command for Door Lock server into buffer including the APS frame
1130  */
1131 chip::System::PacketBufferHandle encodeDoorLockClusterGetPinCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
1132                                                                     uint16_t userId);
1133
1134 /**
1135  * @brief
1136  *    Encode an GetRfid command for Door Lock server into buffer including the APS frame
1137  */
1138 chip::System::PacketBufferHandle encodeDoorLockClusterGetRfidCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
1139                                                                      uint16_t userId);
1140
1141 /**
1142  * @brief
1143  *    Encode an GetUserType command for Door Lock server into buffer including the APS frame
1144  */
1145 chip::System::PacketBufferHandle encodeDoorLockClusterGetUserTypeCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
1146                                                                          uint16_t userId);
1147
1148 /**
1149  * @brief
1150  *    Encode an GetWeekdaySchedule command for Door Lock server into buffer including the APS frame
1151  */
1152 chip::System::PacketBufferHandle encodeDoorLockClusterGetWeekdayScheduleCommand(uint8_t seqNum,
1153                                                                                 chip::EndpointId destinationEndpoint,
1154                                                                                 uint8_t scheduleId, uint16_t userId);
1155
1156 /**
1157  * @brief
1158  *    Encode an GetYeardaySchedule command for Door Lock server into buffer including the APS frame
1159  */
1160 chip::System::PacketBufferHandle encodeDoorLockClusterGetYeardayScheduleCommand(uint8_t seqNum,
1161                                                                                 chip::EndpointId destinationEndpoint,
1162                                                                                 uint8_t scheduleId, uint16_t userId);
1163
1164 /**
1165  * @brief
1166  *    Encode an LockDoor command for Door Lock server into buffer including the APS frame
1167  */
1168 chip::System::PacketBufferHandle encodeDoorLockClusterLockDoorCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
1169                                                                       char * pin);
1170
1171 /**
1172  * @brief
1173  *    Encode an SetHolidaySchedule command for Door Lock server into buffer including the APS frame
1174  */
1175 chip::System::PacketBufferHandle
1176 encodeDoorLockClusterSetHolidayScheduleCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint, uint8_t scheduleId,
1177                                                uint32_t localStartTime, uint32_t localEndTime, uint8_t operatingModeDuringHoliday);
1178
1179 /**
1180  * @brief
1181  *    Encode an SetPin command for Door Lock server into buffer including the APS frame
1182  */
1183 chip::System::PacketBufferHandle encodeDoorLockClusterSetPinCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
1184                                                                     uint16_t userId, uint8_t userStatus, uint8_t userType,
1185                                                                     char * pin);
1186
1187 /**
1188  * @brief
1189  *    Encode an SetRfid command for Door Lock server into buffer including the APS frame
1190  */
1191 chip::System::PacketBufferHandle encodeDoorLockClusterSetRfidCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
1192                                                                      uint16_t userId, uint8_t userStatus, uint8_t userType,
1193                                                                      char * id);
1194
1195 /**
1196  * @brief
1197  *    Encode an SetUserType command for Door Lock server into buffer including the APS frame
1198  */
1199 chip::System::PacketBufferHandle encodeDoorLockClusterSetUserTypeCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
1200                                                                          uint16_t userId, uint8_t userType);
1201
1202 /**
1203  * @brief
1204  *    Encode an SetWeekdaySchedule command for Door Lock server into buffer including the APS frame
1205  */
1206 chip::System::PacketBufferHandle
1207 encodeDoorLockClusterSetWeekdayScheduleCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint, uint8_t scheduleId,
1208                                                uint16_t userId, uint8_t daysMask, uint8_t startHour, uint8_t startMinute,
1209                                                uint8_t endHour, uint8_t endMinute);
1210
1211 /**
1212  * @brief
1213  *    Encode an SetYeardaySchedule command for Door Lock server into buffer including the APS frame
1214  */
1215 chip::System::PacketBufferHandle encodeDoorLockClusterSetYeardayScheduleCommand(uint8_t seqNum,
1216                                                                                 chip::EndpointId destinationEndpoint,
1217                                                                                 uint8_t scheduleId, uint16_t userId,
1218                                                                                 uint32_t localStartTime, uint32_t localEndTime);
1219
1220 /**
1221  * @brief
1222  *    Encode an UnlockDoor command for Door Lock server into buffer including the APS frame
1223  */
1224 chip::System::PacketBufferHandle encodeDoorLockClusterUnlockDoorCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
1225                                                                         char * pin);
1226
1227 /**
1228  * @brief
1229  *    Encode an UnlockWithTimeout command for Door Lock server into buffer including the APS frame
1230  */
1231 chip::System::PacketBufferHandle encodeDoorLockClusterUnlockWithTimeoutCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
1232                                                                                uint16_t timeoutInSeconds, char * pin);
1233
1234 /**
1235  * @brief
1236  *    Encode a Door Lock server discover command into buffer including the APS frame
1237  */
1238 chip::System::PacketBufferHandle encodeDoorLockClusterDiscoverAttributes(uint8_t seqNum, chip::EndpointId destinationEndpoint);
1239
1240 /**
1241  * @brief
1242  *    Encode a Door Lock server read command for the lock state attribute into buffer including the APS frame
1243  */
1244 chip::System::PacketBufferHandle encodeDoorLockClusterReadLockStateAttribute(uint8_t seqNum, chip::EndpointId destinationEndpoint);
1245
1246 /**
1247  * @brief
1248  *    Encode a Door Lock server configure report command for the lock state attribute into buffer including the APS frame
1249  */
1250 chip::System::PacketBufferHandle encodeDoorLockClusterConfigureLockStateAttribute(uint8_t seqNum,
1251                                                                                   chip::EndpointId destinationEndpoint,
1252                                                                                   uint16_t minInterval, uint16_t maxInterval);
1253
1254 /**
1255  * @brief
1256  *    Encode a Door Lock server read command for the lock type attribute into buffer including the APS frame
1257  */
1258 chip::System::PacketBufferHandle encodeDoorLockClusterReadLockTypeAttribute(uint8_t seqNum, chip::EndpointId destinationEndpoint);
1259
1260 /**
1261  * @brief
1262  *    Encode a Door Lock server read command for the actuator enabled attribute into buffer including the APS frame
1263  */
1264 chip::System::PacketBufferHandle encodeDoorLockClusterReadActuatorEnabledAttribute(uint8_t seqNum,
1265                                                                                    chip::EndpointId destinationEndpoint);
1266
1267 /**
1268  * @brief
1269  *    Encode a Door Lock server read command for the cluster revision attribute into buffer including the APS frame
1270  */
1271 chip::System::PacketBufferHandle encodeDoorLockClusterReadClusterRevisionAttribute(uint8_t seqNum,
1272                                                                                    chip::EndpointId destinationEndpoint);
1273
1274 /*----------------------------------------------------------------------------*\
1275 | Cluster GeneralCommissioning                                        | 0x0030 |
1276 |------------------------------------------------------------------------------|
1277 | Commands:                                                           |        |
1278 | * ArmFailSafe                                                       |   0x02 |
1279 | * CommissioningComplete                                             |   0x06 |
1280 | * SetFabric                                                         |   0x00 |
1281 |------------------------------------------------------------------------------|
1282 | Attributes:                                                         |        |
1283 | * FabricId                                                          | 0x0000 |
1284 | * Breadcrumb                                                        | 0x0001 |
1285 | * ClusterRevision                                                   | 0xFFFD |
1286 \*----------------------------------------------------------------------------*/
1287
1288 /**
1289  * @brief
1290  *    Encode an ArmFailSafe command for General Commissioning server into buffer including the APS frame
1291  */
1292 chip::System::PacketBufferHandle encodeGeneralCommissioningClusterArmFailSafeCommand(uint8_t seqNum,
1293                                                                                      chip::EndpointId destinationEndpoint,
1294                                                                                      uint16_t expiryLengthSeconds,
1295                                                                                      uint64_t breadcrumb, uint32_t timeoutMs);
1296
1297 /**
1298  * @brief
1299  *    Encode an CommissioningComplete command for General Commissioning server into buffer including the APS frame
1300  */
1301 chip::System::PacketBufferHandle
1302 encodeGeneralCommissioningClusterCommissioningCompleteCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint);
1303
1304 /**
1305  * @brief
1306  *    Encode an SetFabric command for General Commissioning server into buffer including the APS frame
1307  */
1308 chip::System::PacketBufferHandle
1309 encodeGeneralCommissioningClusterSetFabricCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint, chip::ByteSpan fabricId,
1310                                                   chip::ByteSpan fabricSecret, uint64_t breadcrumb, uint32_t timeoutMs);
1311
1312 /**
1313  * @brief
1314  *    Encode a General Commissioning server discover command into buffer including the APS frame
1315  */
1316 chip::System::PacketBufferHandle encodeGeneralCommissioningClusterDiscoverAttributes(uint8_t seqNum,
1317                                                                                      chip::EndpointId destinationEndpoint);
1318
1319 /**
1320  * @brief
1321  *    Encode a General Commissioning server read command for the FabricId attribute into buffer including the APS frame
1322  */
1323 chip::System::PacketBufferHandle encodeGeneralCommissioningClusterReadFabricIdAttribute(uint8_t seqNum,
1324                                                                                         chip::EndpointId destinationEndpoint);
1325
1326 /**
1327  * @brief
1328  *    Encode a General Commissioning server read command for the Breadcrumb attribute into buffer including the APS frame
1329  */
1330 chip::System::PacketBufferHandle encodeGeneralCommissioningClusterReadBreadcrumbAttribute(uint8_t seqNum,
1331                                                                                           chip::EndpointId destinationEndpoint);
1332
1333 /**
1334  * @brief
1335  *    Encode a General Commissioning server write command for the Breadcrumb attribute into buffer including the APS frame
1336  */
1337 chip::System::PacketBufferHandle encodeGeneralCommissioningClusterWriteBreadcrumbAttribute(uint8_t seqNum,
1338                                                                                            chip::EndpointId destinationEndpoint,
1339                                                                                            uint64_t breadcrumb);
1340
1341 /**
1342  * @brief
1343  *    Encode a General Commissioning server read command for the cluster revision attribute into buffer including the APS frame
1344  */
1345 chip::System::PacketBufferHandle
1346 encodeGeneralCommissioningClusterReadClusterRevisionAttribute(uint8_t seqNum, chip::EndpointId destinationEndpoint);
1347
1348 /*----------------------------------------------------------------------------*\
1349 | Cluster Groups                                                      | 0x0004 |
1350 |------------------------------------------------------------------------------|
1351 | Commands:                                                           |        |
1352 | * AddGroup                                                          |   0x00 |
1353 | * AddGroupIfIdentifying                                             |   0x05 |
1354 | * GetGroupMembership                                                |   0x02 |
1355 | * RemoveAllGroups                                                   |   0x04 |
1356 | * RemoveGroup                                                       |   0x03 |
1357 | * ViewGroup                                                         |   0x01 |
1358 |------------------------------------------------------------------------------|
1359 | Attributes:                                                         |        |
1360 | * NameSupport                                                       | 0x0000 |
1361 | * ClusterRevision                                                   | 0xFFFD |
1362 \*----------------------------------------------------------------------------*/
1363
1364 /**
1365  * @brief
1366  *    Encode an AddGroup command for Groups server into buffer including the APS frame
1367  */
1368 chip::System::PacketBufferHandle encodeGroupsClusterAddGroupCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
1369                                                                     uint16_t groupId, char * groupName);
1370
1371 /**
1372  * @brief
1373  *    Encode an AddGroupIfIdentifying command for Groups server into buffer including the APS frame
1374  */
1375 chip::System::PacketBufferHandle encodeGroupsClusterAddGroupIfIdentifyingCommand(uint8_t seqNum,
1376                                                                                  chip::EndpointId destinationEndpoint,
1377                                                                                  uint16_t groupId, char * groupName);
1378
1379 /**
1380  * @brief
1381  *    Encode an GetGroupMembership command for Groups server into buffer including the APS frame
1382  */
1383 chip::System::PacketBufferHandle encodeGroupsClusterGetGroupMembershipCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
1384                                                                               uint8_t groupCount, uint16_t groupList);
1385
1386 /**
1387  * @brief
1388  *    Encode an RemoveAllGroups command for Groups server into buffer including the APS frame
1389  */
1390 chip::System::PacketBufferHandle encodeGroupsClusterRemoveAllGroupsCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint);
1391
1392 /**
1393  * @brief
1394  *    Encode an RemoveGroup command for Groups server into buffer including the APS frame
1395  */
1396 chip::System::PacketBufferHandle encodeGroupsClusterRemoveGroupCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
1397                                                                        uint16_t groupId);
1398
1399 /**
1400  * @brief
1401  *    Encode an ViewGroup command for Groups server into buffer including the APS frame
1402  */
1403 chip::System::PacketBufferHandle encodeGroupsClusterViewGroupCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
1404                                                                      uint16_t groupId);
1405
1406 /**
1407  * @brief
1408  *    Encode a Groups server discover command into buffer including the APS frame
1409  */
1410 chip::System::PacketBufferHandle encodeGroupsClusterDiscoverAttributes(uint8_t seqNum, chip::EndpointId destinationEndpoint);
1411
1412 /**
1413  * @brief
1414  *    Encode a Groups server read command for the name support attribute into buffer including the APS frame
1415  */
1416 chip::System::PacketBufferHandle encodeGroupsClusterReadNameSupportAttribute(uint8_t seqNum, chip::EndpointId destinationEndpoint);
1417
1418 /**
1419  * @brief
1420  *    Encode a Groups server read command for the cluster revision attribute into buffer including the APS frame
1421  */
1422 chip::System::PacketBufferHandle encodeGroupsClusterReadClusterRevisionAttribute(uint8_t seqNum,
1423                                                                                  chip::EndpointId destinationEndpoint);
1424
1425 /*----------------------------------------------------------------------------*\
1426 | Cluster IasZone                                                     | 0x0500 |
1427 |------------------------------------------------------------------------------|
1428 | Commands:                                                           |        |
1429 |------------------------------------------------------------------------------|
1430 | Attributes:                                                         |        |
1431 | * ZoneState                                                         | 0x0000 |
1432 | * ZoneType                                                          | 0x0001 |
1433 | * ZoneStatus                                                        | 0x0002 |
1434 | * IasCieAddress                                                     | 0x0010 |
1435 | * ZoneId                                                            | 0x0011 |
1436 | * ClusterRevision                                                   | 0xFFFD |
1437 \*----------------------------------------------------------------------------*/
1438
1439 /**
1440  * @brief
1441  *    Encode a IAS Zone server discover command into buffer including the APS frame
1442  */
1443 chip::System::PacketBufferHandle encodeIasZoneClusterDiscoverAttributes(uint8_t seqNum, chip::EndpointId destinationEndpoint);
1444
1445 /**
1446  * @brief
1447  *    Encode a IAS Zone server read command for the zone state attribute into buffer including the APS frame
1448  */
1449 chip::System::PacketBufferHandle encodeIasZoneClusterReadZoneStateAttribute(uint8_t seqNum, chip::EndpointId destinationEndpoint);
1450
1451 /**
1452  * @brief
1453  *    Encode a IAS Zone server read command for the zone type attribute into buffer including the APS frame
1454  */
1455 chip::System::PacketBufferHandle encodeIasZoneClusterReadZoneTypeAttribute(uint8_t seqNum, chip::EndpointId destinationEndpoint);
1456
1457 /**
1458  * @brief
1459  *    Encode a IAS Zone server read command for the zone status attribute into buffer including the APS frame
1460  */
1461 chip::System::PacketBufferHandle encodeIasZoneClusterReadZoneStatusAttribute(uint8_t seqNum, chip::EndpointId destinationEndpoint);
1462
1463 /**
1464  * @brief
1465  *    Encode a IAS Zone server read command for the IAS CIE address attribute into buffer including the APS frame
1466  */
1467 chip::System::PacketBufferHandle encodeIasZoneClusterReadIasCieAddressAttribute(uint8_t seqNum,
1468                                                                                 chip::EndpointId destinationEndpoint);
1469
1470 /**
1471  * @brief
1472  *    Encode a IAS Zone server write command for the IAS CIE address attribute into buffer including the APS frame
1473  */
1474 chip::System::PacketBufferHandle
1475 encodeIasZoneClusterWriteIasCieAddressAttribute(uint8_t seqNum, chip::EndpointId destinationEndpoint, uint64_t iasCieAddress);
1476
1477 /**
1478  * @brief
1479  *    Encode a IAS Zone server read command for the Zone ID attribute into buffer including the APS frame
1480  */
1481 chip::System::PacketBufferHandle encodeIasZoneClusterReadZoneIdAttribute(uint8_t seqNum, chip::EndpointId destinationEndpoint);
1482
1483 /**
1484  * @brief
1485  *    Encode a IAS Zone server read command for the cluster revision attribute into buffer including the APS frame
1486  */
1487 chip::System::PacketBufferHandle encodeIasZoneClusterReadClusterRevisionAttribute(uint8_t seqNum,
1488                                                                                   chip::EndpointId destinationEndpoint);
1489
1490 /*----------------------------------------------------------------------------*\
1491 | Cluster Identify                                                    | 0x0003 |
1492 |------------------------------------------------------------------------------|
1493 | Commands:                                                           |        |
1494 | * Identify                                                          |   0x00 |
1495 | * IdentifyQuery                                                     |   0x01 |
1496 |------------------------------------------------------------------------------|
1497 | Attributes:                                                         |        |
1498 | * IdentifyTime                                                      | 0x0000 |
1499 | * ClusterRevision                                                   | 0xFFFD |
1500 \*----------------------------------------------------------------------------*/
1501
1502 /**
1503  * @brief
1504  *    Encode an Identify command for Identify server into buffer including the APS frame
1505  */
1506 chip::System::PacketBufferHandle encodeIdentifyClusterIdentifyCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
1507                                                                       uint16_t identifyTime);
1508
1509 /**
1510  * @brief
1511  *    Encode an IdentifyQuery command for Identify server into buffer including the APS frame
1512  */
1513 chip::System::PacketBufferHandle encodeIdentifyClusterIdentifyQueryCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint);
1514
1515 /**
1516  * @brief
1517  *    Encode a Identify server discover command into buffer including the APS frame
1518  */
1519 chip::System::PacketBufferHandle encodeIdentifyClusterDiscoverAttributes(uint8_t seqNum, chip::EndpointId destinationEndpoint);
1520
1521 /**
1522  * @brief
1523  *    Encode a Identify server read command for the identify time attribute into buffer including the APS frame
1524  */
1525 chip::System::PacketBufferHandle encodeIdentifyClusterReadIdentifyTimeAttribute(uint8_t seqNum,
1526                                                                                 chip::EndpointId destinationEndpoint);
1527
1528 /**
1529  * @brief
1530  *    Encode a Identify server write command for the identify time attribute into buffer including the APS frame
1531  */
1532 chip::System::PacketBufferHandle
1533 encodeIdentifyClusterWriteIdentifyTimeAttribute(uint8_t seqNum, chip::EndpointId destinationEndpoint, uint16_t identifyTime);
1534
1535 /**
1536  * @brief
1537  *    Encode a Identify server read command for the cluster revision attribute into buffer including the APS frame
1538  */
1539 chip::System::PacketBufferHandle encodeIdentifyClusterReadClusterRevisionAttribute(uint8_t seqNum,
1540                                                                                    chip::EndpointId destinationEndpoint);
1541
1542 /*----------------------------------------------------------------------------*\
1543 | Cluster LevelControl                                                | 0x0008 |
1544 |------------------------------------------------------------------------------|
1545 | Commands:                                                           |        |
1546 | * Move                                                              |   0x01 |
1547 | * MoveToLevel                                                       |   0x00 |
1548 | * MoveToLevelWithOnOff                                              |   0x04 |
1549 | * MoveWithOnOff                                                     |   0x05 |
1550 | * Step                                                              |   0x02 |
1551 | * StepWithOnOff                                                     |   0x06 |
1552 | * Stop                                                              |   0x03 |
1553 | * StopWithOnOff                                                     |   0x07 |
1554 |------------------------------------------------------------------------------|
1555 | Attributes:                                                         |        |
1556 | * CurrentLevel                                                      | 0x0000 |
1557 | * ClusterRevision                                                   | 0xFFFD |
1558 \*----------------------------------------------------------------------------*/
1559
1560 /**
1561  * @brief
1562  *    Encode an Move command for Level Control server into buffer including the APS frame
1563  */
1564 chip::System::PacketBufferHandle encodeLevelControlClusterMoveCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
1565                                                                       uint8_t moveMode, uint8_t rate, uint8_t optionMask,
1566                                                                       uint8_t optionOverride);
1567
1568 /**
1569  * @brief
1570  *    Encode an MoveToLevel command for Level Control server into buffer including the APS frame
1571  */
1572 chip::System::PacketBufferHandle encodeLevelControlClusterMoveToLevelCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
1573                                                                              uint8_t level, uint16_t transitionTime,
1574                                                                              uint8_t optionMask, uint8_t optionOverride);
1575
1576 /**
1577  * @brief
1578  *    Encode an MoveToLevelWithOnOff command for Level Control server into buffer including the APS frame
1579  */
1580 chip::System::PacketBufferHandle encodeLevelControlClusterMoveToLevelWithOnOffCommand(uint8_t seqNum,
1581                                                                                       chip::EndpointId destinationEndpoint,
1582                                                                                       uint8_t level, uint16_t transitionTime);
1583
1584 /**
1585  * @brief
1586  *    Encode an MoveWithOnOff command for Level Control server into buffer including the APS frame
1587  */
1588 chip::System::PacketBufferHandle encodeLevelControlClusterMoveWithOnOffCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
1589                                                                                uint8_t moveMode, uint8_t rate);
1590
1591 /**
1592  * @brief
1593  *    Encode an Step command for Level Control server into buffer including the APS frame
1594  */
1595 chip::System::PacketBufferHandle encodeLevelControlClusterStepCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
1596                                                                       uint8_t stepMode, uint8_t stepSize, uint16_t transitionTime,
1597                                                                       uint8_t optionMask, uint8_t optionOverride);
1598
1599 /**
1600  * @brief
1601  *    Encode an StepWithOnOff command for Level Control server into buffer including the APS frame
1602  */
1603 chip::System::PacketBufferHandle encodeLevelControlClusterStepWithOnOffCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
1604                                                                                uint8_t stepMode, uint8_t stepSize,
1605                                                                                uint16_t transitionTime);
1606
1607 /**
1608  * @brief
1609  *    Encode an Stop command for Level Control server into buffer including the APS frame
1610  */
1611 chip::System::PacketBufferHandle encodeLevelControlClusterStopCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
1612                                                                       uint8_t optionMask, uint8_t optionOverride);
1613
1614 /**
1615  * @brief
1616  *    Encode an StopWithOnOff command for Level Control server into buffer including the APS frame
1617  */
1618 chip::System::PacketBufferHandle encodeLevelControlClusterStopWithOnOffCommand(uint8_t seqNum,
1619                                                                                chip::EndpointId destinationEndpoint);
1620
1621 /**
1622  * @brief
1623  *    Encode a Level Control server discover command into buffer including the APS frame
1624  */
1625 chip::System::PacketBufferHandle encodeLevelControlClusterDiscoverAttributes(uint8_t seqNum, chip::EndpointId destinationEndpoint);
1626
1627 /**
1628  * @brief
1629  *    Encode a Level Control server read command for the current level attribute into buffer including the APS frame
1630  */
1631 chip::System::PacketBufferHandle encodeLevelControlClusterReadCurrentLevelAttribute(uint8_t seqNum,
1632                                                                                     chip::EndpointId destinationEndpoint);
1633
1634 /**
1635  * @brief
1636  *    Encode a Level Control server configure report command for the current level attribute into buffer including the APS frame
1637  */
1638 chip::System::PacketBufferHandle encodeLevelControlClusterConfigureCurrentLevelAttribute(uint8_t seqNum,
1639                                                                                          chip::EndpointId destinationEndpoint,
1640                                                                                          uint16_t minInterval, uint16_t maxInterval,
1641                                                                                          uint8_t change);
1642
1643 /**
1644  * @brief
1645  *    Encode a Level Control server read command for the cluster revision attribute into buffer including the APS frame
1646  */
1647 chip::System::PacketBufferHandle encodeLevelControlClusterReadClusterRevisionAttribute(uint8_t seqNum,
1648                                                                                        chip::EndpointId destinationEndpoint);
1649
1650 /*----------------------------------------------------------------------------*\
1651 | Cluster LowPower                                                    | 0x0508 |
1652 |------------------------------------------------------------------------------|
1653 | Commands:                                                           |        |
1654 | * Sleep                                                             |   0x00 |
1655 |------------------------------------------------------------------------------|
1656 | Attributes:                                                         |        |
1657 | * ClusterRevision                                                   | 0xFFFD |
1658 \*----------------------------------------------------------------------------*/
1659
1660 /**
1661  * @brief
1662  *    Encode an Sleep command for Low Power server into buffer including the APS frame
1663  */
1664 chip::System::PacketBufferHandle encodeLowPowerClusterSleepCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint);
1665
1666 /**
1667  * @brief
1668  *    Encode a Low Power server discover command into buffer including the APS frame
1669  */
1670 chip::System::PacketBufferHandle encodeLowPowerClusterDiscoverAttributes(uint8_t seqNum, chip::EndpointId destinationEndpoint);
1671
1672 /**
1673  * @brief
1674  *    Encode a Low Power server read command for the cluster revision attribute into buffer including the APS frame
1675  */
1676 chip::System::PacketBufferHandle encodeLowPowerClusterReadClusterRevisionAttribute(uint8_t seqNum,
1677                                                                                    chip::EndpointId destinationEndpoint);
1678
1679 /*----------------------------------------------------------------------------*\
1680 | Cluster MediaPlayback                                               | 0xF001 |
1681 |------------------------------------------------------------------------------|
1682 | Commands:                                                           |        |
1683 | * FastForwardRequest                                                |   0x07 |
1684 | * NextRequest                                                       |   0x05 |
1685 | * PauseRequest                                                      |   0x01 |
1686 | * PlayRequest                                                       |   0x00 |
1687 | * PreviousRequest                                                   |   0x04 |
1688 | * RewindRequest                                                     |   0x06 |
1689 | * SkipBackwardRequest                                               |   0x09 |
1690 | * SkipForwardRequest                                                |   0x08 |
1691 | * StartOverRequest                                                  |   0x03 |
1692 | * StopRequest                                                       |   0x02 |
1693 |------------------------------------------------------------------------------|
1694 | Attributes:                                                         |        |
1695 | * CurrentState                                                      | 0x0000 |
1696 | * ClusterRevision                                                   | 0xFFFD |
1697 \*----------------------------------------------------------------------------*/
1698
1699 /**
1700  * @brief
1701  *    Encode an FastForwardRequest command for Media Playback server into buffer including the APS frame
1702  */
1703 chip::System::PacketBufferHandle encodeMediaPlaybackClusterFastForwardRequestCommand(uint8_t seqNum,
1704                                                                                      chip::EndpointId destinationEndpoint);
1705
1706 /**
1707  * @brief
1708  *    Encode an NextRequest command for Media Playback server into buffer including the APS frame
1709  */
1710 chip::System::PacketBufferHandle encodeMediaPlaybackClusterNextRequestCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint);
1711
1712 /**
1713  * @brief
1714  *    Encode an PauseRequest command for Media Playback server into buffer including the APS frame
1715  */
1716 chip::System::PacketBufferHandle encodeMediaPlaybackClusterPauseRequestCommand(uint8_t seqNum,
1717                                                                                chip::EndpointId destinationEndpoint);
1718
1719 /**
1720  * @brief
1721  *    Encode an PlayRequest command for Media Playback server into buffer including the APS frame
1722  */
1723 chip::System::PacketBufferHandle encodeMediaPlaybackClusterPlayRequestCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint);
1724
1725 /**
1726  * @brief
1727  *    Encode an PreviousRequest command for Media Playback server into buffer including the APS frame
1728  */
1729 chip::System::PacketBufferHandle encodeMediaPlaybackClusterPreviousRequestCommand(uint8_t seqNum,
1730                                                                                   chip::EndpointId destinationEndpoint);
1731
1732 /**
1733  * @brief
1734  *    Encode an RewindRequest command for Media Playback server into buffer including the APS frame
1735  */
1736 chip::System::PacketBufferHandle encodeMediaPlaybackClusterRewindRequestCommand(uint8_t seqNum,
1737                                                                                 chip::EndpointId destinationEndpoint);
1738
1739 /**
1740  * @brief
1741  *    Encode an SkipBackwardRequest command for Media Playback server into buffer including the APS frame
1742  */
1743 chip::System::PacketBufferHandle encodeMediaPlaybackClusterSkipBackwardRequestCommand(uint8_t seqNum,
1744                                                                                       chip::EndpointId destinationEndpoint);
1745
1746 /**
1747  * @brief
1748  *    Encode an SkipForwardRequest command for Media Playback server into buffer including the APS frame
1749  */
1750 chip::System::PacketBufferHandle encodeMediaPlaybackClusterSkipForwardRequestCommand(uint8_t seqNum,
1751                                                                                      chip::EndpointId destinationEndpoint);
1752
1753 /**
1754  * @brief
1755  *    Encode an StartOverRequest command for Media Playback server into buffer including the APS frame
1756  */
1757 chip::System::PacketBufferHandle encodeMediaPlaybackClusterStartOverRequestCommand(uint8_t seqNum,
1758                                                                                    chip::EndpointId destinationEndpoint);
1759
1760 /**
1761  * @brief
1762  *    Encode an StopRequest command for Media Playback server into buffer including the APS frame
1763  */
1764 chip::System::PacketBufferHandle encodeMediaPlaybackClusterStopRequestCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint);
1765
1766 /**
1767  * @brief
1768  *    Encode a Media Playback server discover command into buffer including the APS frame
1769  */
1770 chip::System::PacketBufferHandle encodeMediaPlaybackClusterDiscoverAttributes(uint8_t seqNum, chip::EndpointId destinationEndpoint);
1771
1772 /**
1773  * @brief
1774  *    Encode a Media Playback server read command for the current state attribute into buffer including the APS frame
1775  */
1776 chip::System::PacketBufferHandle encodeMediaPlaybackClusterReadCurrentStateAttribute(uint8_t seqNum,
1777                                                                                      chip::EndpointId destinationEndpoint);
1778
1779 /**
1780  * @brief
1781  *    Encode a Media Playback server read command for the cluster revision attribute into buffer including the APS frame
1782  */
1783 chip::System::PacketBufferHandle encodeMediaPlaybackClusterReadClusterRevisionAttribute(uint8_t seqNum,
1784                                                                                         chip::EndpointId destinationEndpoint);
1785
1786 /*----------------------------------------------------------------------------*\
1787 | Cluster NetworkCommissioning                                        | 0xAAAA |
1788 |------------------------------------------------------------------------------|
1789 | Commands:                                                           |        |
1790 | * AddThreadNetwork                                                  |   0x06 |
1791 | * AddWiFiNetwork                                                    |   0x02 |
1792 | * DisableNetwork                                                    |   0x0E |
1793 | * EnableNetwork                                                     |   0x0C |
1794 | * GetLastNetworkCommissioningResult                                 |   0x10 |
1795 | * RemoveNetwork                                                     |   0x0A |
1796 | * ScanNetworks                                                      |   0x00 |
1797 | * UpdateThreadNetwork                                               |   0x08 |
1798 | * UpdateWiFiNetwork                                                 |   0x04 |
1799 |------------------------------------------------------------------------------|
1800 | Attributes:                                                         |        |
1801 | * ClusterRevision                                                   | 0xFFFD |
1802 \*----------------------------------------------------------------------------*/
1803
1804 /**
1805  * @brief
1806  *    Encode an AddThreadNetwork command for Network Commissioning server into buffer including the APS frame
1807  */
1808 chip::System::PacketBufferHandle encodeNetworkCommissioningClusterAddThreadNetworkCommand(uint8_t seqNum,
1809                                                                                           chip::EndpointId destinationEndpoint,
1810                                                                                           chip::ByteSpan operationalDataset,
1811                                                                                           uint64_t breadcrumb, uint32_t timeoutMs);
1812
1813 /**
1814  * @brief
1815  *    Encode an AddWiFiNetwork command for Network Commissioning server into buffer including the APS frame
1816  */
1817 chip::System::PacketBufferHandle
1818 encodeNetworkCommissioningClusterAddWiFiNetworkCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint, chip::ByteSpan ssid,
1819                                                        chip::ByteSpan credentials, uint64_t breadcrumb, uint32_t timeoutMs);
1820
1821 /**
1822  * @brief
1823  *    Encode an DisableNetwork command for Network Commissioning server into buffer including the APS frame
1824  */
1825 chip::System::PacketBufferHandle encodeNetworkCommissioningClusterDisableNetworkCommand(uint8_t seqNum,
1826                                                                                         chip::EndpointId destinationEndpoint,
1827                                                                                         chip::ByteSpan networkID,
1828                                                                                         uint64_t breadcrumb, uint32_t timeoutMs);
1829
1830 /**
1831  * @brief
1832  *    Encode an EnableNetwork command for Network Commissioning server into buffer including the APS frame
1833  */
1834 chip::System::PacketBufferHandle encodeNetworkCommissioningClusterEnableNetworkCommand(uint8_t seqNum,
1835                                                                                        chip::EndpointId destinationEndpoint,
1836                                                                                        chip::ByteSpan networkID,
1837                                                                                        uint64_t breadcrumb, uint32_t timeoutMs);
1838
1839 /**
1840  * @brief
1841  *    Encode an GetLastNetworkCommissioningResult command for Network Commissioning server into buffer including the APS frame
1842  */
1843 chip::System::PacketBufferHandle
1844 encodeNetworkCommissioningClusterGetLastNetworkCommissioningResultCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
1845                                                                           uint32_t timeoutMs);
1846
1847 /**
1848  * @brief
1849  *    Encode an RemoveNetwork command for Network Commissioning server into buffer including the APS frame
1850  */
1851 chip::System::PacketBufferHandle encodeNetworkCommissioningClusterRemoveNetworkCommand(uint8_t seqNum,
1852                                                                                        chip::EndpointId destinationEndpoint,
1853                                                                                        chip::ByteSpan networkID,
1854                                                                                        uint64_t breadcrumb, uint32_t timeoutMs);
1855
1856 /**
1857  * @brief
1858  *    Encode an ScanNetworks command for Network Commissioning server into buffer including the APS frame
1859  */
1860 chip::System::PacketBufferHandle encodeNetworkCommissioningClusterScanNetworksCommand(uint8_t seqNum,
1861                                                                                       chip::EndpointId destinationEndpoint,
1862                                                                                       chip::ByteSpan ssid, uint64_t breadcrumb,
1863                                                                                       uint32_t timeoutMs);
1864
1865 /**
1866  * @brief
1867  *    Encode an UpdateThreadNetwork command for Network Commissioning server into buffer including the APS frame
1868  */
1869 chip::System::PacketBufferHandle encodeNetworkCommissioningClusterUpdateThreadNetworkCommand(uint8_t seqNum,
1870                                                                                              chip::EndpointId destinationEndpoint,
1871                                                                                              chip::ByteSpan operationalDataset,
1872                                                                                              uint64_t breadcrumb,
1873                                                                                              uint32_t timeoutMs);
1874
1875 /**
1876  * @brief
1877  *    Encode an UpdateWiFiNetwork command for Network Commissioning server into buffer including the APS frame
1878  */
1879 chip::System::PacketBufferHandle
1880 encodeNetworkCommissioningClusterUpdateWiFiNetworkCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint, chip::ByteSpan ssid,
1881                                                           chip::ByteSpan credentials, uint64_t breadcrumb, uint32_t timeoutMs);
1882
1883 /**
1884  * @brief
1885  *    Encode a Network Commissioning server discover command into buffer including the APS frame
1886  */
1887 chip::System::PacketBufferHandle encodeNetworkCommissioningClusterDiscoverAttributes(uint8_t seqNum,
1888                                                                                      chip::EndpointId destinationEndpoint);
1889
1890 /**
1891  * @brief
1892  *    Encode a Network Commissioning server read command for the cluster revision attribute into buffer including the APS frame
1893  */
1894 chip::System::PacketBufferHandle
1895 encodeNetworkCommissioningClusterReadClusterRevisionAttribute(uint8_t seqNum, chip::EndpointId destinationEndpoint);
1896
1897 /*----------------------------------------------------------------------------*\
1898 | Cluster OnOff                                                       | 0x0006 |
1899 |------------------------------------------------------------------------------|
1900 | Commands:                                                           |        |
1901 | * Off                                                               |   0x00 |
1902 | * On                                                                |   0x01 |
1903 | * Toggle                                                            |   0x02 |
1904 |------------------------------------------------------------------------------|
1905 | Attributes:                                                         |        |
1906 | * OnOff                                                             | 0x0000 |
1907 | * ClusterRevision                                                   | 0xFFFD |
1908 \*----------------------------------------------------------------------------*/
1909
1910 /**
1911  * @brief
1912  *    Encode an Off command for On/off server into buffer including the APS frame
1913  */
1914 chip::System::PacketBufferHandle encodeOnOffClusterOffCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint);
1915
1916 /**
1917  * @brief
1918  *    Encode an On command for On/off server into buffer including the APS frame
1919  */
1920 chip::System::PacketBufferHandle encodeOnOffClusterOnCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint);
1921
1922 /**
1923  * @brief
1924  *    Encode an Toggle command for On/off server into buffer including the APS frame
1925  */
1926 chip::System::PacketBufferHandle encodeOnOffClusterToggleCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint);
1927
1928 /**
1929  * @brief
1930  *    Encode a On/off server discover command into buffer including the APS frame
1931  */
1932 chip::System::PacketBufferHandle encodeOnOffClusterDiscoverAttributes(uint8_t seqNum, chip::EndpointId destinationEndpoint);
1933
1934 /**
1935  * @brief
1936  *    Encode a On/off server read command for the on/off attribute into buffer including the APS frame
1937  */
1938 chip::System::PacketBufferHandle encodeOnOffClusterReadOnOffAttribute(uint8_t seqNum, chip::EndpointId destinationEndpoint);
1939
1940 /**
1941  * @brief
1942  *    Encode a On/off server configure report command for the on/off attribute into buffer including the APS frame
1943  */
1944 chip::System::PacketBufferHandle encodeOnOffClusterConfigureOnOffAttribute(uint8_t seqNum, chip::EndpointId destinationEndpoint,
1945                                                                            uint16_t minInterval, uint16_t maxInterval);
1946
1947 /**
1948  * @brief
1949  *    Encode a On/off server read command for the cluster revision attribute into buffer including the APS frame
1950  */
1951 chip::System::PacketBufferHandle encodeOnOffClusterReadClusterRevisionAttribute(uint8_t seqNum,
1952                                                                                 chip::EndpointId destinationEndpoint);
1953
1954 /*----------------------------------------------------------------------------*\
1955 | Cluster Scenes                                                      | 0x0005 |
1956 |------------------------------------------------------------------------------|
1957 | Commands:                                                           |        |
1958 | * AddScene                                                          |   0x00 |
1959 | * GetSceneMembership                                                |   0x06 |
1960 | * RecallScene                                                       |   0x05 |
1961 | * RemoveAllScenes                                                   |   0x03 |
1962 | * RemoveScene                                                       |   0x02 |
1963 | * StoreScene                                                        |   0x04 |
1964 | * ViewScene                                                         |   0x01 |
1965 |------------------------------------------------------------------------------|
1966 | Attributes:                                                         |        |
1967 | * SceneCount                                                        | 0x0000 |
1968 | * CurrentScene                                                      | 0x0001 |
1969 | * CurrentGroup                                                      | 0x0002 |
1970 | * SceneValid                                                        | 0x0003 |
1971 | * NameSupport                                                       | 0x0004 |
1972 | * ClusterRevision                                                   | 0xFFFD |
1973 \*----------------------------------------------------------------------------*/
1974
1975 /**
1976  * @brief
1977  *    Encode an AddScene command for Scenes server into buffer including the APS frame
1978  */
1979 chip::System::PacketBufferHandle encodeScenesClusterAddSceneCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
1980                                                                     uint16_t groupId, uint8_t sceneId, uint16_t transitionTime,
1981                                                                     char * sceneName, chip::ClusterId clusterId, uint8_t length,
1982                                                                     uint8_t value);
1983
1984 /**
1985  * @brief
1986  *    Encode an GetSceneMembership command for Scenes server into buffer including the APS frame
1987  */
1988 chip::System::PacketBufferHandle encodeScenesClusterGetSceneMembershipCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
1989                                                                               uint16_t groupId);
1990
1991 /**
1992  * @brief
1993  *    Encode an RecallScene command for Scenes server into buffer including the APS frame
1994  */
1995 chip::System::PacketBufferHandle encodeScenesClusterRecallSceneCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
1996                                                                        uint16_t groupId, uint8_t sceneId, uint16_t transitionTime);
1997
1998 /**
1999  * @brief
2000  *    Encode an RemoveAllScenes command for Scenes server into buffer including the APS frame
2001  */
2002 chip::System::PacketBufferHandle encodeScenesClusterRemoveAllScenesCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
2003                                                                            uint16_t groupId);
2004
2005 /**
2006  * @brief
2007  *    Encode an RemoveScene command for Scenes server into buffer including the APS frame
2008  */
2009 chip::System::PacketBufferHandle encodeScenesClusterRemoveSceneCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
2010                                                                        uint16_t groupId, uint8_t sceneId);
2011
2012 /**
2013  * @brief
2014  *    Encode an StoreScene command for Scenes server into buffer including the APS frame
2015  */
2016 chip::System::PacketBufferHandle encodeScenesClusterStoreSceneCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
2017                                                                       uint16_t groupId, uint8_t sceneId);
2018
2019 /**
2020  * @brief
2021  *    Encode an ViewScene command for Scenes server into buffer including the APS frame
2022  */
2023 chip::System::PacketBufferHandle encodeScenesClusterViewSceneCommand(uint8_t seqNum, chip::EndpointId destinationEndpoint,
2024                                                                      uint16_t groupId, uint8_t sceneId);
2025
2026 /**
2027  * @brief
2028  *    Encode a Scenes server discover command into buffer including the APS frame
2029  */
2030 chip::System::PacketBufferHandle encodeScenesClusterDiscoverAttributes(uint8_t seqNum, chip::EndpointId destinationEndpoint);
2031
2032 /**
2033  * @brief
2034  *    Encode a Scenes server read command for the scene count attribute into buffer including the APS frame
2035  */
2036 chip::System::PacketBufferHandle encodeScenesClusterReadSceneCountAttribute(uint8_t seqNum, chip::EndpointId destinationEndpoint);
2037
2038 /**
2039  * @brief
2040  *    Encode a Scenes server read command for the current scene attribute into buffer including the APS frame
2041  */
2042 chip::System::PacketBufferHandle encodeScenesClusterReadCurrentSceneAttribute(uint8_t seqNum, chip::EndpointId destinationEndpoint);
2043
2044 /**
2045  * @brief
2046  *    Encode a Scenes server read command for the current group attribute into buffer including the APS frame
2047  */
2048 chip::System::PacketBufferHandle encodeScenesClusterReadCurrentGroupAttribute(uint8_t seqNum, chip::EndpointId destinationEndpoint);
2049
2050 /**
2051  * @brief
2052  *    Encode a Scenes server read command for the scene valid attribute into buffer including the APS frame
2053  */
2054 chip::System::PacketBufferHandle encodeScenesClusterReadSceneValidAttribute(uint8_t seqNum, chip::EndpointId destinationEndpoint);
2055
2056 /**
2057  * @brief
2058  *    Encode a Scenes server read command for the name support attribute into buffer including the APS frame
2059  */
2060 chip::System::PacketBufferHandle encodeScenesClusterReadNameSupportAttribute(uint8_t seqNum, chip::EndpointId destinationEndpoint);
2061
2062 /**
2063  * @brief
2064  *    Encode a Scenes server read command for the cluster revision attribute into buffer including the APS frame
2065  */
2066 chip::System::PacketBufferHandle encodeScenesClusterReadClusterRevisionAttribute(uint8_t seqNum,
2067                                                                                  chip::EndpointId destinationEndpoint);
2068
2069 /*----------------------------------------------------------------------------*\
2070 | Cluster TemperatureMeasurement                                      | 0x0402 |
2071 |------------------------------------------------------------------------------|
2072 | Commands:                                                           |        |
2073 |------------------------------------------------------------------------------|
2074 | Attributes:                                                         |        |
2075 | * MeasuredValue                                                     | 0x0000 |
2076 | * MinMeasuredValue                                                  | 0x0001 |
2077 | * MaxMeasuredValue                                                  | 0x0002 |
2078 | * ClusterRevision                                                   | 0xFFFD |
2079 \*----------------------------------------------------------------------------*/
2080
2081 /**
2082  * @brief
2083  *    Encode a Temperature Measurement server discover command into buffer including the APS frame
2084  */
2085 chip::System::PacketBufferHandle encodeTemperatureMeasurementClusterDiscoverAttributes(uint8_t seqNum,
2086                                                                                        chip::EndpointId destinationEndpoint);
2087
2088 /**
2089  * @brief
2090  *    Encode a Temperature Measurement server read command for the measured value attribute into buffer including the APS frame
2091  */
2092 chip::System::PacketBufferHandle
2093 encodeTemperatureMeasurementClusterReadMeasuredValueAttribute(uint8_t seqNum, chip::EndpointId destinationEndpoint);
2094
2095 /**
2096  * @brief
2097  *    Encode a Temperature Measurement server configure report command for the measured value attribute into buffer including the
2098  * APS frame
2099  */
2100 chip::System::PacketBufferHandle
2101 encodeTemperatureMeasurementClusterConfigureMeasuredValueAttribute(uint8_t seqNum, chip::EndpointId destinationEndpoint,
2102                                                                    uint16_t minInterval, uint16_t maxInterval, int16_t change);
2103
2104 /**
2105  * @brief
2106  *    Encode a Temperature Measurement server read command for the min measured value attribute into buffer including the APS frame
2107  */
2108 chip::System::PacketBufferHandle
2109 encodeTemperatureMeasurementClusterReadMinMeasuredValueAttribute(uint8_t seqNum, chip::EndpointId destinationEndpoint);
2110
2111 /**
2112  * @brief
2113  *    Encode a Temperature Measurement server read command for the max measured value attribute into buffer including the APS frame
2114  */
2115 chip::System::PacketBufferHandle
2116 encodeTemperatureMeasurementClusterReadMaxMeasuredValueAttribute(uint8_t seqNum, chip::EndpointId destinationEndpoint);
2117
2118 /**
2119  * @brief
2120  *    Encode a Temperature Measurement server read command for the cluster revision attribute into buffer including the APS frame
2121  */
2122 chip::System::PacketBufferHandle
2123 encodeTemperatureMeasurementClusterReadClusterRevisionAttribute(uint8_t seqNum, chip::EndpointId destinationEndpoint);