From 8413febcda4525d078b3ab2b3d5622e388bf54d6 Mon Sep 17 00:00:00 2001 From: CMDR furrycat Date: Wed, 11 Nov 2020 11:45:14 +0100 Subject: [PATCH] Fix voice announcements. --- bot.py | 2 +- plugins/announcements/__init__.py | 11 ++++------- 2 files changed, 5 insertions(+), 8 deletions(-) diff --git a/bot.py b/bot.py index a50903b..6577c89 100644 --- a/bot.py +++ b/bot.py @@ -805,7 +805,7 @@ async def maybe_play_sound(channel, filename, *, name = None, probability = 0.05 await set_activity(None) return False -async def play_sound(channel, filename, *, name = None, join = True, wake = None): +async def play_sound(channel, filename, *, name = None, probability = 1.0, join = True, wake = None): result = await maybe_play_sound(channel, filename, name = name, probability = 1.0, join = join) return result diff --git a/plugins/announcements/__init__.py b/plugins/announcements/__init__.py index 0ffb306..798fd1c 100644 --- a/plugins/announcements/__init__.py +++ b/plugins/announcements/__init__.py @@ -14,11 +14,7 @@ import cat class Announcement(object): def __init__(self, row): for k, v in dict(row).items(): - canon = v - if k.endswith('_id'): - if k != 'channel_id' or v != 'private': - canon = bot.snowflake(v) - setattr(self, k, canon) + setattr(self, k, bot.snowflake(v) if k.endswith('_id') else v) if not hasattr(self, 'message_limit'): self.message_limit = None self.is_private = hasattr(self, 'channel_id') and self.channel_id == 'private' @@ -907,7 +903,8 @@ class Announcements(DBConnection): if not announce: return if announcement.voice_id: - log.info('Playing announcement {} {} in {}'.format(announcement.id, filename, channel)) - await bot.play_sound(client.get_channel(str(announcement.voice_id)), filename) + voice = bot.get_channel(announcement.voice_id) + log.info('Playing announcement {} {} in {}'.format(announcement.id, filename, voice.name)) + await bot.play_sound(voice, filename) except: log.exception("announce") -- 2.7.4