Дерево страниц
Перейти к концу метаданных
Переход к началу метаданных

Архитектура и принципы работы Elph

Типовые схемы развертывания

Мобильный клиент Elph IOS не может работать в закрытом контуре, так как все вызовы на устройствах IOS осуществляются с помощью «push сообщений», которые в свою очередь проходят через apple.com, поэтому для их отправки у SSW должен быть доступ к APNs (api.push.apple.com:443).

Cхема развёртывания в закрытом контуре c использованием NAT

При такой схеме развёртывания для удалённых абонентов требуется активация опции nat_traversal в настройках SIP на SSW, а также опции udp-src-check="yes" в конфигурации медиасервера (MSR), так как абоненты находятся за NAT.

Схема развёртывания с доступом из внешней сети

При такой схеме развёртывания для удалённых абонентов так же требуется активация опции nat_traversal в настройках SIP на SSW, а так же опции udp-src-check="yes" в конфигурации медиасервера (MSR), так как абоненты находятся за NAT.

Адрес Elph Proxy должен быть доступен из внешней сети. Elph Proxy по своей сути является Nginx-сервером, который с помощью префиксов перенаправляет на нужный ресурс, а извне доступен только один порт (по умолчанию 443). Помимо Elph Proxy, из внешней сети также должен быть доступен SBC, для регистрации мобильных клиентов на SSW извне и прохождения медиа.

Для осуществления звонков извне с помощью Elph Desktop в режиме SIP-клиента (см. на рисунке «мобильное удалённое рабочее место») необходимо настроить VPN с доступом до SSW, в противном случае Elph Desktop будет работать только в режиме ассистента (см. рисунок «удалённое рабочее место»).


Схема развёртывания с резервированием

При такой схеме развёртывания для удалённых абонентов также нужно активировать nat_traversal в настройках SIP на SSW и опцию udp-src-check="yes" в конфигурации медиасервера (MSR), так как абоненты находятся за NAT. Также для них необходимо включить опцию node_control, так как SSW работает в кластере.

Для работы push-нотификаций на SSW должны быть активированы настройки push-сервисов, а у ECSS-кластера должен быть доступ к сервисам push-сообщений Android (Firebase Cloud Messaging) и Apple (Apple Push Notification Service).

Архитектура взаимодействия Elph с ECSS-10

Elph Desktop

Elph Android

API (Application programming interface) — набор способов и правил, по которым программы общаются между собой и обмениваются данными.

  • SQL — база данных телефонного справочника.
  • Chat Server — элемент системы, обеспечивающий возможность общения в чате, обмена файлами, сохранения истории переписки.
  • Proxy Server — элемент системы, перенаправляющий запросы от elph-client к внутренним компонентам системы и обеспечивающий единую точку входа по порту 443. 
  • Elph API — интерфейс взаимодействия с компонентами системы (SQL, Call API, Mediator).
  • Mediator — элемент системы, предоставляющий информацию об атрибутах sip для подключения в том числе ip set (IP:порт для подключения).
  • Call API — элемент системы, позволяющий посредством технологии WSS (Web Sockets Secure) получать необходимую информацию как для совершения вызовов/конференций, так и для управления ими:
    • /service call — информация о вызовах (установлен/завершён), команды в режиме ассистента.
    • /service teleconference — информация о событиях (подключение/отключение участников, включение/выключение микрофона и т. д.).
  • AuP (AutoProvision) — представляет собой сервис, при помощи которого возможно автоматическое конфигурирование и обновление ПО телефонных аппаратов.

Системные требования для всех компонентов

При выборе сервера необходимо учитывать следующие системные требования (требования предоставляются к VM без учета резервирования системы, требования к размеру диска для чат-сервера зависят от общей активности пользователей при передаче файлов):

Сводная таблица системных требований для виртуальных машин, исходя из нагрузки около 1000 пользователей.

Все требования указаны с учётом системных требований самой ОС, на которой будет установлен пакет, при компоновке некоторых сервисов вместе на одном хосте системные требования не суммируются. Вариант установки всех сервисов на одном хосте не рекомендован с точки зрения безопасности, но возможен.

название VM

CPU core, Xeon

RAM, Gb

HDD, Gb

Elph API (подробнее по ссылке)Требования релевантны с SSW ECSS10, так как пакет устанавливается на том же хосте
Chat Server (подробнее по ссылке)4, 64-bit x86 CPUs
4200
Elph Proxy (подробнее по ссылке)2, 64-bit x86 CPUs
430
Elph Proxy +Chat-Server4, 64-bit x86 CPUs4200
SSW ECSS10 +  Elph Api +Chat-Server8, 64-bit x86 CPUs16300
Всё на одном хосте8, 64-bit x86 CPUs16300

Более точные требования и примеры расчёта можно найти в описании к отдельным компонентам системы

Таблица совместимости компонeнтов UC с различными OC
Название компонентаUbuntu 18.04Ubuntu 20.04Ubuntu 22.04Astra Linux
SSW ECSS10 +

+
Autoprovision
+
+
Elph APIМожет быть развёрнут на любой ОС, но ограничен совместимостью SSW ECSS10, так как устанавливается на том же хосте
Chat Server++++
Elph Proxy+++ (требуется ручная установка доп пакетов)+
  • Нет меток