Skip to content

Commit

Permalink
Add TC feature definitions to General Commissioning Cluster XML files
Browse files Browse the repository at this point in the history
This commit introduces the "Terms and Conditions" (TC) feature
definitions to the General Commissioning Cluster XML data model files.
The changes include new attributes, commands, and commissioning errors
related to the TC feature.

Changes include:
- Added TC feature definition with bitmask.
- Introduced new commissioning errors related to TC:
  - RequiredTCNotAccepted
  - TCAcknowledgementsNotReceived
  - TCMinVersionNotMet
- Added new attributes for TC:
  - TCAcceptedVersion
  - TCMinRequiredVersion
  - TCAcknowledgements
  - TCAcknowledgementsRequired
- Added new commands for TC acknowledgements:
  - SetTCAcknowledgements
  - SetTCAcknowledgementsResponse

These changes only modify the XML files. A follow-up commit will
regenerate the necessary files.
  • Loading branch information
swan-amazon committed Jul 29, 2024
1 parent 275c8c9 commit 3be3d0e
Showing 1 changed file with 95 additions and 0 deletions.
95 changes: 95 additions & 0 deletions data_model/1.3/clusters/GeneralCommissioningCluster.xml
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,11 @@ Davis, CA 95616, USA
<clusterId id="0x0030" name="General Commissioning"/>
</clusterIds>
<classification hierarchy="base" role="utility" picsCode="CGEN" scope="Node"/>
<features>
<feature bit="0" code="TC" name="Terms and Conditions" summary="Supports Terms and Conditions acknowledgement">
<optionalConform/>
</feature>
</features>
<dataTypes>
<enum name="CommissioningErrorEnum">
<item value="0" name="OK" summary="No error">
Expand All @@ -80,6 +85,30 @@ Davis, CA 95616, USA
<item value="4" name="BusyWithOtherAdmin" summary="[[ref_BusyWithOtherAdmin]] Attempting to arm fail-safe or execute CommissioningComplete from a fabric different than the one associated with the current fail-safe context.">
<mandatoryConform/>
</item>
<item value="5" name="RequiredTCNotAccepted" summary="[[ref_RequiredTCNotAccepted]] One or more required TC features from the Enhanced Setup Flow were not accepted.">
<otherwiseConform>
<provisionalConform/>
<mandatoryConform>
<feature name="TC"/>
</mandatoryConform>
</otherwiseConform>
</item>
<item value="6" name="TCAcknowledgementsNotReceived" summary="[[ref_TCAcknowledgementsNotReceived]] No acknowledgements from the user for the TC features were received.">
<otherwiseConform>
<provisionalConform/>
<mandatoryConform>
<feature name="TC"/>
</mandatoryConform>
</otherwiseConform>
</item>
<item value="7" name="TCMinVersionNotMet" summary="[[ref_TCMinVersionNotMet]] The version of the TC features acknowledged by the user did not meet the minimum required version.">
<otherwiseConform>
<provisionalConform/>
<mandatoryConform>
<feature name="TC"/>
</mandatoryConform>
</otherwiseConform>
</item>
</enum>
<enum name="RegulatoryLocationTypeEnum">
<item value="0" name="Indoor" summary="Indoor only">
Expand Down Expand Up @@ -127,6 +156,46 @@ Davis, CA 95616, USA
<quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false" sourceAttribution="false" quieterReporting="false"/>
<mandatoryConform/>
</attribute>
<attribute id="0x0005" name="TCAcceptedVersion" type="uint16">
<access read="true" readPrivilege="admin"/>
<quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
<otherwiseConform>
<provisionalConform/>
<mandatoryConform>
<feature name="TC"/>
</mandatoryConform>
</otherwiseConform>
</attribute>
<attribute id="0x0006" name="TCMinRequiredVersion" type="uint16">
<access read="true" readPrivilege="admin"/>
<quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
<otherwiseConform>
<provisionalConform/>
<mandatoryConform>
<feature name="TC"/>
</mandatoryConform>
</otherwiseConform>
</attribute>
<attribute id="0x0007" name="TCAcknowledgements" type="map16">
<access read="true" readPrivilege="admin"/>
<quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
<otherwiseConform>
<provisionalConform/>
<mandatoryConform>
<feature name="TC"/>
</mandatoryConform>
</otherwiseConform>
</attribute>
<attribute id="0x0008" name="TCAcknowledgementsRequired" type="bool" default="true">
<access read="true" readPrivilege="admin"/>
<quality changeOmitted="false" nullable="false" scene="false" persistence="fixed" reportable="false"/>
<otherwiseConform>
<provisionalConform/>
<mandatoryConform>
<feature name="TC"/>
</mandatoryConform>
</otherwiseConform>
</attribute>
</attributes>
<commands>
<command id="0x00" name="ArmFailSafe" direction="commandToServer" response="ArmFailSafeResponse">
Expand Down Expand Up @@ -185,5 +254,31 @@ Davis, CA 95616, USA
<mandatoryConform/>
</field>
</command>
<command id="0x06" name="SetTCAcknowledgements" direction="commandToServer" response="SetTCAcknowledgementsResponse">
<access invokePrivilege="admin" fabricScoped="true"/>
<otherwiseConform>
<provisionalConform/>
<mandatoryConform>
<feature name="TC"/>
</mandatoryConform>
</otherwiseConform>
<field id="0" name="TCVersion" type="uint16">
<mandatoryConform/>
</field>
<field id="1" name="TCUserResponse" type="map16">
<mandatoryConform/>
</field>
</command>
<command id="0x05" name="SetTCAcknowledgementsResponse" direction="responseFromServer">
<otherwiseConform>
<provisionalConform/>
<mandatoryConform>
<feature name="TC"/>
</mandatoryConform>
</otherwiseConform>
<field id="0" name="ErrorCode" type="CommissioningErrorEnum" default="OK">
<mandatoryConform/>
</field>
</command>
</commands>
</cluster>

0 comments on commit 3be3d0e

Please sign in to comment.