iRidium для Onvif
Набор инструментов для создания интерфейсов управления оборудованием и IP-камерами на базе протокола Onvif.
документация обновлена 01.01.2024
ONVIF (Open Network Video Interface Forum) — отраслевая международная организация, которая занимается разработкой стандартизованных протоколов для взаимодействия различного оборудования и программных средств, входящих в состав систем безопасности (IP-камер, IP-кодеров, видеорегистраторов, контроллеров доступа и т.п.).
iRidium для Onvif позволяет панели управления (iOS, Android, Windows, Mac) подключиться к IP-камере, поддерживающей протокол Onvif.
Подключение
Подключение к оборудованию (IP-камеры с поддержкой протокола Onvif) по локальной сети. Взаимодействие с оборудованием происходит посредством HTTP запросов.
Работа в iRidium
Создайте новый проект и добавьте драйвер Onvif с помощью сканера или ручным вводом данных.
Сканирование устройств
Сканер есть двух видов: сканер нетворка Scan Onvif Network (сканирует сеть и предлагает выбрать устройство среди всех найденных) и сканер конкретного устройства Scan Onvif Device (предлагает ввести IP, логин и пароль для поиска устройства).
Scan Onvif Network
- В созданном проекте нажмите клавишу Scan > Scan Onvif Network в окне Devices :

- Укажите необходимую камеру и её поддерживаемые функции для добавления в проект:

Если на камеру установлен пароль, то приложение предложит ввести логин и пароль для подключения к оборудованию.
Scan Onvif Device
- В созданном проекте нажмите клавишу Scan > Scan Onvif Device в окне Devices :

- Введите IP-адрес, логин и пароль камеры:

- Укажите необходимые подустройства (поддерживаемые функции) камеры для добавления в проект:

Если сканер не находит оборудование, то проверьте, что необходимый порт свободен на компьютере и повторите попытку отсканировать устройства.
Настройка драйвера
При сканировании сети, настройки драйвера заполняются автоматически:

- Log Level - уровень логирования;
- Host - IP-адрес камеры;
- Port - порт;
- Login / Password - логин и пароль для доступа к камере;
- '''Wait for Connect (ms) - время ожидания подключения;
- '''Wait for Data (ms) - время обратной связи от оборудования;
- SSL - тип шифрования;
- Service Path - путь до сервиса устройства (заполняется автоматически при сканировании).
Настройка подустройств
- Name - имя подустройства;
- Driver Type - тип драйвера (Onvif);
- Service Type - тип подустройства (Streaming Profile, PTZ);
- Service Path - путь до сервиса устройства (заполняется автоматически при сканировании);
- Profile Token - токен профиля (заполняется автоматически при сканировании).
Commands & Feedbacks
Каналы обратной связи (подустройство Streaming Profile ) имеют следующие дополнительные настройки:

- Name - имя фидбека;
- Request Type - тип фидбека (Stream URI, Snapshot URI);
- Refresh Interval (sec.) - интервал обновления потока / изображения (сек.);
- Stream Type - тип потокового видео (RTP-Unicast, RTP-Multicast);
- Protocol - протокол (UDP, TCP, RTSP, HTTP).
Устройства
При добавлении камеры с помощью сканера все настройки команд и фидбеков устанавливаются автоматически. Изменить можно только настройки фидбеков у подустройства Streaming Profile. Удалить добавленные команды или фидбеки подустройства нельзя. Управление происходит посредством отправки value в команду (Send number, Send string, send value from object).
Streaming Profile
Feedbacks
| Фидбек | Ожидаемые значения | Описание |
|---|---|---|
| Stream URI | Ссылка на потоковую передачу изображения | Фидбек представляет собой ссылку на потоковую передачу изображения Можно использовать как изображение для графического элемента в студии, чтобы получить на нём видеопоток от камеры в реальном времени |
| Snapshot URI | Ссылка на обновляемую картинку | Фидбек представляет собой ссылку на периодически обновляемое изображение Можно использовать как изображение для графического элемента в студии, чтобы получить картинку (snapshot) с камеры на этом графическом элементе |
PTZ
Commands
| Команда | Входные значения | Описание |
|---|---|---|
| PTZ Continuous | Value | Изменение, относительно текущего положения камеры, на параметры, заранее указанные через каналы PTZ X, PTZ Y, PTZ Zoom |
| PTZ Absolute | Value | Изменение текущего положения камеры на конкретные параметры, заранее указанные через каналы PTZ X, PTZ Y, PTZ Zoom |
| PTZ X | Value (float) | Установить координату X для отправки команды PTZ Continuous или PTZ Absolute |
| PTZ Y | Value (float) | Установить координату Y для отправки команды PTZ Continuous или PTZ Absolute |
| PTZ Zoom | Value (float) | Установить величину приближения/отдаления камеры для отправки команд PTZ Continuous или PTZ Absolute |
| PTZ X Speed | Value (float) | Установить скорость перемещения по оси X для команды PTZ Absolute |
| PTZ Y Speed | Value (float) | Установить скорость перемещения по оси Y для команды PTZ Absolute |
| PTZ Zoom Speed | Value (float) | Установить скорость изменения приближения/отдаления для команды PTZ Absolute |
| PTZ Stop | Value | Останавливает изменение положения, но только после отправки команды PTZ Continuous Без отправки команды камера будет изменять положение без остановки |
| PTZ Go Home | Value | Смена положения камеры на домашние координаты Сами координаты задаются через приложение Onvif Device Manager |
Feedbacks
| Фидбек | Ожидаемые значения | Описание |
|---|---|---|
| PTZ X | Value (float) | Текущее значение параметра PTZ X |
| PTZ Y | Value (float) | Текущее значение параметра PTZ Y |
| PTZ Zoom | Value (float) | Текущее значение параметра PTZ Zoom |
| PTZ X Speed | Value (float) | Текущее значение параметра PTZ X Speed |
| PTZ Y Speed | Value (float) | Текущее значение параметра PTZ Y Speed |
| PTZ Zoom Speed | Value (float) | Текущее значение параметра PTZ Zoom Speed |
Настройка команд и фидбеков

Для управления оборудованием настройте команды (Commands) и каналы обратной связи (Feedbacks). Чтобы отправить команду, перетяните ее на графический элемент и укажите значение (Value), которое необходимо отправить. Чтобы отобразить значение с канала обратной связи, перетащите Feedback на графический элемент, и укажите, каким образом вывести значение (Value).
Подробнее о работе с графическими элементами написано в статье "Типы графических элементов".