discord-rpc-client/examples/discord_presence/src/main.rs

41 lines
1.1 KiB
Rust

extern crate simplelog;
extern crate discord_rpc_client;
use simplelog::*;
use std::{thread, time};
use discord_rpc_client::{
Client as DiscordRPC,
models::Event,
};
fn main() {
TermLogger::init(LevelFilter::Debug, Config::default()).unwrap();
let mut drpc =
DiscordRPC::new(425407036495495169)
.and_then(|rpc| rpc.start())
.expect("Failed to start client");
drpc.set_activity(|a| a
.state("Rusting")
.assets(|ass| ass
.large_image("ferris_wat")
.large_text("wat.")
.small_image("rusting")
.small_text("rusting...")))
.expect("Failed to set presence");
drpc.subscribe(Event::ActivityJoin, |j| j
.secret("123456"))
.expect("Failed to subscribe to event");
drpc.subscribe(Event::ActivitySpectate, |s| s
.secret("123456"))
.expect("Failed to subscribe to event");
drpc.subscribe(Event::ActivityJoinRequest, |s| s)
.expect("Failed to subscribe to event");
loop { thread::sleep(time::Duration::from_secs(10)) };
}