jingle

3.0.3 • Public • Published

Jingle WebRTC

Example

var Jingle = require('jingle');
 
var conn = new RealtimeConnection(); // stanza.io, xmpp-ftw, strophe, etc
var jingle = new Jingle();
var attachMediaStream = require('attachmediastream');
var localMedia = require('localMedia');
 
localMedia.on('localStream', function (stream) {
    attachMediaStream(stream, document.getElementById('localVideo'), {
        mirror: true,
        muted: true
    });
});
 
// Capture incoming Jingle data and feed it to the Jingle
// session manager for processing
conn.on('data', function (data) {
    jingle.process(data);
});
 
// Capture outgoing Jingle signaling traffic and send it via
// a realtime connection
jingle.on('send', function (data) {
    conn.send(data);
});
 
jingle.on('peerStreamAdded', function (session, stream) {
    attachMediaStream(stream, document.getElementById('remoteVideo'));
});
 
// Answering a call request.
jingle.on('incoming', function (session) {
    // attach a media stream if desired
    // session.addStream(localMedia.localStream);
    session.accept(); // Or display an incoming call banner, etc
});
 
// Starting an A/V session.
localMedia.start(null, function (stream) {
    var sess = jingle.createMediaSession('peer@example.com/resouce');
    sess.addStream(stream);
    sess.start();
});

Integrations

stanza.io and strophe.jinglejs for integrations of this library.

Installing

$ npm install jingle

Building bundled/minified version (for AMD, etc)

$ make build

The bundled and minified files will be in the generated build directory.

Documentation

License

MIT

Created by

If you like this, follow @lancestout or @hcornflower on twitter.

Readme

Keywords

Package Sidebar

Install

npm i jingle

Weekly Downloads

1,152

Version

3.0.3

License

MIT

Last publish

Collaborators

  • lancestout
  • fippo