Skip to content

RCON library written in Rust with automatic reconnection support

License

Notifications You must be signed in to change notification settings

tribufu-forks/rercon

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ReRCON

ReRCON is a RCON library written with primarily the game Ark: Survival Evolved in mind. While this library is Valve RCON compliant, and should thus work with other RCON applications, it has not been tested for other applications.

There are two primary types to be used with this create, Connection and ReConnection, both of these types share the same API, the primary difference is that ReConnection::exec will never return IO errors, as it will start a new thread to reconnect, instead, it will return error BusyReconnecting, with a string being a to_string representation of the error that caused the reconnect in the first place.

All public methods use a template to accept all forms of strings that implement Into<String>, however the library will always return std::string::String

Async

Starting with v2, this library will be fully async. The non-async version will no longer be supported.

Example

One-off connection:
use rercon::Connection;

let mut connection = Connection::open("123.456.789.123:27020", "my_secret_password", None).await?;
let reply = connection.exec("hello").await?;
println!("Reply from server: {}", reply);
Automatically reconnecting connection:
use rercon::ReConnection;

let mut connection = ReConnection::open("123.456.789.123:27020", "my_secret_password", None).await?;
let reply = connection.exec("hello").await?;
println!("Reply from server: {}", reply);

About

RCON library written in Rust with automatic reconnection support

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Rust 100.0%