srcds-info-proxy is a server to proxy A2S_INFO server queries through a REST endpoint.
srcds-info-proxy can be used as a way to provide game server information on your websites without having to use something like GameTracker. Below is a picture of me using it on my personal site.
Install dependencies
npm install
Run
npm start
Now you can make a request like this:
localhost:8080/?ip=192.168.1.3&port=27015
If the provided ip:port is a valid RCON supported server, you should get back a JSON response like this:
key | value |
---|---|
type | "I" |
version | 17 |
serverName | "LinuxGSM" |
map | "de_mirage" |
gameType | "csgo" |
gameName | "Counter-Strike: Global Offensive" |
appID | 730 |
numPlayers | 0 |
maxPlayers | 16 |
numBots | 0 |
dedicated | "dedicated" |
os | "Linux" |
password | 0 |
secure | true |
gameVersion | "1.36.2.6" |
ip | "192.168.1.3" |
port | 27015 |
pw | false |
There is optional HTTPS support. If you provide absolute paths to your cert and key with P_CERT
AND P_KEY
env variables, srcds-info-proxy
will also start an HTTPS server.
There is support for a servers.txt
file where you can put all the servers you manage in a newline seperate text file:
192.168.1.1:27015
10.0.0.1:27015
1.1.1.1:27020
You can then access this information through /servers
.
["192.168.1.1:27015","10.0.0.1:27015","1.1.1.1:27020"]