View on GitHub

C02

SDK для работы с контроллером PERCo-C02

Запрос:

{
	"get":"state",
	"state":{}
}

Ответ:

{
	"answer":{"state":"ok"},
	"state":{
		"network":{
			"connections":1,
			"hosts":[
				{"10.17.1.130:60090 (reader_http_4_[0_0]_10.17.1.130:60090)":false},
				{"10.17.1.130":true}
			]
		},
		"exdev":[
			{"number":0, "physical_state":["normal","normal"],"unlock_state":["lock","lock"],"access_state":["control","control"]},
			{"number":1, "physical_state":["undefined","undefined"],"unlock_state":["undefined","undefined"],"access_state":["undefined","undefined"]}
		],
		"reader":[
			{"port":0,"type":"wiegand","model":"","serial":"","hw_version":"","fw_version":"","server_addr":"","server_port":"","link":"link_on"},
			{"port":1,"type":"wiegand","model":"","serial":"","hw_version":"","fw_version":"","server_addr":"","server_port":"","link":"link_on"},
			{"port":0,"type":"rs485_ir1x","model":"IR17","serial":"","hw_version":"12","fw_version":"92","server_addr":"","server_port":"","link":"link_on"},
			{"port":0,"type":"osdp","model":"30 [vendor code: 0]","serial":"3860213","hw_version":"31","fw_version":"0.59.0","server_addr":"","server_port":"","link":"link_on"},
			{"port":-1,"type":"web_server","model":"","serial":"","hw_version":"","fw_version":"","server_addr":"","server_port":"","link":"link_off"}
		],
		"pad":[
			{"number":0,"function":"pass","resource_number":0,"value":0},
			{"number":1,"function":"pass","resource_number":0,"value":0},
			{"number":4,"function":"remote_control_input","resource_number":0,"value":0},
			{"number":5,"function":"remote_control_input","resource_number":0,"value":0},
			{"number":6,"function":"remote_control_input","resource_number":0,"value":0},
			{"number":7,"function":"fire_alarm_input","resource_number":0,"value":0},
			{"number":2,"function":"remove card input","resource_number":0,"value":0},
			{"number":9,"function":"exdev_output","resource_number":0,"value":0},
			{"number":12,"function":"remote_control_output","resource_number":0,"value":0},
			{"number":13,"function":"remote_control_output","resource_number":0,"value":1},
			{"number":14,"function":"remote_control_output","resource_number":0,"value":0},
			{"number":10,"function":"exdev_output","resource_number":0,"value":0},
			{"number":8,"function":"exdev_output","resource_number":0,"value":0}
		],
		"cover_on":false,
		"ip_mode":false,
		"ip_default":false,
		"fault_supply":false,
		"fault_internal_supply":false,
		"value_suply":"12.1",
		"value_internal_suply":"",
		"disk_free":748544,
		"db_size":94208,
		"log_severity_level":0,
		"log_severity_level_as_sting":"debug"
	}
}
network — структура состояния сетевых подключений:

connections — общее кол-во сетевых подключений, int

hosts — массив структур, описывающих сетевое соединение:

10.17.1.130:60090:true — ip адрес и порт хоста. Для входящих подключений порт не указывается (10.17.1.130), для исходящих - адрес и порт удалённого хоста, строка : состояние связи, bool.

exdev — структура состояния ИУ:

number — номер, int

physical_state — набор физических состояний ИУ по направлениями, массив из 2-х строк:

`undefined` — не определено
`normal` — датчик прохода нормализован
`active` — датчик прохода активирован

unlock_state — набор состояний разблокировки ИУ по направлениями, массив из 2-х строк:

`undefined` — не определено
`lock` — ИУ заблокировано
`unlock` — ИУ разблокировано
`break` — ИУ взломано

access_state — набор РКД ИУ по направлениями, массив из 2-х строк:

`undefined` — не определено
`open` — РКД "Открыто"
`control` — РКД "Контроль"
reader — структура состояния считывателей:

port — порт подключения по шине RS-485/номер контролеера USB (и соответствующего ему разъёма), int

type — тип, строка:

`wiegand`, `Wiegand` — считыватели с интерфейсом Wiegand
`rs485` — считыватели, работающие по протоколу PERCo-RS-485 (IR03)
`rs485_ir1x` — считыватели, работающие по протоколу PERCo-RS-485 (IR13/IR19/IR29)
`osdp` — считыватели, работающие по протоколу OSDP
`barcode_usb***`, `Barcode-USB***` — сканеры штрих-кода/QR с интерфейсом USB
`trassir` — распознаватель номеров ТС Trassir
`web_server` — универсальный считыватель работающий по открытому протоколу через http(s)/ws(s)

model — модель (для некоторых считывателей), строка.

serial — серийный номер (для некоторых считывателей), строка.

hw_version — аппаратная версия (для некоторых считывателей), строка.

fw_version — версия встроенного ПО (для некоторых считывателей), строка.

server_addr — IP-адрес считывателя (trassir/web_server), строка.

server_port — порт считывателя (trassir/web_server), строка.

link — состояние связи со считывателем, строка:

`link_on` - связь есть
`link_off` - связь отсутствует
pad — структура состояния ФК:

number — номер, int

function — функция (назначение), строка:

`remote_control_input`, `remote control input` — вход ПДУ
`remove_card_input`, `remove card input` — вход изъятия карты
`fire_alarm_input`, `fire alarm input` — вход пожарной тревоги
`pass` — датчик двери / сигнал прохода
`input` — вход обычный
`remote_control_output`, `remote control output` — выход ПДУ
`remove_card_output`, `remove card output` — выход изъятия карты
`exdev_output`, `exdev output` — выход управления ИУ
`output` — выход обычный

resource_number — номер ресурса (ИУ / входа (выхода) обычного), int

value — значение - 0 / 1 (нормализован/активизирован), int

value_suply — напряжение питания, строка.
cover_on — true/false — вскрытие корпуса прибора, bool.
ip_mode — true/false — состояние перемычки IP Mode, bool.
ip_default — true/false — состояние перемычки IP Default, bool.
disk_free — 748544 — свободное место во встроенной памяти, байт, int.
db_size — 94208 — Размер файла БД, байт, int.
log_severity_level — 0 - 5 — уровень логирования, int.
log_severity_level_as_sting — уровень логирования строкой, строка:
`debug`, `normal`, `info`, `warning`, `error`, `critical`