Skip to main content

timed/
timed.rs

1use anyhow::Result;
2use std::time::Duration;
3
4use filthy_rich::{Activity, DiscordIPC};
5use tokio::time::sleep;
6
7#[tokio::main]
8async fn main() -> Result<()> {
9    let mut client = DiscordIPC::new("1463450870480900160")
10        .on_ready(|data| println!("Connected to user: {}", data.user.username));
11
12    // create activities for later use
13    let activity_1 = Activity::new("this runs").state("for ten seconds");
14    let activity_2 = Activity::new("believe it").state("or not");
15    let closing_activity = Activity::new("closing presence in...").duration(Duration::from_secs(5));
16
17    // first run
18    client.run(true).await?;
19
20    client.set_activity(activity_1).await?;
21    sleep(Duration::from_secs(5)).await;
22    client.set_activity(activity_2).await?;
23    sleep(Duration::from_secs(5)).await;
24    client.set_activity(closing_activity).await?;
25    sleep(Duration::from_secs(5)).await;
26
27    Ok(())
28}