|
| 1 | +<?xml version="1.0"?> |
| 2 | +<!-- |
| 3 | +Copyright (c) 2024 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 | +<configurator> |
| 18 | + <domain name="CHIP"/> |
| 19 | + <bitmap name="SupportedDeviceCategoryBitmap" type="bitmap32"> |
| 20 | + <cluster code="0x0751"/> |
| 21 | + <field name="FabricSynchronization" mask="0x1"/> |
| 22 | + </bitmap> |
| 23 | + |
| 24 | + <cluster apiMaturity="provisional"> |
| 25 | + <domain>General</domain> |
| 26 | + <name>Commissioner Control</name> |
| 27 | + <code>0x0751</code> |
| 28 | + <define>COMMISSIONER_CONTROL_CLUSTER</define> |
| 29 | + <client init="false" tick="false">true</client> |
| 30 | + <server init="false" tick="false">true</server> |
| 31 | + <description>Supports the ability for clients to request the commissioning of themselves or other nodes onto a fabric which the cluster server can commission onto.</description> |
| 32 | + |
| 33 | + <!-- cluster revision --> |
| 34 | + <globalAttribute side="either" code="0xFFFD" value="1"/> |
| 35 | + <attribute side="server" code="0x0000" define="SUPPORTED_DEVICE_CATEGORIES" type="SupportedDeviceCategoryBitmap" default="0" min="0x00000000" max="0x00000001"> |
| 36 | + <description>SupportedDeviceCategories</description> |
| 37 | + <access op="read" privilege="manage"/> |
| 38 | + </attribute> |
| 39 | + |
| 40 | + <command source="client" code="0x00" name="RequestCommissioningApproval" optional="false"> |
| 41 | + <description>This command is sent by a client to request approval for a future CommissionNode call.</description> |
| 42 | + <arg id="0" name="RequestId" type="int64u"/> |
| 43 | + <arg id="1" name="VendorId" type="vendor_id"/> |
| 44 | + <arg id="2" name="ProductId" type="int16u"/> |
| 45 | + <arg id="3" name="Label" type="char_string" optional="true" length="64"/> |
| 46 | + <access op="invoke" privilege="manage"/> |
| 47 | + </command> |
| 48 | + |
| 49 | + <command source="client" code="0x01" name="CommissionNode" response="ReverseOpenCommissioningWindow" optional="false"> |
| 50 | + <description>This command is sent by a client to request that the server begins commissioning a previously approved request.</description> |
| 51 | + <arg id="0" name="RequestId" type="int64u"/> |
| 52 | + <arg id="2" name="ResponseTimeoutSeconds" type="int16u" min="30" max="120" default="30"/> |
| 53 | + <arg id="3" name="IpAddress" type="octet_string" optional="true" min="4" max="16"/> |
| 54 | + <!-- Note: ipadr is not supported yet, use its base type (octet_string) here --> |
| 55 | + <arg id="4" name="Port" type="int16u" optional="true"/> |
| 56 | + <access op="invoke" privilege="manage"/> |
| 57 | + </command> |
| 58 | + |
| 59 | + <command source="server" code="0x02" name="ReverseOpenCommissioningWindow" optional="false"> |
| 60 | + <description>When received within the timeout specified by CommissionNode, the client SHALL open a commissioning window on to the node which the client called RequestCommissioningApproval to have commissioned.</description> |
| 61 | + <arg id="0" name="CommissioningTimeout" type="int16u"/> |
| 62 | + <arg id="1" name="PAKEPasscodeVerifier" type="octet_string"/> |
| 63 | + <arg id="2" name="Discriminator" type="int16u" min="0" max="4095"/> |
| 64 | + <arg id="3" name="Iterations" type="int32u" min="1000" max="100000"/> |
| 65 | + <arg id="4" name="Salt" type="octet_string" length="32" minLength="16"/> |
| 66 | + </command> |
| 67 | + |
| 68 | + <event code="0x00" name="CommissioningRequestResult" priority="info" side="server" isFabricSensitive="true"> |
| 69 | + <description>This event SHALL be sent by the server following a RequestCommissioningApproval command which the server responded to with SUCCESS.</description> |
| 70 | + <field id="0" name="RequestId" type="int64u"/> |
| 71 | + <field id="1" name="ClientNodeId" type="node_id"/> |
| 72 | + <field id="2" name="StatusCode" type="enum8"/> |
| 73 | + <access op="read" privilege="manage"/> |
| 74 | + </event> |
| 75 | + |
| 76 | + </cluster> |
| 77 | +</configurator> |
0 commit comments