Note: Since there is ongoing fluidity in functionality and naming of API terms in WebRTC and supporting browsers, use of this adapter is generally recommended.
The adapter is provided under a BSD-style license.
What adapter.js does
For each version of each browser that supports WebRTC, adapter.js implements the needed polyfills, establishes the non-prefixed names of APIs, and applies any other changes needed to make the browser run code written to the WebRTC specification.
For example, on Firefox versions older than 38, the adapter adds the
RTCPeerConnection.urls property; Firefox doesn't natively support this property until Firefox 38, while on Chrome, the adapter adds support for the
Promise based API is added if it's not present. These are just a couple of examples; there are of course other adjustments made for you by the shim.
The WebRTC adapter currently supports Mozilla Firefox, Google Chrome, Apple Safari, and Microsoft Edge.
In order to use adapter.js, you need to include adapter.js on any page that uses WebRTC APIs:
- Download a copy of the latest version of adapter.js from GitHub.
- Place it in your site's directory structure (such as in your scripts directory).
- Include adapter.js in your project:
- Write your code, using WebRTC APIs per the specification, knowing that your code should work on all browsers.
- Keep in mind that even a good shim like this one doesn't mean you don't need to test your code on different browsers (and ideally different versions of each browser).