2022-02-03 09:52:53 -05:00
|
|
|
use discord_rpc_client::{models::Activity, Client as DiscordRPC};
|
2018-03-22 15:15:47 -04:00
|
|
|
use simplelog::*;
|
2022-02-03 09:52:53 -05:00
|
|
|
use std::io;
|
2018-03-22 10:35:48 -04:00
|
|
|
|
2022-02-03 15:56:37 -05:00
|
|
|
#[tokio::main]
|
|
|
|
async fn main() -> discord_rpc_client::Result<()> {
|
|
|
|
TermLogger::init(
|
|
|
|
LevelFilter::Debug,
|
|
|
|
Config::default(),
|
|
|
|
TerminalMode::Mixed,
|
|
|
|
ColorChoice::Always,
|
|
|
|
)
|
|
|
|
.unwrap();
|
2018-03-22 15:15:47 -04:00
|
|
|
|
2022-02-03 15:56:37 -05:00
|
|
|
let drpc = DiscordRPC::default();
|
2018-03-22 10:35:48 -04:00
|
|
|
|
2022-02-03 15:56:37 -05:00
|
|
|
drpc.connect(425407036495495169).await?;
|
2018-03-22 10:35:48 -04:00
|
|
|
|
2018-04-07 07:24:25 -04:00
|
|
|
loop {
|
|
|
|
let mut buf = String::new();
|
|
|
|
|
|
|
|
io::stdin().read_line(&mut buf).unwrap();
|
2018-04-08 15:08:20 -04:00
|
|
|
buf.pop();
|
|
|
|
|
|
|
|
if buf.is_empty() {
|
2022-02-03 15:56:37 -05:00
|
|
|
if let Err(why) = drpc.clear_activity().await {
|
2018-04-08 15:08:20 -04:00
|
|
|
println!("Failed to clear presence: {}", why);
|
|
|
|
}
|
|
|
|
} else {
|
2022-02-03 15:56:37 -05:00
|
|
|
if let Err(why) = drpc
|
|
|
|
.set_activity(Activity::new().state(buf).assets(|ass| {
|
|
|
|
ass.large_image("ferris_wat")
|
|
|
|
.large_text("wat.")
|
|
|
|
.small_image("rusting")
|
|
|
|
.small_text("rusting...")
|
|
|
|
}))
|
|
|
|
.await
|
|
|
|
{
|
2018-04-08 15:08:20 -04:00
|
|
|
println!("Failed to set presence: {}", why);
|
|
|
|
}
|
2018-04-07 07:24:25 -04:00
|
|
|
}
|
2022-02-03 09:52:53 -05:00
|
|
|
}
|
2018-03-22 10:35:48 -04:00
|
|
|
}
|