Slide 14
Slide 14 text
var wss = new WebSocketServer();
var Duplex = require(‘stream’).Duplex;
var share = sharejs.server.createClient({
backend: backend
});
// On socket connection
wss.on(‘connection’, function () {
var stream = new Duplex({ objectMode: true });
stream._write = function (chunk, encoding, callback) {
client.send(JSON.stringify(chunk));
return callback();
};
client.on(‘message’, function (data) {
return stream.push(JSON.parse(data));
});
return share.listen(stream);
});
ShareJS on the server
https://github.com/thejsj/sharejs-rethinkdb-example/blob/master/server/socket-handler.js#L8-L49