Twilio recommends upgrading to the latest 1.x version of Twilio Client JS SDK as soon as possible.
Notice - 2019/08/22: This article was republished with the updated Q1 2020 guidance from Google for the removal of Plan B SDP. The previous timeline given was "End of 2019".
Google has communicated to Twilio these latest changes will be in a Chrome release targeted for Q1 of 2020. Google has not indicated the exact version of Chrome, or a more precise date. We recommend that you upgrade to the latest Client JS SDK release as soon as possible.
In December 2018, Google began the phased migration of Chrome from using the Plan B SDP (Session Description Protocol) format to the Unified Plan SDP format. As they have now entered the final phase, Google will completely remove Plan B support from Chrome. Google has indicated this will be completed by Q1 of 2020.
With this phase out, Client JS SDK versions prior to 1.7.1 exhibit incompatibilities with the new Unified Plan format that causes the user to lose audio if the input device is changed. With the loss of audio, this will ultimately cause the caller and/or callee to hang up the call.
Is my application affected?
You will be affected if you are using a version prior to 1.7.1.
How do I upgrade my application?
If you depend on the SDK served directly from Twilio's CDN, update your dependency to the latest 1.x version of Twilio Client JS SDK. The latest 1.x version is backward-compatible with all versions starting with 1.4, and should require no additional migration steps.
To update to the latest version of 1.x, use the following URL in your application:
For customers using NPM, install the newest version of twilio-client before re-building your application:
npm install --save twilio-client@^1.10
In general, we recommend that all customers currently using our CDN to switch to a build process using the official twilio-client NPM package. Using NPM provides developers with more precise versioning rules. Additionally, and adding dependencies as a build step provides more control over what makes it into your production application. That said, you don't need to switch to NPM to address this upcoming compatibility issue with Chrome.