Comment on page
Настройка WebRTC в Asterisk (FreePBX)
- Сервер телефонии должен быть доступным из Интернет, т.е. иметь белый IP.
- Должен быть рабочий SSL/TLS-сертификат.
- При использовании браузерного софтфона на сервере Asterisk должен быть настроен wss (WebSocket Secure), и порт должен быть открыт наружу (обычно 8089) (?). Настраивается в интерфейсе администратора: Advanced Settings > Asterisk Builtin mini-HTTP section > HTTPS Bind Port
- Диапазон портов для RTP (обычно 10000-20000) (?). Настраивается в интерфейсе администратора: Settings → Asterisk SIP Settings → General SIP Settings Tab
В данном примере рассматривается настройка WebRTC в уже работающем FreePBX-сервере:
- доступен по адресу .ru и имеет SSL/TLS-сертификат.
- FreePBX версии 16, Asterisk версии 15.
- настроен wss через порт 8089.
- открыты все остальные нужные порты.
Если кнопка “Change To CHAN_PjSIP Driver” (см. ниже, в настройке внутреннего номера) доступна, то в данном разделе ничего делать не нужно.
Settings ➝ Advanced Settings
Раздел Dialplan and Operational | Text |
---|---|
SIP Channel Driver | both |
Settings ➝ Asterisk SIP Settings
Вкладка “SIP Legacy Settings [chan_sip]”
Проверить, что установлены переменные:
Раздел Advanced General Settings | Text |
---|---|
Other SIP Settings | icesupport = yes media_encryption = dtls tlscipher = AES256-SHA |
Создание и настройка внутреннего номера (extension)
Зайти в интерфейс настройки FreePBX и залогиниться: https://<example>.ru/
Перейти в раздел Applications ➝ Extensions
Кнопка “+ Add Extension” ➝ “+ Add New SIP (Legacy) [chan_sip] Extension” (в других версиях FreePBX может быть “Add New Chan_SIP extension”)
Во вкладке General:
Раздел Add Extension | Text |
---|---|
User Extension | 1001 |
Display Name | 1001 |
Нажать кнопку Submit
После этого в списке расширений открыть редактирование только что созданного расширения (в строке с 5001 в колонке Actions нажать кнопку редактирования с ик онкой с карандашом).
Перейти во вкладку Advanced
Сначала поменять SIP Driver на PjSIP:
Вкладка Advanced → Раздел Edit Extension | Text |
---|---|
Change SIP Driver | Change To CHAN_PjSIP Driver Эта кнопка может быть недоступна, это значит, что PjSIP отключен, нужно его включить в настройках (см.выше). |
Теперь должна появиться возможность сделать следующие настройки:
Вкладка Advanced → Раздел Edit Extension | Text |
---|---|
Enable WebRTC defaults | Yes |
Media Encryption | DTLS-SRTP (not recommended) |
Нажать кнопку Submit
Потом поменять SIP Driver обратно:
Вкладка Advanced → Раздел Edit Extension | Text |
---|---|
Change SIP Driver | Change To CHAN_SIP Driver |
Теперь сделать оставшиеся настройки:
Вкладка Advanced → Раздел Edit Extension | Text |
---|---|
Transport | All - WSS Primary |
Enable AVPF | Yes |
Force AVP | Yes |
Enable ICE Support | Yes |
Enable rtcp Mux | Yes |
Enable Encryption | Yes (SRTP only) |
Раздел DTLS | |
Enable DTLS | Yes (уже должно быть) |
Use Certificate | <example>.ru |
Нажать кнопку Submit
Нажать кнопку Apply Config
Для примера воспользуемся сервисом sipML5 live demo от Doubango: