Перейти в хранилище документации
Обратиться в техническую поддержку
Для получения событий от видеокамер через WebSocket необходимо:
Подключиться к ws://[имя_пользователя]:[пароль]@[IP-адрес]:[порт]/[префикс]/events.
Отправить команду на подписку об оповещении о событиях с указанных видеокамер (см. Получение списка устройств телеметрии для источника видео) в формате JSON. Данная подписка позволяет получать все события, приведенные ниже в таблице.
{ "include": ["hosts/Server1/DeviceIpint.1/SourceEndpoint.video:0:0", "hosts/Server1/DeviceIpint.6/SourceEndpoint.video:0:0"], "exclude":[] }
include – оформить подписку;
exclude – исключить из оповещения.
В ответе будет JSON следующего вида:
{ objecs: [ {type: "devicestatechanged", name: "hosts/Server1/DeviceIpint.1", state: "signal restored"} ] }
Список типов событий и состояний видеокамеры:
Тип события | Описание | Состояния |
---|---|---|
devicestatechanged | Состояние видеокамеры | signal restored – подключен, сигнал восстановлен signal lost – сигнал потерян |
alert | Тревога | Нет состояний |
alert_state | Состояние тревоги | processing – тревога взята в обработку |
detector_event | Сработка детектора | Нет состояний |
camera_record_state | Состояние записи в архив | on – по видеокамере идет запись в архив off – видеокамера не привязана к архиву gray – видеокамера привязана к архиву, но запись не ведется |
Примечание
Если видеокамера отключена в ПК Интеллект X, то события через WebSocket от нее не поступают, в том числе событие signal lost.
Пример сообщения:
objects: [{name: "hosts/Server1/DeviceIpint.1/SourceEndpoint.video:0:0", state: "signal restored",…},…] 0: {name: "hosts/Server1/DeviceIpint.1/SourceEndpoint.video:0:0", state: "signal restored",…} name: "hosts/Server1/DeviceIpint.1/SourceEndpoint.video:0:0" state: "signal restored" type: "devicestatechanged"
Через WebSocket можно подписываться и отписываться на события об изменении конфигурации видеокамер с помощью команд track и untrack.
{ "track": ["hosts/Server/DeviceIpint.1"] }
{ "objects" : [ { "name" : "hosts/Server/DeviceIpint.1", "type" : "itemstatuschanged" } ] } { "objects" : [ { "source" : "hosts/Server/DeviceIpint.1/SourceEndpoint.video:0:0", "state" : "off", "type" : "camera_record_state" } ] } { "objects" : [ { "name" : "hosts/Server/DeviceIpint.1", "type" : "itemstatuschanged" } ] } { "objects" : [ { "source" : "hosts/Server/DeviceIpint.1/SourceEndpoint.video:0:0", "state" : "off", "type" : "camera_record_state" } ] }
{ "untrack": ["hosts/Server/DeviceIpint.1"] }
{ "objects" : [ { "source" : "hosts/Server/DeviceIpint.1/SourceEndpoint.video:0:0", "state" : "off", "type" : "camera_record_state" } ] } { "objects" : [ { "source" : "hosts/Server/DeviceIpint.1/SourceEndpoint.video:0:0", "state" : "off", "type" : "camera_record_state" } ] }