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

44 lines
1.2 KiB
Rust
Raw Normal View History

2018-03-22 15:15:47 -04:00
extern crate simplelog;
extern crate discord_rpc_client;
2018-03-22 15:15:47 -04:00
use simplelog::*;
use std::{thread, time};
2018-04-05 20:25:06 -04:00
use discord_rpc_client::{
Client as DiscordRPC,
models::Event,
};
fn main() {
2018-03-22 15:15:47 -04:00
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");
2018-04-05 20:25:06 -04:00
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");
2018-04-06 07:29:01 -04:00
drpc.unsubscribe(Event::ActivityJoinRequest, |j| j)
.expect("Failed to unsubscribe from event");
loop { thread::sleep(time::Duration::from_secs(10)) };
}