Пример #1
0
Server.prototype.queryStatus = function () {
  if (!this.instance) {
    return
  }

  var self = this
  Gamedig.query(
    {
      type: queryTypes[config.game],
      host: '127.0.0.1',
      port: self.port
    },
    function (state) {
      if (!self.instance) {
        return
      }

      if (state.error) {
        self.state = null
      } else {
        self.state = state
      }

      self.emit('state')
    }
  )
}
Пример #2
0
settings.query = function query(config) {

	gamedig.query({
		type: 'minecraft',
		host: config.gamehost,
		port: parseInt(config.gameport)
	}, function(res) {

		if(res.error) {

			log.verbose("Query error encountered for " + config.gamehost + ":" + config.gameport, res.error);

		} else {

			settings.lastQuery.hostname		= res['name'];
			settings.lastQuery.numplayers 	= res['players'].length;
			settings.lastQuery.maxplayers 	= res['maxplayers'];
			settings.lastQuery.map        	= res['map'];
			settings.lastQuery.players    	= res['players'];
			settings.lastQuery.plugins		= res['raw']['plugins'];
			settings.lastQuery.version		= res['raw']['version'];
			settings.lastQuery.type			= res['raw']['type'];
			settings.lastQuery.time 		= new Date().getTime();

		}

	});

}
Пример #3
0
function queryServer(ip, callback) {
    dig.query({
            type: 'minecraftping',
            host: ip
        },
        function(state) {
            callback(state);
        });
}
Пример #4
0
app.get('/status', (req, res) => {
  let params = { type: 'minecraftping', host: 'mine.cool' }

  gamedig.query(params, (state) => {
    if (state.error) {
      console.log("Server is offline")
      res.status(404).send('Server is offline')
    } else {
      res.json(state)
    }
  })
});
Пример #5
0
    gs4DummyServer().then(function (server) {
      var address = server.address();

      gamedig.query({
        type: 'minecraft',
        host: address.address,
        port: address.port
      }, function (state) {
        server.close();

        if (state.error) {
          done(new Error(state.error));
          return;
        }

        done();
      });
    });
Пример #6
0
function sendGameStatus(config, ircbot, utils, replyTo) {
	const Gamedig = require('gamedig');
	const prefix = config.host + ':' + config.port + ' | ';

	Gamedig.query({
		type: 'minecraftping',
		host: config.host,
		port: config.port
	}).then(state => {
		ircbot.say(replyTo, prefix + formatInfo(state));
		
		if (state.players.length > 0) {
			ircbot.say(replyTo, prefix + formatPlayers(state.players));
		}
	}).catch(error => {
		ircbot.say(replyTo, prefix + 'Error getting server status (' + error + ')');
	});
}
Пример #7
0
settings.query = function query(self){
	Gamedig.query(
	{
		type: 'tf2',
		host: self.gamehost,
	port: self.gameport
	},
	function(res) {
		if(res.error){
	  self.emit('crash');
	}else{
	  self.hostname = res['name'];
	  self.numplayers = res['players'].length;
	  self.maxplayers = res['maxplayers'];
	  self.map        = res['map'];
	  self.players    = res['players'];
	  self.lastquerytime = new Date().getTime();
	}
	}
);

};
Пример #8
0
function sendGameStatus(config, ircbot, utils, replyTo) {
	const Gamedig = require('gamedig');
	const prefix = config.host + ':' + config.port + ' | ';

	Gamedig.query({
		type: 'quake3',
		host: config.host,
		port: config.port
	}).then(state => {
		ircbot.say(replyTo, prefix + formatInfo(state));
		
		if (state.players.length > 0) {
			state.players.sort(function(a, b) {
				return a.frags < b.frags;
			}).forEach(function(player) {
				ircbot.say(replyTo, prefix + formatPlayer(player));
			});
		}
	}).catch(error => {
		ircbot.say(replyTo, prefix + 'Error getting server status (' + error + ')');
	});
}
Пример #9
0
    function(resolve, reject) {

      var start = new Date();

      gamedig.query({
          type: type,
          host: host,
          port: port
        },
        function(state) {
          if (state.error) {
            reject(new Error('Game server is offline or not responding.'));
          } else {

            var end = new Date() - start;
            state.latency = end;

            resolve(state);
          }
        }
      );

    }