github twilio/twilio-video.js 2.0.0-beta6

latest releases: 2.28.2-rc2, 2.29.0-rc.1, 2.29.0-preview.1...
5 years ago

2.0.0-beta6 (March 15, 2019)

New Features

  • Dominant Speaker and Network Quality APIs are now generally available.

  • twilio-video.js now supports versions of Safari that enable Unified Plan as the
    default SDP format. As of now, Unified Plan is enabled by default in the latest
    Safari Technology Preview. (JSDK-2306)

  • Network reconnection is now supported as an opt-in feature. Previously, Participants
    would be disconnected from the Room during network disruptions or handoffs. This
    feature allows Participants to remain connected to the Room.

    To try this new feature in your application you must perform the following steps:

    1. Set the Time-To-Live (TTL) of your AccessToken
      to the maximum allowed session duration, currently 14400 seconds (4 hours).
      This ensures that when a network loss occurs the client will be able to
      re-authenticate the reconnection. Note, a reconnection attempt with an expired
      AccessToken will result in an AccessTokenExpiredError.

    2. Ensure that the AccessToken
      does not contain a configuration profile sid. Configuration profiles were
      deprecated when we announced
      the general availability of twilio-video.js@1.0.0. Configuration profiles are
      not supported when using this feature.

    3. Enable the feature using the temporary flag _useTwilioConnection as follows:

      const { connect } = require('twilio-video');
      const room = await connect(token, {
        _useTwilioConnection: true
      });
    4. The reconnecting event will now raise a SignalingConnectionDisconnectedError
      when a signaling connection network disruption occurs. Previously, the reconnecting
      event only raised a MediaConnectionError.
      You can differentiate between errors in the handler as follows:

      room.on('reconnecting', error => {
        if (error.code === 53001) {
          console.log('Reconnecting your signaling connection!', error.message);
        } else if (error.code === 53405) {
          console.log('Reconnecting your media connection!', error.message);
        }
      });
    5. When a Participant closes the tab/browser or navigates away from your application,
      we recommend that you disconnect from the Room so that other Participants are
      immediately notified. You can achieve this as follows:

      window.addEventListener('beforeunload', () => {
        room.disconnect();
      });

    After twilio-video.js@2.0.0 is generally available, we plan to make this an opt-out
    feature in twilio-video.js@2.1.0, followed by removing our existing SIP-based
    signaling transport altogether in twilio-video.js@2.2.0.

Bug Fixes

  • Fixed a bug where Room.getStats was throwing a TypeError in Electron 3.x. (JSDK-2267)
  • Fixed a bug where the LocalParticipant sometimes failed to publish a LocalTrack
    to a group Room due to media negotiation failure. (JSDK-2219)
  • Removed workaround for this Firefox bug
    on Firefox 65 and above. (JSDK-2280)
  • Fixed a bug where passing invalid RTCIceServer urls in ConnectOptions did not
    raise a MediaConnectionError. (JSDK-2279)

Don't miss a new twilio-video.js release

NewReleases is sending notifications on new releases.