<?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="GranularityEnum" type="ENUM8">
    <cluster code="0x0038"/>
    <item name="NoTimeGranularity" value="0x00"/>	    
    <item name="MinutesGranularity" value="0x01"/>	    
    <item name="SecondsGranularity" value="0x02"/>	    
    <item name="MillisecondsGranularity" value="0x03"/>	    
    <item name="MicrosecondsGranularity" value="0x04"/>	    
  </enum>

  <enum name="TimeSourceEnum" type="ENUM8">
    <cluster code="0x0038"/>
    <item name="None" value="0x00"/>	    
    <item name="Unknown" value="0x01"/>	    
    <item name="Admin" value="0x02"/>	    
    <item name="NodeTimeCluster" value="0x03"/>	    
    <item name="NonFabricSntp" value="0x04"/>	    
    <item name="NonFabricNtp" value="0x05"/>	    
    <item name="FabricSntp" value="0x06"/>	    
    <item name="FabricNtp" value="0x07"/>	    
    <item name="MixedNtp" value="0x08"/>	    
    <item name="NonFabricSntpNts" value="0x09"/>	    
    <item name="NonFabricNtpNts" value="0x0A"/>	    
    <item name="FabricSntpNts" value="0x0B"/>	    
    <item name="FabricNtpNts" value="0x0C"/>	    
    <item name="MixedNtpNts" value="0x0D"/>	    
    <item name="CloudSource" value="0x0E"/>	    
    <item name="Ptp" value="0x0F"/>	    
    <item name="Gnss" value="0x10"/>	    
  </enum>

  <struct name="TimeZoneType">
    <cluster code="0x0038"/>
    <item fieldId="0" name="Offset" type="INT32S"/>
    <item fieldId="1" name="ValidAt" type="epoch_us"/>
    <item fieldId="2" name="Name" type="CHAR_STRING" length="64" optional="true"/>
  </struct>

  <struct name="DstOffsetType">
    <cluster code="0x0038"/>
    <item fieldId="0" name="Offset" type="INT32S"/>
    <item fieldId="1" name="ValidStarting" type="epoch_us"/>
    <item fieldId="2" name="ValidUntil" type="epoch_us"/>
  </struct>

  <cluster>
    <domain>General</domain>
    <name>Time Synchronization</name>
    <code>0x0038</code>
    <define>TIME_SYNCHRONIZATION_CLUSTER</define>
    <client init="false" tick="false">true</client>
    <server init="false" tick="false">true</server>
    <description>Accurate time is required for a number of reasons, including scheduling, display and validating
security materials.</description>
    <!-- Base data types -->
    <attribute side="server" code="0x0000" define="UTC_TIME" type="epoch_us" isNullable="true" optional="false">UTCTime</attribute>
    <attribute side="server" code="0x0001" define="GRANULARITY" type="GranularityEnum" default="0x00" optional="false">Granularity</attribute>
    <attribute side="server" code="0x0002" define="TIME_SOURCE" type="TimeSourceEnum" default="0x00" optional="true">TimeSource</attribute>
    <attribute side="server" code="0x0003" define="TRUSTED_TIME_NODE_ID" type="node_id" writable="true" isNullable="true" optional="false">
	<description>TrustedTimeNodeId</description>
	<access op="read" privilege="view"/>
	<access op="write" privilege="administer"/>
    </attribute>		
    <attribute side="server" code="0x0004" define="DEFAULT_NTP" type="CHAR_STRING" length="128" writable="true" isNullable="true" optional="true">
	<description>DefaultNtp</description>
	<access op="read" privilege="view"/>
	<access op="write" privilege="administer"/>
    </attribute>		
    <attribute side="server" code="0x0005" define="TIME_ZONE" type="ARRAY" entryType="TimeZoneType" min="1" max="2" writable="true" optional="true">
	<description>TimeZone</description>
	<access op="read" privilege="view"/>
	<access op="write" privilege="manage"/>
    </attribute>
    <attribute side="server" code="0x0006" define="DST_OFFSET" type="ARRAY" entryType="DstOffsetType" max="20" writable="true" optional="true">
	<description>DstOffset</description>
	<access op="read" privilege="view"/>
	<access op="write" privilege="manage"/>
    </attribute>		
    <attribute side="server" code="0x0007" define="LOCAL_TIME" type="epoch_us" default="0x00" isNullable="true" optional="true">LocalTime</attribute>
    <attribute side="server" code="0x0008" define="TIME_ZONE_DATABASE" type="boolean" default="0" optional="true">TimeZoneDatabase</attribute>
    <attribute side="server" code="0x0009" define="NTP_SERVER_PORT" type="INT16U" isNullable="true"  optional="true">NtpServerPort</attribute>

    <!-- Test Commands -->
    <command source="client" code="0x00" name="SetUtcTime" optional="false">
	<description>Upon receipt of this command, the server MAY update its UTCTime Attribute to match the time specified in the command</description>
	<arg name="UtcTime" type="epoch_us"/>	
	<arg name="Granularity" type="GranularityEnum"/>	
	<arg name="TimeSource" type="TimeSourceEnum" optional="true"/>
    </command>	
  </cluster>
</configurator>
