Видеонаблюдение через интернет в веб-браузере

Обработка HTTP-уведомлений (HTTP notification).

Многие ip-камеры и видеосерверы можно заставить посылать короткие http-сообщения при:

  1. сработкам датчиков на дискретных входах (герконы, инфракрасный датчик движения, пожарный и т.п.);
  2. при срабатывании внутренного детектора движения камеры (если он настроен и включен).

В общем случае, http-сообщение может послать другое устройство и даже просто софт, но в рамках этой статьи мы рассмотрим http-notification в ip-камерах фирмы Axis и как эти уведомления можно использовать в AVReg-е.

Настройка камер Axis.

До нужной страницы настройки “родного” веб-интерфейса камеры добираемся так:

SetupEvent ConfigurationEvent Settings

AXIS 207 Network Camera version 4.40.1 :: Event Settings

Устанавливаем флажки:

  • «Event Enabled» - включаем события, обязательно;
  • «Input port» - будем ловить сработки на дискретном выходе;
  • «Manual trigger» - по команде или по нажатию кнопки Trigger On, полезно для тестирования;
  • «Send HTTP notification» - да, конечно, посылать http-сообщения.

Далее жмите кнопку «HTTP server settings» и настраивайте куда и каким образом отправлять http-сообщение: URL (обязательно), User/Password (обязательно для доступа к веб-серверу AVReg-а) и параметры Proxy (опционально).

AXIS 207 Network Camera version 4.40.1 :: HTTP server settings

URL используйте такой:

http://avreg-server-ip/avreg/on-http-notify.php

и обязательно заполните значения User/Password, предварительно создав пользователя в группе «Операторы» в веб-интерфейсе AVReg-а.

В этой же форме можете нажать кнопку TEST. Если всё нормально, то в /var/log/daemon.log вы увидите строку:

... avreg-site: axis@192.168.53.90: received foreign http notify:

Если не увидели, то разбирайтесь почему, анализируя /var/log/apache2/access.log.

Наш скрипт.

on-http-notify.php, получив http-уведомление от камеры, попытается по ip-адресу камеры установить номер камеры в системе AVReg. Если камера “родная” (прописана в конфигурации), то он определит её номер в php-переменной $CAM_NR.

Далее, он вызовет пользовательский php-скрипт, имя файла которого установлено в параметре «on-http-notify».

on-http-notify.php

/* include user script */
if (!
empty($conf['on-http-notify']))
  @include ($conf['on-http-notify']);

По-умолчанию, «on-http-notify» указывает на
«/usr/share/avreg-site/on-http-notify.inc.php».

Это наш скрипт, который позволяет только отображать «внешние» тревоги в локальном просмотрщике камер avreg-mon и только в одно-дисплейной конфигурации используя возможности не интерактивного управления avreg-mon.

Индикация внешней тревоги в avreg-mon

Ваш скрипт.

Не устраивает функциональность нашего скрипта, хотите чего-то большего, например, дополнительных уведомлений по XMPP(jabber)/ICQ или проиграть звуковой файл?

Нет проблем, копируйте наш скрипт «/usr/share/avreg-site/on-http-notify.inc.php» в каталог «/etc/avreg/scripts/». Пропишите абсолютный путь до файла в параметре «on-http-notify», например, так:

avreg.conf, секция avreg-site {}

on-http-notify = '/etc/avreg/scripts/on-http-notify.inc.php'

Ознакомьтесь с его кодом и поменяйте как вам нужно добавляя что вам нужно,

например, можно реализовать включение/выключение записи используя avregd HTTP CGI API
manual/applications/on-http-notify.txt · Последние изменения: 2011-03-04