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
```rust 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".tostring(), // Optional readtimeout: 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(())
}
```