Задать вопрос

Где взять пример/док по реализации WebRTC SIP server side?

Добрый день.
Задача: сделать "SIP телефон" в браузере для организации работы call-центра. SIP номера берутся в аренду. Звонки будут на внешние телефоны (мобильные). "SIP телефон" будет частью небольшой custom CRM.

Для решения задачи пытался завести www.sipml5.org и jssip.net
(вообще не принципиально, главное что бы WebRTC).

Перечитал много всего, но никак не могу победить серверную часть, а именно реализацию websocket для simpl5 или jssip. Не могу найти ни примеров по реализации, или хотя бы мануал, в котором хотя бы примерно описывалось, что требуется.

Насколько я понял, WebSocket будет что-то наподобие туннеля/транспорта?

Буду благодарен за полезный материал по теме server side SIP WebRTC.
ps: совсем запутался, всегда с телефонией тяжко мне было;)
  • Вопрос задан
  • 6628 просмотров
Подписаться 6 Оценить Комментировать
Решения вопроса 1
@hbruser
Собственно, варианта два
1. SIP через Websocket
2. Кустомный сигналинг через Websocket и далее SIP

И в том и в другом случае нужен будет промежуточный сервер.

В первом случае это Stateful SIP прокси, который сможет принимать SIP через Websocket и далее работать с провайдером через SIP/UDP.

Browser <--[SIP over Websocket]--> Stateful SIP Proxy <--[SIP over UDP/TCP]--> VoIP provider

Может конечно случиться что вам повезет и VoIP провайдер держит спецификацию Websocket over SIP, но это вряд ли.
Т.е. ищите в направлении Stateful SIP Proxy RFC7118.

Второй вариант - не использовать SIP на стороне браузера и использовать сервер, к которому можно обращаться простыми командами через JS API. Например call() login() answer() и т.д. Т.е. опять же нужен промежуточный сервер, но это уже не Stateful SIP Proxy, а транслятор Js в SIP. Из известных мне рабочих решений: Web Call Server.
Кроме того есть ряд SAAS решений с RESTful API, где не нужно хостить сервер у себя.

Кстати, в первом случае кроме Stateful SIP Proxy может потребоваться медиа сервер, например при попытке соединиться с PSTN телефоном по G.729. Этот кодек не поддерживается в WebRTC и соединение без такого сервера не пройдет.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы