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

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

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

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

Схема работы Access
Рисунок 1. Схема работы Access

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

Компонент Описание
Пользователи Пользователь Access, занимающийся настройкой компонентов и отслеживание их работы.
Access Совокупность программных средств управления, позволяющих реализовать совместную работу продуктов VisionLabs и различных систем контроля и управления доступом (СКУД).
Access UI Графический интерфейс Access.
Access Backend Backend Access, отвечающий за работу с внешними компонентами, взаимодействием с UI.
Access backend server Набор библиотек, объединяющий модули Access и UI.
RabbitMQ Брокер сообщений, обеспечивающий передачу событий между 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).

Взаимодействие компонентов
Рисунок 2. Взаимодействие компонентов

Таблица 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 с помощью RabbitMQ.
(18) Access backend server отправляет в Access UI данные для отображения результата прохода в разделе Логирование.

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

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

Взаимодействие компонентов
Рисунок 2. Взаимодействие компонентов

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

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

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

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

Взаимодействие компонентов
Рисунок 2. Взаимодействие компонентов

Таблица 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 обновляет индикатор статуса активности компонента.