Package Exports
- rcon-srcds
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (rcon-srcds) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
RCON library for NodeJS
According to Valve's RCON specification
Install
npm install rcon-srcds --save
Usage
const server = new Rcon(options);
Options
These are the default values.
{
host: '127.0.0.1', // Host
port: 27015, // Port
maximumPacketSize: 0, // Maximum packet bytes (0 = no limit)
encoding: 'ascii', // Packet encoding (ascii, utf8)
timeout: 1000 // in ms
}
The maximum possible value of packet size is 4096 bytes: https://developer.valvesoftware.com/wiki/Source_RCON_Protocol#Packet_Size
Minecraft Compatibility
Although the package name implies exclusive compatibility with Source games, Minecraft servers also use Valve's RCON implementation, so there should not be any issues using this package for your Minecraft projects!
Examples
Using async/await:
const Rcon = require('rcon-srcds');
const server = new Rcon({ host: '127.0.0.1', port: 25010 });
try {
await server.authenticate('your_rcon_password');
console.log('authenticated');
let status = await server.execute('status'); // You can read `status` reponse
server.execute('mp_autokick 0'); // no need to read the response
} catch(e) {
console.error(e);
}
Using (native) promises:
const Rcon = require('rcon-srcds');
const server = new Rcon({ port: 25010 });
server.authenticate('rcon_password')
.then(() => {
console.log('authenticated');
return server.execute('status');
})
.then(console.log)
.catch(console.error);