| # |
| # Copyright (c) 2023 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. |
| |
| from ..pseudo_cluster import PseudoCluster |
| |
| _DEFINITION = '''<?xml version="1.0"?> |
| <configurator> |
| <cluster> |
| <name>DiscoveryCommands</name> |
| <code>0xFFF1FD05</code> |
| |
| <command source="client" code="0" name="FindCommissionable" response="FindResponse"> |
| </command> |
| |
| <command source="client" code="1" name="FindCommissionableByShortDiscriminator" response="FindResponse"> |
| <arg name="value" type="int16u"/> |
| </command> |
| |
| <command source="client" code="2" name="FindCommissionableByLongDiscriminator" response="FindResponse"> |
| <arg name="value" type="int16u"/> |
| </command> |
| |
| <command source="client" code="3" name="FindCommissionableByCommissioningMode" response="FindResponse"> |
| </command> |
| |
| <command source="client" code="4" name="FindCommissionableByVendorId" response="FindResponse"> |
| <arg name="value" type="vendor_id"/> |
| </command> |
| |
| <command source="client" code="5" name="FindCommissionableByDeviceType" response="FindResponse"> |
| <arg name="value" type="devtype_id"/> |
| </command> |
| |
| <command source="client" code="6" name="FindCommissioner" response="FindCommissionerResponse"> |
| </command> |
| |
| <command source="client" code="7" name="FindCommissionerByVendorId" response="FindCommissionerResponse"> |
| <arg name="value" type="vendor_id"/> |
| </command> |
| |
| <command source="client" code="8" name="FindCommissionerByDeviceType" response="FindCommissionerResponse"> |
| <arg name="value" type="devtype_id"/> |
| </command> |
| |
| <command source="server" code="9" name="FindResponse"> |
| <arg name="hostName" type="char_string"/> |
| <arg name="instanceName" type="char_string"/> |
| <arg name="longDiscriminator" type="int16u"/> |
| <arg name="shortDiscriminator" type="int16u"/> |
| <arg name="vendorId" type="vendor_id"/> |
| <arg name="productId" type="int16u"/> |
| <arg name="commissioningMode" type="int8u"/> |
| <arg name="deviceType" type="devtype_id"/> |
| <arg name="deviceName" type="char_string"/> |
| <arg name="rotatingId" type="octet_string"/> |
| <arg name="rotatingIdLen" type="int64u"/> |
| <arg name="pairingHint" type="int16u"/> |
| <arg name="pairingInstruction" type="char_string"/> |
| <arg name="supportsTcp" type="boolean"/> |
| <arg name="numIPs" type="int8u"/> |
| <arg name="port" type="int16u"/> |
| <arg name="mrpRetryIntervalIdle" type="int32u" optional="true"/> |
| <arg name="mrpRetryIntervalActive" type="int32u" optional="true"/> |
| </command> |
| </cluster> |
| </configurator> |
| ''' |
| |
| |
| class DiscoveryCommands(PseudoCluster): |
| name = 'DiscoveryCommands' |
| definition = _DEFINITION |