Asterisk 13 And WebRTC. Is Wiki Page Still Valid ?

Home » Asterisk Users » Asterisk 13 And WebRTC. Is Wiki Page Still Valid ?
Asterisk Users 10 Comments

Hello,

I’m trying to have my first calls with WebRTC. My server has asterisk 13.7.0.

I’m following the instructions from the wiki [1]. So I’m using [2] live demo from a Chrome navigator (v48) on Debian Jessie station.

Whenever I type something like ws://123.123.123.123:8088/ws in Expert Mode form (see [1]), I’m getting this error :
*2:SecurityError: Failed to construct ‘WebSocket’: An insecure WebSocket connection may not be initiated from a page loaded over HTTPS.*
If I replace ws://123.123.123.123:8088/ws with wss://123.123.123.123:8088/ws, this error message becomes with
*Disconnected: Failed to connet to the server*

My questions are:
1. Is wss now required by sipml5 live demo (implying wiki page is not up-to-date) ?
2. Do you have any pointer for WebRTC with Asterisk 13 and PJSIP ?

Regards

[1] https://wiki.asterisk.org/wiki/display/AST/WebRTC+tutorial+using+SIPML5
[2] https://www.doubango.org/sipml5/

10 thoughts on - Asterisk 13 And WebRTC. Is Wiki Page Still Valid ?

  • Hi Oliver,

    Yes, like the error says, you have to use wss on pages served via https. Furthermore, Chrome requires the use of https when you want to use getUserMedia. See here:
    https://developers.google.com/web/updates/2015/10/chrome-47-webrtc?hl=en. It says: ” Starting with Chrome 47, getUserMedia() requests are only allowed from secure origins: HTTPS or localhost.”

    The solution for development is, to host the webrtc client locally, so that you load the page from localhost. In that case getUserMedia is allowed with http, too (as the quote says). That means you have to download the dubango client and run a webserver on your dev machine.

    Unfortunately, there is not much documentation about this, as far as I
    can tell.

    Regards,

    Simon

  • Thank you much for yor reply.

    2016-02-18 13:30 GMT+01:00 Simon Hohberg :

    Is it implied here that both HTTPS and WSS must also come from the same server (Same Origin Policy) ?

    Then, can I also install my own WebRTC demo page on my own private Asterisk server and access this demo page through HTTPS ?
    If I’m not mistaken, this should fulfill all requirements.

    I didn’t find any.

  • No, the same origin policy does not apply to web sockets.

    It doesn’t matter where the asterisk server is hosted. It is important where the web application comes from. If you don’t want to use https and wss you only have the option to host the web app locally (on the same machine as the browser that loads the page), which probably makes sense only for development. Otherwise you have to use https and wss for the reasons discussed earlier.

    Hope it helps.

    Simon

  • 2016-02-18 14:57 GMT+01:00 Simon Hohberg :

    At least, it helped me to realize I still have several more things to learn
    😉

    My setup is the following:
    – an asterisk server,
    – a PC,
    – asterisk server and PC are installed on the same LAN
    – sipM5 live demo outside my LAN
    – no NAT/PAT configuration allowing incoming communications from the outside.

    Is using sipML live demo as a way to rapidly test private Asterisk WebRTC
    capabilies, something achievable ?
    What would keep this from working ?

  • Olivier wrote:

    If Chrome or the other browsers have changed things (or implemented new requirements, ala HTTPS for serving stuff up) then it may not be correct anymore. Chasing WebRTC is not currently something we currently do due to the resources involved, but if the community can provide any changes to the wiki page to help make it clearer or valid again they can be left as a comment and we can incorporate them. If code changes are required we do of course encourage those to be contributed[1].

    Cheers,

    [1] https://wiki.asterisk.org/wiki/display/AST/Patch+Contribution+Process


    Joshua Colp Digium, Inc. | Senior Software Developer
    445 Jan Davis Drive NW – Huntsville, AL 35806 – US
    Check us out at: http://www.digium.com & http://www.asterisk.org

  • I’m discovering WebRTC and I think it’s a technology that is quite difficult to integrate with so many changing interfaces.

    I think this is typically the kind of subject where the community could positively contribute to keep wiki pages updated.

    As I’m quite interested in this topic, I’m assigning myself this task for the next weeks.

    2016-03-02 12:40 GMT+01:00 Joshua Colp :