WebRTC API wrapper to deal with different browsers transparently, eventually this library shouldn't be needed. We only have to wait until W3C group in charge finishes the specification and the different browsers implement it correctly 😅.
Supported environments:
- Google Chrome (desktop & mobile)
- Google Canary (desktop & mobile)
- Mozilla Firefox (desktop & mobile)
- Firefox Nigthly (desktop & mobile)
- Opera
- Vivaldi
- CrossWalk
- Cordova: iOS support, you only have to use our plugin following these steps.
- NW.js
- Electron
$ npm install rtcninja
and then:
var rtcninja = require('rtcninja');
$ bower install rtcninja
Take a browserified version of the library from the dist/
folder:
dist/rtcninja.js
: The uncompressed version.dist/rtcninja.min.js
: The compressed production-ready version.
They expose the global window.rtcninja
module.
In the examples folder we provide a complete one.
// Must first call it.
rtcninja();
// Then check.
if (rtcninja.hasWebRTC()) {
// Do something.
}
else {
// Do something.
}
You can read the full API documentation in the docs folder.
https://github.com/eface2face/rtcninja.js/issues
- Create a branch with a name including your user and a meaningful word about the fix/feature you're going to implement, ie: "jesusprubio/fixstuff"
- Use GitHub pull requests.
- Conventions:
- We use JSHint and Crockford's Styleguide.
- Please run
grunt lint
to be sure your code fits with them.
The library includes the Node debug module. In order to enable debugging:
In Node set the DEBUG=rtcninja*
environment variable before running the application, or set it at the top of the script:
process.env.DEBUG = 'rtcninja*';
In the browser run rtcninja.debug.enable('rtcninja*');
and reload the page. Note that the debugging settings are stored into the browser LocalStorage. To disable it run rtcninja.debug.disable('rtcninja*');
.
- eFace2Face Inc.
- MIT