Introduction
VideoRTC.js allows customers to add real-time communication capabilities into their applications and workflows by using a JavaScript client module/library.
Features
Some of the features include:
GetDevices
List the available devices (Audio and Video) known to the browser.
VideoRoom
Allows to join a public/private conference to until 6 users using a peer-to-peer connection.
SplitClient
Allows a User to make Calls or Videocalls over a WebRTC compliant Web Browser. This Webclient call the SPLIT module in order to join a Contact Center Popup-Agent peer.
SplitAgent
Allows to open the Pop-up Agent Windows that is required for get the video stream from SPLIT. You can enter the Session ID manual to test quickly this demo with a SIP call.
VideoMail
Allows to record a Video Message and post it by email or any kind of webservice.
VideoPlayer
Allows to play out any Video Message recorded previously by the Videomail or Split.
Installation
Several quick installation options are available:
Node Package
VideoRTC.js has been designed as a NPM package.
Download the package and install dependencies running the command below from your project directory:
npm install
Then, in your code you can import the package directly how this:
require('path/to/videortc/src/core');
JavaScript Library
If you prefer, you can add the following script tag on your web page:
<script src="dist/videortc.js"></script>
A minified version of videortc.js, videortc.min.js, is available at:
<script src="dist/videortc.min.js"></script>
Usage
First of all, you need to configure a connection with the Video Gateway. For that, instance a new VideoRTC:
var myVideoApp = new VideoRTC(endPoints, iceServers, debugLevel);
- endPoints {string[]}: Array of Gateway Endpoints.
- Example:
["https://example.com:HTTPS_PORT/webrtc-gateway"]
["wss://example.com:WSS_PORT/"]
- Example:
- iceServers {object[]}: List of ICE Servers.
- Example:
[{url: "turn:server", username: "myuser", credential: "******"}]
[{url: "stun:server:port"}]
- Example:
- debugLevel {boolean|string}: Log level
- Example:
"all", "trace", "debug", "log", "warn", "error", false
- Example:
Changelog
See CHANGELOG.md
License
See LICENSE.md
Contributing
Bug fixes or suggestions are welcome! Contact us.
API Development
Gulp tasks
- gulp (default): gulp doc + gulp build
- gulp dev-mode: Development watcher. (Run default task when VideoRTC source files change)
- gulp doc: Generate the Development Documentation
- gulp build: Generate the Distribution Files