Skip to content

duartejbrito/rcon_client_lib

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

rcon-client

npm downloads

A new version of rcon-client with breaking changes is coming. Try it out on the next branch.

A simple and easy to use RCON client made to work with Minecraft servers. It's written in Typescript and uses async methods.

rcon-client has a built-in packet queue with a max pending setting which limits the number of packets sent before one is received. If you need to send a bunch of packets at once, this library might be right for you. This was mainly the reason why I created yet another implementation.

The Rcon class supports connecting and disconnecting at any time, making it easier to share an instance in many places.

Usage

import { Rcon } from "rcon-client"

const rcon = await Rcon.connect({
    host: "localhost", port: 25575, password: "1234"
})

console.log(await rcon.send("list"))

let responses = await Promise.all([
    rcon.send("help"),
    rcon.send("whitelist list")
])

for (response of responses) {
    console.log(response)
}

rcon.end()

Or alternatively you can create an instance via the constructor.

const rcon = new Rcon({ host: "localhost", port: 25575, password: "1234" })

await rcon.connect()
rcon.end()

More examples can be found inthe repository's examples/ folder.

Events

rcon-client uses node's event emitter internally. The event emitter is accessible with the emitter property. Additionally the on, once and off methods are exposed on the main class.

The Rcon class has these events:

  • connect
  • authenticated
  • end
  • error

Auto reconnect can be implemented with these events.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 79.6%
  • JavaScript 20.4%