Can someone please explain to me why my var clients
always returns NaN
each time I try to call it with console.log
.
//Imports
var inherits = require('util').inherits,
MultiServer = require('../classes/servers/multi_server.js');
var clients = 0;
function PingServer(servers) {
MultiServer.call(this, servers); //Inheritance
//Basic server setup
this.on('listen', function(params) {
console.log("TCP server listening at", params['TCP'].ip + ":" + params['TCP'].port);
console.log("Socket.IO server listening at", params['Socket.IO'].ip + ":" + params['Socket.IO'].port);
console.log("All systems operational.");
});
this.on('error', function(err, source) {
console.log("Error in " + source + " server:", err.message);
});
//Server behaviour
this.on('connect', function(client) {
console.log("A client has connected.");
var clients = clients + 1;
console.log("Client = " + clients);
//Basic client setup
client.on('disconnect', function() {
console.log("A client has disconnected.");
var clients = clients - 1;
console.log("Clients = " + clients);
});
client.on('error', function(err) {
console.log("A client has experienced an error:", err.message);
});
//Main server behaviour
client.on('message', function(msg) {
client.send(msg); //Ping reply
console.log("Received message:", msg);
});
});
}
inherits(PingServer, MultiServer); //Inheritance
//Exports
module.exports = PingServer;