[Freeswitch-users] Convert Sip to Webrtc-like call

Dave Horton daveh at beachdognet.com
Sat Mar 18 15:46:24 MSK 2017


I built something similar - a sip.js-based browser coupled with a webrtc proxy using freeswitch for the media proxy (no verto), with a separate SIP signaling engine (in my case instead of opensips I used my open open source framework, called drachtio https://github.com/davehorton/drachtio-server <https://github.com/davehorton/drachtio-server>).

TLDR; For the inbound call to the browser, send a 3pcc INVITE to the browser

Meaning:

1. Send INVITE with no SDP to the browser
2.  Get 200 OK with SDP and ICE candidates
3. Send INVITE to freeswitch with that SDP
4. Get 200 OK from freeswitch with its SDP
5. Send ACK to browser with SDP from freeswitch

Freeswitch then bridges the call from the webrtc side to the sip side.

FYI, my browser app can be seen at https://webrtc.drachtio.org/ <https://webrtc.drachtio.org/>, feel free to try it out, with a couple of notes:
1) only google authentication is supported
2) you need to have sip credentials from a hosted VoIP provider
3) when you first log in, select the ‘Settings’ menu from the upper right and add your sip credentials
4) its meant to be an operator type console where you can also monitor other extensions in your business using sip presence, do call pickup etc. 
5) video is currently not supported

Browser app is built using google polymer material design, and code is here: https://github.com/davehorton/webrtc-operator-console <https://github.com/davehorton/webrtc-operator-console>
Webrtc proxy app code is here: https://github.com/davehorton/ws-proxy <https://github.com/davehorton/ws-proxy>, and as noted depends on drachtio server and freeswitch (using drachtio-fsmrf module for controlling freeswitch).

For more details or help, feel free to email me directly or open issues on any of those projects.


On Mar 18, 2017, at 6:03 AM, Kamil Nigmatullin <kamil.nigmatullin at gmail.com> wrote:

Maybe it is a silly question, but cannot find anything. I have the opensips that handles auth and all routing, and freeswitch is responsible for handling media, prepaid and so on.

Now, I want to implement browser clinent based on sip.js and therefore i pass all sip signalling through opensips's implementetion for websockets. For outgoing invites from browser clients this works. 

But for calls that are directed to browser clients it doesn't. I beleive that this is due to simlpe sip call does not have ice-candidates. So, the question is how to make freeswitch convert simple sip call to web-rtc oritenteated. I didn't implement mod_verto. 

Thanks in advance

-- 
Kamil Nigmatullin
Skype: kamil.nigmatullin
_________________________________________________________________________
Professional FreeSWITCH Consulting Services: 
consulting at freeswitch.org
http://www.freeswitchsolutions.com

Official FreeSWITCH Sites
http://www.freeswitch.org
http://confluence.freeswitch.org
http://www.cluecon.com

FreeSWITCH-users mailing list
FreeSWITCH-users at lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20170318/b377f6f5/attachment-0001.html 


Join us at ClueCon 2016 Aug 8-12, 2016
More information about the FreeSWITCH-users mailing list