Интеграция IVA One с IVA MCU

Время между серверами IVA MCU, IVA One и IVA ID должно быть синхронизировано с высокой точностью

Установка и предварительная настройка IVA MCU

  1. выполнить установку IVA MCU

  2. выполнить первичную настройку IVA MCU

    Если используется самоподписанный сертификат, то при первичной настройке IVA MCU на шаге Установка SSL-сертификата загружается цепочка, состоящая из сертификата домена и сертификата CA. Подробнее: Требования к сертификатам

    После установки сертификата может потребоваться перезапуск модуля Nginx:

    Web-панель администрирования IVA MCUПерейти в раздел Модули системыВыбрать серверВыбрать модуль nginxНажать Рестарт

    Перезапуск nginx

    Если для отправки приглашений на мероприятия будет использоваться IVA Mail, необходимо:

    Web-панель администрирования IVA MCUПерейти в раздел Системные настройкиВыбрать секцию Экспериментальные настройкиВыключить флаговую кнопку Почтовые уведомления о мероприятияхНажать Сохранить

    Почтовые уведомления о мероприятиях
  3. выполнить вход в web-панель администрирования IVA MCU по DNS-имени домена IVA MCU

  4. убедиться, что в IVA MCU используется установленный TLS-сертификат

  5. создать несколько учетных записей пользователей IVA MCU для дальнейшей проверки

  6. включить расширенный поиск пользователей на сервере:
    Перейти в раздел Системные настройкиВыбрать секцию Системные настройкиВключить флаговую кнопку Поиск среди всех зарегистрированных пользователей

    Поиск среди всех зарегистрированных пользователей
  7. предоставить созданным пользователям доступ к конференциям, вебинарам и звонкам:
    Перейти в раздел ПользователиВыбрать Имя доменаНажать кнопку Список пользователейВыбрать / найти пользователяНажать кнопку ДетальноПерейти во вкладку ПодпискиВ строке Доступные типы мероприятий включить флаговые кнопки: Конференции, Вебинары и Звонки

    Доступ к конференциям
  8. проверить, что между пользователями работают чаты и звонки:
    Авторизоваться в IVA MCU под учетной записью пользователяКонтактыВыбрать пользователяПерейти в персональный чатОтправить сообщение / совершить звонок
    Подробнее: Руководство пользователя IVA Connect Web

Регистрация SSO-сервера IVA ID в IVA MCU

Для настройки интеграции IVA MCU с IVA ID необходимо:

  1. добавить SSO-сервер:
    Web-панель администрирования IVA MCUПерейти в раздел Внешняя аутентификацияВыбрать доменНажать кнопку SSO сервераНажать кнопку Добавить SSO сервер

    Добавить SSO сервер

    Создание SSO-сервера:

    • Название: IVA ID

    • Тип сервера: IVA_ID

    • URL идентификатора сервера: значение поля issuer из IVA ID

    • URL аутентификации: значение поля authorization_endpoint из IVA ID

    • URL получения токена доступа: значение поля token_endpoint из IVA ID

      Для определения URL идентификатора сервера, URL аутентификации и URL получения токена необходимо:
      Войти в IVA IDВ выпадающем списке пространств (realm) IVA ID выбрать IVAПерейти в раздел Realm settingsПерейти на вкладку GeneralНажать на ссылку OpenID Endpoint ConfigurationСкопировать значения полей

      Настройка IVA ID
      URL идентификатора сервера, URL аутентификации и URL получения токена доступа можно определить, пройдя по ссылке:
      https://<IVA_ID_DOMAIN>/realms/IVA/.well-known/openid-configuration
    • ID клиента: iva-mcu

    • Закрытый ключ клиента: значение Client Secret из IVA ID

      Для определения закрытого ключа клиента необходимо:
      Войти в IVA IDВ выпадающем списке пространств (realm) IVA ID выбрать IVAПерейти в раздел ClientsПерейти на вкладку CredentialsВ строке Client Secret нажать кнопку Regenerate и скопировать значение

      Закрытый ключ клиента
    • URL брокера сообщений: nats://<IP_ADDRESS>:<EXTERNAL_PORT>
      где:

      • <IP_ADDRESS> — внутрисетевой адрес балансировщика IVA One. Рекомендуется указывать IP-адрес для обращения IVA MCU напрямую к компоненту EventBus (шине событий) IVA One

      • <EXTERNAL_PORT> — порт компонента EventBus IVA One (значение по умолчанию: 32222)

        Для определения порта необходимо:

        • на сервере IVA One открыть файл /opt/iva/values.yaml командой

          sudo nano /opt/iva/values.yaml
        • скопировать содержимое поля externalPort

    • Keystore брокера сообщений: значение вывода команд на сервере IVA One:

      Последовательность указания объектов должна строго соблюдаться:

      1. сертификат CA (ca.crt)

      2. публичный ключ (tls.crt)

      3. приватный ключ (tls.key)

      sudo kubectl -n default get secret iva-mcu-eventbus-secret -o jsonpath='{.data.ca\.crt}' | base64 --decode
      sudo kubectl -n default get secret iva-mcu-eventbus-secret -o jsonpath='{.data.tls\.crt}' | base64 --decode
      sudo kubectl -n default get secret iva-mcu-eventbus-secret -o jsonpath='{.data.tls\.key}' | base64 --decode
    • Truststore брокера сообщений: значение вывода команды на сервере IVA One:

      sudo kubectl -n default get secret iva-mcu-eventbus-secret -o jsonpath='{.data.ca\.crt}' | base64 --decode
    • Публичный ключ сервера: публичный сертификат IVA ID

      Для определения публичного сертификата IVA ID необходимо:
      Войти в IVA IDВ выпадающем списке пространств (realm) IVA ID выбрать IVAПерейти в раздел Realm settingsПерейти на вкладку KeysВыбрать RS256 и нажать кнопку CertificateСкопировать содержимое

      Публичный ключ
    • включить флаговую кнопку Возможность создания мероприятий новыми пользователями

  2. нажать кнопку Создать

  3. для созданного SSO-сервера нажать кнопку Синхронизировать

    Во время синхронизации выполняется создание и обновление пользователей IVA MCU, созданных в IVA ID.
    Блокировка пользователей, созданных ранее при синхронизации с IVA ID, выполняется, если они были удалены в IVA ID

После регистрации SSO-сервера может потребоваться перезапуск службы ivcs-server.service. Для этого необходимо в консоли головного сервера IVA MCU выполнить команду:

sudo systemctl restart ivcs-server.service
Проверка успешной синхронизации

При успешной синхронизации в файле лога ivcs-server.log должна появиться строка, содержащая URL брокера сообщений, вида:

NATS connected. ExternalAuthProviderId:0be2875f-e099-4873-93d2-a186bb4b6457. NATS url:nats://<IP_ADDRESS>:<EXTERNAL_PORT>

Посмотреть содержимое файла ivcs-server.log можно следующими способами:

  • через консоль управления:

    • в консоли головного сервера IVA MCU выполнить команду:

      sudo tail -f -n 1000 /var/log/ivcs-server/ivcs-server.log
  • через web-панель администрирования IVA MCU:

    • скачать dump-файл: Перейти в раздел Модули системыВыбрать необходимый серверНажать ссылку Скачать dump файл

    • открыть скачанный архив и перейти в папку diagnostic-main-ХХХ\ivcs-server\files\var\log\ivcs-server

    • открыть файл ivcs-server.log

Регистрация приложения IVA One в IVA MCU

Для регистрации приложения IVA One в IVA MCU необходимо:

  1. задать значение IVA One URL:
    Web-панель администрирования IVA MCUПерейти в раздел ДоменыВыбрать доменНажать кнопку ДетальноВыбрать секцию Экспериментальные настройкиВвести адрес IVA One в поле IVA One URL: https://<IVA_ONE_DOMAIN>Нажать кнопку Сохранить

    IVA One URL
    После применения данной настройки IVA MCU будет функционировать в режиме интеграции с IVA One и поддерживать только участие в мероприятиях. Вход в мероприятия будет возможен только через IVA One
  2. указать разрешенные домены CORS:
    Web-панель администрирования IVA MCUПерейти в раздел Системные настройкиВыбрать секцию Настройки HTTPЗаполнить следующие поля:

    • Разрешенные домены CORS для клиентского API: <IVA_ONE_DOMAIN>

    • Разрешенные домены CORS для интеграционного API: <IVA_ONE_DOMAIN>

    • Разрешенные домены CORS для чат-бот API: <IVA_ONE_DOMAIN>

      IVA One CORS
  3. добавить интеграционное приложение IVA One:
    Web-панель администрирования IVA MCUПерейти в раздел Интеграционные приложенияДобавить приложение

    Добавить приложение IVA One

    Добавление приложения:

    • Название: IVA One

    • Привилегии: включить флаговые кнопки:

      • Пользователи — Чтение

      • Пользователи — Запись

      • Мероприятия — Чтение

      • Мероприятия — Запись

      • Чат — Чтение

      • Чат — Запись

      • Ресурсы — Скачивание

  4. скопировать и сохранить пароль приложения:
    Нажать кнопку СоздатьИнтеграционное приложение созданоНажать кнопку Копировать парольНажать кнопку ОКСохранить пароль

    Добавить приложение IVA One

    После нажатия кнопки ОК пароль для приложения нельзя будет посмотреть.
    В случае утери пароля, можно создать новый пароль. Для этого необходимо:
    Web-панель администрирования IVA MCUПерейти в раздел Интеграционные приложенияВыбрать приложениеНажать кнопку Пересоздать парольСоздание нового пароляНажать кнопку ОКНовый парольНажать кнопку Копировать парольНажать кнопку ОКСохранить пароль

    Восстановление праолья приложения

    После создания нового пароля приложения старый пароль будет недействителен

  5. скопировать и сохранить ID приложения:
    Web-панель администрирования IVA MCUПерейти в раздел Интеграционные приложенияВыбрать созданное приложениеСкопировать и сохранить ID приложения

    ID приложения
  6. скопировать и сохранить ID домена IVA MCU:
    Web-панель администрирования IVA MCUПерейти в раздел ДоменыВыбрать доменНажать кнопку ДетальноВыбрать секцию Общие настройкиСкопировать и сохранить ID

    ID домена

Настройка IVA One для интеграции с IVA MCU

  1. на сервере IVA One открыть файл /opt/iva/values.yaml с помощью команды:

    sudo nano /opt/iva/values.yaml
  2. указать параметры подключения к IVA MCU:

    mcu:
        url: &iva_mcu_url "https://<IVA_MCU_ADDRESS>"
        appId: &iva_mcu_app_id "APP_ID"
        appSecret: &iva_mcu_app_secret "APP_PASS"
        domainId: &iva_mcu_domain_id "DOMAIN_ID"

    где:

  3. применить обновленную конфигурацию values.yaml, выполнив последовательность команд:

    cd /opt/iva
    sudo helm upgrade iva-one ./iva-one -f values.yaml

Проверка интеграции IVA One с IVA MCU

Для проверки интеграции IVA One с IVA MCU необходимо:

  1. войти в IVA One с помощью учетной записи пользователя

  2. проверить:

    • наличие и доступность в интерфейсе IVA One кнопок История звонков и Комнаты

    • доступность в чатах аудио- и выдеовызовов, создания ВКС-встреч

      Список чатов IVA One
    • доступность трансляции аудио- и видеоконтента для участников звонков

      Звонок IVA One
    • возможность создания Комнат

      Комнаты IVA One