//creates an instance and connects
var socket = new SillySockets(io, {
baseUrl: '<sockets-server-address>',
appId: 'ABCDE12345',
debug: true,
tags: ['superawesomeclient', 'iphone']
});- Client:
socket.emit('superawesomeevent', { tags: ['iphone'], data: { dataAwesomeLevel: 'over9000' } }) - Sockets server: On emit from client check
APP_ID, event name and tags thenPOSTwith data to URL from DB
- Server:
POST <sockets-server-address>/<APP_ID> --payload { event: 'superawesomeevent', action: 'emit', tags: ['iphone'], data: { dataAwesomeLevel: 'over20000' } } - Sockets server: emit
superawesomeeventto all clients connected toAPP_IDconnection with given tags - Client:
socket.on('superawesomeevent', function(data){ console.log(data); //{ dataAwesomeLevel: 'over20000' } })
Now and then you want to or have to use a language that doesn't play nice with sockets, thats when you use SillySockets. A host it yourself sockets service that can be controlled with simple HTTP requests.
git clone [URL]
cd SillySockets
make install
make run
./db create superapp
./db add-event superapp set-awesomeness http://your-server-url/set-awesomeness
io.connect('[SILLYSOCKETS_URL]', { query: 'APP_ID=superapp' });
io.emit('set-awesomeness', { level: 'over9000' });app.post('/set-awesomeness', function(req, res){
console.log(req.body);
//{ level: 'over9000' }
});curl -H "Content-Type: application/json" -X POST
-d '{ event: 'new-awesomeness', action: 'emit', data: { level: 'over90000' } }' <SILLYSOCKETS_URL>/<APP_ID>