#[macro_use] extern crate tracing; use discord_rpc_client::{models::Activity, Client as DiscordRPC}; use std::io; #[tokio::main] async fn main() -> discord_rpc_client::Result<()> { tracing_subscriber::fmt::init(); let drpc = DiscordRPC::default(); drpc.connect(425407036495495169).await?; loop { let mut buf = String::new(); io::stdin().read_line(&mut buf).unwrap(); buf.pop(); if buf.is_empty() { if let Err(why) = drpc.clear_activity().await { error!("Failed to clear presence: {}", why); } } else { 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 { error!("Failed to set presence: {}", why); } } } }