VitMLXP Gateway Management, версия Enterprise

Материал из VIT company
Перейти к навигации Перейти к поиску

O VitMLXP Gateway

После установки модуля, VIT Recognition Server доступен для настройки в приложении Milestone Management Application в разделе Surveillance Server – Advanced Configuration - MIP Plug-ins – VIT Analytic Service. Для настройки сервера распознавания VIT не нужны дополнительные программы.


Модуль VitMLXP Gateway позволяет задавать логику обработки событий, происходящих во время роботы системы видеонаблюдения. Так, к примеру, с помощью VitMLXP Gateway возможна фильтрация событий и тревог для последующей обработки, подключение внешних источников данных, управление списками номеров транспортных средств и многое другое.


Список объектов для работы с модулем VitMLXP Gateway находится в узле Модуль VitMLXP Gateway дерева объектов Milestone Management Application.


Доступны следующие объекты:

  • Subscribe (Подписка);
  • Notify Sources (Источники нотификаций);
  1. Channels (Каналы);
  • Filters (Фильтры);
  • Scripts (Скрипты);
  • SOAP-Service (SOAP-Сервис);
  • Handlers (Обработчики).

В данном документе представлено описание данных объектов, их назначение и основные принципы работы.

Subscribe(Подписка)

Подписка представляет собой механизм, с помощью которого задаются события, поступающие в VitMLXP Gateway.

Определение параметров подписки

Для определения параметров подписки необходимо выполнить следующие шаги (см. рис. VitMLXP Gateway. Определение параметров подписки):

  1. левой кнопкой мыши кликнуть по пункту Subscribe (Подписка) и появившемся окне Subscribe указать параметры подписки:
  1. отметить флагами те типы событий, которые должны поступать в VitMLXP Gateway;
  2. при необходимости указать дополнительные параметры фильтрации для каждого типа событий;
  1. нажать кнопку Apply (Применить) для сохранения настроек.


VitMLXP Gateway. Определение параметров подписки


Пример

Пусть на момент начала настройки параметры подписки имеют следующий вид (см. рис. VitMLXP Gateway. Начальное значение параметров подписки):

  • Received Event, Received Analytics Event, Received Alarm, Received Notify, Received Message – не заданы;
  • дополнительные параметры фильтрации для указанных типов подписок - не заданы.


VitMLXP Gateway. Начальное значение параметров подписки


Необходимо задать следующие параметры подписки:

  • Тип события – Received Alarms;
  • Дополнительные параметры подписки на событие – события с наивысшим приоритетом High по камере 1 и 2.

Возможный вариант настройки описан ниже.

Шаг 1

Определение уровня тревоги с наивысшим приоритетом:

  • два раза кликните левой кнопкой мыши по пункту Тревоги (Alarms) в окне Site Navigation (Навигация по сайту);
  • левой кнопкой кликните по пункту Настройки данных оповещения (Alarm Data Settings) в Site Navigation (Навигация по сайту);
  • в появившемся окне Configuration (Настройки) перейдите на вкладку Alarm Data Levels (Уровни данных оповещения);
  • посмотрите и запомните Уровень (Level) тревоги с приоритетом High.

Результат выполнения первого шага представлен на рисунке VitMLXP Gateway. Шаг 1 настройки параметров подписки.


VitMLXP Gateway. Шаг 1 настройки параметров подписки


Шаг 2

Настройка параметров подписки в VitMLXP Gateway:

  • левой кнопкой мыши кликните по пункту Subscribe (Подписка) в окне Site Navigation (Навигация по сайту);
  • отметьте «да» (флаг стоит) Received Alarms (Принимать Alarms);
  • перейдите на вкладку Filter at Alarm (Фильтр для Alarm);
  • нажмите кнопку Create Filter (Создать фильтр);
  • создайте логическую конструкцию типа Priority = 1 & (Source Name = Camera 1 | Source Name = Camera 2);
  • нажмите кнопку Apply (Применить) для сохранения фильтра.

Результат выполнения второго шага представлен на рисунке VitMLXP Gateway. Шаг 2 настройки параметров подписки.


VitMLXP Gateway. Шаг 2 настройки параметров подписки


Настройка подписки завершена. Теперь в VitMLXP Gateway будут поступать тревоги уровня High, сгенерированные по камере 1 или 2.

Notify Sources (Источники нотификаций)

Notify (нотификация) представляет собой внешнее по отношению к системе Milestone событие - событие в базе данных. Notify sources (Источники нотификаций) позволяют задать параметры базы данных, в которой происходит событие, а Channels (Каналы) - непосредственные параметры нотификаций.

Создание Notify source (Источника нотификаций)

Для создания Notify source (Источника нотификаций) необходимо выполнить следующие шаги (см. рис. VitMLXP Gateway. Создание Notify source):

  1. правой кнопкой мыши кликнуть по пункту Notify sources (Источники нотификаций) и в контекстном меню выбрать Создать (Create New);
  2. в окне Notify source (Источник нотификаций) указать параметры базы источника нотификаций:
  1. Received notifies (Принимать notifies) – отметка в этом поле свидетельствует о том, что источник доступен для использования;
  2. Name – name of the Notify source;
  3. Имя (Name) – название источника нотификаций;
  4. ID (ID) – идентификационный номер источника нотификаций, генерируется автоматически при его создании; не редактируемое поле;
  5. DBMS (СУБД) – тип БД. Для подключения доступны следующие типы СУБД:
    1. SQL server;
    2. PostgreSQL;
  6. Host (Хост) - IP адрес компьютера, на котором находится база данных. В том случае, если база данных находится на том же компьютере, что и МА, нужно указать IP адрес этого компьютера;
  7. Port (Порт) - порт для подключения;
  8. Data base (База данных) – имя базы данных, которую необходимо использовать в качестве источника нотификаций;
  9. User (Пользователь) - логин, используемый для подключения к указанной базе данных;
  10. Password (Пароль) – пароль, используемый для подключения к указанной базе данных;
  1. нажать кнопку ОK для сохранения введенных данных.


VitMLXP Gateway. Создание Notify source


Изменение параметров Notify source (Источника нотификаций)

Для того, что бы внести изменения в данные об Источнике нотификаций, необходимо два раза кликнуть на соответствующей строке в таблице Источников нотификаций. В появившемся окне Источник нотификаций(Notify source) необходимо указать новые параметры (см. рис. VitMLXP Gateway. Изменение Notify source).


VitMLXP Gateway. Изменение Notify source


Удаление Notify source (Источника нотификаций)

Для удаления Источника нотификаций необходимо выполнить следующие шаги:

  1. правой кнопкой мыши кликнуть по названию необходимого Источника нотификаций и в контекстном меню выбрать Удалить (Delete) (см. рис. VitMLXP Gateway. Удаление Notify source);
  2. в появившемся окне подтвердить удаление выбранного Источника нотификаций, нажав кнопку Да (Yes) (см. рис. VitMLXP Gateway. Подтверждение удаления Notify source).


VitMLXP Gateway. Удаление Notify source


VitMLXP Gateway. Подтверждение удаления Notify source


Channels (Каналы)

Каждый канал связан с одним Источником нотификаций. Для того, что бы посмотреть данные по каналу, необходимо выбрать его название дереве каналов в окне Каналы (Channels).

Создание нового канала

Для создания канала необходимо выполнить следующие шаги:

  1. правой кнопкой мыши кликнуть по пункту Каналы (Channels) того Источника нотификаций, с которым должен быть связан будущий канал и в контекстном меню выбрать Создать (Create New) (см. рис. VitMLXP Gateway. Создание нового канала);
  2. в окне Канал (Channel) необходимо ввести данные нового канала:
  1. Received notify (Принимать notify) – отметка в этом поле свидетельствует о том, что источник доступен для использования;
  2. Имя (Name) – название источника нотификаций;
  3. Канал (Channel) – канал, на который необходимо подписаться;
  4. Реципиент (Recipient) – имя, с которым будет осуществляться подписка на канал. Задается пользователем самостоятельно;
  5. Пароль (Passphrase) - пароль, с которым будет осуществляться подписка на канал. Задается пользователем самостоятельно.


VitMLXP Gateway. Создание нового канала


Изменение параметров канала

Для того, что бы внести изменения в данные о канале Источника нотификаций, необходимо два раза кликнуть на соответствующей строке в таблице каналов. В появившемся окне необходимо указать параметры канала.

Удаление канала

Для удаления канала необходимо выполнить следующие шаги:

  • правой кнопкой мыши кликнуть по названию необходимого канала и в контекстном меню выбрать Удалить (Delete);
  • в появившемся окне подтвердить удаление выбранного канала, нажав кнопку Да (Yes).

Filters (Фильтры)

Фильтры представляет собой механизм, с помощью которого задаются события, обрабатываемые тем или иным скриптом.

Внимание!


Следует быть внимательным в использовании параметров Фильтр и Подписка. Подписка определяет, какие события будут поступать в VitMLXP Gateway, а Фильтр – какие из поступивших событий следует обрабатывать скриптом. В том случае, если в Подписке указано, что VitMLXP Gateway должен получать и обрабатывать исключительно Тревоги, а в разделе фильтров указать, что необходимо фильтровать События, то скрипт, связанный с этим фильтром работать не будет – События будут отброшены на входе в VitMLXP Gateway.

Определение параметров фильтрации

Для определения параметров подписки необходимо выполнить следующие шаги (см. рис. VitMLXP Gateway. Определение параметров фильтрации):

  1. правой кнопкой мыши кликнуть по пункту Filters (Фильтры) и в контекстном меню выбрать Создать (Create New);
  2. в появившемся окне необходимо указать имя фильтра и параметры фильтрации:
  1. Name (Имя) – название фильтра;
  2. отметить флагами те типы событий, которые должны быть отфильтрованы;
  3. при необходимости указать дополнительные параметры фильтрации для каждого типа событий;
  1. нажать кнопку ОК для сохранения фильтра.


VitMLXP Gateway. Определение параметров фильтрации


Принципы построения фильтров аналогичны принципам построения параметров подписки, поэтому в качестве примера настройки фильтра может быть использован пример настройки подписки, описанный выше.

Изменение параметров фильтрации

Для того, что бы внести изменения в данные о фильтре, необходимо два раза кликнуть на соответствующей строке в таблице фильтров. В появившемся окне необходимо указать новые параметры (см. рис. VitMLXP Gateway. Изменение параметров фильтрации).


VitMLXP Gateway. Изменение параметров фильтрации


Удаление фильтра

Для удаления фильтра необходимо выполнить следующие шаги:

  1. правой кнопкой мыши кликнуть по названию необходимого фильтра и в контекстном меню выбрать Удалить (Delete) (см. рис. VitMLXP Gateway. Удаление Filter);
  2. в появившемся окне подтвердить удаление выбранного Источника нотификаций, нажав кнопку Да (Yes) (см. рис. VitMLXP Gateway. Подтверждение удаления Filter).


VitMLXP Gateway. Удаление Filter


VitMLXP Gateway. Подтверждение удаления Filter


Внимание!


В том случае, если с удаляемым фильтром связаны какие-то скрипты, то они перестанут работать после удаления фильтра.

Scripts (Скрипты)

Скрипты представляет собой механизм, с помощью которого задаются реакции на события, поступающие в VitMLXP Gateway. С помощью скриптов возможно построение черных и белых списков, подключение сторонних баз данных, баз розыска и т.д.

Добавление скрипта

Для добавления скрипта необходимо выполнить следующие шаги:

  1. правой кнопкой мыши кликнуть по пункту Scripts (Скрипты) и в контекстном меню выбрать Создать (Create New);
  2. в появившемся окне указать параметры скрипта:
  1. на вкладке General (Общие) указать базовые параметры скрипта (см. рис. VitMLXP Gateway. Указание общих параметров скрипта):
    1. Enabled (Выполнять) - отметка в этом поле свидетельствует о том, что скрипт доступен для использования;
    2. Maximum run time (Максимальное время выполнения) – максимальное время, за которое должен выполнится скрипт. В том случае, если скрипт не отработал за указанное время, его выполнение будет прервано;
    3. Name (Имя) – название скрипта;
    4. Filter (Фильтр) – выпадающий список фильтров, доступных в системе. Определяет, какие типы событий будут обрабатываться скриптом;
  2. на вкладке Main part (Основная часть) указать тело скрипта (см. рис. VitMLXP Gateway. Указание основной части скрипта);
  3. на вкладке Init part (Инициализирующая часть) объявить переменные и подключить необходимые библиотеки (см. рис. VitMLXP Gateway. Указание инициализирующей части скрипта);
  4. на вкладке Paremeters (Параметры) указать значение параметров скрипта;
  1. нажать кнопку ОК для сохранения скрипта.



VitMLXP Gateway. Указание основной части скрипта


VitMLXP Gateway. Указание инициализирующей части скрипта


Написание скрипта

Скрипты для VitMLXP Gateway могут входить в комплект поставки, в зависимости от типа приобретаемого решения либо написаны Заказчиком самостоятельно.


Скрипты представляют собой программы на языке Python. При этом используется реализация Python для платформы .net Framework - IronPython. Это означает, что помимо стандартных возможностей Python в скриптах можно напрямую использовать типы платформы .net Framework, как со стандартной библиотеки классов, так и собственные.


Перед запуском в окружении скрипта создаются следующие переменные:

  • _GLOBAL хранит словарь со следующими ключами:
  1. home типа string – корневая директория плагина;
  2. class типа string – название класса плагина;
  3. version типа string - версия плагина;
  4. id типа string - id плагина;
  5. memo типа string – для использования в будущем;
  • _ARGV словарь типа string\string - для использования в будущем;
  • _me типа string – id скрипта;
  • _clr типа string[] – полные пути к сборкам среды .net, которые нужно загрузить;
  • _in вызовы shift() – последовательно возвращают входные объекты класса BagIn;
  • _out через вызовы shift() – принимает выходные объекты класса BagOut;
  • _log через вызовы:
  1. public void shift (string Body);
  2. public void shift (LogSeverity Severity, string Body);
  3. public void shift (string Facility, LogSeverity Severity, string Body) осуществляется запись в Лог.

Данные о Severity Levels приведены в таблице Severity Levels.

Код Severity Ключ Описание
0 Emergency emerg (panic) Система неработоспособна
1 Alert alert Система требует немедленного вмешательства
2 Critical crit Состояние системы критическое
3 Error err (error) Сообщения о возникших ошибках
4 Warning warning (warn) Предупреждения о возможных проблемах
5 Notice notice Сообщения о нормальных, но важных событиях
6 Informational info Информационные сообщения
7 Debug debug Отладочные сообщения


Скрипт получает на входе объект класса BagIn через переменную с именем _in. Эта переменная определяется и инициализируется окружением и к ней можно обращаться с первого же оператора.


Входные данные передаются через поле BagIn.data. Входные данные представляют собой объект одного из классов. Объект какого именно класса пришел определяется через значение поля BagIn.type. Это поле имеет тип BagType, который представляет собой перечисление. Скрипт возвращает значение через переменную с именем _out. Эта переменная должна содержать список типа System.Collections.Generic.List<BagOut>, то есть список объектов класса BagOut.


Поле BagOut.Data предназначено для содержания выходных данных. Оно может иметь значения аналогичные полю BagIn.data, а также строку. Поле BagOut.Action указывает на действие, которое нужно выполнить с выходными данными. Поле Action представляет собой перечисление. Тип объекта присвоенного полю BagOut.Data должен соответствовать значению поля BagOut.Action, иначе никаких действий произведено не будет и в Лог файле появиться сообщение об ошибке в скрипте.

Изменение скрипта

Для того, что бы внести изменения в данные о скрипте, необходимо два раза кликнуть на соответствующей строке в таблице фильтров. В появившемся окне необходимо указать новые параметры скрипта (см. рис. VitMLXP Gateway. Изменение параметров скрипта).


VitMLXP Gateway. Изменение параметров скрипта


Удаление скрипта

Для удаления скрипта необходимо выполнить следующие шаги:

  1. правой кнопкой мыши кликнуть по названию необходимого скрипта и в контекстном меню выбрать Удалить (Delete) (см. рис. VitMLXP Gateway. Удаление скрипта);
  2. в появившемся окне подтвердить удаление выбранного скрипта, нажав кнопку Да (Yes) (см. рис. VitMLXP Gateway. Подтверждение удаления скрипта).


VitMLXP Gateway. Удаление скрипта


VitMLXP Gateway. Подтверждение удаления скрипта


Soap-Service (SOAP-Сервис)

SOAP-сервис представляет возможность удаленно работать с VitMLXP Gateway по SOAP-протоколу. Для получения WSDL описания SOAP-сервис необходимо сделать HTTP-запрос по URL указанному в поле WSDL порту в поле Port.

SOAP-Service Creation

Для добавления SOAP-Сервиса необходимо выполнить следующие шаги (см. рис. VitMLXP Gateway. Добавление SOAP-Service):

  1. правой кнопкой мыши кликнуть по пункту SOAP-Service (SOAP-Сервис) и в контекстном меню выбрать Создать (Create New);
  2. в появившемся окне SOAP-Service (SOAP-Сервис) указать параметры скрипта:
  1. On (Включен) - отметка в этом поле свидетельствует о том, что SOAP-Сервис доступен для использования;
  2. Name (Имя) – название скрипта SOAP-Сервиса;
  3. ID (ID) – идентификационный номер источника нотификаций, генерируется автоматически при его создании; не редактируемое поле;
  4. Assembly (Сборка) – dll, которая будет использоваться в качестве SOAP-Сервиса;
  5. Service Type (Тип сервиса) – сервис из указанной dll, который будет использован;
  1. нажать кнопку ОК для сохранения SOAP-Сервиса.


VitMLXP Gateway. Добавление SOAP-Service


Изменение параметров SOAP-Service (SOAP-Сервиса)

Для того, что бы внести изменения в данные о SOAP-Сервисе, необходимо два раза кликнуть на соответствующей строке в таблице SOAP-Сервисов. В появившемся окне SOAP-Service (SOAP-Сервис) необходимо указать новые параметры (см. рис. VitMLXP Gateway. Изменение SOAP-Service).


VitMLXP Gateway. Изменение SOAP-Service


Удаление SOAP-Service (SOAP-Сервиса)

Для удаления SOAP-Сервиса необходимо выполнить следующие шаги:

  1. правой кнопкой мыши кликнуть по названию необходимого SOAP-Сервиса и в контекстном меню выбрать Удалить (Delete) (см. рис. VitMLXP Gateway. Удаление SOAP-Service);
  2. в появившемся окне подтвердить удаление выбранного SOAP-Сервиса, нажав кнопку Да (Yes) (см. рис. VitMLXP Gateway. Подтверждение удаления SOAP-Service).


VitMLXP Gateway. Удаление SOAP-Service


VitMLXP Gateway. Подтверждение удаления SOAP-Service


Handlers (Обработчики)

Обрабочики представляют возможность выполнять защищенные скрипты, собранные как .dll файлы.

Добавление Handlers (Обработчика)

Для добавления Обработчика необходимо выполнить следующие шаги (см. рис. VitMLXP Gateway. Добавление Handlers):

  1. правой кнопкой мыши кликнуть по пункту Handlers (Обработчики) и в контекстном меню выбрать Создать (Create New);
  2. в появившемся окне Handler (Обработчик) указать параметры скрипта:
  1. Enabled (Включен) - отметка в этом поле свидетельствует о том, что Обработчик доступен для использования;
  2. Name (Имя) – название Обработчика;
  3. ID (ID) – идентификационный номер источника нотификаций, генерируется автоматически при его создании; не редактируемое поле;
  4. Filter (Фильтр) – выпадающий список фильтров, доступных в системе. Определяет, какие типы событий будут обрабатываться скриптом;
  5. Maximum run time (Максимальное время выполнения) – максимальное время, за которое должен выполнится скрипт. В том случае, если скрипт не отработал за указанное время, его выполнение будет прервано;
  6. Assembly (Сборка) – dll, которая будет использоваться в качестве скрипта;
  7. Service Type (Тип сервиса) – сервис из указанной dll, который будет использован;
  1. нажать кнопку ОК что бы сохранить данные об Обработчике.


VitMLXP Gateway. Добавление Handlers


Изменение параметров Handler (Обработчика)

Для того, что бы внести изменения в данные об Обработчике, необходимо два раза кликнуть на соответствующей строке в таблице Обработчиков. В появившемся окне Handler (Обработчик) необходимо указать новые параметры Обработчика (см. рис. VitMLXP Gateway. Изменение Handlers).


VitMLXP Gateway. Изменение Handlers


Удаление Handler (Обработчика)

Для удаления Обработчика необходимо выполнить следующие шаги:

  1. правой кнопкой мыши кликнуть по названию необходимого Обработчика и в контекстном меню выбрать Удалить (Delete) (см. рис. VitMLXP Gateway. Удаление Handler);
  2. в появившемся окне подтвердить удаление выбранного Обработчика, нажав кнопку Да (Yes) (см. рис. VitMLXP Gateway. Подтверждение удаления Handler).


VitMLXP Gateway. Удаление Handler


VitMLXP Gateway. Подтверждение удаления Handler


VitMLXP Gateway Management, Enterprise version VitMLXP Gateway Management, версия Enterprise