WebRTC TO SIP gateway -Description

The WebRTC-SIP gateway (MRTC) will make your IP-PBX or softswitch WebRTC capable, allowing desktop and mobile browsers to initiate and receive calls to/from your SIP service over websocket and WebRTC completely transparently, without any configuration changes on your existing server(s).

The Mizu WebRTC-SIP gateway performs full conversion between the WebRTC and SIP protocols.

The gateway is an all-in-one self-hosted software solution to convert VoIP from browsers (HTML5 WebRTC using websockets and DTLS secure media) to standard SIP protocol (plain SIP and RTP) which can be processed by common VoIP servers such as Asterisk, OpenSIPS and others. The WebRTC-SIP proxy allows web browsers to interact (make and receive voice calls, video calls, chat, presence and others) with any SIP network with complete protocol conversion from WebRTC to SIP and back, including both the signaling, the ICE and the media streams, without the need to download or install any browser plugin, as WebRTC is already built in most major browsers plugin-free. The gateway includes all the necessary modules for a trouble-free WebRTC protocol conversion, such as DTLS/SRTP transcoder, built-in STUN and TURN servers and extra features to maximize call quality and success ratio, thus boosting your users' VoIP experience. Using the MRTC software you can turn any web page into a VoIP telephone or add click-to-call functionality for any website.

The WebRTC gateway (MRTC) process can be run on your existing softswitch (if that is running on legacy x86 OS) or on a separate box near your softswitch. It can be hosted also in the cloud or as a virtual machine. You will just have to set its basic networking configuration (IP, domain) and specify the SIP address of your existing server and you are ready to accept WebRTC traffic from browsers. If necessary, you can easily turn on extra features or modify its settings such as routing to multiple upper servers, DTMF method, chat/call recording and routing rules.

The Mizu WebRTC to SIP gateway can be installed and configured within minutes even by novices with less or no knowledge about SIP or WebRTC, as the gateway will self-optimize itself automatically for your network and environment, so you can start accepting WebRTC traffic to your SIP server instantly.

Easy to use configuration wizard: Correct and optimal WebRTC-SIP configuration can be a real challenge. This is not the case with the mizu gateway as by providing a few details (such as your IP) on its GUI configuration wizard, it will auto-optimize itself for your use-case, including NAT configuration, TLS certificate management, port settings and TURN/STUN settings optimized for your hardware and network.

Works in all network conditions: The webrtc gateway will automatically adapt to your network/NAT and auto-decide the best transport method for all sessions, thus providing full compatibility for all browsers regardless of the client side NAT or firewall (will try to use UDP for media by default -direct p2p or via relay- and if necessary it will fail-back using TCP port 80 which is enabled on most firewalls). The media capabilities are also auto-negotiated and the "best" available codec is always selected by default (including auto codec conversion when required).

Compatibility: The webrtc gateway is based on open standards, compatible with all SIP servers/PBX/softswitch (such as Asterisk, Cisco, Freeswitch, 3CX, FreePBX, Elastix, OpenSIPS and many others), all SIP endpoints (IP Phones, gateways, ATA's and softphones such as X-Lite), all OS and all browsers (such as Chrome, Firefox, Opera, Edge or via plugins in browsers where WebRTC is still not built-in such as IE and Safari).

Reliability: Some IPPBX and softswitch has built-in webrtc module. However, most of the available implementations will offer you inferior quality which is not suitable for commercial deployments. For example, most of the available webrtc stacks will work only when used from simple networks and will not work from corporate networks where more rigorous NAT and firewall rules are applied (such as allowing only TCP 80 and 443 for HTTP/HTTPS traffic).
We take special care to make sure that our solution offers high availability and the best possible call quality in all network conditions regardless of client/server environment.

On the server side it is compatible with all PBX/VoIP server/SIP trunk/proxy/gateway/carrier supporting the SIP protocol such as Asterisk, 3CX, Broadsoft, Brekeke, Yate, FreePBX, Elastix, Trixbox, Voipswitch, FreeSWITCH, Cisco, Siemens, Huawei, NEC, Mitel and others.
Multiple SIP server support (route calls to one ore more SIP server, accept calls from one ore more sip servers).Direct SIP peers are also supported.

On the client side you can use any library implementing WebRTC and SIP over WebSocket as specified in RFC 7118, compatible with WebRTC stacks present in browsers like Chrome, Firefox, Edge, Opera and others, WebRTC plugins for IE or Safari or native libraries such as PJSIP.
All the common WebRTC SIP clients and JavaScript WebRTC libraries are supported such as Mizu WebRTC SIP client, SIPML5, JSSIP, SIP.JS and others.
Works from smartphone, tablet or desktop, using any operating system (Windows, Linux, MAC, Android, iOS).

Beside browser to SIP and SIP to browser, the gateway also has full support for browser to browser calls and SIP to SIP calls.

Usage

Follow these steps to get started:

Download and install the WebRTC gateway on a Windows server or PC near your exiting softswitch or IP-PBX

Follow the configuration wizard with special care for the "Network" and "SIP server" page (it is recommended to set a sub-domain name and enable auto SSL certificate)

Once ready, open the "How to connect" item from the "Help" menu. That will explain how you have to configure your WebRTC clients

the WebRTC protocol suite: websocket (WS/WSS) for signaling, TURN/STUN/RTP candidates for ICE and DTLS/SRTP for media (usually used by endusers from their browsers)

and the SIP protocol suite: SIP signaling over UDP/TCP, RTP/RTCP for the media and support for various SIP extensions (fully compatible with your existing IP-PBS or softswitch)

The MRTC (Mizutech WebRTC to SIP gateway) is an “all-in-one” solution for WebRTC / SIP protocol conversion with all the necessary modules built-in and with great care for the details such as various connectivity options for all network conditions, providing a reliable service for your users.

The WebRTC2SIP gateway acts like an SBC between the WebRTC clients and your SIP server offering various services such as registrar, routing, proxy or B2BUA, rtcweb breaker, ICE and media transcoder. It will work transparently, so there is no need to change any settings for your exiting SIP server to handle the WebRTC traffic. It will forward all authentications to your softswitch in a completely transparent way using common SIP digest authentication, so there is no need for any user management on the gateway.

Once the WebRTC client is started, it will connect to the gateway via a WebSocket connection and will start to register. These Websocket packets coming in HTTP/TCP are then converted by the gateway to plain SIP signaling and forwarded to your SIP server (usually by UDP but you can set also TCP for the SIP transport).

Before or at call connect the RTC clients are performing ICE lookups to gather its own and the peer media addresses (transport:IP:port combinations where the media needs to be sent). The WebRTC gateway will handle and answer these STUN and TURN request in an intelligent way, which will result in an optimal media path.

With the call setup (INVITE) the WebRTC client will send the above collected addresses as ICE candidates in SDP. The gateway will collect them and will also add a few extra candidates (UDP and TCP relay via the gateway) which can be used when no direct path has been found between parties or DTLS/SRTP needs to be converted to RTP.

At call setup the gateway will negotiate the best possible media parameters based on circumstances (client capabilities, client bandwidth, server capabilities, server load, configurations and other factors).

While in call, the WebRTC gateway will convert the DTLS/SRTP media from WebRTC (which is usually streamed in UDP but sometime in TCP) to plain RTP/RTCP which can be handled by your SIP server (Softswitch, IP-PBX, proxy or other equipment).

If necessary (when no common codec found during media negotiation), it will convert also between WebRTC codec (such as G.711 or OPUS) to common codecs used in telecommunication (such as G.729 or G.723) performing transcoding such as OPUS to G.729 or G.729 to G.711.

The WebRTC gateway will also handle extra features such as dtmf, call forward, call transfer, call fork, conference, chat, SMS, video, file transfer, presence and many others. Some of these features can be directly mapped from WebRTC to SIP with protocol conversion, others might need unique handling and capability negotiation with the client software.

By default the gateway will be configured with optimal defaults based on the basic settings you provide (IP, NAT, etc), however most parameters can be also modified/configured manually, such as using different ports, forcing a specific DTMF mode or forcing a specific codec conversion.

Use-case:

By using the standard WebRTC and SIP protocols, you can improve your business by providing VoIP capability for your customers which can be used from anywhere, plugin-free from browsers including a broad range of communication services such as voice and video calls, IM, presence, conference, screen sharing, file sharing and many others.

Call centers and contact centers: seamless integration of VoIP with your web based callcenter software allowing your agents to access your infrastructure from anywhere without the need to use any external SIP phone

Enterprise: collaboration for coworkers including audio/video/chat/screen sharing unified communication features

Online businesses: real time browser based communication including audio, video, IM and SMS

Health care: integrate RTC into health service to improve communications between doctors and staff members and for patients monitoring or easy click to call voice/video call capabilities for patients and doctors with no investment in special devices

Educations: bring the best teachers and tutors to your customer mobile/desktop screen and make distance learning a better experience

Cloud Telephony: since WebRTC is already present in most browsers, service providers and OTT vendors can enable their end-users to access their cloud VoIP services without the need to download any specific application