Настройка интеграции с IVA One по статусам с использованием сертификатов
В некоторых сценариях развертывания требуется настроить обмен статусами (Presence) между сервером телефонии IVA CS и платформой IVA One. Такая интеграция реализуется через компонент swl-ivalink, который соединяется с шиной событий (NATS) на стороне IVA One по защищенному каналу TLS.
swl-ivalink — это специальный сервис IVA CS, который подписывается на события статусов (Presence) через шину NATS IVA One и синхронизирует их с локальной базой абонентов.
Предварительные требования:
-
сервер IVA CS установлен и базово настроен
-
имеются три файла сертификатов, выданных для подключения к NATS-серверу IVA One:
Сертификаты выдаются администратором IVA One для конкретного экземпляра IVA CS и позволяют безопасно подключаться к NATS-серверу -
сертификат (*.pem)
-
закрытый ключ (*.pem)
-
сертификат удостоверяющего центра (CA) (*.pem)
-
-
известен IP-адрес или FQDN узла NATS в инфраструктуре IVA One
Порядок действия
-
размещение сертификатов
Необходимо скопировать файлы сертификатов в следующие каталоги, выполнив команды:
cp /path/cert.pem /etc/ivapresence/tls/presence-cert.pem cp /path/key.pem /etc/ivapresence/tls/presence-key.pem cp /path/ca-cert.pem /etc/ivapresence/tls/ca-cert.pemНеобходимо заменить пути к исходным файлам на реальные Если по каким-либо причинам невозможно разместить сертификаты в стандартных путях, то требуется выбрать другие каталоги или переименовать файлы. Однако в этом случае потребуется явно указать их расположение в файле конфигурации -
настройка разрешения имени узла NATS
Если NATS-сервер доступен только по IP-адресу или его FQDN не совпадает с именем, указанным в сертификате (обычно это
eventbus.iva), то необходимо добавить соответствующую запись в файл /etc/hosts.Пример для IP-адреса
10.0.204.234:echo "10.0.204.234 eventbus.iva" >> /etc/hosts -
внесение изменений в конфигурационный файл /etc/ivasw/logic.yaml
Необходимо открыть файл конфигурации /etc/ivasw/logic.yaml любым текстовым редактором и внести следующие изменения:
SWL: IVALINK: ENABLED: true CALL: LOAD_BALANCE: 0 PROVISION: # AVAYA_SIP : "$SelectedSipIP:5066" AVAYA: # SIP_INTERFACES : "$eth[0]:5066" IVA: IVALINK: SERVER: "eventbus.iva:4222" TLS: trueЕсли сертификаты были размещены не по стандартным путям, то под ключом
TLSнеобходимо дополнительно указать пути к каждому из трех файлов:IVA: IVALINK: SERVER: "eventbus.iva:4222" TLS: true TLS_CERT: "/path/to/cert" TLS_KEY: "/path/to/key" TLS_CERT_CA: "/path/to/cert-ca"-
параметр
SERVERдолжен указывать тот же адрес, который прописан в /etc/hosts и в сертификате -
порт
4222является стандартным для NATS, если используется иной порт — уточнить информацию у Администратора IVA One
-
-
перезапуск сервиса и его проверка
После внесения изменений необходимо перезапустить сервис swl-ivalink:
systemctl restart swl-ivalinkПри необходимости можно перезапустить все сервисы логики, выполнив команду:
sudo ivacs-ctl restart logicДля проверки корректности работы необходимо выполнить просмотр логов в реальном времени:
tail -f /var/log/ivasw/swl-ivalink.logТребуется убедиться, что в логах отсутствуют сообщения об ошибках TLS, а также что сервис не перезапускается циклически (например, из-за падений). При успешном подключении должны появиться записи об установлении соединения с NATS и обмене статусами.