| <?xml version="1.0"?> |
| <!-- |
| Copyright (c) 2021 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="TestListStructOctet"> |
| <cluster code="0xFFF1FC05"/> |
| <item name="member1" type="INT64U"/> |
| <item name="member2" type="OCTET_STRING" length="32"/> |
| </struct> |
| |
| <struct name="TestFabricScoped" isFabricScoped="true"> |
| <cluster code="0xFFF1FC05"/> |
| <item fieldId="1" name="fabricSensitiveInt8u" type="INT8U" isFabricSensitive="true"/> |
| <item fieldId="2" name="optionalFabricSensitiveInt8u" type="INT8U" optional="true" isFabricSensitive="true"/> |
| <item fieldId="3" name="nullableFabricSensitiveInt8u" type="INT8U" isNullable="true" isFabricSensitive="true"/> |
| <item fieldId="4" name="nullableOptionalFabricSensitiveInt8u" type="INT8U" optional="true" isNullable="true" isFabricSensitive="true"/> |
| <item fieldId="5" name="fabricSensitiveCharString" type="CHAR_STRING" isFabricSensitive="true"/> |
| <item fieldId="6" name="fabricSensitiveStruct" type="SimpleStruct" isFabricSensitive="true"/> |
| <item fieldId="7" name="fabricSensitiveInt8uList" type="INT8U" array="true" isFabricSensitive="true"/> |
| </struct> |
| |
| <enum name="SimpleEnum" type="ENUM8"> |
| <cluster code="0xFFF1FC05"/> |
| <item name="Unspecified" value="0x00"/> |
| <item name="ValueA" value="0x01"/> |
| <item name="ValueB" value="0x02"/> |
| <item name="ValueC" value="0x03"/> |
| </enum> |
| |
| <bitmap name="SimpleBitmap" type="BITMAP8"> |
| <cluster code="0xFFF1FC05"/> |
| <field name="ValueA" mask="0x1"/> |
| <field name="ValueB" mask="0x2"/> |
| <field name="ValueC" mask="0x4"/> |
| </bitmap> |
| |
| <struct name="SimpleStruct"> |
| <cluster code="0xFFF1FC05"/> |
| <item name="a" type="INT8U" optional="false"/> |
| <item name="b" type="BOOLEAN" optional="false"/> |
| <item name="c" type="SimpleEnum" optional="false"/> |
| <item name="d" type="OCTET_STRING" optional="false"/> |
| <item name="e" type="CHAR_STRING" optional="false"/> |
| <item name="f" type="SimpleBitmap" optional="false"/> |
| <item name="g" type="single" optional="false"/> |
| <item name="h" type="double" optional="false"/> |
| </struct> |
| |
| <struct name="NestedStruct"> |
| <cluster code="0xFFF1FC05"/> |
| <item name="a" type="INT8U" optional="false"/> |
| <item name="b" type="BOOLEAN" optional="false"/> |
| <item name="c" type="SimpleStruct" optional="false"/> |
| </struct> |
| |
| <struct name="NestedStructList"> |
| <cluster code="0xFFF1FC05"/> |
| <item name="a" type="INT8U" optional="false"/> |
| <item name="b" type="BOOLEAN" optional="false"/> |
| <item name="c" type="SimpleStruct" optional="false"/> |
| <item name="d" type="SimpleStruct" array="true" optional="false"/> |
| <item name="e" type="INT32U" array="true" optional="false"/> |
| <item name="f" type="OCTET_STRING" array="true" optional="false"/> |
| <item name="g" type="INT8U" array="true" optional="false"/> |
| </struct> |
| |
| <struct name="DoubleNestedStructList"> |
| <cluster code="0xFFF1FC05"/> |
| <item name="a" type="NestedStructList" array="true" optional="false"/> |
| </struct> |
| |
| |
| <struct name="NullablesAndOptionalsStruct"> |
| <cluster code="0xFFF1FC05"/> |
| <item name="NullableInt" type="INT16U" isNullable="true"/> |
| <item name="OptionalInt" type="INT16U" optional="true"/> |
| <item name="NullableOptionalInt" type="INT16U" isNullable="true" |
| optional="true"/> |
| <item name="NullableString" type="CHAR_STRING" isNullable="true"/> |
| <item name="OptionalString" type="CHAR_STRING" optional="true"/> |
| <item name="NullableOptionalString" type="CHAR_STRING" isNullable="true" |
| optional="true"/> |
| <item name="NullableStruct" type="SimpleStruct" isNullable="true"/> |
| <item name="OptionalStruct" type="SimpleStruct" optional="true"/> |
| <item name="NullableOptionalStruct" type="SimpleStruct" isNullable="true" |
| optional="true"/> |
| <item name="NullableList" type="SimpleEnum" isNullable="true" array="true"/> |
| <item name="OptionalList" type="SimpleEnum" optional="true" array="true"/> |
| <item name="NullableOptionalList" type="SimpleEnum" isNullable="true" |
| array="true" optional="true"/> |
| </struct> |
| |
| <bitmap name="Bitmap8MaskMap" type="BITMAP8"> |
| <cluster code="0xFFF1FC05" /> |
| <field mask="0x01" name="MaskVal1" /> |
| <field mask="0x02" name="MaskVal2" /> |
| <field mask="0x04" name="MaskVal3" /> |
| <field mask="0x40" name="MaskVal4" /> |
| </bitmap> |
| |
| <bitmap name="Bitmap16MaskMap" type="BITMAP16"> |
| <cluster code="0xFFF1FC05" /> |
| <field mask="0x01" name="MaskVal1" /> |
| <field mask="0x02" name="MaskVal2" /> |
| <field mask="0x04" name="MaskVal3" /> |
| <field mask="0x4000" name="MaskVal4" /> |
| </bitmap> |
| |
| <bitmap name="Bitmap32MaskMap" type="BITMAP32"> |
| <cluster code="0xFFF1FC05" /> |
| <field mask="0x01" name="MaskVal1" /> |
| <field mask="0x02" name="MaskVal2" /> |
| <field mask="0x04" name="MaskVal3" /> |
| <field mask="0x40000000" name="MaskVal4" /> |
| </bitmap> |
| |
| <bitmap name="Bitmap64MaskMap" type="BITMAP64"> |
| <cluster code="0xFFF1FC05" /> |
| <field mask="0x01" name="MaskVal1" /> |
| <field mask="0x02" name="MaskVal2" /> |
| <field mask="0x04" name="MaskVal3" /> |
| <field mask="0x4000000000000000" name="MaskVal4" /> |
| </bitmap> |
| |
| <cluster> |
| <domain>CHIP</domain> |
| <name>Test Cluster</name> |
| <code>0xFFF1FC05</code> |
| <define>TEST_CLUSTER</define> |
| <description>The Test Cluster is meant to validate the generated code</description> |
| <!-- Base data types --> |
| <attribute side="server" code="0x0000" define="BOOLEAN" type="BOOLEAN" writable="true" default="false" optional="false">boolean</attribute> |
| <attribute side="server" code="0x0001" define="BITMAP8" type="Bitmap8MaskMap" writable="true" default="0" optional="false">bitmap8</attribute> |
| <attribute side="server" code="0x0002" define="BITMAP16" type="Bitmap16MaskMap" writable="true" default="0" optional="false">bitmap16</attribute> |
| <attribute side="server" code="0x0003" define="BITMAP32" type="Bitmap32MaskMap" writable="true" default="0" optional="false">bitmap32</attribute> |
| <attribute side="server" code="0x0004" define="BITMAP64" type="Bitmap64MaskMap" writable="true" default="0" optional="false">bitmap64</attribute> |
| <attribute side="server" code="0x0005" define="INT8U" type="INT8U" writable="true" default="0" optional="false">int8u</attribute> |
| <attribute side="server" code="0x0006" define="INT16U" type="INT16U" writable="true" default="0" optional="false">int16u</attribute> |
| <attribute side="server" code="0x0007" define="INT24U" type="INT24U" writable="true" default="0" optional="false">int24u</attribute> |
| <attribute side="server" code="0x0008" define="INT32U" type="INT32U" writable="true" default="0" optional="false">int32u</attribute> |
| <attribute side="server" code="0x0009" define="INT40U" type="INT40U" writable="true" default="0" optional="false">int40u</attribute> |
| <attribute side="server" code="0x000A" define="INT48U" type="INT48U" writable="true" default="0" optional="false">int48u</attribute> |
| <attribute side="server" code="0x000B" define="INT56U" type="INT56U" writable="true" default="0" optional="false">int56u</attribute> |
| <attribute side="server" code="0x000C" define="INT64U" type="INT64U" writable="true" default="0" optional="false">int64u</attribute> |
| <attribute side="server" code="0x000D" define="INT8S" type="INT8S" writable="true" default="0" optional="false">int8s</attribute> |
| <attribute side="server" code="0x000E" define="INT16S" type="INT16S" writable="true" default="0" optional="false">int16s</attribute> |
| <attribute side="server" code="0x000F" define="INT24S" type="INT24S" writable="true" default="0" optional="false">int24s</attribute> |
| <attribute side="server" code="0x0010" define="INT32S" type="INT32S" writable="true" default="0" optional="false">int32s</attribute> |
| <attribute side="server" code="0x0011" define="INT40S" type="INT40S" writable="true" default="0" optional="false">int40s</attribute> |
| <attribute side="server" code="0x0012" define="INT48S" type="INT48S" writable="true" default="0" optional="false">int48s</attribute> |
| <attribute side="server" code="0x0013" define="INT56S" type="INT56S" writable="true" default="0" optional="false">int56s</attribute> |
| <attribute side="server" code="0x0014" define="INT64S" type="INT64S" writable="true" default="0" optional="false">int64s</attribute> |
| <attribute side="server" code="0x0015" define="ENUM8" type="ENUM8" writable="true" default="0" optional="false">enum8</attribute> |
| <attribute side="server" code="0x0016" define="ENUM16" type="ENUM16" writable="true" default="0" optional="false">enum16</attribute> |
| <attribute side="server" code="0x0017" define="FLOAT_SINGLE" type="SINGLE" writable="true" default="0" optional="false">float_single</attribute> |
| <attribute side="server" code="0x0018" define="FLOAT_DOUBLE" type="DOUBLE" writable="true" default="0" optional="false">float_double</attribute> |
| <attribute side="server" code="0x0019" define="OCTET_STRING" type="OCTET_STRING" length="10" writable="true" optional="false">octet_string</attribute> |
| <attribute side="server" code="0x001A" define="LIST" type="ARRAY" entryType="INT8U" length="10" writable="true" optional="false">list_int8u</attribute> |
| <attribute side="server" code="0x001B" define="LIST_OCTET_STRING" type="ARRAY" entryType="OCTET_STRING" length="254" writable="true" optional="false">list_octet_string</attribute> |
| <attribute side="server" code="0x001C" define="LIST_STRUCT_OCTET_STRING" type="ARRAY" entryType="TestListStructOctet" length="254" writable="true" optional="false">list_struct_octet_string</attribute> |
| <attribute side="server" code="0x001D" define="LONG_OCTET_STRING" type="LONG_OCTET_STRING" length="1000" writable="true" optional="false">long_octet_string</attribute> |
| <attribute side="server" code="0x001E" define="CHAR_STRING" type="CHAR_STRING" length="10" writable="true" optional="false">char_string</attribute> |
| <attribute side="server" code="0x001F" define="LONG_CHAR_STRING" type="LONG_CHAR_STRING" length="1000" writable="true" optional="false">long_char_string</attribute> |
| <attribute side="server" code="0x0020" define="EPOCH_US" type="EPOCH_US" writable="true" optional="false">epoch_us</attribute> |
| <attribute side="server" code="0x0021" define="EPOCH_S" type="EPOCH_S" writable="true" optional="false">epoch_s</attribute> |
| <attribute side="server" code="0x0022" define="TEST_VENDOR_ID" type="vendor_id" |
| writable="true" optional="false" default="0">vendor_id</attribute> |
| <attribute side="server" code="0x0023" define="LIST_OF_STRUCTS_WITH_OPTIONALS" type="ARRAY" entryType="NullablesAndOptionalsStruct" |
| writable="true" optional="false">list_nullables_and_optionals_struct</attribute> |
| <attribute side="server" code="0x0024" define="SIMPLE_ENUM" type="SimpleEnum" writable="true" optional="false">enum_attr</attribute> |
| <attribute side="server" code="0x0025" define="STRUCT" type="SimpleStruct" writable="true" optional="false">struct_attr</attribute> |
| <attribute side="server" code="0x0026" define="RANGE_RESTRICTED_INT8U" type="int8u" min="20" max="100" writable="true" optional="false" default="70">range_restricted_int8u</attribute> |
| <attribute side="server" code="0x0027" define="RANGE_RESTRICTED_INT8s" type="int8s" min="-40" max="50" writable="true" optional="false" default="-5">range_restricted_int8s</attribute> |
| <attribute side="server" code="0x0028" define="RANGE_RESTRICTED_INT16U" type="int16u" min="100" max="1000" writable="true" optional="false" default="200">range_restricted_int16u</attribute> |
| <attribute side="server" code="0x0029" define="RANGE_RESTRICTED_INT16s" type="int16s" min="-150" max="200" writable="true" optional="false" default="-5">range_restricted_int16s</attribute> |
| <attribute side="server" code="0x002A" define="LIST_LONG_OCTET_STRING" type="ARRAY" entryType="LONG_OCTET_STRING" length="1000" writable="true" optional="false">list_long_octet_string</attribute> |
| <attribute side="server" code="0x002B" define="LIST_FABRIC_SCOPED" type="ARRAY" entryType="TestFabricScoped" length="10" writable="true" optional="false">list_fabric_scoped</attribute> |
| <attribute side="server" code="0x0030" define="TIMED_WRITE_BOOLEAN" |
| type="BOOLEAN" writable="true" mustUseTimedWrite="true">timed_write_boolean</attribute> |
| <!-- Reading/writing the following two attributes will respond with a |
| general error or a cluster-specific error respectively --> |
| <attribute side="server" code="0x0031" define="GENERAL_ERROR_BOOLEAN" |
| type="BOOLEAN" writable="true" optional="false">general_error_boolean</attribute> |
| <attribute side="server" code="0x0032" define="CLUSTER_ERROR_BOOLEAN" |
| type="BOOLEAN" writable="true" optional="false">cluster_error_boolean</attribute> |
| |
| <attribute side="server" code="0x4000" define="NULLABLE_BOOLEAN" type="BOOLEAN" writable="true" default="false" isNullable="true" optional="false">nullable_boolean</attribute> |
| <attribute side="server" code="0x4001" define="NULLABLE_BITMAP8" type="Bitmap8MaskMap" writable="true" default="0" isNullable="true" optional="false">nullable_bitmap8</attribute> |
| <attribute side="server" code="0x4002" define="NULLABLE_BITMAP16" type="Bitmap16MaskMap" writable="true" default="0" isNullable="true" optional="false">nullable_bitmap16</attribute> |
| <attribute side="server" code="0x4003" define="NULLABLE_BITMAP32" type="Bitmap32MaskMap" writable="true" default="0" isNullable="true" optional="false">nullable_bitmap32</attribute> |
| <attribute side="server" code="0x4004" define="NULLABLE_BITMAP64" type="Bitmap64MaskMap" writable="true" default="0" isNullable="true" optional="false">nullable_bitmap64</attribute> |
| <attribute side="server" code="0x4005" define="NULLABLE_INT8U" type="INT8U" writable="true" default="0" isNullable="true" optional="false">nullable_int8u</attribute> |
| <attribute side="server" code="0x4006" define="NULLABLE_INT16U" type="INT16U" writable="true" default="0" isNullable="true" optional="false">nullable_int16u</attribute> |
| <attribute side="server" code="0x4007" define="NULLABLE_INT24U" type="INT24U" writable="true" default="0" isNullable="true" optional="false">nullable_int24u</attribute> |
| <attribute side="server" code="0x4008" define="NULLABLE_INT32U" type="INT32U" writable="true" default="0" isNullable="true" optional="false">nullable_int32u</attribute> |
| <attribute side="server" code="0x4009" define="NULLABLE_INT40U" type="INT40U" writable="true" default="0" isNullable="true" optional="false">nullable_int40u</attribute> |
| <attribute side="server" code="0x400A" define="NULLABLE_INT48U" type="INT48U" writable="true" default="0" isNullable="true" optional="false">nullable_int48u</attribute> |
| <attribute side="server" code="0x400B" define="NULLABLE_INT56U" type="INT56U" writable="true" default="0" isNullable="true" optional="false">nullable_int56u</attribute> |
| <attribute side="server" code="0x400C" define="NULLABLE_INT64U" type="INT64U" writable="true" default="0" isNullable="true" optional="false">nullable_int64u</attribute> |
| <attribute side="server" code="0x400D" define="NULLABLE_INT8S" type="INT8S" writable="true" default="0" isNullable="true" optional="false">nullable_int8s</attribute> |
| <attribute side="server" code="0x400E" define="NULLABLE_INT16S" type="INT16S" writable="true" default="0" isNullable="true" optional="false">nullable_int16s</attribute> |
| <attribute side="server" code="0x400F" define="NULLABLE_INT24S" type="INT24S" writable="true" default="0" isNullable="true" optional="false">nullable_int24s</attribute> |
| <attribute side="server" code="0x4010" define="NULLABLE_INT32S" type="INT32S" writable="true" default="0" isNullable="true" optional="false">nullable_int32s</attribute> |
| <attribute side="server" code="0x4011" define="NULLABLE_INT40S" type="INT40S" writable="true" default="0" isNullable="true" optional="false">nullable_int40s</attribute> |
| <attribute side="server" code="0x4012" define="NULLABLE_INT48S" type="INT48S" writable="true" default="0" isNullable="true" optional="false">nullable_int48s</attribute> |
| <attribute side="server" code="0x4013" define="NULLABLE_INT56S" type="INT56S" writable="true" default="0" isNullable="true" optional="false">nullable_int56s</attribute> |
| <attribute side="server" code="0x4014" define="NULLABLE_INT64S" type="INT64S" writable="true" default="0" isNullable="true" optional="false">nullable_int64s</attribute> |
| <attribute side="server" code="0x4015" define="NULLABLE_ENUM8" type="ENUM8" writable="true" default="0" isNullable="true" optional="false">nullable_enum8</attribute> |
| <attribute side="server" code="0x4016" define="NULLABLE_ENUM16" type="ENUM16" writable="true" default="0" isNullable="true" optional="false">nullable_enum16</attribute> |
| <attribute side="server" code="0x4017" define="NULLABLE_FLOAT_SINGLE" type="SINGLE" writable="true" default="0" isNullable="true" optional="false">nullable_float_single</attribute> |
| <attribute side="server" code="0x4018" define="NULLABLE_FLOAT_DOUBLE" type="DOUBLE" writable="true" default="0" isNullable="true" optional="false">nullable_float_double</attribute> |
| <attribute side="server" code="0x4019" define="NULLABLE_OCTET_STRING" type="OCTET_STRING" length="10" writable="true" isNullable="true" optional="false">nullable_octet_string</attribute> |
| <attribute side="server" code="0x401E" define="NULLABLE_CHAR_STRING" type="CHAR_STRING" length="10" writable="true" isNullable="true" optional="false">nullable_char_string</attribute> |
| <attribute side="server" code="0x4024" define="NULLABLE_SIMPLE_ENUM" type="SimpleEnum" writable="true" isNullable="true" optional="false">nullable_enum_attr</attribute> |
| <attribute side="server" code="0x4025" define="NULLABLE_STRUCT" type="SimpleStruct" writable="true" isNullable="true" optional="false">nullable_struct</attribute> |
| <attribute side="server" code="0x4026" define="NULLABLE_RANGE_RESTRICTED_INT8U" type="int8u" min="20" max="100" writable="true" isNullable="true" optional="false" default="70">nullable_range_restricted_int8u</attribute> |
| <attribute side="server" code="0x4027" define="NULLABLE_RANGE_RESTRICTED_INT8s" type="int8s" min="-40" max="50" writable="true" isNullable="true" optional="false" default="-5">nullable_range_restricted_int8s</attribute> |
| <attribute side="server" code="0x4028" define="NULLABLE_RANGE_RESTRICTED_INT16U" type="int16u" min="100" max="1000" writable="true" isNullable="true" optional="false" default="200">nullable_range_restricted_int16u</attribute> |
| <attribute side="server" code="0x4029" define="NULLABLE_RANGE_RESTRICTED_INT16S" type="int16s" min="-150" max="200" writable="true" isNullable="true" optional="false" default="-5">nullable_range_restricted_int16s</attribute> |
| |
| <!-- This attribute should not be enabled on the server side --> |
| <attribute side="server" code="0x00FF" define="UNSUPPORTED" type="BOOLEAN" writable="true" optional="true">unsupported</attribute> |
| |
| <!-- Test Commands --> |
| <command source="client" code="0x00" name="Test" optional="false"> |
| <description> |
| Simple command without any parameters and without a specific response |
| </description> |
| </command> |
| |
| <command source="client" code="0x01" name="TestNotHandled" optional="false"> |
| <description> |
| Simple command without any parameters and without a specific response not handled by the server |
| </description> |
| </command> |
| |
| <command source="client" code="0x02" name="TestSpecific" response="TestSpecificResponse" optional="false"> |
| <description> |
| Simple command without any parameters and with a specific response |
| </description> |
| </command> |
| |
| <command source="client" code="0x03" name="TestUnknownCommand" optional="true"> |
| <description> |
| Simple command that should not be added to the server. |
| </description> |
| </command> |
| |
| <command source="client" code="0x04" name="TestAddArguments" response="TestAddArgumentsResponse" optional="true"> |
| <description> |
| Command that takes two arguments and returns their sum. |
| </description> |
| <arg name="arg1" type="INT8U"/> |
| <arg name="arg2" type="INT8U"/> |
| </command> |
| |
| <command source="client" code="0x05" name="TestSimpleArgumentRequest" response="TestSimpleArgumentResponse" optional="true"> |
| <description> |
| Command that takes an argument which is bool |
| </description> |
| <arg name="arg1" type="BOOLEAN"/> |
| </command> |
| |
| <command source="client" code="0x06" name="TestStructArrayArgumentRequest" response="TestStructArrayArgumentResponse" optional="true"> |
| <description> |
| Command that takes various arguments that are arrays, including an array of structs which have a list member. |
| </description> |
| <arg name="arg1" type="NestedStructList" array="true"/> |
| <arg name="arg2" type="SimpleStruct" array="true"/> |
| <arg name="arg3" type="SimpleEnum" array="true"/> |
| <arg name="arg4" type="BOOLEAN" array="true"/> |
| <arg name="arg5" type="SimpleEnum"/> |
| <arg name="arg6" type="BOOLEAN"/> |
| </command> |
| |
| <command source="client" code="0x07" name="TestStructArgumentRequest" |
| response="BooleanResponse" optional="true"> |
| <description> |
| Command that takes an argument which is struct. The response echoes the |
| 'b' field of the single arg. |
| </description> |
| <arg name="arg1" type="SimpleStruct"/> |
| </command> |
| |
| <command source="client" code="0x08" name="TestNestedStructArgumentRequest" |
| response="BooleanResponse" optional="true"> |
| <description> |
| Command that takes an argument which is nested struct. The response |
| echoes the 'b' field of ar1.c. |
| </description> |
| <arg name="arg1" type="NestedStruct"/> |
| </command> |
| |
| <command source="client" code="0x09" name="TestListStructArgumentRequest" response="BooleanResponse" optional="true"> |
| <description> |
| Command that takes an argument which is a list of structs. The response |
| returns false if there is some struct in the list whose 'b' field is |
| false, and true otherwise (including if the list is empty). |
| </description> |
| <arg name="arg1" type="SimpleStruct" array="true"/> |
| </command> |
| |
| <command source="client" code="0x0A" name="TestListInt8UArgumentRequest" response="BooleanResponse" optional="true"> |
| <description> |
| Command that takes an argument which is a list of INT8U. The response |
| returns false if the list contains a 0 in it, true otherwise (including |
| if the list is empty). |
| </description> |
| <arg name="arg1" type="INT8U" array="true"/> |
| </command> |
| |
| <command source="client" code="0x0B" name="TestNestedStructListArgumentRequest" response="BooleanResponse" optional="true"> |
| <description> |
| Command that takes an argument which is a Nested Struct List. The |
| response returns false if there is some struct in arg1 (either directly |
| in arg1.c or in the arg1.d list) whose 'b' field is false, and true |
| otherwise. |
| </description> |
| <arg name="arg1" type="NestedStructList"/> |
| </command> |
| |
| <command source="client" code="0x0C" name="TestListNestedStructListArgumentRequest" response="BooleanResponse" optional="true"> |
| <description> |
| Command that takes an argument which is a list of Nested Struct List. |
| The response returns false if there is some struct in arg1 (either |
| directly in as the 'c' field of an entry 'd' list of an entry) whose 'b' |
| field is false, and true otherwise (including if the list is empty). |
| </description> |
| <arg name="arg1" type="NestedStructList" array="true"/> |
| </command> |
| |
| <command source="client" code="0x0D" name="TestListInt8UReverseRequest" response="TestListInt8UReverseResponse" optional="true"> |
| <description> |
| Command that takes an argument which is a list of INT8U and expects a |
| response that reverses the list. |
| </description> |
| <arg name="arg1" type="INT8U" array="true"/> |
| </command> |
| |
| <command source="client" code="0x0E" name="TestEnumsRequest" response="TestEnumsResponse" optional="true"> |
| <description> |
| Command that sends a vendor id and an enum. The server is expected to |
| echo them back. |
| </description> |
| <arg name="arg1" type="vendor_id"/> |
| <arg name="arg2" type="SimpleEnum"/> |
| </command> |
| |
| <command source="client" code="0x0F" name="TestNullableOptionalRequest" |
| optional="true" response="TestNullableOptionalResponse"> |
| <description> |
| Command that takes an argument which is nullable and optional. The |
| response returns a boolean indicating whether the argument was present, |
| if that's true a boolean indicating whether the argument was null, and |
| if that' false the argument it received. |
| </description> |
| <arg name="arg1" type="INT8U" optional="true" isNullable="true"/> |
| </command> |
| |
| <command source="client" code="0x10" name="TestComplexNullableOptionalRequest" |
| optional="true" response="TestComplexNullableOptionalResponse"> |
| <description> |
| Command that takes various arguments which can be nullable and/or optional. The |
| response returns information about which things were received and what |
| their state was. |
| </description> |
| <arg name="NullableInt" type="INT16U" isNullable="true"/> |
| <arg name="OptionalInt" type="INT16U" optional="true"/> |
| <arg name="NullableOptionalInt" type="INT16U" isNullable="true" |
| optional="true"/> |
| <arg name="NullableString" type="CHAR_STRING" isNullable="true"/> |
| <arg name="OptionalString" type="CHAR_STRING" optional="true"/> |
| <arg name="NullableOptionalString" type="CHAR_STRING" isNullable="true" |
| optional="true"/> |
| <arg name="NullableStruct" type="SimpleStruct" isNullable="true"/> |
| <arg name="OptionalStruct" type="SimpleStruct" optional="true"/> |
| <arg name="NullableOptionalStruct" type="SimpleStruct" isNullable="true" |
| optional="true"/> |
| <arg name="NullableList" type="SimpleEnum" isNullable="true" array="true"/> |
| <arg name="OptionalList" type="SimpleEnum" optional="true" array="true"/> |
| <arg name="NullableOptionalList" type="SimpleEnum" isNullable="true" |
| array="true" optional="true"/> |
| </command> |
| |
| <command source="client" code="0x11" name="SimpleStructEchoRequest" |
| response="SimpleStructResponse" optional="true"> |
| <description> |
| Command that takes an argument which is a struct. The response echoes |
| the struct back. |
| </description> |
| <arg name="arg1" type="SimpleStruct"/> |
| </command> |
| |
| <command source="client" code="0x12" name="TimedInvokeRequest" |
| mustUseTimedInvoke="true" optional="true"> |
| <description> |
| Command that just responds with a success status if the timed invoke |
| conditions are met. |
| </description> |
| </command> |
| |
| <command source="client" code="0x13" name="TestSimpleOptionalArgumentRequest" optional="true"> |
| <description> |
| Command that takes an optional argument which is bool. It responds with a success value if the optional is set to any value. |
| </description> |
| <arg name="arg1" type="BOOLEAN" optional="true"/> |
| </command> |
| |
| <command source="client" code="0x14" name="TestEmitTestEventRequest" |
| optional="true" response="TestEmitTestEventResponse"> |
| <description> |
| Command that takes identical arguments to the fields of the TestEvent and logs the TestEvent to the buffer. Command returns an event ID as the response. |
| </description> |
| <arg name="arg1" type="INT8U"/> |
| <arg name="arg2" type="SimpleEnum"/> |
| <arg name="arg3" type="BOOLEAN"/> |
| </command> |
| |
| <command source="client" code="0x15" name="TestEmitTestFabricScopedEventRequest" |
| optional="true" response="TestEmitTestFabricScopedEventResponse"> |
| <description> |
| Command that takes identical arguments to the fields of the TestFabricScopedEvent and logs the TestFabricScopedEvent to the buffer. Command returns an event ID as the response. |
| </description> |
| <arg name="arg1" type="INT8U"/> |
| </command> |
| |
| <command source="server" code="0x00" name="TestSpecificResponse" optional="true" disableDefaultResponse="true"> |
| <description> |
| Simple response for TestWithResponse with a simple return value |
| </description> |
| <arg name="returnValue" type="INT8U"/> |
| </command> |
| |
| <command source="server" code="0x01" name="TestAddArgumentsResponse" optional="true" disableDefaultResponse="true"> |
| <description> |
| Response for TestAddArguments that returns the sum. |
| </description> |
| <arg name="returnValue" type="INT8U"/> |
| </command> |
| |
| <command source="server" code="0x02" name="TestSimpleArgumentResponse" optional="true" disableDefaultResponse="true"> |
| <description> |
| Simple response for TestSimpleArgumentRequest with a simple return value |
| </description> |
| <arg name="returnValue" type="BOOLEAN"/> |
| </command> |
| |
| <command source="server" code="0x03" name="TestStructArrayArgumentResponse" optional="true" disableDefaultResponse="true"> |
| <description> |
| Response for TestStructArrayArgumentRequest with complicated return arguments |
| </description> |
| <arg name="arg1" type="NestedStructList" array="true"/> |
| <arg name="arg2" type="SimpleStruct" array="true"/> |
| <arg name="arg3" type="SimpleEnum" array="true"/> |
| <arg name="arg4" type="BOOLEAN" array="true"/> |
| <arg name="arg5" type="SimpleEnum"/> |
| <arg name="arg6" type="BOOLEAN"/> |
| </command> |
| |
| <command source="server" code="0x04" name="TestListInt8UReverseResponse" optional="true" disableDefaultResponse="true"> |
| <description> |
| Response that delivers the reversed list of uint8. |
| </description> |
| <arg name="arg1" type="INT8U" array="true"/> |
| </command> |
| |
| <command source="server" code="0x05" name="TestEnumsResponse" optional="true" disableDefaultResponse="true"> |
| <description> |
| Response that delivers a vendor id and an enum.. |
| </description> |
| <arg name="arg1" type="vendor_id"/> |
| <arg name="arg2" type="SimpleEnum"/> |
| </command> |
| |
| <command source="server" code="0x06" name="TestNullableOptionalResponse" optional="true" disableDefaultResponse="true"> |
| <description> |
| Delivers information about the argument TestNullableOptionalRequest had, |
| and the original value if there was one. |
| </description> |
| <arg name="wasPresent" type="BOOLEAN"/> |
| <arg name="wasNull" type="BOOLEAN" optional="true"/> |
| <arg name="value" type="INT8U" optional="true"/> |
| <arg name="originalValue" type="INT8U" optional="true" isNullable="true"/> |
| </command> |
| |
| <command source="server" code="0x07" name="TestComplexNullableOptionalResponse" optional="true" disableDefaultResponse="true"> |
| <description> |
| Delivers information about the arguments TestComplexNullableOptionalRequest had. |
| </description> |
| <arg name="NullableIntWasNull" type="BOOLEAN"/> |
| <arg name="NullableIntValue" type="INT16U" optional="true"/> |
| <arg name="OptionalIntWasPresent" type="BOOLEAN"/> |
| <arg name="OptionalIntValue" type="INT16U" optional="true"/> |
| <arg name="NullableOptionalIntWasPresent" type="BOOLEAN"/> |
| <arg name="NullableOptionalIntWasNull" type="BOOLEAN" optional="true"/> |
| <arg name="NullableOptionalIntValue" type="INT16U" optional="true"/> |
| <arg name="NullableStringWasNull" type="BOOLEAN"/> |
| <arg name="NullableStringValue" type="CHAR_STRING" optional="true"/> |
| <arg name="OptionalStringWasPresent" type="BOOLEAN"/> |
| <arg name="OptionalStringValue" type="CHAR_STRING" optional="true"/> |
| <arg name="NullableOptionalStringWasPresent" type="BOOLEAN"/> |
| <arg name="NullableOptionalStringWasNull" type="BOOLEAN" optional="true"/> |
| <arg name="NullableOptionalStringValue" type="CHAR_STRING" optional="true"/> |
| <arg name="NullableStructWasNull" type="BOOLEAN"/> |
| <arg name="NullableStructValue" type="SimpleStruct" optional="true"/> |
| <arg name="OptionalStructWasPresent" type="BOOLEAN"/> |
| <arg name="OptionalStructValue" type="SimpleStruct" optional="true"/> |
| <arg name="NullableOptionalStructWasPresent" type="BOOLEAN"/> |
| <arg name="NullableOptionalStructWasNull" type="BOOLEAN" optional="true"/> |
| <arg name="NullableOptionalStructValue" type="SimpleStruct" optional="true"/> |
| <arg name="NullableListWasNull" type="BOOLEAN"/> |
| <arg name="NullableListValue" type="SimpleEnum" array="true" |
| optional="true"/> |
| <arg name="OptionalListWasPresent" type="BOOLEAN"/> |
| <arg name="OptionalListValue" type="SimpleEnum" array="true" |
| optional="true"/> |
| <arg name="NullableOptionalListWasPresent" type="BOOLEAN"/> |
| <arg name="NullableOptionalListWasNull" type="BOOLEAN" optional="true"/> |
| <arg name="NullableOptionalListValue" type="SimpleEnum" array="true" |
| optional="true"/> |
| </command> |
| |
| <command source="server" code="0x08" name="BooleanResponse" optional="true" disableDefaultResponse="true"> |
| <description> |
| Delivers a single boolean argument. What the argument means depends on |
| what we're responding to. |
| </description> |
| <arg name="value" type="BOOLEAN"/> |
| </command> |
| |
| <command source="server" code="0x09" name="SimpleStructResponse" optional="true" disableDefaultResponse="true"> |
| <description> |
| Command that returns a single argument which is a struct. The contents |
| of the struct depend on what we are responding to. |
| </description> |
| <arg name="arg1" type="SimpleStruct"/> |
| </command> |
| |
| <command source="server" code="0x0A" name="TestEmitTestEventResponse" optional="true" disableDefaultResponse="true"> |
| <description> |
| Delivers the ID of an event in response to test command emitting fabric scoped events. |
| </description> |
| <arg name="value" type="INT64U"/> |
| </command> |
| |
| <command source="server" code="0x0B" name="TestEmitTestFabricScopedEventResponse" optional="true" disableDefaultResponse="true"> |
| <description> |
| Delivers the ID of an event in response to test command emitting fabric scope events. |
| </description> |
| <arg name="value" type="INT64U"/> |
| </command> |
| |
| <event code="0x0001" name="TestEvent" priority="info" side="server"> |
| <description>Example test event</description> |
| <field id="1" name="arg1" type="INT8U"/> |
| <field id="2" name="arg2" type="SimpleEnum"/> |
| <field id="3" name="arg3" type="BOOLEAN"/> |
| <field id="4" name="arg4" type="SimpleStruct"/> |
| <field id="5" name="arg5" type="SimpleStruct" array="true"/> |
| <field id="6" name="arg6" type="SimpleEnum" array="true"/> |
| </event> |
| |
| <event code="0x0002" name="TestFabricScopedEvent" priority="info" side="server" isFabricSensitive="true"> |
| <description>Example test event</description> |
| </event> |
| |
| </cluster> |
| </configurator> |