Roll20 uses cookies to improve your experience on our site. Cookies enable you to enjoy certain features, social sharing functionality, and tailor message and display ads to your interests on our site and others. They also help us understand how our site is being used. By continuing to use our site, you consent to our use of cookies. Update your cookie preferences .
×
Create a free account
This post has been closed. You can still view previous posts, but you can't post any new replies.

Massive Problems with the WebRTC

Hello Roll20 Team and fellow users! I recently started a campaign on Roll20 with my D&amp;D group. We wanted to use the built-in WebRTC for voice and video chat as it really is a nice thing to have the video of all players together on the map screen. In theory, at least. In practice, we are having massive problems with the RTC system: Most of the time, it's just not possible to establish a connection. Sometimes, it randomly starts to work after spamming the reconnect button for some time, but most of the time, the players cannot receive audio nor video from the other players, although their own video and the bar that shows the voice activity are displayed correctly in their browser window. It's really strange, because, as I said, sometimes the RTC manages to establish a connection between two random players (unfortunately, only between them), but I can't really see why &nbsp;this is working at said times, because nobody changed anything on their settings in the meantime. All my players (and myself) are running on either Chrome or Firefox. I use Windows 10 Version 10.0.17134 Build 17134 with Chrome Version 70.0.3538.77. This is the Chrome log for the Roll20 app (it shows some errors, don't know if they have anything to do with it): app.roll20.net/:12 Refused to execute inline script because it violates the following Content Security Policy directive: "script-src 'self' 'unsafe-eval' https://*.googlesyndication.com https://*.doubleclick.net <a href="https://partner.googleadservices.com" rel="nofollow">https://partner.googleadservices.com</a> <a href="https://www.googletagservices.com" rel="nofollow">https://www.googletagservices.com</a> <a href="https://ssl.google-analytics.com" rel="nofollow">https://ssl.google-analytics.com</a> <a href="https://www.google-analytics.com" rel="nofollow">https://www.google-analytics.com</a> <a href="https://ajax.googleapis.com" rel="nofollow">https://ajax.googleapis.com</a> <a href="http://ajax.googleapis.com" rel="nofollow">http://ajax.googleapis.com</a> <a href="https://d3clqjduf2gvxg.cloudfront.net" rel="nofollow">https://d3clqjduf2gvxg.cloudfront.net</a> <a href="https://cdn.firebase.com" rel="nofollow">https://cdn.firebase.com</a> https://*.firebaseio.com https://*.tokbox.com https://*.opentok.com <a href="http://static.opentok.com" rel="nofollow">http://static.opentok.com</a> <a href="http://www.google-analytics.com" rel="nofollow">http://www.google-analytics.com</a> <a href="http://cdn.crowdin.com" rel="nofollow">http://cdn.crowdin.com</a> <a href="https://crowdin.com" rel="nofollow">https://crowdin.com</a> <a href="http://stun.l.google.com" rel="nofollow">http://stun.l.google.com</a>". Either the 'unsafe-inline' keyword, a hash ('sha256-53ji0Z42lKAbr845+xmBYI+ZAmbPW80JisWv8ggdNbI='), or a nonce ('nonce-...') is required to enable inline execution. app.roll20.net/:13 Refused to execute inline script because it violates the following Content Security Policy directive: "script-src 'self' 'unsafe-eval' https://*.googlesyndication.com https://*.doubleclick.net <a href="https://partner.googleadservices.com" rel="nofollow">https://partner.googleadservices.com</a> <a href="https://www.googletagservices.com" rel="nofollow">https://www.googletagservices.com</a> <a href="https://ssl.google-analytics.com" rel="nofollow">https://ssl.google-analytics.com</a> <a href="https://www.google-analytics.com" rel="nofollow">https://www.google-analytics.com</a> <a href="https://ajax.googleapis.com" rel="nofollow">https://ajax.googleapis.com</a> <a href="http://ajax.googleapis.com" rel="nofollow">http://ajax.googleapis.com</a> <a href="https://d3clqjduf2gvxg.cloudfront.net" rel="nofollow">https://d3clqjduf2gvxg.cloudfront.net</a> <a href="https://cdn.firebase.com" rel="nofollow">https://cdn.firebase.com</a> https://*.firebaseio.com https://*.tokbox.com https://*.opentok.com <a href="http://static.opentok.com" rel="nofollow">http://static.opentok.com</a> <a href="http://www.google-analytics.com" rel="nofollow">http://www.google-analytics.com</a> <a href="http://cdn.crowdin.com" rel="nofollow">http://cdn.crowdin.com</a> <a href="https://crowdin.com" rel="nofollow">https://crowdin.com</a> <a href="http://stun.l.google.com" rel="nofollow">http://stun.l.google.com</a>". Either the 'unsafe-inline' keyword, a hash ('sha256-RjZHEyoj30dwKrZgyMp9pVwQ9gstfVWJDKC4onvjZUY='), or a nonce ('nonce-...') is required to enable inline execution. jquery.migrate.js:20 JQMIGRATE: Logging is active app.js?1540914952:343 70 app.js?1540914952:344 TOUCH SUPPORTED: false app.js?1540914952:344 USING WEBGL ACCELERATION... app.js?1540914952:344 WEBGL STARTUP SUCCESS app.js?1540914952:346 Custom Sheet Translation app.js?1540914952:338 select app.js?1540914952:338 Switch mode to select app.js?1540914952:357 Initializing new dice engine with randomness... app.js?1540914952:357 Using random entropy app.js?1540914952:360 Compiling sheet... app.js?1540914952:360 Found rolltemplate: simple app.js?1540914952:360 Found rolltemplate: atk app.js?1540914952:360 Found rolltemplate: dmg app.js?1540914952:360 Found rolltemplate: atkdmg app.js?1540914952:360 Found rolltemplate: desc app.js?1540914952:360 Found rolltemplate: spell app.js?1540914952:360 Found rolltemplate: traits app.js?1540914952:360 Found rolltemplate: npc app.js?1540914952:360 Found rolltemplate: npcatk app.js?1540914952:360 Found rolltemplate: npcdmg app.js?1540914952:360 Found rolltemplate: npcaction app.js?1540914952:360 Found rolltemplate: mancerroll app.js?1540914952:360 Found Charactermancer template: l1-welcome app.js?1540914952:360 Found Charactermancer template: l1-race app.js?1540914952:360 Found Charactermancer template: l1-class app.js?1540914952:360 Found Charactermancer template: l1-abilities app.js?1540914952:360 Found Charactermancer template: l1-background app.js?1540914952:360 Found Charactermancer template: l1-equipment app.js?1540914952:360 Found Charactermancer template: l1-spells app.js?1540914952:360 Found Charactermancer template: l1-feat app.js?1540914952:360 Found Charactermancer template: l1-summary app.js?1540914952:360 Found Charactermancer template: final app.js?1540914952:360 Found webworker script app.js?1540914952:360 Found webworker script app.js?1540914952:360 Finding sheet rolls... app.js?1540914952:360 Including compendium template css. app.js?1540914952:363 window resize app.js?1540914952:345 Final set zoom! app.js?1540914952:344 UPDATE GL SIZE! app.js?1540914952:345 Final set zoom! tutorial_tips.js:7 tuts loaded Mixed Content: The page at '&lt;URL&gt;' was loaded over HTTPS, but requested an insecure image '&lt;URL&gt;'. This content should also be served over HTTPS. Mixed Content: The page at '&lt;URL&gt;' was loaded over HTTPS, but requested an insecure image '&lt;URL&gt;'. This content should also be served over HTTPS. Mixed Content: The page at '&lt;URL&gt;' was loaded over HTTPS, but requested an insecure image '&lt;URL&gt;'. This content should also be served over HTTPS. Mixed Content: The page at '&lt;URL&gt;' was loaded over HTTPS, but requested an insecure image '&lt;URL&gt;'. This content should also be served over HTTPS. Mixed Content: The page at '&lt;URL&gt;' was loaded over HTTPS, but requested an insecure image '&lt;URL&gt;'. This content should also be served over HTTPS. Mixed Content: The page at '&lt;URL&gt;' was loaded over HTTPS, but requested an insecure image '&lt;URL&gt;'. This content should also be served over HTTPS. Mixed Content: The page at '&lt;URL&gt;' was loaded over HTTPS, but requested an insecure image '&lt;URL&gt;'. This content should also be served over HTTPS. sheetsandboxworker.js?1541251777263:535 Starting up WEB WORKER sheetsandboxworker.js?1541251777268:535 Starting up WEB WORKER /js/d20/sheetsandboxworker.js?1541251777263:535 Starting up WEB WORKER /js/d20/sheetsandboxworker.js?1541251777268:535 Starting up WEB WORKER app.js?1540914952:351 Final page load. app.js?1540914952:363 Refresh jukebox List! app.js?1540914952:351 Auth'ed. app.js?1540914952:351 Go post auth! app.js?1540914952:363 Refresh jukebox List! app.js?1540914952:351 initial setup app.js?1540914952:363 Refresh jukebox List! app.js?1540914952:349 T.i pageModifier.js:113 check for duplicates: insertTimeout app.js?1540914952:351 Scan for new plays! app.js?1540914952:355 refershing page listings! app.js?1540914952:359 Refresh Journal List! VM920:3 Uncaught TypeError: Cannot read property 'id' of undefined &nbsp; &nbsp; at Object.eval (eval at jqotec (base.js?1530633549:20), &lt;anonymous&gt;:3:82) &nbsp; &nbsp; at HTMLScriptElement.&lt;anonymous&gt; (base.js?1530633549:20) &nbsp; &nbsp; at Function.each (jquery-1.9.1.js:648) &nbsp; &nbsp; at jQuery.fn.init.each (jquery-1.9.1.js:270) &nbsp; &nbsp; at jQuery.fn.init.jqote (base.js?1530633549:20) &nbsp; &nbsp; at Object.d20.journal.refreshSpeakingAsOptions (app.js?1540914952:360) &nbsp; &nbsp; at Object.d20.journal.refreshJournalList (app.js?1540914952:360) &nbsp; &nbsp; at app.js?1540914952:359 app.js?1540914952:351 Got players value... app.js?1540914952:351 joining game... app.js?1540914952:348 Full load page! app.js?1540914952:351 We have 6 pages app.js?1540914952:349 Player -LOnu-dGssKnnZrKAdHy is offline... app.js?1540914952:349 Global Volume: 43=0.18489999999999998 app.js?1540914952:349 Player -LPLN38ChcPbsqoX7KF4 is offline... app.js?1540914952:349 Player -LPkVwyQfHuATb2KdSCG is offline... app.js?1540914952:349 Player -LPoya1rzQ4Y8qt_k7gF is offline... app.js?1540914952:349 Player -LPqnHv-ArtMrI9_oi2j is offline... app.js?1540914952:349 Player -LQ3Uza8b4_VNLCL3pxT is offline... app.js?1540914952:351 Deferred finish joining... app.js?1540914952:343 Firebase Online app.js?1540914952:351 handle page changes app.js?1540914952:351 false app.js?1540914952:355 refershing page listings! pageModifier.js:113 check for duplicates: insertTimeout app.js?1540914952:351 init active page! app.js?1540914952:348 activate page! app.js?1540914952:348 FULLY ACTIVATE VIEWS FOR PAGE. app.js?1540914952:347 Do refresh link cache! app.js?1540914952:351 Scan for new plays! app.js?1540914952:359 Refresh Journal List! app.js?1540914952:359 Search took 105ms app.js?1540914952:348 Graphics: 6 app.js?1540914952:348 Paths: 0 app.js?1540914952:355 refershing page listings! app.js?1540914952:363 Refresh jukebox List! app.js?1540914952:348 Reorder by ZORDER app.js?1540914952:347 Swapping <a href="https://s3.amazonaws.com/files.d20.io/images/64938488/5QTfp0xRCbe1aZnjdNrUJw/thumb.jpg?15396109425" rel="nofollow">https://s3.amazonaws.com/files.d20.io/images/64938488/5QTfp0xRCbe1aZnjdNrUJw/thumb.jpg?15396109425</a> to <a href="https://s3.amazonaws.com/files.d20.io/images/64938488/5QTfp0xRCbe1aZnjdNrUJw/max.jpg?15396109425" rel="nofollow">https://s3.amazonaws.com/files.d20.io/images/64938488/5QTfp0xRCbe1aZnjdNrUJw/max.jpg?15396109425</a> pageModifier.js:113 check for duplicates: insertTimeout app.js?1540914952:348 Reorder by ZORDER app.js?1540914952:347 setting src app.js?1540914952:342 Cols: 2 Rows: 2 app.js?1540914952:342 Took 1ms to generate cache. pageModifier.js:113 check for duplicates: insertTimeout And this is the WebRTC log . Unfortunately, I wasn't able to get a very detailed long since we disabled the WebRTC in the meantime as we switched to another service for communication until the issue is solved, but I asked someone of my group to join the game and the RTC didn't work again. The error in the log occurred when he left the game again. ----- Personal LOG ----- Loading Roll20 Chat Event Handlers Number of other Players: 0 Started local media Send All Message:&nbsp; collectlogs 1541251440303 Number of other Players: 1 Handle Signalling Video Quality medium Offer TO: Luka (Zog) Candidate TO: Luka (Zog) Candidate TO: Luka (Zog) Candidate TO: Luka (Zog) Candidate TO: Luka (Zog) Candidate TO: Luka (Zog) Candidate TO: Luka (Zog) Send All Message:&nbsp; collectlogs 1541251652789 Closing! Luka (Zog) Failed! Luka (Zog) Error:&nbsp; { &nbsp; "_errorCode": 110005, &nbsp; "_exception": { &nbsp; &nbsp; "name": "Exception" &nbsp; } } Handle Signalling Send All Message:&nbsp; collectlogs 1541251749781 ----- END Personal LOG -----
1541259723
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
Hi TheEpicSnowWolf, I have copied your post over to the thread dedicated to WebRTC problems , where it will have higher visibility to the dev team. Since you will be able to follow its progress there, I will close this thread.