SockJS Multiplexer
Multiplexer for SockJS connections. Client and server agnostic.
Based on https://github.com/manuelstofer/websocket-multiplexer but optimised for SockJS.
Installation
npm install sockjs-multiplexer
API
Named channels:
var options = // Serialization function for message // serialize: function () {}, // By default JSON.stringify // Unserialization function for message // unserialize: function () {} // By default JSON.parse; var multiplexer = websocket options example = multiplexer; example; example;
Create anonymous channels:
var multiplexer = new Multiplexer({ socket: websocket }), channel = multiplexer.channel(); channel.send('hello');
Listen for anonymous channels:
var multiplexer = new Multiplexer({ socket: websocket }); multiplexer.addEventListener('channel', function (evt) { var channel = evt.channel; channel.addEventListener('message', function (evt) { console.log(evt.data); });});
Multiplexer
interface Multiplexer { attribute Function onchannel; // create a channel void channel(optional String channel_id); void close();};Multiplexer implements EventTarget;
Channel
interface Channel { attribute String name; attribute Function onmessage; attribute Function onclose; void send(in DOMString data); void close();};Channel implements EventTarget;