<?xml version="1.0"?>
<!--
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.
-->
<configurator>
  <domain name="CHIP"/>

  <bitmap name="AlarmModeBitmap" type="bitmap8">
    <cluster code="0x0080"/>
    <field name="Visual" mask="0x1"/>
    <field name="Audible" mask="0x2"/>
  </bitmap>

  <bitmap name="SensorFaultBitmap" type="bitmap16">
    <cluster code="0x0080"/>
    <field name="GeneralFault" mask="0x1"/>
  </bitmap>

  <cluster apiMaturity="provisional">
    <domain>General</domain>
    <name>Boolean State Configuration</name>
    <code>0x0080</code>
    <define>BOOLEAN_STATE_CONFIGURATION_CLUSTER</define>
    <client tick="false" init="false">true</client>
    <server tick="false" init="false">true</server>
    <description>This cluster is used to configure a boolean sensor.</description>
    <globalAttribute side="either" code="0xFFFD" value="1"/>

    <features>
      <feature bit="0" code="VIS" name="Visual" summary="Supports visual alarms">
        <optionalConform/>
      </feature>
      <feature bit="1" code="AUD" name="Audible" summary="Supports audible alarms">
        <optionalConform/>
      </feature>
      <feature bit="2" code="SPRS" name="AlarmSuppress" summary="Supports ability to suppress or acknowledge alarms">
        <optionalConform>
          <orTerm>
            <feature name="VIS"/>
            <feature name="AUD"/>
          </orTerm>
        </optionalConform>
      </feature>
      <feature bit="3" code="SENSLVL" name="SensitivityLevel" summary="Supports ability to set sensor sensitivity">
        <optionalConform/>
      </feature>
    </features>

    <attribute side="server" code="0x0000" define="CURRENT_SENSITIVITY_LEVEL" type="int8u" isNullable="false" writable="true" optional="true">CurrentSensitivityLevel</attribute>
    <attribute side="server" code="0x0001" define="SUPPORTED_SENSITIVITY_LEVELS" type="int8u" isNullable="false" min="2" max="10" writable="false" optional="true">SupportedSensitivityLevels</attribute>
    <attribute side="server" code="0x0002" define="DEFAULT_SENSITIVITY_LEVEL" type="int8u" isNullable="false" writable="false" optional="true">DefaultSensitivityLevel</attribute>
    <attribute side="server" code="0x0003" define="ALARMS_ACTIVE" type="AlarmModeBitmap" isNullable="false" writable="false" optional="true">AlarmsActive</attribute>
    <attribute side="server" code="0x0004" define="ALARMS_SUPPRESSED" type="AlarmModeBitmap" isNullable="false" writable="false" optional="true">AlarmsSuppressed</attribute>
    <attribute side="server" code="0x0005" define="ALARMS_ENABLED" type="AlarmModeBitmap" isNullable="false" writable="false" optional="true">AlarmsEnabled</attribute>
    <attribute side="server" code="0x0006" define="ALARMS_SUPPORTED" type="AlarmModeBitmap" isNullable="false" writable="false" optional="true">AlarmsSupported</attribute>
    <attribute side="server" code="0x0007" define="SENSOR_FAULT" type="SensorFaultBitmap" isNullable="false" writable="false" default="0" optional="true">SensorFault</attribute>

    <command source="client" code="0x00" name="SuppressAlarm" optional="true">
      <description>This command is used to suppress the specified alarm mode.</description>
      <arg name="AlarmsToSuppress" type="AlarmModeBitmap"/>
    </command>

    <command source="client" code="0x01" name="EnableDisableAlarm" optional="true">
      <description>This command is used to enable or disable the specified alarm mode.</description>
      <arg name="AlarmsToEnableDisable" type="AlarmModeBitmap"/>
    </command>

    <event side="server" code="0x00" priority="info" name="AlarmsStateChanged" optional="true">
      <description>This event SHALL be generated when any bits in the AlarmsActive and/or AlarmsSuppressed attributes change.</description>
      <field id="0" name="AlarmsActive" type="AlarmModeBitmap"/>
      <field id="1" name="AlarmsSuppressed" type="AlarmModeBitmap" optional="true"/>
    </event>

    <event side="server" code="0x01" priority="info" name="SensorFault" optional="true">
      <description>This event SHALL be generated when the device registers or clears a fault.</description>
      <field id="0" name="SensorFault" type="SensorFaultBitmap"/>
    </event>
  </cluster>
</configurator>
