6 releases (stable)
1.2.0 | Aug 24, 2021 |
---|---|
1.1.1 | Sep 2, 2019 |
1.1.0 |
|
0.1.1 | Aug 13, 2019 |
#587 in Game dev
24 downloads per month
25KB
508 lines
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);
Dependencies
~3–11MB
~115K SLoC