1.1.4 • Published 10 years ago
mesh-socket-io-bus v1.1.4
Streams for socket.io. Also works with mesh.
Basic example
var mesh = require("mesh");
var loki = require("mesh-loki");
var io = require("mesh-socket.io");
var bus = mesh.tailable(loki());
// setup socket io - take all remote ops and pass
// to the bus
var iobus = mesh.reject("load", io({
host: "http://localhost"
}, bus));
// pipe all actions on bus to socket.io
bus(mesh.op("tail")).pipe(mesh.open(iobus));
// insert data into the DB. Should get broadcasted
// to socket.io
bus(mesh.op("insert", {
collection: "people"
data: {
name: "Shrek"
}
}));server configuration
Server configuration is pretty easy to setup. Just re-broadcast incomming actions.
var io = require("socket.io");
var server = io(80);
server.on("connection", function(connection) {
// note that "action" is the channel that the client is
// publishing / subscribing to
connection.on("action", function(action) {
// re-broadcast to other clients
connection.broadcast.emit("action", action);
});
});db(options, bus)
creates a new socket.io streamer.
optionshost- socket.io server hostchannel- channel to subscribe to. Default isaction.
bus- bus to pass remote calls to
var iodb = io({
host: "http://localhost",
channel: "myactionsChannel"
})stream.Readable db(actionName, options)
Broadcasts a new action. This can be anything.
stream.Readable db(tail, filter)
Tails a remote action.
// tail all actions
db(mesh.op("tail")).on("data", function() {
});
// tail only insert actions
db(mesh.op("tail", { name: "insert" })).on("data", function() {
});
// tail only actions on people collection
db(mesh.op("tail", { collection: "people" })).on("data", function() {
});1.1.4
10 years ago
1.1.3
10 years ago
1.1.2
10 years ago
1.1.0
10 years ago
1.0.18
10 years ago
1.0.17
10 years ago
1.0.15
10 years ago
1.0.14
10 years ago
1.0.13
10 years ago
1.0.11
10 years ago
1.0.10
10 years ago
1.0.9
10 years ago
1.0.8
10 years ago
1.0.7
10 years ago
1.0.6
10 years ago
1.0.5
10 years ago
1.0.4
10 years ago
1.0.3
10 years ago
1.0.2
10 years ago
1.0.0
11 years ago