14.1. [DKSF 53.3/203.3 IU] Управление IO-линиями
HTTP API в устройстве может быть использован для интеграции с web-приложениями без использования протокола SNMP. Через HTTP API доступно управление IO-линиями.
Запрос состояния IO-линии
http://192.168.0.100/io.cgi?ioN
где:
N — номер линии, указан после ?io.
Возвращаемые значения
Ошибка (неправильный формат запроса или неправильный номер IO-линии):
io_result('error')
Успешное выполнение команды:
io_result('ok', -1, 1, 339)
Первый аргумент: всегда 'ok' (при ошибке запроса — 'error').
Второй аргумент: всегда «-1», для расширения API в будущем.
Третий аргумент: текущее моментальное состояние IO-линии, включая состояние сброса.
Четвёртый аргумент: счетчик импульсов на данной IO-линии.
Имя JSON-P callback-а фиксированное, io_result(), и не может быть изменено в запросе.
Переключение линии (в режиме выхода)
Переключение в состояние «0» или «1»:
http://192.168.0.100/io.cgi?ioN=0
http://192.168.0.100/io.cgi?ioN=1
где:
N — номер линии, указан после ?io.
Переключение в альтернативное (инверсное) состояние.
http://192.168.0.100/io.cgi?ioN=f
где:
N — номер линии, указан после ?io.
Кратковременное переключение в инверсное состояние, т. е. выдача импульса.
http://192.168.0.100/io.cgi?ioN=f,5
где:
N — номер линии, указан после ?io.
Длительность в секундах задается после запятой.
Выбор режима работы IO-линии
Установка режима работы линии: «0» — вход, «1» — выход, «2» — выход логики:
http://192.168.0.100/io.cgi?ioN&mode=0
http://192.168.0.100/io.cgi?ioN&mode=1
http://192.168.0.100/io.cgi?ioN&mode=2
где:
N — номер линии, указан после ?io.
Возвращаемые значения
Ошибка (неправильный формат запроса или неправильный номер IO-линии):
io_result('error')
Команда выполнена:
io_result('ok')
Авторизация
Для добавления в структуру URL-encoded-команды логина и пароля можно воспользоваться следующей схемой:
http://<имя_пользователя>:<пароль>@<хост>:<порт>/<URL‐путь>?<параметры>
где:
<имя_пользователя>:<пароль> — учетные данные для авторизации в web-интерфейсе устройства;
<хост> — IP-адрес устройства;
<порт> — порт HTTP-сервера;
<URL‐путь>?<параметры> — URL-encoded-команда.