aboutsummaryrefslogtreecommitdiffstats
path: root/src/teamspeak/mod.rs
diff options
context:
space:
mode:
authorJokler <jokler@protonmail.com>2020-10-02 16:20:05 +0200
committerGitHub <noreply@github.com>2020-10-02 16:20:05 +0200
commitd0a0c7c541d2566c6b8f6504f9453e501bc2b1d9 (patch)
treef374da7d91b9b22f359351cc9009e3b64587bf68 /src/teamspeak/mod.rs
parent28987135afdeb121df48b32d06fa91f941f2894a (diff)
parent0c75c63c9aef7e885ed90f3f1a3989849af80949 (diff)
downloadpokebot-d0a0c7c541d2566c6b8f6504f9453e501bc2b1d9.tar.gz
pokebot-d0a0c7c541d2566c6b8f6504f9453e501bc2b1d9.zip
Merge pull request #63 from Mavulp/channel-subscribe
Use channel specific subscribe over server wide
Diffstat (limited to 'src/teamspeak/mod.rs')
-rw-r--r--src/teamspeak/mod.rs18
1 files changed, 10 insertions, 8 deletions
diff --git a/src/teamspeak/mod.rs b/src/teamspeak/mod.rs
index 4d7c840..beb3f44 100644
--- a/src/teamspeak/mod.rs
+++ b/src/teamspeak/mod.rs
@@ -300,16 +300,18 @@ impl TeamSpeakConnection {
.unwrap()
}
- pub async fn subscribe_all(&mut self) {
+ pub async fn subscribe(&mut self, id: ChannelId) {
self.handle
.with_connection(move |mut conn| {
- if let Err(e) = conn
- .get_state()
- .expect("can get state")
- .server
- .set_subscribed(true)
- .send(&mut conn)
- {
+ let channel = match conn.get_state().expect("can get state").channels.get(&id) {
+ Some(c) => c,
+ None => {
+ error!("Failed to find channel to subscribe to");
+ return;
+ }
+ };
+
+ if let Err(e) = channel.set_subscribed(true).send(&mut conn) {
error!("Failed to send subscribe packet: {}", e);
}
})