| Crates.io | rcon-client |
| lib.rs | rcon-client |
| version | 0.1.3 |
| created_at | 2022-07-22 08:21:44.048951+00 |
| updated_at | 2025-01-27 20:26:51.395074+00 |
| description | RCON client |
| homepage | |
| repository | https://github.com/donkey-engine/rcon-rs |
| max_upload_size | |
| id | 630620 |
| size | 13,097 |
Simple implementation of a crate that allows you to work with the RCON protocol
To work with TCP, the TcpStream structure built into the std::net module is used
use rcon::{AuthRequest, RCONClient, RCONConfig, RCONError, RCONRequest};
fn main() -> Result<(), RCONError> {
// Create new RCON client
let mut client = RCONClient::new(RCONConfig {
url: "donkey-engine.host".to_string(),
// Optional
read_timeout: Some(13),
write_timeout: Some(37),
})?;
// Auth request to RCON server (SERVERDATA_AUTH)
let auth_result = client.auth(AuthRequest::new("rcon.password".to_string()))?;
assert!(auth_result.is_success());
// Execute command request to RCON server (SERVERDATA_EXECCOMMAND)
let version = client.execute(RCONRequest::new("seed".to_string()))?;
assert_eq!(version.body, "Seed: [3257840388504953787]");
Ok(())
}