简体   繁体   中英

Sip to WebRTC call

我正在实现从 android 应用程序到浏览器(网络应用程序)的 voip。我使用基于 sip 的 linphone 作为 android 客户端,使用 SipML5 作为浏览器部分(webapp)。谁能解释一下从基于 sip 的客户端调用时的 voip 呼叫流程是什么linphone 到 web 浏览器。sip 在这方面的作用是什么,sip 和 webrtc 浏览器应用程序之间的媒体传输是如何发生的。还有,什么是 webRtc2sip 网关的简称。请帮我清除这个困惑。

The call flow looks like this:

SIP client -> [SIP/RTP] -> SIP server -> [SIP/RTP] -> WebRTC-SIP gateway -> [WebSocket/DTLS/SRTP] -> WebRTC client.

(or the exact inverse direction for calls from WebRTC to SIP)

The following software will be needed:

  • sip client: any SIP endpoint (softphone or IP phone such as the linphone you mentioned)
  • SIP server: any softswitch or PBX such as Asterisk
  • WebRTC-SIP gateway: this is a trickiest component. You need a software here which is capable to covert from simple SIP/RTP to WebRTC and inverse such as the mizu webrtc2sip gateway. (I am mentioning this because it has built-in SSL/WSS support and TURN/STUN included)
  • WebRTC client: this usually runs in browsers but there are also native solutions. Make sure that it is RFC 7118 compliant. You can use SipML5 for this but I would recommend to check also SIP.js and webphone since these seems to be better maintained.

Make sure to use HTTPS to host your WebRTC client, otherwise it will not work with Chrome (Chrome allows WebRTC only from HTTPS websites and only with wss websocket connection to the WebRTC2SIP gateway.

由于 WebRTC 需要 DTLS-RTP、RTCP-FB、ICE 和许多其他最新标准,而 VoIP 标准已有 10 多年的历史,因此您需要设置网关来转换信令和转码 RTP。

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM