Skip to content

Instantly share code, notes, and snippets.

@hophacker
Forked from alexpchin/socket-cheatsheet.js
Created April 25, 2016 17:33
Show Gist options
  • Save hophacker/4b92abaf9ff39ea55a531297b32917f4 to your computer and use it in GitHub Desktop.
Save hophacker/4b92abaf9ff39ea55a531297b32917f4 to your computer and use it in GitHub Desktop.

Revisions

  1. @alexpchin alexpchin created this gist Dec 15, 2015.
    32 changes: 32 additions & 0 deletions socket-cheatsheet.js
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,32 @@
    // sending to sender-client only
    socket.emit('message', "this is a test");

    // sending to all clients, include sender
    io.emit('message', "this is a test");

    // sending to all clients except sender
    socket.broadcast.emit('message', "this is a test");

    // sending to all clients in 'game' room(channel) except sender
    socket.broadcast.to('game').emit('message', 'nice game');

    // sending to all clients in 'game' room(channel), include sender
    io.in('game').emit('message', 'cool game');

    // sending to sender client, only if they are in 'game' room(channel)
    socket.to('game').emit('message', 'enjoy the game');

    // sending to all clients in namespace 'myNamespace', include sender
    io.of('myNamespace').emit('message', 'gg');

    // sending to individual socketid (server-side)
    socket.broadcast.to(socketid).emit('message', 'for your eyes only');

    // join to subscribe the socket to a given channel (server-side):
    socket.join('some room');

    // then simply use to or in (they are the same) when broadcasting or emitting (server-side)
    io.to('some room').emit('some event'):

    // leave to unsubscribe the socket to a given channel (server-side)
    socket.leave('some room');