1

I'm using Twilio Video JS SDK to support video calls in our React web app. We are also using newrelic in our application and with that enabled users are unable to join Twilio room.

Upon further checking I found out that the Twilio connect API is not resolving with newrelic enabled.

Getting following error in the browser console: enter image description here

TypeError: Unhandled Promise Rejection: e.forEach is not a function

enter image description here

Additional Context

  1. Issue is not there in Firefox for some reason, but I tested it on Chrome, Edge and Safari it is there.
  2. I'm using twilio-video@2.13.0 JavaScript SDK, but I even tried upgrading to the latest version as well but the issue is still there.
  3. Using newrelic@7.5.2, similarly I tried upgrading its version as well but no luck.

Can someone please help here on finding out how can we resolve this issue?

rpg
  • 141
  • 1
  • 5

1 Answers1

0

Gnarly. I know Twilio's connect method attemps to find the user's local audio track and local video track, right?

Are you by any chance creating your own the local audio and local video track? How I would start debugging:

  • Given you have New Relic enabled in your web application
  • Create a local audio track
  • Create a local video track
  • Inspect these tracks and confirm they are associated with a media stream. You can confirm this by attaching the local audio track and local video track to an HTMLAudioElement and HTMLVideoElement. You should expect to see your local video and hear your local audio.

When supplying these tracks to Twilio's connect method, see if the audio and video freeze on connect.

I don't know what could be happening, but it's concerning this is bug appears on an older version of thew new relic agent. My only thought here is the LocalAudioTrack and LocalVideoTrack are being manipulated unintentionally when attempting to connect to a Twilio room.

Alex Fallenstedt
  • 2,040
  • 1
  • 18
  • 34