15.1. [DKSF 48.5 IU] Управление IO-линиями

Интерфейс URL-encoded-команд в устройстве может быть использован для интеграции с web-приложениями без использования протокола SNMP. Через интерфейс URL-encoded-команд доступно управление IO-линиями.

Запрос состояния IO-линии

http://192.168.0.100/io.cgi?ioN

где:

N – номер линии, указан после ?io.

Запрос состояния всех IO-линий

http://192.168.0.100/io.cgi?io

Возвращаемые значения

Ошибка (неправильный формат запроса или неправильный номер IO-линии):

 io_result('error')

Успешное выполнение команды:

io_result('ok', 9, [1, 0, 0, 1]);

Первый аргумент: всегда 'ok' (при ошибке запроса — 'error').

Второй аргумент — бит-карта состояния IO-линий.

Третий аргумент — состояние 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» — выход:

http://192.168.0.100/io.cgi?ioN&mode=0

http://192.168.0.100/io.cgi?ioN&mode=1

где:

N  номер линии, указан после ?io.

Возвращаемые значения

Ошибка (неправильный формат запроса или неправильный номер IO-линии):

io_result('error')

Команда выполнена:

io_result('ok')

Авторизация

Для добавления в структуру URL-encoded-команды логина и пароля можно воспользоваться следующей схемой:

  • http://<имя_пользователя>:<пароль>@<хост>:<порт>/<URL‐путь>?<параметры>

где:

<имя_пользователя>:<пароль> — учетные данные для авторизации в web-интерфейсе устройства;

<хост>  IP-адрес устройства;

<порт>  порт HTTP-сервера;

<URL‐путь>?<параметры>  URL-encoded-команда.