Skip to content

Instantly share code, notes, and snippets.

@csprance
Created February 5, 2018 01:18
Show Gist options
  • Save csprance/31d2aa730b9bcd3cd53c706d26610e78 to your computer and use it in GitHub Desktop.
Save csprance/31d2aa730b9bcd3cd53c706d26610e78 to your computer and use it in GitHub Desktop.
Gets data about miscreated servers from the steam master server
import vmsq from 'vmsq';
import SourceQuery from 'sourcequery';
const MASTER_SERVER = 'hl2master.steampowered.com:27011';
export const getServer = (servers = []) => {
return new Promise((resolve, reject) => {
vmsq(MASTER_SERVER, vmsq.ALL, {
appid: 299740
})
.on('error', err => {
reject(err);
})
.on('data', ip => {
servers.push(ip);
})
.on('end', () => {
resolve(servers);
});
});
};
getServer().then(servers => {
servers.forEach((server, idx) => {
const sq = new SourceQuery();
sq.open(server.split(':')[0], server.split(':')[1]);
sq.getInfo((err, info) => {
console.log(server);
if (err) sq.close();
else console.log(info.name);
});
});
});
@csprance
Copy link
Author

csprance commented Feb 5, 2018

For some reason half of these servers it's not grabbing the data from them (I'm assuming it;s timing out, but increasing the timeout for each one just makes it hang)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment