Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Kamailio как proxy для WebRTC

IqTek
September 30, 2019

Kamailio как proxy для WebRTC

Транспорт, такой как TCP, TLS или UDP
Требуемые модули: sl, nathelper/outbound, xhttp, websocket
Полезные модули: auth_ephemeral, rtpproxy-ng

IqTek

September 30, 2019
Tweet

More Decks by IqTek

Other Decks in Programming

Transcript

  1. Конференция Kamailio 2019 WebSocket • Транспорт, такой как TCP, TLS

    или UDP • Требуемые модули: sl, nathelper/outbound, xhttp, websocket • Полезные модули: auth_ephemeral, rtpproxy-ng
  2. Конференция Kamailio 2019 NAT • JS приложение всегда за NAT,

    так как не имеет возможности узнать адрес и порт внешнего подключения • SIP сервер не может доверять адресу и порту в SIP сообщения, полученных через WS • nathelper/outbound могут решить эту проблему
  3. Конференция Kamailio 2019 Авторизация • У веб-сайта есть собственная авторизация

    • Реальные SIP учетные данные - плохо Для WebRTC не требуется выделение реальных SIP учетных данных
  4. Конференция Kamailio 2019 auth_ephemeral • Выделение имени и пароля из

    GET запроса и авторизация • Проверка from-uri или to-uri в SIP как имени пользователя
  5. Конференция Kamailio 2019 Задача • Поддержка WebRTC для PBX, не

    имеющих такой возможности • Разгрузить Asterisk от транскодинга и шифрования • Авторизация на Asterisk
  6. Конференция Kamailio 2019 Проблемы • Пересылка по TCP, так как

    тело WebRTC запросов слишком велико • Уменьшение тела SDP, из-за ограничений pjsip (sic!) • Регистрация ◦ Сохранение при получении запроса ◦ Удаление при любом неудачном ответе ◦ В ON_REPLY save() не тот сокет ◦ Хранение только в памяти ◦ БД - для отладки