<?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"/>
  <enum name="HardwareFaultType" type="ENUM8">
    <cluster code="0x0033"/>
    <item name="Unspecified" value="0x00"/>
    <item name="Radio" value="0x01"/>
    <item name="Sensor" value="0x02"/>
    <item name="ResettableOverTemp" value="0x03"/>
    <item name="NonResettableOverTemp" value="0x04"/>
    <item name="PowerSource" value="0x05"/>
    <item name="VisualDisplayFault" value="0x06"/>
    <item name="AudioOutputFault" value="0x07"/>
    <item name="UserInterfaceFault" value="0x08"/>
    <item name="NonVolatileMemoryError" value="0x09"/>
    <item name="TamperDetected" value="0x0A"/>
  </enum>
  <enum name="RadioFaultType" type="ENUM8">
    <cluster code="0x0033"/>
    <item name="Unspecified" value="0x00"/>
    <item name="WiFiFault" value="0x01"/>
    <item name="CellularFault" value="0x02"/>
    <item name="ThreadFault" value="0x03"/>
    <item name="NFCFault" value="0x04"/>
    <item name="BLEFault" value="0x05"/>
    <item name="EthernetFault" value="0x06"/>    
  </enum>
  <enum name="NetworkFaultType" type="ENUM8">
    <cluster code="0x0033"/>
    <item name="Unspecified" value="0x00"/>
    <item name="HardwareFailure" value="0x01"/>
    <item name="NetworkJammed" value="0x02"/>
    <item name="ConnectionFailed" value="0x03"/>
  </enum>
  <enum name="BootReasonType" type="ENUM8">
    <cluster code="0x0033"/>
    <item name="Unspecified" value="0x00"/>
    <item name="PowerOnReboot" value="0x01"/>
    <item name="BrownOutReset" value="0x02"/>
    <item name="SoftwareWatchdogReset" value="0x03"/>
    <item name="HardwareWatchdogReset" value="0x04"/>
    <item name="SoftwareUpdateCompleted" value="0x05"/>
    <item name="SoftwareReset" value="0x06"/>
  </enum>  
  <enum name="InterfaceType" type="ENUM8">
    <cluster code="0x0033"/>
    <item name="Unspecified" value="0x00"/>
    <item name="WiFi" value="0x01"/>
    <item name="Ethernet" value="0x02"/>
    <item name="Cellular" value="0x03"/>
    <item name="Thread" value="0x04"/>
  </enum>
  <struct name="NetworkInterfaceType">
    <cluster code="0x0033"/>
    <item name="Name" type="CHAR_STRING" length="32"/>
    <item name="IsOperational" type="BOOLEAN"/>
    <item name="OffPremiseServicesReachableIPv4" type="BOOLEAN" isNullable="true"/>
    <item name="OffPremiseServicesReachableIPv6" type="BOOLEAN" isNullable="true"/>
    <!-- TODO(#14075): HWADR not supported yet -->
    <item name="HardwareAddress" type="OCTET_STRING" length="8"/>
    <item name="IPv4Addresses" type="OCTET_STRING" array="true"/>
    <item name="IPv6Addresses" type="OCTET_STRING" array="true"/>
    <item name="Type" type="InterfaceType"/>
  </struct>
  <cluster>
    <domain>General</domain>
    <name>General Diagnostics</name>
    <code>0x0033</code>
    <define>GENERAL_DIAGNOSTICS_CLUSTER</define>
    <description>The General Diagnostics Cluster, along with other diagnostics clusters, provide a means to acquire standardized diagnostics metrics that MAY be used by a Node to assist a user or Administrative Node in diagnosing potential problems.</description>
    <attribute side="server" code="0x00" define="NETWORK_INTERFACES" type="ARRAY" entryType="NetworkInterfaceType" length="254" writable="false" optional="false">NetworkInterfaces</attribute>
    <attribute side="server" code="0x01" define="REBOOT_COUNT" type="INT16U" min="0x0000" max="0xFFFF" writable="false" default="0x0000" optional="false">RebootCount</attribute>
    <attribute side="server" code="0x02" define="UP_TIME" type="INT64U" min="0x0000000000000000" max="0xFFFFFFFFFFFFFFFF" writable="false" default="0x0000000000000000" optional="true">UpTime</attribute>
    <attribute side="server" code="0x03" define="TOTAL_OPERATIONAL_HOURS" type="INT32U" min="0x00000000" max="0xFFFFFFFF" writable="false" default="0x00000000" optional="true">TotalOperationalHours</attribute>
    <attribute side="server" code="0x04" define="BOOT_REASONS" type="ENUM8" writable="false" optional="true">BootReasons</attribute>
    <attribute side="server" code="0x05" define="ACTIVE_HARDWARE_FAULTS" type="ARRAY" entryType="ENUM8" writable="false" optional="true">ActiveHardwareFaults</attribute>
    <attribute side="server" code="0x06" define="ACTIVE_RADIO_FAULTS" type="ARRAY" entryType="ENUM8" writable="false" optional="true">ActiveRadioFaults</attribute>
    <attribute side="server" code="0x07" define="ACTIVE_NETWORK_FAULTS" type="ARRAY" entryType="ENUM8" writable="false" optional="true">ActiveNetworkFaults</attribute>
    <attribute side="server" code="0x08" define="TEST_EVENT_TRIGGERS_ENABLED" type="BOOLEAN" writable="false" optional="false">TestEventTriggersEnabled</attribute>

    <command source="client" code="0x00" name="TestEventTrigger" optional="false">
      <description>Provide a means for certification tests to trigger some test-plan-specific events</description>
      <arg name="EnableKey" type="OCTET_STRING" length="16"/>
      <arg name="EventTrigger" type="INT64U"/>
      <access op="invoke" role="manage"/>
    </command>

    <event side="server" code="0x00" name="HardwareFaultChange" priority="critical" optional="true">
      <description>Indicate a change in the set of hardware faults currently detected by the Node.</description>
      <field id="0" name="Current" type="HardwareFaultType" array="true"/>
      <field id="1" name="Previous" type="HardwareFaultType" array="true"/>
    </event>
    <event side="server" code="0x01" name="RadioFaultChange" priority="critical" optional="true">
      <description>Indicate a change in the set of radio faults currently detected by the Node.</description>
      <field id="0" name="Current" type="RadioFaultType" array="true"/>
      <field id="1" name="Previous" type="RadioFaultType" array="true"/>
    </event>
    <event side="server" code="0x02" name="NetworkFaultChange" priority="critical" optional="true">
      <description>Indicate a change in the set of network faults currently detected by the Node.</description>
      <field id="0" name="Current" type="NetworkFaultType" array="true"/>
      <field id="1" name="Previous" type="NetworkFaultType" array="true"/>
    </event>
    <event side="server" code="0x03" name="BootReason" priority="critical" optional="false">
      <description>Indicate the reason that caused the device to start-up.</description>
      <field id="0" name="BootReason" type="BootReasonType"/>
    </event>               
  </cluster>
</configurator>
