From 584f0ebc6e33ddc2905d82f44e7b42faea122668 Mon Sep 17 00:00:00 2001 From: Nathan Perry Date: Fri, 16 Aug 2024 23:09:41 -0400 Subject: fill in queued playback info --- src/bot.rs | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src/bot.rs') diff --git a/src/bot.rs b/src/bot.rs index d9047e6..4ad22c6 100644 --- a/src/bot.rs +++ b/src/bot.rs @@ -69,6 +69,12 @@ impl TypeMapKey for VolumeKey { type Value = DashMap; } +pub struct PlaybackKey; + +impl TypeMapKey for PlaybackKey { + type Value = Arc>; +} + #[cfg(debug_assertions)] const BOTNAME: &str = "thulani (dev)"; @@ -127,6 +133,7 @@ struct SongbirdHandler(Arc>); impl songbird::events::EventHandler for SongbirdHandler { async fn act(&self, _ctx: &EventContext<'_>) -> Option { let mut call = self.0.lock().await; + if call.queue().is_empty() { let _ = call.leave().await; } @@ -416,6 +423,7 @@ pub async fn run() -> anyhow::Result<()> { .register_songbird_from_config(sb_config) .type_map_insert::(reqwest::Client::new()) .type_map_insert::(DashMap::new()) + .type_map_insert::(Arc::new(DashMap::new())) .framework(framework().await) .await?; -- cgit v1.3.1