Я использую voip из приложения для Android в браузере (веб-приложение). Я использую linux для sip как клиент для Android и SipML5 для части браузера (webapp). Может кто-нибудь объяснить мне, что такое поток voip-звонка при вызове от клиента на основе sip, например linphone, к веб-браузеру. Какова роль sip в этом и как передача медиа происходит между sip и браузером браузера webrtc. А также, что такое шлюз webRtc2sip коротким. Пожалуйста, помогите мне очистить эту путаницу ,Sip to WebRTC call
0
A
ответ
1
Поток вызова выглядит следующим образом:
SIP-клиент -> [SIP/RTP] -> Сервер SIP -> [SIP/RTP] -> WebRTC-SIP-шлюз -> [WebSocket/DTLS/SRTP] -> Клиент WebRTC.
(или точное обратное направление для звонков с WebRTC для SIP)
Следующие программы будут необходимы:
- SIP клиента: любой SIP конечных точек (софтфон или IP телефон таких как linphone вы)
- SIP-сервер: любой программный коммутатор или УАТС, такой как Asterisk
- WebRTC-SIP-шлюз: это самый сложный компонент. Вам нужно программное обеспечение, которое способно скрывать от простого SIP/RTP до WebRTC и инвертировать, например, шлюз mizu webrtc2sip. (Я упоминаю об этом, потому что он имеет встроенную поддержку SSL/WSS и включен TURN/STUN)
- Клиент WebRTC: обычно это работает в браузерах, но есть и собственные решения. Убедитесь, что он соответствует требованиям RFC 7118. Вы можете использовать SipML5 для этого, но я бы порекомендовал также проверить SIP.js и webphone, так как они, кажется, лучше поддерживаются.
Убедитесь в том, чтобы использовать HTTPS для размещения вашего клиента WebRTC, в противном случае он не будет работать с Chrome (Chrome позволяет WebRTC только с HTTPS сайтов и только с WSS WebSocket подключения к шлюзу WebRTC2SIP.
0
С WebRTC требует DTLS-RTP, RTCP-FB, ICE и множества других новейших стандартов, но стандарты VoIP устарели примерно на 10 лет, поэтому вам необходимо настроить шлюз для преобразования сигнализации и транскодирования RTP.