Интеграция с системами управления доступом (Ugin & Sucams)

Обзор процесса

Для реализации функции удаленного открытия барьеров плагин использует комбинированный подход, объединяя данные из двух разных систем: Ugin (для поиска и идентификации) и Sucams (для управления).

Поиск устройств (Ugin)

Плагин не хранит список шлагбаумов в базе CRM, а запрашивает их в режиме реального времени из системы Ugin.

Алгоритм поиска

  1. Идентификатор объекта: Плагину передается houseId (идентификатор дома/объекта).

  2. Запрос к Ugin API: Плагин запрашивает все активные устройства, привязанные к данному houseId.

  3. Фильтрация: Из общего списка устройств отбираются только те, которые соответствуют критериям:

    • Тип устройства: устройство должно быть определено как барьер.

    • Белый список моделей: ID модели устройства должен присутствовать в конфигурации плагина: plugin.service-engineer-helper.action-provider.query.barriers.models.

    • Наличие MAC-адреса: устройство должно иметь валидный MAC-адрес, так как он является единственным ключом для управления в системе Sucams.

Управление оборудованием (Sucams)

Когда инженер выбирает конкретный шлагбаум в интерфейсе CRM, плагин инициирует команду открытия.

Механизм открытия

  1. Идентификация: В качестве идентификатора используется MAC-адрес устройства, полученный на этапе поиска в Ugin.

  2. Отправка команды: Плагин отправляет запрос в API Sucams на открытие барьера по указанному MAC-адресу.

  3. Результат: Sucams пересылает команду на физическое устройство и возвращает статус выполнения (успешно/ошибка) обратно в CRM.

Схема взаимодействия

HouseId → Ugin API → Список MAC-адресов → Выбор устройства → Sucams API (по MAC) → Открытие