<?xml version="1.0" encoding="UTF8" standalone="yes"?>
<KLAD id="RACS-1101_v2.01">
	<Format>
		<pad size="2" />
		<!-- Сертификаты -->
		<struct name="cert">
			<file name="ca"  size="2036" />
			<file name="cli" size="2036" />
		</struct>

		<!-- Настройки сети и MQTT -->
		<struct name="net">
			<!-- Настройки сети ethernet -->
			<struct name="eth">
				<ip name="host" />
				<ip name="mask" />
				<ip name="router" />
				<ip name="dns1" />
				<ip name="dns2" />
				<byte name="type" select="DYNAMIC|STATIC" />
				<byte name="dns1_ena" select="DISABLE|ENABLE" />
				<byte name="dns2_ena" select="DISABLE|ENABLE" />
        		<pad size="1" />
			</struct>
			
			<!-- Настройки MQTT -->
			<struct name="mqtt">
				<string name="host" size="100" />
				<word name="port" />
				<byte name="tls" select="MQTT/TCP|MQTT/TLS (свой сервер)|MQTT/TLS (Rubetek IOT)" />
				<pad size="1" />
				<string name="ident" size="16" />
				<string name="user" size="16" />
				<string name="pass" size="16" />
			</struct>

			<!-- ключ -->
			<file name="key" size="2048" />
		</struct>

		<!-- Основные настройки -->
		<struct name="main">
       		<pad size="4" />
			<!-- Настройки доступа -->
			<struct name="access">
				<byte name="unlock_time" min="1" max="60" />
				<byte name="not_granted_time" min="0" max="100" />
				<byte name="reader_relay[2]" select="Relay 1|Relay 2" />
				<byte name="reader_mode[2]" select= "Не проверять четность|Проверять четность|Обратный порядок байт + не проверять четность|Обратный порядок байт + проверять четность|Мигать красным светодиодом + не проверять четность|Мигать красным светодиодом + проверять четность|Мигать красным светодиодом + обратный порядок байт + не проверять четность|Мигать красным светодиодом + обратный порядок байт + проверять четность|Мигать зеленым светодиодом + не проверять четность|Мигать зеленым светодиодом + проверять четность|Мигать зеленым светодиодом + обратный порядок байт + не проверять четность|Мигать зеленым светодиодом + обратный порядок байт + проверять четность" />
				<byte name="relay_inversion[2]" select="DISABLE|ENABLE" />
				<byte name="relay_mode[2]" select="Обычный проход|Свободный проход|Проход заблокирован" />
				<byte name="led_off_time" min="0" max="255" />
				<byte name="led_on_time" min="1" max="255" />
			</struct>

			<!-- Настройки локальных серверов -->
			<struct name="local">
				<byte name="telnet_ena" select="DISABLE|ENABLE" />
				<byte name="ws_ena"     select="DISABLE|ENABLE" />
				<string name="user" size="16" />
				<string name="pass" size="16" />
			</struct>

			<struct name="uni_io">
				<byte name="mode[8]"    select="Вход|Вход + инверсия|Вход + pull up|Вход + pull up + инверсия|Выход|Выход + инверсия|Выход + pull up|Выход + pull up + инверсия" />
				<word name="filter[8]"  min="0" max="10000" />
				<byte name="func[16]"   select="Нет|Нет + инверсия|Кнопка открытия|Кнопка открытия + инверсия|Датчик открытия|Датчик открытия + инверсия|Датчик тревоги|Датчик тревоги + инверсия" />
				<byte name="index[16]"  select="Вход / Выход 1|Вход / Выход 2|Вход / Выход 3|Вход / Выход 4|Вход / Выход 5|Вход / Выход 6|Вход / Выход 7|Вход / Выход 8" />
				<byte name="param1[16]" min="0" max="255" />
				<byte name="param2[16]" min="0" max="255" />
				<word name="param3[16]" min="0" max="65535" />
				<word name="param4[16]" min="0" max="65535" />
			</struct>

			<struct name="alarm">
				<byte name="mode[2]"      select="Выключена|Отправлять сообщения|Отправлять сообщения + включать сирену|Включить сирену" />
				<byte name="out_index[2]" select="Выход 1|Выход 2|Выход 3|Выход 4|Выход 5|Выход 6|Выход 7|Выход 8" />
				<byte name="off_delay[2]" min="1" max="255" />
			</struct>
		</struct>

	</Format>

	<Tree name="СКУД Контроллер">
		<Desc>
			СКУД Контроллер.<br/>
		</Desc>

		<Group name="Сеть Ethernet">
			<Var var="net.eth.type" name="Тип IP" />
			<Var var="net.eth.host" name="IP-адрес" visible="net.eth.type=1" />
			<Var var="net.eth.mask" name="Маска сети" visible="net.eth.type=1" />
			<Var var="net.eth.router" name="Шлюз" visible="net.eth.type=1" />
			<Var var="net.eth.dns1_ena" name="DNS1" />
			<Var var="net.eth.dns1" name="DNS1 IP" visible="net.eth.dns1_ena=1" />
			<Var var="net.eth.dns2_ena" name="DNS2" />
			<Var var="net.eth.dns2" name="DNS2 IP" visible="net.eth.dns2_ena=1" />
		</Group>
		
		<Group name="MQTT">
			<Var var="net.mqtt.tls" name="Протокол" />
			<Var var="net.mqtt.host" name="Адрес сервера" />
			<Var var="net.mqtt.port" name="Порт сервера" />
			<Var var="net.mqtt.ident" name="Идентификатор клиента" />
			<Var var="net.mqtt.user" name="Пользователь" />
			<Var var="net.mqtt.pass" name="Пароль" />

			<Group name="Сертификаты" visible="net.mqtt.tls=1">
				<Var var="cert.ca"  name="Сертификат сервера"/>
				<Var var="cert.cli" name="Сертификат клиента"/>
				<Var var="net.key"  name="Приватный ключ клиента"/>
			</Group>

		</Group>

		<Group name="Локальные серверы">
			<Var var="main.local.telnet_ena" name="telnet" />
			<Var var="main.local.ws_ena"     name="websocket" />
			<Var var="main.local.user"       name="Пользователь" />
			<Var var="main.local.pass"       name="Пароль" />
		</Group>

		<Group name="Доступ">
			<Var var="main.access.unlock_time" name="Время открытия замков (сек)" />
			<Var var="main.access.not_granted_time" name="Время сигнализации отказа в доступе (0.1 сек)" />
    		<Group name="Светодиодная индикация в режиме ожидания">
	    		<Var var="main.access.led_off_time" name="Время выключения светодиода (сек)" />
    			<Var var="main.access.led_on_time" name="Время включения светодиода (0.1 сек)" />
    		</Group>
    		<Group name="Считыватель 1">
    			<Var var="main.access.reader_mode[0]"  name="Режим" />
    			<Var var="main.access.reader_relay[0]" name="Реле" />
    		</Group>
    		<Group name="Считыватель 2">
    			<Var var="main.access.reader_mode[1]"  name="Режим" />
    			<Var var="main.access.reader_relay[1]" name="Реле" />
    		</Group>
    		<Group name="Реле 1">
    			<Var var="main.access.relay_inversion[0]" name="Инверсия" />
    			<Var var="main.access.relay_mode[0]" name="Режим прохода" />
    		</Group>
    		<Group name="Реле 2">
    			<Var var="main.access.relay_inversion[1]" name="Инверсия" />
    			<Var var="main.access.relay_mode[1]" name="Режим прохода" />
    		</Group>
		</Group>

		<Group name="Универсальный входы / выходы">
    		<Group name="Вход / выход 1">
			<Var var="main.uni_io.mode[0]"   name="Режим" />
			<Var var="main.uni_io.filter[0]" name="Тау фильтра (мсек)" />
    		</Group>
    		<Group name="Вход / выход 2">
			<Var var="main.uni_io.mode[1]"   name="Режим" />
			<Var var="main.uni_io.filter[1]" name="Тау фильтра (мсек)" />
    		</Group>
    		<Group name="Вход / выход 3">
			<Var var="main.uni_io.mode[2]"   name="Режим" />
			<Var var="main.uni_io.filter[2]" name="Тау фильтра (мсек)" />
    		</Group>
    		<Group name="Вход / выход 4">
			<Var var="main.uni_io.mode[3]"   name="Режим" />
			<Var var="main.uni_io.filter[3]" name="Тау фильтра (мсек)" />
    		</Group>
    		<Group name="Вход / выход 5">
			<Var var="main.uni_io.mode[4]"   name="Режим" />
			<Var var="main.uni_io.filter[4]" name="Тау фильтра (мсек)" />
    		</Group>
    		<Group name="Вход / выход 6">
			<Var var="main.uni_io.mode[5]"   name="Режим" />
			<Var var="main.uni_io.filter[5]" name="Тау фильтра (мсек)" />
    		</Group>
    		<Group name="Вход / выход 7">
			<Var var="main.uni_io.mode[6]"   name="Режим" />
			<Var var="main.uni_io.filter[6]" name="Тау фильтра (мсек)" />
    		</Group>
    		<Group name="Вход / выход 8">
			<Var var="main.uni_io.mode[7]"   name="Режим" />
			<Var var="main.uni_io.filter[7]" name="Тау фильтра (мсек)" />
    		</Group>
		</Group>

		<Group name="Функции">
	    	<Group name="Функция 1">
    			<Var var="main.uni_io.func[0]"   name="Тип функции" />
    			<Var var="main.uni_io.index[0]"  name="Вход / выход" />
    			<Var var="main.uni_io.param1[0]" name="Параметр 1" />
    			<Var var="main.uni_io.param2[0]" name="Параметр 2" />
    			<Var var="main.uni_io.param3[0]" name="Параметр 3" />
    			<Var var="main.uni_io.param4[0]" name="Параметр 4" />
    		</Group>
	    	<Group name="Функция 2">
    			<Var var="main.uni_io.func[1]"   name="Тип функции" />
    			<Var var="main.uni_io.index[1]"  name="Вход / выход" />
    			<Var var="main.uni_io.param1[1]" name="Параметр 1" />
    			<Var var="main.uni_io.param2[1]" name="Параметр 2" />
    			<Var var="main.uni_io.param3[1]" name="Параметр 3" />
    			<Var var="main.uni_io.param4[1]" name="Параметр 4" />
    		</Group>
	    	<Group name="Функция 3">
    			<Var var="main.uni_io.func[2]"   name="Тип функции" />
    			<Var var="main.uni_io.index[2]"  name="Вход / выход" />
    			<Var var="main.uni_io.param1[2]" name="Параметр 1" />
    			<Var var="main.uni_io.param2[2]" name="Параметр 2" />
    			<Var var="main.uni_io.param3[2]" name="Параметр 3" />
    			<Var var="main.uni_io.param4[2]" name="Параметр 4" />
    		</Group>
	    	<Group name="Функция 4">
    			<Var var="main.uni_io.func[3]"   name="Тип функции" />
    			<Var var="main.uni_io.index[3]"  name="Вход / выход" />
    			<Var var="main.uni_io.param1[3]" name="Параметр 1" />
    			<Var var="main.uni_io.param2[3]" name="Параметр 2" />
    			<Var var="main.uni_io.param3[3]" name="Параметр 3" />
    			<Var var="main.uni_io.param4[3]" name="Параметр 4" />
    		</Group>
	    	<Group name="Функция 5">
    			<Var var="main.uni_io.func[4]"   name="Тип функции" />
    			<Var var="main.uni_io.index[4]"  name="Вход / выход" />
    			<Var var="main.uni_io.param1[4]" name="Параметр 1" />
    			<Var var="main.uni_io.param2[4]" name="Параметр 2" />
    			<Var var="main.uni_io.param3[4]" name="Параметр 3" />
    			<Var var="main.uni_io.param4[4]" name="Параметр 4" />
    		</Group>
	    	<Group name="Функция 6">
    			<Var var="main.uni_io.func[5]"   name="Тип функции" />
    			<Var var="main.uni_io.index[5]"  name="Вход / выход" />
    			<Var var="main.uni_io.param1[5]" name="Параметр 1" />
    			<Var var="main.uni_io.param2[5]" name="Параметр 2" />
    			<Var var="main.uni_io.param3[5]" name="Параметр 3" />
    			<Var var="main.uni_io.param4[5]" name="Параметр 4" />
    		</Group>
	    	<Group name="Функция 7">
    			<Var var="main.uni_io.func[6]"   name="Тип функции" />
    			<Var var="main.uni_io.index[6]"  name="Вход / выход" />
    			<Var var="main.uni_io.param1[6]" name="Параметр 1" />
    			<Var var="main.uni_io.param2[6]" name="Параметр 2" />
    			<Var var="main.uni_io.param3[6]" name="Параметр 3" />
    			<Var var="main.uni_io.param4[6]" name="Параметр 4" />
    		</Group>
	    	<Group name="Функция 8">
    			<Var var="main.uni_io.func[7]"   name="Тип функции" />
    			<Var var="main.uni_io.index[7]"  name="Вход / выход" />
    			<Var var="main.uni_io.param1[7]" name="Параметр 1" />
    			<Var var="main.uni_io.param2[7]" name="Параметр 2" />
    			<Var var="main.uni_io.param3[7]" name="Параметр 3" />
    			<Var var="main.uni_io.param4[7]" name="Параметр 4" />
    		</Group>
	    	<Group name="Функция 9">
    			<Var var="main.uni_io.func[8]"   name="Тип функции" />
    			<Var var="main.uni_io.index[8]"  name="Вход / выход" />
    			<Var var="main.uni_io.param1[8]" name="Параметр 1" />
    			<Var var="main.uni_io.param2[8]" name="Параметр 2" />
    			<Var var="main.uni_io.param3[8]" name="Параметр 3" />
    			<Var var="main.uni_io.param4[8]" name="Параметр 4" />
    		</Group>
	    	<Group name="Функция 10">
    			<Var var="main.uni_io.func[9]"   name="Тип функции" />
    			<Var var="main.uni_io.index[9]"  name="Вход / выход" />
    			<Var var="main.uni_io.param1[9]" name="Параметр 1" />
    			<Var var="main.uni_io.param2[9]" name="Параметр 2" />
    			<Var var="main.uni_io.param3[9]" name="Параметр 3" />
    			<Var var="main.uni_io.param4[9]" name="Параметр 4" />
    		</Group>
	    	<Group name="Функция 11">
    			<Var var="main.uni_io.func[10]"   name="Тип функции" />
    			<Var var="main.uni_io.index[10]"  name="Вход / выход" />
    			<Var var="main.uni_io.param1[10]" name="Параметр 1" />
    			<Var var="main.uni_io.param2[10]" name="Параметр 2" />
    			<Var var="main.uni_io.param3[10]" name="Параметр 3" />
    			<Var var="main.uni_io.param4[10]" name="Параметр 4" />
    		</Group>
	    	<Group name="Функция 12">
    			<Var var="main.uni_io.func[11]"   name="Тип функции" />
    			<Var var="main.uni_io.index[11]"  name="Вход / выход" />
    			<Var var="main.uni_io.param1[11]" name="Параметр 1" />
    			<Var var="main.uni_io.param2[11]" name="Параметр 2" />
    			<Var var="main.uni_io.param3[11]" name="Параметр 3" />
    			<Var var="main.uni_io.param4[11]" name="Параметр 4" />
    		</Group>
	    	<Group name="Функция 13">
    			<Var var="main.uni_io.func[12]"   name="Тип функции" />
    			<Var var="main.uni_io.index[12]"  name="Вход / выход" />
    			<Var var="main.uni_io.param1[12]" name="Параметр 1" />
    			<Var var="main.uni_io.param2[12]" name="Параметр 2" />
    			<Var var="main.uni_io.param3[12]" name="Параметр 3" />
    			<Var var="main.uni_io.param4[12]" name="Параметр 4" />
    		</Group>
	    	<Group name="Функция 14">
    			<Var var="main.uni_io.func[13]"   name="Тип функции" />
    			<Var var="main.uni_io.index[13]"  name="Вход / выход" />
    			<Var var="main.uni_io.param1[13]" name="Параметр 1" />
    			<Var var="main.uni_io.param2[13]" name="Параметр 2" />
    			<Var var="main.uni_io.param3[13]" name="Параметр 3" />
    			<Var var="main.uni_io.param4[13]" name="Параметр 4" />
    		</Group>
	    	<Group name="Функция 15">
    			<Var var="main.uni_io.func[14]"   name="Тип функции" />
    			<Var var="main.uni_io.index[14]"  name="Вход / выход" />
    			<Var var="main.uni_io.param1[14]" name="Параметр 1" />
    			<Var var="main.uni_io.param2[14]" name="Параметр 2" />
    			<Var var="main.uni_io.param3[14]" name="Параметр 3" />
    			<Var var="main.uni_io.param4[14]" name="Параметр 4" />
    		</Group>
	    	<Group name="Функция 16">
    			<Var var="main.uni_io.func[15]"   name="Тип функции" />
    			<Var var="main.uni_io.index[15]"  name="Вход / выход" />
    			<Var var="main.uni_io.param1[15]" name="Параметр 1" />
    			<Var var="main.uni_io.param2[15]" name="Параметр 2" />
    			<Var var="main.uni_io.param3[15]" name="Параметр 3" />
    			<Var var="main.uni_io.param4[15]" name="Параметр 4" />
    		</Group>
		</Group>
		<Group name="Тревога">
	    	<Group name="Тревога 1">
    			<Var var="main.alarm.mode[0]"      name="Режим" />
    			<Var var="main.alarm.out_index[0]" name="Выход" />
    			<Var var="main.alarm.off_delay[0]" name="Задержка выключения (сек)" />
    		</Group>
	    	<Group name="Тревога 2">
    			<Var var="main.alarm.mode[1]"      name="Режим" />
    			<Var var="main.alarm.out_index[1]" name="Выход" />
    			<Var var="main.alarm.off_delay[1]" name="Задержка выключения (сек)" />
    		</Group>
		</Group>
	</Tree>

</KLAD>
