You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 4 Current »

Для получения событий от видеокамер через WebSocket необходимо:

  1. Подключиться к ws://[имя_пользователя]:[пароль]@[IP-адрес]:[порт]/[префикс]/events.

  2. Отправить команду на подписку об оповещении о событиях с указанных видеокамер (см. Получение списка устройств телеметрии для источника видео) в формате 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 – тревога взята в обработку
closed – тревога обработана
reaction – тревога инициирована

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.

  1. Пример подписки на получение событий об изменении конфигурации камеры:
    {
    "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"
          }
       ]
    }
    где в параметре type при изменении конфигурации будет отображаться значение itemstatuschanged.
  2. Пример отписки от получения событий об изменении конфигурации камеры:
    {
    "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"
          }
       ]
    }
  • No labels