twilio-video.js
twilio-video.js allows you to add real-time voice and video to your web apps.
Note that this is a beta release. You may encounter bugs and instability, and
the APIs available in this release may change in subsequent releases.
We want your feedback! Email Rob Brazier, Product Manager for Programmable
Video at rbrazier@twilio.com with suggested
improvements, feature requests and general feedback. If you need technical
support, contact help@twilio.com.
Installation
NPM
npm install twilio-video --save
Bower
bower install twilio-video --save
CDN
Releases of twilio-video.js are hosted on a CDN, and you can include these
directly in your web app using a <script> tag.
<script src="//media.twiliocdn.com/sdk/js/video/v1/twilio-video.min.js"></script>
Usage
The following is a simple example showing a Client connecting to a Room. For
more information, refer to the
API Docs.
const Video = require('twilio-video');
const client = new Video.Client('$TOKEN');
client.connect({ to: 'room-name' }).then(room => {
console.log('Connected to Room "%s"', room.name);
room.participants.forEach(participant => {
console.log('Participant "%s" is connected', participant.identity);
participant.media.attach(document.body);
});
room.on('participantConnected', participant => {
console.log('Participant "%s" connected', participant.identity);
participant.media.attach(document.body);
});
room.on('participantDisconnected', participant => {
console.log('Participant "%s" disconnected', participant.identity);
});
});
Changelog
See CHANGELOG.md.
License
See LICENSE.md.
Building
Fork and clone the repository. Then, install dependencies with
npm install
npm install gulp -g
Part of the build process involves running integration tests against Twilio. In
order to run these, you will need a Twilio account and you will need to set
the following environment variables:
ACCOUNT_SID
SIGNING_KEY_SID
SIGNING_KEY_SECRET
CONFIGURATION_PROFILE_SID
Alternatively, you can skip the integration tests by setting SKIP_INTEGRATION
to "true". Then, run
gulp
The builds and docs will be placed in the dist/
directory.
Contributing
Bug fixes welcome! If you're not familiar with the GitHub pull
request/contribution process,
this is a nice tutorial.