Wanted: WebRTC Tutorial

Home » Asterisk Users » Wanted: WebRTC Tutorial
Asterisk Users 6 Comments

A while back (last year maybe?), there was a Digium blog post on setting up WebRTC.

I was never able to get that working.

I was working with Asterisk 15 on a RHEL derived distro and had no idea of where to go to shoot the failure.

Has anyone got a tutorial with trouble shooting?

6 thoughts on - Wanted: WebRTC Tutorial

  • Great question! I’m assuming you’re talking about the SFU blog post –
    http://blogs.asterisk.org/2017/09/20/asterisk-15-multi-stream-media-sfu/
    ?

    I’d be curious as to what difficulties you ran into. We actually need to try to consolidate the information in that post with the webrtc setup page on the wiki –
    https://wiki.asterisk.org/wiki/display/AST/Asterisk+WebRTC+Support

    You might try those two pages if you haven’t yet. If you have already, perhaps posting your specific challenges that you encountered here might be helpful.

    Thanks!

  • That is indeed the post.  I could get as far as the second web page screenshot and nothing past that login/connect screen… and no meaningful logs on the asterisk instance.

    I tried serving the client via the Apache instance on the server (2.2 and 2.4) and from the asterisk built in http(s) server.

    I’m basically a hobbyist and occasional contractor.   The paying job beckoned, so…

    I’d REALLY like to get it working.  And for the record, I REALLY HATE pjsip.

    I’ve been twiddling Asterisk (and other VOIP systems) since 2002; Linux since ’93 and telecom since 1980.  The config is so opaque, poorly documented and error prone I, to this day, use the legacy sip config wherever I can.  No one has ever been able to show me an advantage for it and it doesn’t seem to use realtime configuration (even more of a drawback).  I much prefer realtime for my configuration on Asterisk;  Having configuration picked up from a DB is far preferable to reloading flat files.

  • [Apr 24 20:34:48] DEBUG[17170] http.c: HTTP opening session.  Top level
    [Apr 24 20:34:48] DEBUG[17170] http.c: HTTP Request URI is /cyber/index.html
    [Apr 24 20:34:48] DEBUG[17170] http.c: Requested URI [/cyber/index.html] has no handler
    [Apr 24 20:34:48] DEBUG[17170] http.c: HTTP keeping session open. status_code:404

    When I serve it from apache, the web ui appears, but never connects.

    Using the firefox dev tools/console I see firefox can’t establish a connection the server at wss://:8089/ws

    The asterisk debug log shows:

    [Apr 24 20:39:21] DEBUG[19041] http.c: HTTP opening session.  Top level
    [Apr 24 20:39:21] DEBUG[19041] http.c: HTTP Request URI is /ws
    [Apr 24 20:39:21] DEBUG[19041] http.c: Requested URI [/ws] has no handler
    [Apr 24 20:39:21] DEBUG[19041] http.c: HTTP keeping session open. status_code:404

    Suggestions?

  • When using static-http you have to have /static at the front so the path would be:
    /static/cyber/index.html

    Is there anything in the console at startup stating that stuff didn’t load? The module which does websockets is res_http_websocket, and you can see if all that is needed is loaded using:

    “module show like websocket”

    on the CLI.


    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

  • That’s a step closer!  The URI has to be
    /asterisk/static/cyber/index.html. I should make the asterisk part go away, but for now…

  • I’d REALLY like to get it working. And for the record, I REALLY HATE pjsip.

    I’ve configured PJSIP to use realtime as a test, I don’t use it in production but I feel I could.

    Just set it up in extconfig and create the necessary tables.

    ps_endpoints => odbc,asterisk ps_auths => odbc,asterisk ps_aors => odbc,asterisk ps_domain_aliases => odbc,asterisk ps_endpoint_id_ips => odbc,asterisk ps_registrations => odbc,asterisk ps_phoneprov => odbc,asterisk

    There’s a tutorial in the Wiki for it https://wiki.asterisk.org/wiki/display/AST/Setting+up+PJSIP+Realtime

    The major advantage of PJSIP over chan_sip to me is PJSIP is being developed where chan_sip isn’t. It also introduces things like resource lists, and parallel forking of contacts which are both nice features.