Настройки проксирования для Платформы IVA MCU
В этом разделе описана настройка VVoIP, HTTP Reverse, TURN, HTTP Proxy и FLV Media маршрутизации в IVA SBC для платформы IVA MCU.
Перед настройкой маршрутизации в IVA SBC необходимо:
-
подготовить IP-адреса добавляемых серверов:
-
IVA_MCU_IP, IVA_MCU_IP2 — IP-адреса головных серверов IVA MCU
-
IVA_MCU_FLOAT_IP — плавающий IP-адрес головного сервера для кластера
-
IVA_MEDIA_IP — IP-адрес медиасервера IVA MCU (может быть несколько)
-
-
подготовить и добавить SSL-сертификаты для доменных имён
Настройка маршрутизации VVoIP
Ниже приведен пример настройки сервера проксирования IVA SBC для маршрутизации исходящего и входящего SIP- и H.323-трафика головного сервера IVA MCU с IP-адресом 10.0.202.51.
Чтобы настроить сервер проксирования для маршрутизации VVoIP-трафика, необходимо:
-
войти в Web-интерфейс администрирования IVA SBC
-
в разделе Маршруты VVoIP добавить маршрут (см. Добавление маршрута VVoIP), задав имя и описание, например:
-
Имя: 51 Server IVA MCU (In/Out)
-
Описание: VoIP правила для 51 Server IVA MCU
-
-
в окне Информация о маршруте VVoIP добавить правило обработки SIP-регистрации (см.Правила обработки маршрута VVoIP. Обработка SIP-регистрации) со следующими параметрами:
-
Домен SIP регистрации: sip.iva.ru
-
Адрес SIP регистратора: IVA_MCU_IP или IVA_MCU_FLOAT_IP (10.0.202.51)
-
Транспорт: По умолчанию
-
-
в окне Информация о маршруте VVoIP добавить правила (см. Правила обработки маршрута VVoIP. Обработка входящего звонка) со следующими параметрами:
-
правило для исходящих SIP-вызовов с заданной маской сети:
-
Включено: кнопка-переключатель активна
-
Имя: SIP from 51 Server IVA MCU
-
Протокол: SIP
-
Маска сети входящего соединения (входящие звонки со стороны IVA MCU в Интернет): IVA_MCU_IP/32, IVA_MCU_FLOAT_IP/32, IVA_MCU_IP2/32
-
Статус регистрации: Любой
-
Действие: Вызвать
-
Использовать DNS SRV записи: активно
-
Проксировать RTP: активно
-
Транспорт: По умолчанию
-
-
правило для входящих SIP-вызовов с любых адресов:
-
Включено: кнопка-переключатель активна
-
Имя: SIP To 51 Server IVA MCU from Any
-
Протокол: SIP
-
Статус регистрации: Любой
-
Действие: Проксировать, ввести IP-адрес головного сервера IVA_MCU_IP или IVA_MCU_FLOAT_IP
-
Проксировать RTP: активно
-
Транспорт: По умолчанию
-
-
аналогичные правила (H.323 from 51 Server IVA MCU и H.323 To 51 Server IVA MCU) для протокола H.323. Для H.323-вызовов дополнительно настроить:
-
Использовать туннелирование: активно
-
Правила применяются в порядке очереди. Важно, чтобы правило SIP from 51 Server IVA MCU и правило H.323 from 51 Server IVA MCU применялись в первую очередь -
-
в разделе Группы маршрутизации создать группу маршрутизации (см. Настройка групп маршрутизации) с параметрами:
-
Имя: VVoIP 51 Server IVA MCU
-
Описание: Список маршрутов Voip для 51 Server IVA MCU
-
Тип: VVoIP Proxy
-
-
в окне Информация о группе маршрутизации VVoIP добавить созданный маршрут (см. Создание группы маршрутизации) 51 Server IVA MCU (In/Out)
-
в разделе Сервера проксирования выбрать сервер проксирования
-
в окне Информация о сервере проксирования для роли VVoIP выбрать группу маршрутизации (VVoIP 51 Server IVA MCU) и активировать роль (см. Добавление Ролей проксирования)
-
в окне Информация о сервере проксирования на вкладке Правила NAT добавить правила NAT (см. Добавление правил NAT)
-
войти в Web-интерфейс администрирования Платформы IVA MCU:
-
в разделе Системные настройки выбрать секцию Настройки VVoIP и настроить параметры:
-
Прокси исходящего sip-звонка: IP-адрес сервера проксирования IVA SBC (например 10.0.202.201)
-
Прокси исходящего H.323 звонка: IP-адрес сервера проксирования IVA SBC (например 10.0.202.201)
-
Локальные сети без прокси: IP-адреса локальной сети, в которые звонки осуществляются без использования сервера проксирования IVA SBC (например 127.0.0.1;10.0.0.1/24)
-
-
проверить отсутствие / отключить настройки NAT адресации платформы IVA MCU на странице Внешние IP раздела Настройки сервера, так как применяются Правила NAT, настроенные для сервера проксирования IVA SBC
-
Настройка маршрутизации HTTP Reverse
Пример настройки для ограничения доступа к web-интерфейсу администрирования
Ниже приведен пример настройки сервера проксирования IVA SBC для ограничения входящих HTTP-запросов к web-интерфейсу администрирования головного сервера IVA MCU с IP-адресом 10.0.202.51.
Чтобы настроить сервер проксирования для маршрутизации трафика HTTP Reverse, необходимо:
-
войти в Web-интерфейс администрирования IVA SBC
-
в разделе Маршруты HTTP Reverse на вкладке Правила фильтрации добавить правило фильтрации (см. Добавление правил фильтрации маршрутов HTTP Reverse), задав имя, например: IVA MCU no admin and allow all others
-
в окне Информация о правиле фильтрации HTTP добавить и упорядочить фильтры (см. Добавление и редактирование фильтров для правила фильтрации маршрутов HTTP Reverse) со следующими параметрами:
-
фильтр для запрета доступа на страницу web-интерфейса администрирования:
-
URL-путь: /administration/(.*)
-
Метод: Любой
-
Действие: Запретить
-
-
фильтр для доступа ко всем ресурсам Платформы IVA MCU:
-
URL-путь: (.*)
-
Метод: Любой
-
Действие: Разрешить
-
-
-
в разделе Маршруты HTTP Reverse на вкладке Маршруты добавить маршрут (см. Добавление маршрута HTTP Reverse), с параметрами:
-
Имя: IVA MCU With No Admin To 51 Server
-
URL-адрес сервера: URL-адрес сервера проксирования IVA SBC (например iva51.hi-tech.org)
-
Адрес внутреннего сервера: IVA_MCU_IP или IVA_MCU_FLOAT_IP (10.0.202.51)
-
-
в окне Информация о маршруте HTTP Reverse добавить созданное правило фильтрации (см. Добавление правил фильтрации в список правил фильтрации маршрута HTTP Reverse) IVA MCU no admin and allow all others
-
в разделе Группы маршрутизации создать группу маршрутизации (см. Настройка групп маршрутизации) с параметрами:
-
Имя: HTTP to 51 Server IVA MCU
-
Описание: Список маршрутов HTTP для 51 Server IVA MCU
-
Тип: HTTP Reverse Proxy
-
-
в окне Информация о группе маршрутизации HTTP добавить созданный маршрут HTTP (см. Создание группы маршрутизации) IVA MCU With No Admin To 51 Server
-
в разделе Сервера проксирования выбрать сервер проксирования
-
в окне Информация о сервере проксирования для роли HTTP Reverse выбрать группу маршрутизации (HTTP to 51 Server IVA MCU) и активировать роль (см. Добавление Ролей проксирования)
Пример настройки для обеспечения доступа к IVA MCU
Ниже приведён пример настройки фильтрации REST API для работы с IVA MCU. Эти настройки необходимы для обеспечения доступа к ресурсам IVA MCU.
Описанная настройка фильтрации обеспечит корректную работу:
-
новой версии web-интерфейса
-
IVA Connect Desktop
-
IVA Connect Android
-
IVA Connect iOS
Описанная настройка фильтрации не поддерживает работу:
-
старой версии web-интерфейса
-
iframe
-
администрирования IVA MCU через IVA SBC
-
чат-ботов
-
интеграционного API
-
SOAP API
Все запросы, которые не соответствуют установленным правилам фильтрации, будут блокироваться. |
Чтобы настроить фильтрацию REST API для работы с IVA MCU, необходимо:
-
загрузить OpenAPI-схемы
-
настроить правила фильтрации
Загрузка OpenAPI-схем
Для корректной работы правил фильтрации необходимо добавить несколько OpenAPI-схем (см. Добавление схем OpenAPI).
Имя схемы | URL для загрузки схемы |
---|---|
ClientAPI |
http://<INTERNAL_ADDRESS_IVAMCU>/doc/api/clients-openapi.json, где <INTERNAL_ADDRESS_IVAMCU> — IP-адрес сервера IVA MCU |
Resource |
Доступен по запросу в техподдержку: https://sd.iva.ru/ |
Comet |
Доступен по запросу в техподдержку: https://sd.iva.ru/ |
Настройка правил фильтрации
Существует два способа настройки правил фильтрации:
-
Использование готового правила
Для упрощения настройки фильтрации можно использовать готовый файл с набором фильтров. Для этого необходимо:
-
получить файл по запросу в техподдержку: https://sd.iva.ru/
-
импортировать файл на странице Правила фильтрации (см. Импортирование правила фильтрации)
-
перейти в добавленное из импортированного файла правило IVA MCU Rules (New WEB)
-
добавить в правило IVA MCU Rules (New WEB) фильтры (см. Добавление фильтра HTTP-запроса) по загруженным ранее OpenAPI-схемам:
№ |
URL-путь |
OpenAPI схема |
Назначение |
1 |
/comet?(.*) |
Comet |
Канал получения событий |
2 |
/services/resource(.*) |
Resource |
Загрузка различных файлов |
3 |
/api/rest/(.*) |
ClientAPI |
методы клиентского REST API |
-
Добавление правила вручную
Добавление правила фильтрации вручную позволит более гибко настроить входящие в него фильтры. Для этого необходимо:
-
добавить правила фильтрации (см. Добавление правила фильтрации HTTP-запросов):
-
BASE_IVA_MCU
-
IVA-MCU Patched
-
IVA-MCU Block Std
-
IVA-MCU Allow URI
Важно соблюдать порядок добавления правил для их корректного применения (см. Изменение порядка применения фильтров) -
-
в каждое правило фильтрации добавить фильтры (см. Добавление фильтра HTTP-запроса). Ниже приведён список фильтров, актуальных для IVA MCU версии 21.X:
Фильтры правила BASE_IVA_MCU:
№ |
Параметры |
Назначение |
|||
URL-путь |
OpenAPI-схема |
Метод |
Действие |
||
Для работы страницы входа |
|||||
1 |
/ |
Не задана |
GET |
Разрешить |
Открытие базовой страницы |
2 |
/(favicon|favicon-loading).ico |
Не задана |
GET |
Разрешить |
Иконки для страницы, отображаемые в браузере |
Для работы первого входа |
|||||
3 |
/common.js |
Не задана |
GET |
Разрешить |
JavaScript-код |
4 |
/imaged_background.jpg |
Не задана |
GET |
Разрешить |
Фоновое изображение |
5 |
/videoconference/(.*).js |
Не задана |
GET |
Разрешить |
JavaScript-файлы для отображения главной страницы |
6 |
/fonts.css |
Не задана |
GET |
Разрешить |
CSS |
7 |
/domain-theme/theme.css |
Не задана |
GET |
Разрешить |
CSS |
8 |
/jwplayer/(.*).js |
Не задана |
GET |
Разрешить |
JS player |
9 |
/eventsource/(.*).js |
Не задана |
GET |
Разрешить |
JS для получения событий через comet-канал |
10 |
/fonts/Exo2Regular.(eot|ttf|woff) |
Не задана |
GET |
Разрешить |
Шрифты |
11 |
/videoconference/service/helper |
Не задана |
POST |
Разрешить |
Вызов GWT-метода для получения IP-адреса клиента |
12 |
/videoconference/service/login |
Не задана |
POST |
Разрешить |
Вызов GWT-методов для EndPoint для возможности автоматического входа в систему. На данный момент глубокого анализа данного запроса не выполняется. Отказ от данной точки планируется в будущих версиях IVA MCU |
13 |
/videoconference/service/conferencesession |
Не задана |
POST |
Разрешить |
Вызов GWT методов для EndPoint для возможности автоматического входа в систему. На данный момент глубокого анализа данного запроса не выполняется. Отказ от данной точки планируется в будущих версиях IVA MCU |
Статическая информация для работы нового web-интерфейса |
|||||
14 |
/v2/(.*) |
Не задана |
GET |
Разрешить |
Статика для нового интерфейса:
|
REST API, не описанное в OpenAPI-схеме IVA MCU |
|||||
15 |
/comet?(.*) |
Comet |
— |
— |
Канал получения событий |
16 |
/services/resource(.*) |
Resource |
— |
— |
Загрузка различных файлов |
17 |
/api/rs/media/proxy/media/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}?(.*) |
Не задана |
POST |
Разрешить |
media для подключения к конференции |
Фильтры правила IVA-MCU Patched:
№ |
Параметры |
Когда используется |
Какую ошибку исправляет |
|||
URL-путь |
OpenAPI- схема |
Метод |
Действие |
|||
Исправление ошибок REST API, описанного в OpenAPI-схеме IVA MCU |
||||||
1 |
/api/rest/resources/ create |
Не задана |
POST |
Разрешить |
При создании файлов |
Неизвестный параметр shared Некорректное использование запроса web-клиентом |
2 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/start-all-inquiries |
Не задана |
POST |
Разрешить |
При попытке запустить заранее созданные опросы |
<EMPTY_POST> |
3 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/inquiries/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/start |
Не задана |
POST |
Разрешить |
При попытке начать конкретный опрос |
<EMPTY_POST> |
4 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/stop-all-inquiries |
Не задана |
POST |
Разрешить |
При попытке остановить все начатые опросы |
<EMPTY_POST> |
5 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/inquiries/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/stop |
Не задана |
POST |
Разрешить |
При попытке остановить конкретный начатый опрос |
<EMPTY_POST> |
6 |
/api/rest/contacts/presences/find-for-users |
Не задана |
POST |
Разрешить |
При подписке на статусы пользователей |
Ошибка в использовании схемы и её описании 1. Array must not contain duplicate elements: [] 2. Array is too short: must have at least 1 elements but instance has 0 elements: [] |
7 |
/api/rest/chats/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/typing |
Не задана |
POST |
Разрешить |
Возникает, когда пользователь пишет в чат сообщение и сервер уведомляет других участников |
<EMPTY_POST> |
8 |
/api/rest/chat-calls/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/demonstration/screenshare/start |
Не задана |
POST |
Разрешить |
Возникает в p2p-звонке при попытке запустить трансляцию экрана |
<EMPTY_POST> |
9 |
/api/rest/chat-calls/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/demonstration/screenshare/stop |
Не задана |
POST |
Разрешить |
Возникает в p2p-звонке при попытке остановить трансляцию экрана |
<EMPTY_POST> |
10 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/demonstration/screenshare/start |
Не задана |
POST |
Разрешить |
Возникает в мероприятии при попытке остановить трансляцию экрана |
<EMPTY_POST> |
11 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/demonstration/screenshare/stop |
Не задана |
POST |
Разрешить |
Возникает в мероприятии при попытке остановить трансляцию экрана |
<EMPTY_POST> |
12 |
/api/rest/chats/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/clear-history |
Не задана |
POST |
Разрешить |
Возникает при очистке чата или группового чата |
<EMPTY_POST> |
13 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/leave |
Не задана |
POST |
Разрешить |
Возникает при нажатии на кнопку для выхода из конференции |
<EMPTY_POST> |
14 |
/api/rest/chat-calls/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/leave |
Не задана |
POST |
Разрешить |
Возникает при нажатии на кнопку для выхода из звонка |
<EMPTY_POST> |
15 |
/api/rest/chats/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/allow-notifications |
Не задана |
POST |
Разрешить |
Возникает при включении уведомлений в чате |
<EMPTY_POST> |
16 |
/api/rest/chats/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/forbid-notifications |
Не задана |
POST |
Разрешить |
Возникает при отключении уведомлений в чате |
<EMPTY_POST> |
17 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/reject-incoming-call |
Не задана |
POST |
Разрешить |
Возникает при отклонении входящего звонка из мероприятия |
<EMPTY_POST> |
18 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/stop |
Не задана |
POST |
Разрешить |
Возникает при попытке завершить мероприятие |
<EMPTY_POST> |
19 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12} |
Не задана |
PATCH |
Разрешить |
При изменении мероприятия / сессии мероприятия |
[Path '/backgroundImageId/value'] Instance type (null) does not match any allowed primitive type (allowed: ["string"]): [] |
20 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/participants/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/start-outgoing-call |
Не задана |
POST |
Разрешить |
Возникает при попытке позвонить внешнему пользователю из мероприятия |
<EMPTY_POST> |
21 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/participants/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/cancel-outgoing-call |
Не задана |
POST |
Разрешить |
Возникает при отмене звонка внешнему пользователю из мероприятия |
<EMPTY_POST> |
22 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/start |
Не задана |
POST |
Разрешить |
Возникает при попытке начать запланированное мероприятие |
<EMPTY_POST> |
23 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/demonstration/whiteboard/start |
Не задана |
POST |
Разрешить |
Возникает при попытке начать трансляцию белой доски |
Object instance has properties which are not allowed by the schema: ["height","width"]: [] |
24 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/whiteboard/books/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/pages/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/undo |
Не задана |
POST |
Разрешить |
Возникает при попытке отменить последнее действие на белой доске |
<EMPTY_POST> |
25 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/whiteboard/books/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/pages/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/clear |
Не задана |
POST |
Разрешить |
Возникает при попытке очистить белую доску |
<EMPTY_POST> |
26 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/demonstration/whiteboard/stop |
Не задана |
POST |
Разрешить |
Возникает при попытке остановить трансляцию белой доски |
<EMPTY_POST> |
27 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/demonstration/whiteboard/state |
Не задана |
PATCH |
Разрешить |
Возникает при первоначальном запуске трансляции после входа в конференцию |
Object instance has properties which are not allowed by the schema: ["height","width"]: [] |
28 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/participants/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/hand-up |
Не задана |
POST |
Разрешить |
Возникает при попытке поднять руку в мероприятии |
<EMPTY_POST> |
29 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/participants/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/hand-down |
Не задана |
POST |
Разрешить |
Возникает при попытке опустить руку в мероприятии |
<EMPTY_POST> |
30 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/documents/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/create-document-for/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12} |
Не задана |
POST |
Разрешить |
Возникает при загрузке документа в мероприятие |
<EMPTY_POST> |
31 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/demonstration/document/stop |
Не задана |
POST |
Разрешить |
Возникает при остановке трансляции документа |
<EMPTY_POST> |
32 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/demonstration/document/state |
Не задана |
PATCH |
Разрешить |
Возникает при первоначаль-ном запуске трансляции документа после входа в конференцию. |
Object instance has properties which are not allowed by the schema: ["documentId"]: [] |
33 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/record/start |
Не задана |
POST |
Разрешить |
Возникает при попытке начать запись конференции |
<EMPTY_POST> |
34 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/record/stop |
Не задана |
POST |
Разрешить |
Возникает при попытке остановить запись конференции |
<EMPTY_POST> |
35 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/demonstration/video-document/pause |
Не задана |
POST |
Разрешить |
Возникает при паузе трансляции видеозаписи в конференции |
<EMPTY_POST> |
36 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/demonstration/video-document/stop |
Не задана |
POST |
Разрешить |
Возникает при остановке трансляции видеозаписи в конференции |
<EMPTY_POST> |
37 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/demonstration/video-document/play |
Не задана |
POST |
Разрешить |
Возникает при возобновлении трансляции видеозаписи после паузы в конференции |
<EMPTY_POST> |
38 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/lobby/participants/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/approve |
Не задана |
POST |
Разрешить |
Возникает при попытке добавления конкретного пользователя в мероприятие из комнаты ожидания |
<EMPTY_POST> |
39 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/lobby/participants/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/reject |
Не задана |
POST |
Разрешить |
Возникает при попытке отказа добавления конкретного пользователя в мероприятие из комнаты ожидания |
<EMPTY_POST> |
40 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/lobby/approve-all |
Не задана |
POST |
Разрешить |
Возникает при попытке добавления всех пользователей из комнаты ожидания в мероприятие |
<EMPTY_POST> |
41 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/lobby/reject-all |
Не задана |
POST |
Разрешить |
Возникает при попытке отказа добавления всех пользователей из комнаты ожидания в мероприятие |
<EMPTY_POST> |
42 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/lobby/leave |
Не задана |
POST |
Разрешить |
Возникает при нажатии на кнопку «Выйти из мероприятия» в комнате ожидания |
<EMPTY_POST> |
43 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/join |
Не задана |
POST |
Разрешить |
Возникает при попытке в хода в мероприятие по гостевой ссылке |
[Path '/ticketInfo/passcode'] Instance type (null) does not match any allowed primitive type (allowed: ["string"]): [] |
44 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/messages?(.*) |
Не задана |
GET |
Разрешить |
При загрузке сообщений от пользователя в конференции |
Невалидное описание схемы: Instance value ("66621362-5ca0-4935-a6e0-b0d2fd44125b") not found in enum (possible values: ["ALL","COMMON","Target participant id as string <uuid>"]): [] |
45 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/inquiries |
Не задана |
POST |
Разрешить |
При создании опроса в мероприятии в вариациях:
|
Object instance has properties which are not allowed by the schema: ["allowFreeInput"]: [] |
46 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/media/public-audio-stream |
Не задана |
GET |
Разрешить |
При использовании синхронного перевода |
Нет описания в схеме |
47 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/groups/create |
Не задана |
POST |
Разрешить |
В конференциях с группами и длительностью бесконечное |
Невалидное описание в схеме: требуется указать duration не меньше 60000, хотя разрешено использовать 0 |
48 |
/api/rest/conferences |
Не задана |
POST |
Разрешить |
При создании мероприятия с дополнительным параметром: «Регистрация на мероприятие» с опросом |
Неправильное описание в схеме или неправильное использование в web-клиенте [Path '/questionnaire/polls/0'] Object instance has properties which are not allowed by the schema: [Path '/questionnaire/polls/0/choices/0'] Object instance has properties which are not allowed by the schema: ["innerId"]: [] —количество подобных ошибок зависит от количества вариантов ответа |
49 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/media/broadcast-language |
Не задана |
POST |
Разрешить |
При использовании синхронного перевода |
Неправильное описание в схеме: [Path '/language'] Instance value ("ORIGINAL") not found in enum (possible values: |
50 |
/api/rest/conferences/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12} |
Не задана |
PATCH |
Разрешить |
При изменении планируемого периодического мероприятия |
Неправильное описание в схеме |
51 |
/api/rest/conference-sessions/sessions?(.*) |
Не задана |
GET |
Разрешить |
При получении всех сессий мероприятия в web-клиенте |
limit=100&dateFrom=NaN |
52 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/transcription/start |
Не задана |
POST |
Разрешить |
Возникает при попытке запустить стенограмму |
<EMPTY_POST> |
53 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/media/request-attention |
Не задана |
POST |
Разрешить |
Возникает при запросе помощи из группы |
<EMPTY_POST> |
54 |
/api/rest/conference-sessions/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/media/revoke-attention-request |
Не задана |
POST |
Разрешить |
Возникает при отмене запроса помощи из группы |
<EMPTY_POST> |
Фильтры правила IVA-MCU Block Std:
Не определены. В это правило можно добавить фильтры для любых запросов, которые необходимо заблокировать.
Фильтры правила IVA-MCU Allow URI:
№ |
Параметры |
Назначение |
|||
URL-путь |
OpenAPI-схема |
Метод |
Действие |
||
Стандартные проверки |
|||||
1 |
/api/rest/(.*) |
ClientAPI |
— |
— |
Вызов методов клиентского REST API |
Подключение iOS- / Android-приложений |
|||||
2 |
/api/ws/InstantMessagingWebService/InstantMessaging |
Не задана |
POST |
Разрешить |
SOAP-запросы для клиентов с ОС iOS / Android |
3 |
/api/ws/NotificationWebService |
Не задана |
POST |
Разрешить |
SOAP-запросы для клиентов с ОС iOS / Android |
4 |
/api/ws/UserWebService/User |
Не задана |
POST |
Разрешить |
SOAP-запросы для клиентов с ОС iOS / Android |
5 |
/api/ws/ContactWebService/Contact |
Не задана |
POST |
Разрешить |
SOAP-запросы для клиентов с ОС iOS / Android |
6 |
/api/ws/DocumentsWebService/Documents |
Не задана |
POST |
Разрешить |
SOAP-запросы для клиентов с ОС iOS / Android |
7 |
/api/ws/MobileAppWebService/MobileApp |
Не задана |
POST |
Разрешить |
SOAP-запросы для клиентов с ОС iOS / Android |
Настройка маршрутизации TURN
Ниже приведён пример настройки сервера проксирования IVA SBC для маршрутизации TURN-трафика на разрешённые IP-адреса медиасерверов платформы IVA MCU.
Чтобы настроить сервер проксирования для маршрутизации TURN, необходимо:
-
войти в Web-интерфейс администрирования IVA SBC
-
в разделе Маршруты TURN добавить маршрут (см. Создание и редактирование маршрутов TURN), задав имя, например: IVA MCU 51 Media Server
-
в окне Информация о маршруте TURN добавить (см. Добавление и редактирование разрешённых IP-адресов):
-
IP-адрес: IVA_MEDIA_IP
-
Порты: 20000-30000
-
-
в разделе Группы маршрутизации создать группу маршрутизации (см. Настройка групп маршрутизации) с параметрами:
-
Имя: Turn for 51 Server IVA MCU
-
Описание: Список разрешённых IP-адресов для 51 сервера IVA MCU
-
Тип: TURN Proxy
-
-
в окне Информация группе маршрутизации TURN добавить созданный маршрут (см. Создание группы маршрутизации) IVA MCU 51 Media Server
-
в разделе Сервера проксирования выбрать сервер проксирования
-
в окне Информация о сервере проксирования для роли TURN выбрать группу маршрутизации (Turn for 51 Server IVA MCU) и активировать роль (см. Добавление Ролей проксирования)
Дальнейшие шаги зависят от типа аутентификации: статической или динамической
Рекомендуется динамическая аутентификация. Доступна в IVA MCU версии 23.0 и старше |
-
в окне Информация о сервере проксирования выполнить настройку TURN (см. Настройка TURN) с параметрами:
-
Порт TCP/UDP: 3478
-
Статическая аутентификация: нажать переключатель
-
Статический логин: логин для доступа к TURN-серверу (например ivcs)
-
Статический пароль: пароль для доступа к TURN-серверу (например ivcs)
-
Relay IP: IP-адрес сервера проксирования IVA SBC (10.0.202.201), по которому он будет доступен для получения пакетов внутри сети (от медиасерверов IVA MCU)
-
-
войти в Web-интерфейс администрирования Платформы IVA MCU:
-
в разделе Настройки STUN/TURN серверов создать сервер и настроить параметры:
-
Url: URL-адрес до STUN / TURN сервера (turn:200.0.210.110:3478?transport=udp)
-
Тип сервера: Внешний
-
Тип аутентификации: Статическая
-
Имя пользователя: ivcs
-
Пароль: ivcs
-
-
-
в окне Информация о сервере проксирования выполнить настройку TURN (см. Настройка TURN) с параметрами:
-
Порт TCP/UDP: 3478
-
Аутентификация по секретному ключу: нажать переключатель
-
Секретный ключ: ввести секретный ключ, например turnSecretKey1
-
Relay IP: IP-адрес сервера проксирования IVA SBC (10.0.202.201), по которому он будет доступен для получения пакетов внутри сети (от медиасерверов IVA MCU)
-
-
войти в Web-интерфейс администрирования Платформы IVA MCU:
-
в разделе Настройки STUN/TURN серверов создать сервер и настроить параметры:
-
в разделе Системные настройки в секции Безопасность настроить параметры:
-
Настройка HTTP Proxy
Ниже приведён пример настройки сервера проксирования IVA SBC для маршрутизации исходящих HTTP-запросов от сервера IVA MCU, не имеющего прямого доступа в Интернет для отправки push-уведомлений Google и Apple.
Чтобы настроить отправку push-уведомлений от IVA MCU на сервера Google (GCM) и Apple (APNS) через сервер проксирования с ролью HTTP Proxy:
-
войти в Web-интерфейс администрирования IVA SBC
-
в разделе HTTP Proxy добавить группу доступа (см. Добавление группы доступа), задав имя (например MCU-push) и описание
-
в окне Информация о группе доступа добавить (см. Добавление разрешённого адреса в группу доступа) адреса внешних серверов:
-
fcm.googleapis.com:443 — для отправки push-уведомлений Google
-
api.push.apple.com:443 — для отправки push-уведомлений Apple
При настройке HTTP Proxy в указанной конфигурации отправка c сервера IVA MCU web push-уведомлений для чат-ботов будет недоступна -
-
на вкладке Прокси пользователи добавить пользователя (см. Добавление прокси пользователя), указав имя, логин, пароль и список IP-адресов и сетей, с которых можно выполнять авторизацию пользователя
-
назначить прокси пользователю созданную группу доступа (см. Добавление группы доступа для прокси пользователя)
-
в разделе Сервера проксирования выбрать сервер проксирования
-
в окне Информация о сервере проксирования для выбранного сервера активировать роль HTTP Proxy (см. Добавление Ролей проксирования)
-
войти в Web-интерфейс администрирования Платформы IVA MCU:
-
в разделе Системные настройки перейти к секции Настройки клиентских приложений
-
в поле Прокси для push-уведомлений ввести адрес севера проксирования в формате: http://<login>:<pwd>@<SBC_PROXY_IP>, где:
-
login — логин прокси пользователя
-
pwd — пароль прокси пользователя
-
SBC_PROXY_IP — IP-адрес сервера проксирования с ролью HTTP Proxy
-
-
Если требуется настроить проксирование запросов от сервера IVA MCU к внешним сервисам распознавания речи:
-
выполнить аналогичные настройки HTTP Proxy, добавив в окне Информация о группе доступа адреса серверов внешних онлайн-сервисов распознавания речи
-
в Web-интерфейсе администрирования Платформы IVA MCU:
-
в разделе Системные настройки перейти к секции Настройки распознавания речи
-
в поле Прокси сервер для доступа к системе распознавания речи ввести адрес севера проксирования в формате: http://<login>:<pwd>@<SBC_PROXY_IP>
-
Обращения к API онлайн-сервисов распознавания речи выполняются с медиасерверов IVA MCU |
Настройка проксирования FLV-вебинаров
Ниже описана настройка совместной работы IVA SBC и IVA MCU для проксирования FLV-вебинаров.
Настройка IVA SBC
-
подготовить список IP-адресов серверов IVA MCU, которые будут использоваться для FLV
-
в разделе Маршруты FLV добавить маршрут (см. Создание и редактирование маршрутов FLV), например IVA MCU FLV
-
в окне Информация о маршруте FLV добавить для каждого IP-адреса из шага 1 (см. Добавление и редактирование разрешённых IP-адресов):
-
IP-адрес: IVA_FLV_IP, где IVA_FLV_IP — IP-адрес со стороны IVA MCU
-
Порты: 1935
-
-
в разделе Группы маршрутизации создать группу маршрутизации (см. Настройка групп маршрутизации) с параметрами:
-
Имя: IVA MCU FLV
-
Описание: Список разрешённых IP-адресов для IVA MCU
-
Тип: FLV Media
-
-
в окне Информация группе маршрутизации FLV добавить созданный маршрут (см. Создание группы маршрутизации) IVA MCU FLV
-
в разделе Сервера проксирования выбрать серверы проксирования, которые будут выполнять роль FLV Media. Каждый сервер должен иметь уникальное доменное имя, например: flv-1.mycompany.ru, flv-2.mycompany.ru.
Для каждого из серверов:
-
для роли FLV выбрать группу маршрутизации IVA MCU FLV и активировать роль (см. Добавление Ролей проксирования)
-
указать порт, на котором будет слушаться поток (см. Настройки FLV)
-
-
Убедиться в наличии валидных сертификатов, например flv-1.mycompany.ru, flv-2.mycompany.ru или *.mycompany.ru (см. Настройка SSL-сертификатов)
Настройка IVA MCU
-
получить FQDN-адреса серверов проксирования IVA SBC с ролью FLV Media, например flv-1.mycompany.ru, flv-2.mycompany.ru
Доменные имена серверов IVA SBC задаются в корпоративной DNS-системе. FQDN-адреса можно уточнить у системного администратора компании -
войти в Web-интерфейс администрирования Платформы IVA MCU
-
настроить трансляцию FLV-вебинара в соответствии с руководством администратора IVA MCU, указав в поле Адреса для прямого доступа адреса FLV-прокси в формате <SBC_PROXY_IP>=<SBC_PROXY_FQDN>:port, где:
-
SBC_PROXY_IP — IP-адрес сервера проксирования с ролью FLV Media
-
SBC_PROXY_FQDN - FQDN-адрес сервера проксирования с ролью FLV Media
-
port — порт для FLV-проксирования вебинаров
например: 10.0.206.71= flv-1.mycompany.ru:8443
Все FQDN-адреса должны быть перечислены в качестве доверенных источников в формате <SBC_PROXY_FQDN>:8443:
Web-панель администрирования IVA MCU → Раздел Системные настройки → Секция Настройки HTTP → Доверенные источники
Сервера с ролью FLV Media, которые находятся вне общего облака установки IVA MCU (недоступны и / или не зарегистрированы в Registry и не контролируются системой мониторинга), необходимо описать в поле Неконтролируемые медиа сервера -