Ejemplo n.º 1
0
Omni.listen = function () {
    var omni     = new Omni();
    var everyone = omni.everyone;
    var _io      = this._io = io.listen.apply(io, arguments);

    omni.sockets = _io.sockets;

    omni.sockets.on('connection', function (socket) {
        var socketId = socket.id;

        omni.clients[socketId] = socket;

        socket.on('disconnect', function () {
            delete omni.clients[socketId];
        });

        socket.on('rpc', function (ctx, method) {
            // note that the rest of the args are actual arguments

            if (everyone.hasOwnProperty(method)) {
                var args = Array.prototype.slice.call(arguments, 2);
                everyone[method].apply(ctx, args);
            } else {
                console.error('Unknown method:', method);
            }
        });
    });

    return omni;
};
Ejemplo n.º 2
0
module.exports.listen = function() {
  // delegate all arguments to socket.io.listen
  var manager = io.listen.apply(io, arguments);

  attachRoutes(manager);
  attachEvents(manager);
  return manager;
};
Ejemplo n.º 3
0
app.listen = function () {
  var io = require('socket.io');
  var ioServer = io.listen.apply(null, arguments);

  var channels = Object.keys.call(null, this.channels);
  var self = this;

  channels.forEach(function (channel) {
    debug("initial channel %s", channel);
    var namespace = channel === '/' ? ioServer.sockets : ioServer.of(channel);
    namespace.on('connection', function (socket) {
      self.channels[channel].init(socket, namespace);
    });
  });

  this.server = ioServer;
  return this;
};