This Readme corresponds to the upcoming 1.0 release. Please refer to http://socket.io for the current 0.9.x documentation.
varserver=require('http').Server();vario=require('socket.io')(server);io.on('connection',function(socket){socket.on('event',function(data){});socket.on('disconnect',function(){});});server.listen(3000);Starting with 3.0, express applications have become request handler functions that you pass to http or httpServer instances. You need to pass the Server to socket.io, and not the express application function.
varapp=require('express')();varserver=require('http').Server(app);vario=require('socket.io')(server);io.on('connection',function(){// … });server.listen(3000);Exposed by require('socket.io').
Creates a new Server. Works with and without new:
vario=require('socket.io')();// orvarServer=require('socket.io');vario=newServer();Optionally, the first or second argument (see below) of the Server constructor can be an options object.
The following options are supported:
staticsets the value for Server#static()pathsets the value for Server#path()
Options are always passed to the engine.ioServer that gets created.
Creates a new Server and attaches it to the given srv. Optionally opts can be passed.
Binds socket.io to a new http.Server that listens on port.
If v is true the attached server (see Server#attach) will serve the client files. Defaults to true.
This method has no effect after attach is called.
// pass a server and the `static` optionvario=require('socket.io')(http,{static: false});// or pass no server and then you can call the methodvario=require('socket.io')();io.static(false);io.attach(http);If no arguments are supplied this method returns the current value.
Sets the path v under which engine.io and the static files will be served. Defaults to /socket.io.
If no arguments are supplied this method returns the current value.
Sets the adapter v. Defaults to an instance of the Adapter that ships with socket.io which is memory based (see below).
If no arguments are supplied this method returns the current value.
The default (/) namespace.
Attaches the Server to an engine.io instance on srv with the supplied opts (optionally).
Attaches the Server to an engine.io instance that is bound to port with the given opts (optionally).
Advanced use only. Binds the server to a specific engine.io Server (or compatible API) instance.
Advanced use only. Creates a new socket.io client from the incoming engine.io (or compatible API) socket.
Initializes and retrieves the given Namespace by its pathname identifier nsp.
If the namespace was already initialized it returns it right away.
Emits an event to all connected clients. The following two are equivalent:
vario=require('socket.io');io.sockets.emit('an event sent to all connected clients');io.emit('an event sent to all connected clients');For other available methods, see Namespace below.
Represents a pool of sockets connected under a given scope identified by a pathname (eg: /chat).
By default the client always connects to /.
connection/connect. Fired upon a connection.Parameters:
Socketthe incoming socket.
The namespace identifier property.
Hash of Socket objects that are connected to this namespace indexed by id.
A Socket is the fundamental class for interacting with browser clients.
A list of strings identifying the rooms this socket is in.
The Client class represents an incoming transport (engine.io) connection. A Client can be associated with many multiplexed Socket that belong to different Namespaces.
The Adapter is in charge of keeping track of what rooms each socket is connected to, and passing messages to them.
By default the Adapter is memory based. In order to pass messages across multiple processes, make sure to use an appropriate adapter. (configurable through Server#adapter).
MIT
