Skip to content

hden/socketio-wildcard

Repository files navigation

socketio-wildcard

Build Status Dependencies devDependencies npm js-standard-style codecov FOSSA Status

npm

Socket.io with a wildcard event.

Works with Socket.io v1.x - v2.x.

Tested with node.js v8.x - v12.x.

Sunsetting

As of Socket.io v2.0.4 (commit), you can use a socket middleware to catch every incoming Packet, which satisfies most of socketio-wildcard's use cases.

io.on('connection', (socket) => {
  socket.use((packet, next) => {
    // Handler
    next();
  });
});

Installation

npm install --save socketio-wildcard

Usage

Server

var io         = require('socket.io')();
var middleware = require('socketio-wildcard')();

io.use(middleware);

io.on('connection', function(socket) {
  socket.on('*', function(packet){
    // client.emit('foo', 'bar', 'baz')
    packet.data === ['foo', 'bar', 'baz']
  });
});

io.listen(8000);

Server (with a namespace)

var io         = require('socket.io')();
+var nsp        = io.of('/namespace');
var middleware = require('socketio-wildcard')();

-io.use(middleware);
+nsp.use(middleware);

-io.on('connection', function(socket) {
+nsp.on('connection', function(socket) {
  socket.on('*', function(packet){
    // client.emit('foo', 'bar', 'baz')
    packet.data === ['foo', 'bar', 'baz']
  });
});

io.listen(8000);

Client

var io = require('socket.io-client');
var socket = io('http://localhost');
// piggyback using the event-emitter bundled with socket.io client
var patch = require('socketio-wildcard')(io.Manager);
patch(socket);

socket.on('*', function(){ /* … */ })

Changelog

[2.0.0] - 2016-05-23

  • no breaking change
  • update test dependencies for socket.io v2

[0.3.0] - 2015-12-21

  • allow custom event emitter
  • support socket.io client

[0.2.0] - 2015-11-29

  • wildcard listener for all events get called first (@Michael77)
  • removed coffee-script dependency

Licence

MIT

License

FOSSA Status

About

socket.io v2.x with a wildcard event

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 7

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy