/usr/share/javascript/rtcninja/rtcninja.js is in libjs-rtcninja 0.6.2-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 | 'use strict';
module.exports = rtcninja;
// Dependencies.
var browser = require('bowser').browser,
debug = require('debug')('rtcninja'),
debugerror = require('debug')('rtcninja:ERROR'),
version = require('./version'),
Adapter = require('./Adapter'),
RTCPeerConnection = require('./RTCPeerConnection'),
// Internal vars.
called = false;
debugerror.log = console.warn.bind(console);
debug('version %s', version);
debug('detected browser: %s %s [mobile:%s, tablet:%s, android:%s, ios:%s]',
browser.name, browser.version, !!browser.mobile, !!browser.tablet,
!!browser.android, !!browser.ios);
// Constructor.
function rtcninja(options) {
// Load adapter
var iface = Adapter(options || {}); // jshint ignore:line
called = true;
// Expose RTCPeerConnection class.
rtcninja.RTCPeerConnection = RTCPeerConnection;
// Expose WebRTC API and utils.
rtcninja.getUserMedia = iface.getUserMedia;
rtcninja.RTCSessionDescription = iface.RTCSessionDescription;
rtcninja.RTCIceCandidate = iface.RTCIceCandidate;
rtcninja.MediaStreamTrack = iface.MediaStreamTrack;
rtcninja.getMediaDevices = iface.getMediaDevices;
rtcninja.attachMediaStream = iface.attachMediaStream;
rtcninja.closeMediaStream = iface.closeMediaStream;
rtcninja.canRenegotiate = iface.canRenegotiate;
// Log WebRTC support.
if (iface.hasWebRTC()) {
debug('WebRTC supported');
return true;
} else {
debugerror('WebRTC not supported');
return false;
}
}
// Public API.
// If called without calling rtcninja(), call it.
rtcninja.hasWebRTC = function () {
if (!called) {
rtcninja();
}
return Adapter.hasWebRTC();
};
// Expose version property.
Object.defineProperty(rtcninja, 'version', {
get: function () {
return version;
}
});
// Expose called property.
Object.defineProperty(rtcninja, 'called', {
get: function () {
return called;
}
});
// Exposing stuff.
rtcninja.debug = require('debug');
rtcninja.browser = browser;
|