mirror of
https://github.com/MeexReay/bRAC.git
synced 2025-06-23 18:32:58 +03:00
1.7 KiB
1.7 KiB
Using as crate
This article describes how to use the client as rust crate
Installation
To use exact version:
[dependencies.bRAC]
git = "https://github.com/MeexReay/bRAC"
tag = "0.1.2+2.0"
default-features = false
To use with latest changes:
[dependencies.bRAC]
git = "https://github.com/MeexReay/bRAC"
default-features = false
default-features = false
here removes GTK4 gui from installation.
Usage
As the code structure was changed like about gazillion times, you need to explore it yourself, if you are using an old version. Here is example of usage on commit 80e7b8c
use bRAC::proto::*;
use std::error::Error;
fn main() -> Result<(), Box<dyn Error>> {
let mut conn = connect("rac://meex.lol", None)?; // read docs/url.md
send_message(&mut conn, "<dude> hi RAC-loving kikes!")?;
register_user(&mut conn, "dude", "password")?;
send_message_auth(&mut conn, "dude", "password", "my auth message")?;
send_message_spoof_auth(&mut conn, "<dude> this message totally fucks auth system")?;
let (mut all_messages, last_size) = read_messages(&mut conn, 10, 0, false)?.unwrap(); // limits with 10 messages
/* imagine that new messages were written here */
let (mut new_messages, last_size) = read_messages(&mut conn, 10, last_size, true)?.unwrap(); // chunked reading!
all_messages.append(&mut new_messages);
println!("all_messages: {all_messages:?}. last_size: {last_size}");
Ok(())
}