Перейти к содержанию

Архитектура Access#

Общая схема работы#

Схема работы Access и описание представлены ниже (Рисунок 1) и (Таблица 3).

Схема работы Access

Таблица 3. Описание схемы Access.

Компонент Описание
Пользователи Пользователь Access, занимающийся настройкой компонентов и отслеживание их работы.
Access Совокупность программных средств управления, позволяющих реализовать совместную работу продуктов VisionLabs и различных систем контроля и управления доступом (СКУД).
Access UI Графический интерфейс Access.
Access BackEnd BackEnd Access, отвечающий за работу с внешними компонентами, взаимодействием с UI.
Access backend server Набор библиотек, объединяющий модули Access и UI.
Rabbit MQ Брокер сообщений, обеспечивающий передачу событий между Access backend server и Worker.
Redis Система хранения данных в виде структур для обеспечения работоспособности Access.
PersonStorage Локальное хранилище, хранящее связь между персонами СКУД и их биометрическими данными. Используется для синхронизации данных между системами контроля доступа и биометрическими системами (LP, КБС) или внешними сервисами.
JSON-хранилище Файл settings.json для хранения настроек интеграций и учетных записей пользователей.
Worker Сервис, обеспечивающий выполнение задач модулей в фоновом режиме.
Модуль «Пайплайн» Модуль Access, обеспечивающий основную логику и взаимодействие модулей.
Модуль «Устройства» Модуль Access, содержащий библиотеки для подключения внешних устройств к Access.
Модуль «Сервисы» Модуль Access, содержащий библиотеки для подключения внешних сервисов к Access.
Модуль «Контроллеры» Модуль Access, содержащий библиотеки для работы с внешними контроллерами и преобразователями.
Внешние устройства Подключаемые камеры, терминалы и тепловизоры, передающие видеопоток для дальнейшей обработки. Полный список доступных устройств см. в Руководстве пользователя.
Внешние сервисы СКУД, КБС или продукты VisionLabs, которые могут быть использованы в интеграции. Полный список доступных СКУД и продуктов VisionLabs см. в Руководстве пользователя.
Внешние контроллеры Внешние контроллеры (например, преобразователи для контроллеров СКУД), используемые в интеграциях.

Диаграммы последовательности работы Access#

Взаимодействие внутренних компонентов Access#

Взаимодействие и описание компонентов Access на примере типовой интеграции источник видеосигнала + LUNA PLATFORM 5 (LP5) + Sigur (Рисунок 2) и (Таблица 4).

Взаимодействие компонентов

Таблица 4. Описание диаграммы последовательности

Шаг Описание
(1) Человек подошел к турникету с целью прохода, лицо человека зафиксировал терминал.
(2) Терминал передал фото человека в модуль «Устройства»
(3) Модуль устройства передает в модуль Пайплайны данные о лице для дальнейшей обработки.
(4) Модуль Пайплайн обрабатывает фото согласно внутренним настройкам.
(5) Модуль Пайплайн передает данные о проходе в модуль Сервис для дальнейшей обработки.
(6) Модуль Сервис отправляет запрос во внешний сервис (LP5) на идентификацию лица.
(7) Внешние сервис (LP5) производит идентификацию.
(8) Внешние сервис (LP5) возвращает ответ о результате распознавания и идентификации лица.
(9) Модуль Сервисы передает в модуль Пайплайн данные о распознавании.
(10) Модуль Пайплайны возвращает ответ в Модуль устройство о результате распознавания.
(11) Модуль Устройства возвращает данные о имени человека у терминала для отображения имени и сообщения об успешной идентификации на экране терминала
(12) Модуль Пайплайны передает данные о распознавании в модуль Сервисы.
(13) Модуль Сервисы передает данные о распознавании во Внешние сервис (Sigur)
(14) Внешний сервис (Sigur) выполняет обработку результата распознавания согласно внутренним инструкциям. В случае успешного распознавания отправляет сигнал на открытие турникета.
(15) Внешний сервис (Sigur) возвращает результат обработки в Модуль Сервисы.
(16) Модуль Сервисы передает в модуль Пайплайн данные об обработке.
(17) Модуль Пайплайны передает данные в Access backend server с помощью Rabbit MQ.
(18) Access backend server отправляет в Access UI данные для отображения результата прохода в разделе Логирование.

Создание компонента#

Схема создания компонента в Access UI и описание (Рисунок 3) и (Таблица 5).

Взаимодействие компонентов

Таблица 5. Описание диаграммы последовательности

Шаг Описание
(1) Пользователь заполняет данные нового объекта (устройства, сервиса, пайплайна или контроллера) в Access UI.
(2) Access UI отправляет запрос на Access backend server на создание компонента.
(3) Access backend server создает компонента и формирует задачу на проверку состояния подключенного компонента.
(4) Access backend server отправляет задачу в Rabbit MQ для постановки задачи в очередь.
(5) Rabbit MQ возвращает ответ о постановки задачи в очередь.
(6) Rabbit MQ отправляет запрос на проверку состояния компонента в соответствующий модуль (Устройства/Сервисы/Контроллеры), указанного в настройках компонента.
(7) Модуль Устройства/Сервисы/Контроллеры перенаправляет запрос на проверку состояния во внешние устройство/сервис/контроллер.
(8) Внешние устройство/сервис/контроллер возвращает ответ о состоянии активности.
(9) Модуль Устройства/Сервисы/Контроллеры возвращает ответ о состоянии внешнего устройство/сервис/контроллер.
(10) (Alt создание пайплайна) Rabbit MQ отправляет запрос в Модуль Пайплайн на проверку состояния компонентов, указанных в настройках пайплайна.
(11) (Alt создание пайплайна) Модуль Пайплайн перенаправляет запрос на проверку состояния в модули Устройства/Сервисы/Контроллеры, которые указаны в настройках пайплайна.
(12) (Alt создание пайплайна) Модули Устройства/Сервисы/Контроллеры возвращают ответ о доступности компонентов.
(13) (Alt создание пайплайна) Модуль Пайплайны возвращает ответ о состоянии.
(14) Rabbit MQ возвращает результат задачи в Access backend server.
(15) Access backend server сохраняет данные в JSON-хранилище.
(16) Access backend server отправляет в Access UI данные для отображения результата создания компонента.
(17) Access UI отображает созданные компонент с активным статусом для пользователя.

Автоматический мониторинг#

Схема автоматического мониторинга состояния компонентов и описание (Рисунок 4) и (Таблица 6).

Взаимодействие компонентов

Таблица 6. Описание диаграммы последовательности

Шаг Описание
(1) Входной точкой для этого процесса является создание любого компонента.
(2) Access backend server передает данные о созданном компоненте в Redis.
(3) Redis передает данные о созданном компоненте в Worker, который каждую минуту отправляет запрос в подключенные Модули для проверки состояния внешних устройств.
(4) Модули перенаправляют запрос на проверку подключения к внешним компонентам.
(5) Внешние компоненты возвращают ответ о состоянии подключения, если ответ на запрос не был получен, то модуль считает подключенное устройство отключенным.
(6) Модуль записывает данные о состоянии компонента в Redis.
(7) Access backend server получает данные о состоянии компонентов из Redis.
(8) Access UI запрашивает статус активности компонента у Access backend server
(9) Access UI обновляет индикатор статуса активности компонента.