This is not a perfect solution but its working fine....
Code changes server socket.io
/node_modules/socket.io/lib/socket.js
In line no: 128
if (~exports.events.indexOf(ev)) {
emit.apply(this, arguments);
}
change to
if (~exports.events.indexOf(ev)) {
var arg = ["*",arguments];
emit.apply(this, arg);
}
In line no: 328
emit.apply(this, args);
change to
args.splice(0, 0, "*");
emit.apply(this, args);
Example:
var io = require('socket.io')(SERVER);
io.on('connection', function (socket) {
socket.on('*', function (event, data) {
});
});
Code changes socket.io for (browser javascript to node.js app);
node_modules/socket.io/node_modules/socket.io-client/socket.io.js
In line no: 724
emit.apply(this, arg);
change to
var arg = ["*",ev];
emit.apply(this, arg);
In line no: 847
if (this.connected) {
emit.apply(this, args);
}
change to
if (this.connected) {
args.splice(0, 0, "*");
emit.apply(this, args);
}
var arg = ["*",ev];
Example:
var socket = io();
socket.on("*", function (event, data) {
});
code changes for require('socket.io-client') (node.js app to node.js app);
/node_modules/socket.io-client/lib/socket.js
In line no: 129
emit.apply(this, arguments);
change to
var arg = ["*",ev];
emit.apply(this, arg);
In line no: 253
if (this.connected) {
emit.apply(this, args);
}
change to
if (this.connected) {
args.splice(0, 0, "*");
emit.apply(this, args);
}
var arg = ["*",ev];
Example:
var io = require('socket.io-client');
var socket = io(URL,{});
socket.on("*", function (event, data) { });