From 1f37a67c53233dc8e814d22620e1ff8a6fdb14b6 Mon Sep 17 00:00:00 2001 From: salmonik Date: Wed, 20 May 2026 15:21:37 +0200 Subject: health checks for vc Signed-off-by: salmonik --- cogs/music/audio_playback.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'cogs/music') diff --git a/cogs/music/audio_playback.py b/cogs/music/audio_playback.py index 1313d01..0c885c3 100644 --- a/cogs/music/audio_playback.py +++ b/cogs/music/audio_playback.py @@ -173,6 +173,18 @@ class AudioPlaybackManager: vc = await target_channel.connect() except discord.ClientException: vc = discord.utils.get(ctx.bot.voice_clients, guild=guild) + elif vc.channel == target_channel: + from cogs.voice import is_voice_client_alive + if not is_voice_client_alive(vc, guild): + logger.warning("Stale voice client, reconnecting...") + try: + await vc.disconnect() + except Exception: + pass + try: + vc = await target_channel.connect() + except discord.ClientException: + vc = discord.utils.get(ctx.bot.voice_clients, guild=guild) elif vc.channel != target_channel: logger.info(f"Moving to voice channel: {target_channel.name}") await vc.move_to(target_channel) -- cgit v1.2.3