WebRTCMeeting example

Hi All,

I’m trying to make WebRTCMeeting examples work on an Azure Wowza Streaming Engine instance.

After following https://www.wowza.com/docs/how-to-use-webrtc-with-wowza-streaming-engine guide, example pages do not work and I get a startup error in logs/wowzastreamingengine_error.log: “HTTPProviderSimpleWebServer.onHTTPRequest: Document root path is not set.”

What can be wrong? Where do I find such a setting?

Thanks,

Zsolt

Hi Zsolt,

I have not tried to run these examples on a Cloud Provider, just on local physical machines. So hopefully we can debug this issue together. We are actively working on our WebRTC examples, so there may be some bumps in the road.

Have you tried setting up the basic WebRTC example through the one packaged with your Engine install? This allows you to run a script and might be a little easier for us to debug with you. Once we know the basic WebRTC example is working, we can move on knowing your WebRTC application is configured correctly.

Are you running the examples from the examples directory? Try placing the example repo code in the top level htdocs. (htdocs > webrtc > example-code-dirs)

Let me know if that helps.

Amara

Hi Amara,

Thanks for your quick answer. So far Chrome screenshare, publish and play examples from github are working fine (except that play wont work when publisher uses h264 (high Profile problem, I think), but works when publishing with e.g. vp8 codecs after disabling h264 in the streaming engine), so SSL and webrtc functionality seem to be fine.

On the other hand all these examples I managed only to use when the examples themself are on localhost. Streaming goes then fine through cloud instance.

I did not found the built-in examples. Now I see them. I will check how to install them now, and will inform you as soon as I can.

Best regards,

Zsolt

Hi Amara,

It did the trick. “Document root path is not set” error is gone for good it seems. Now all examples work from cloud instance. The problem with com.wowza.webrtc.meeting.test.CreateChat I managed to eliminate as well. It was a download mistake of mine.

Now I got to this point when trying to create meeting links:

No webpage was found for the web address: https://xyz:9443/webrtc/meeting/<%LOCATION%>?action=createChat

Zsolt

Add the HTTPProvider in your VHost.xml manually and restart engine. I usually do this in the Wowza Streaming Engine Manager.

No webpage found for createChat? But the page where you see a single button loads, createMeeting.html?

I’ll do a fresh install of Engine on my Windows machine today in between my meetings and see if we might be missing something.

Yes, that loads fine. I think the LOCATION is the problem here. https://github.com/WowzaMediaSystems/webrtc-examples/blob/44c15c9030ade378f123503576788b52c10c75d6/WebRTCMeeting/meeting/createMeeting.html

It should have some value which is missing?

Did you manage to check the createMeeting.html?

Another issue I found is that if I use https://www.wowza.com/docs/how-to-configure-multiple-ssl-certificates-per-domain-on-a-single-host-port-sni DomainToKeyStoreMap.txt even with only one entry, I’m getting the following errors on publish and screenshare examples.

Uncaught (in promise) DOMException: Failed to execute ‘addIceCandidate’ on ‘RTCPeerConnection’: Error processing ICE candidate

Should I create a new question about these?

You will need to change the showMeetingLinks.html file as follows:

Meeting ID: <%__MEETING_ID__%><br/>
Participant One Link: <a href="https://**[YOUR CERT NAME HERE]**.streamlock.net/<%__LOCATION__%>/createMeeting.html?streamID=<%__STREAMID_ONE__%>">Participant One</
a><br/>
Participant Two Link: <a href="https://**[YOUR CERT NAME HERE]**.streamlock.net/<%__LOCATION__%>/createMeeting.html?streamID=<%__STREAMID_TWO__%>">Participant Two</
a><br/>

I will get the readme updated and change the code so its more obvious too. Thank you for your patience!

Github repo has been updated pending a PR merge.

Without .streamlock.net it works fine.

Thank you.

Hi Amara,
Thank you first for replying me :slight_smile: I Checked with that also It’s not working

That’s my preferred method, create an application named “webrtc” so I’m not working in the default “live” example. I would certainly try that as this may be one of the slight differences.

Please do not share your private Streamlock information in the forums. That string of numbers and letters is what keeps your stream private and safe from hackers. You’ll need to repost your question without showing the SSL/TLS certificate information please.

I was able to replicate your experience without having my SSL cert configured, but I need to find time to confirm. Hoping to get to that later today or tomorrow based on my schedule and other work.

For your second question, I would recommend a support ticket and/or a new post in the forums.

Hi Zsolt Szalka & Amara ,

I also the followed the same document & got the same error HTTPProviderSimpleWebServer.onHTTPRequest: Document root path is not set. & also loading my page https://xyz.streamlock.net:9443/webrtc/Chrome/publish/Bandwidth/ is not working Would u please help on this ? ·

Try running the WebRTC example script that ships with Wowza Streaming Engine, that seemed to fix this issue for Zsolt. I think there is a slight difference in setup instructions between the scripts and the written docs for how the examples in the repo are written.

I’ll need to take a closer look at this. If I have time today, I’ll see what I can do.

I even followed that way also,it is not working ,I’m newbie to webrtc,If you don’t mind can u please share me your changes you did apart from the wowza doc

Does your basic play/publish work? I run my examples xyz.streamlock.net:9443/webrtc/publish/index.html and xyz.streamlock.net:9443/webrtc/play/index.html

My original setup used the built in WebRTC example (examples > WebRTC > install script). I think the documented location is slightly different, and might be causing your problem.

Are you running the examples from the examples directory or from the application? Try placing the example repo code in the top level htdocs. (htdocs > webrtc > example-code-dirs)

Will it be issue if runs this on by creating new application named “webrtc”?