A framework which acts as an interface between Socket.IO and Express.
npm install telegraphTelegraph pulls together Express and Socket.io with a syntax similar to Backbone.js.
``javascript
require('telegraph');
// Current defaults for Telegraph
var server = new Telegraph.Server({
'appname' : "Telegraph",
'database' : false, // More documentation on this later
'express' : express.createServer(),
'public' : 'public',
'routes' : {},
'socketio' : false,
'views' : 'views',
'view engine' : 'ejs'
});
`
Once you have added a Server, add routes just as you would with Express:
`javascript
server.get('/post/:id', function(req, res) {
var id = req.params.id,
article = articles.get(id);
res.render('single', article);
});
server.post('/post', function(req, res) {
articles.add(req.params);
});
server.put('/post/:id', function(req, res) {
var article = article.get(req.params.id);
article.set(req.params);
});
server.delete('/post/:id', function(req, res) {
articles.remove(params.req.id);
});
`
`javascript
server.use(express.session({ secrete: "super secrete" }));
// or
server.use("session", { secret: 'super secret' });
server.set("view engine", "jade");
`
To enable socket.io functionality, set the socketio attribute to true upon creation of your new Telegraph.Server object:
`javascript`
var server = new Telegraph.Server(
'socketio' : true // If set to true, Telegraph will enable socket.io functionality
});
This will create an instance of socket.io at the io attribute of your new server object (server.io). You can now add standard socket.io events using the listen and send methods, like so:
`javascript`
// Socket.IO Functions
server.listen('connection', function() {
console.log("connected");
server.send('updates', { information : "here" });
});
In your clientside application, you can receive commands from the server like so:
`javascript`
Once you have created a server starting it is easy:
server.start(4000);
###Target Express directly:
`javascript`
// server.express == Express
server.express
###Target Socket.io directly:
`javascript``
// server.io == socket.io
server.io