| <?xml version="1.0"?> |
| <!-- |
| Copyright (c) 2024 Project CHIP Authors |
| |
| Licensed under the Apache License, Version 2.0 (the "License"); |
| you may not use this file except in compliance with the License. |
| You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| --> |
| <configurator> |
| <domain name="CHIP"/> |
| |
| <struct name="ThreadNetworkStruct"> |
| <cluster code="0x0453"/> |
| <item name="ExtendedPanID" type="int64u"/> |
| <item name="NetworkName" type="char_string" length="16"/> |
| <item name="Channel" type="int16u"/> |
| </struct> |
| |
| <cluster> |
| <domain>Network Infrastructure</domain> |
| <name>Thread Network Directory</name> |
| <code>0x0453</code> |
| <define>THREAD_NETWORK_DIRECTORY_CLUSTER</define> |
| <description>Manages the names and credentials of Thread networks visible to the user.</description> |
| |
| <client tick="false" init="false">true</client> |
| <server tick="false" init="false">true</server> |
| |
| <!-- cluster revision --> |
| <globalAttribute side="either" code="0xFFFD" value="1"/> |
| |
| <attribute side="server" code="0x0000" define="PREFERRED_EXTENDED_PAN_ID" type="int64u" writable="true" isNullable="true" optional="false"> |
| <description>PreferredExtendedPanID</description> |
| <access op="read" privilege="manage"/> |
| <access op="write" privilege="manage"/> |
| </attribute> |
| <attribute side="server" code="0x0001" define="THREAD_NETWORKS" type="array" entryType="ThreadNetworkStruct" writable="false" optional="false"> |
| <description>ThreadNetworks</description> |
| <access op="read" privilege="operate"/> |
| </attribute> |
| <attribute side="server" code="0x0002" define="THREAD_NETWORK_TABLE_SIZE" type="int8u" writable="false" optional="false">ThreadNetworkTableSize</attribute> |
| |
| <command source="client" code="0x00" name="AddNetwork" mustUseTimedInvoke="true" optional="false"> |
| <description>Adds an entry to the ThreadNetworks list.</description> |
| <access op="invoke" privilege="manage"/> |
| <arg name="OperationalDataset" type="octet_string" length="254"/> |
| </command> |
| <command source="client" code="0x01" name="RemoveNetwork" mustUseTimedInvoke="true" optional="false"> |
| <description>Removes an entry from the ThreadNetworks list.</description> |
| <access op="invoke" privilege="manage"/> |
| <arg name="ExtendedPanID" type="int64u"/> |
| </command> |
| <command source="client" code="0x02" name="GetOperationalDataset" mustUseTimedInvoke="true" optional="false" response="OperationalDatasetResponse"> |
| <description>Retrieves a Thread Operational Dataset from the ThreadNetworks list.</description> |
| <access op="invoke" privilege="operate"/> |
| <arg name="ExtendedPanID" type="int64u"/> |
| </command> |
| <command source="server" code="0x03" name="OperationalDatasetResponse" optional="false"> |
| <description>This is the response to a GetOperationalDataset request.</description> |
| <arg name="OperationalDataset" type="octet_string" length="254"/> |
| </command> |
| |
| <event side="server" code="0x00" name="NetworkChanged" priority="info" optional="false"> |
| <description>This event SHALL be generated when an entry in ThreadNetworks is added, removed, or had its Operational Dataset changed.</description> |
| <field id="0" name="ExtendedPanID" type="int64u"/> |
| <access op="read" privilege="operate"/> |
| </event> |
| </cluster> |
| </configurator> |