Подключение к голосовому каналу discord py. ClientException: Already connected to a voice channel
У меня есть музыкальный бот. Я столкнулся я проблемой в подключении бота к голосовому каналу: Если бот отключается сам(await self.connection.disconnect()), то всё хорошо, но если его выгоняет админ(кнопкой 'отключить'), то self.connection понимает, что его отключили и при вызове self.connection.is_connected() выдаёт False, а self.voice_channel при попытке подключится заново выдаёт discord.ext.commands.errors.CommandInvokeError: Command raised an exception: ClientException: Already connected to a voice channel. Как это можно исправить и правильно ли я вообще подключаюсь? Вот часть кода:
async def get_connect(self, ctx) -> None:
if self.connect is None or not self.connect.is_connected():
self.voice_channel = discord.utils.get(ctx.guild.voice_channels, name=ctx.message.author.voice.channel.name)
self.connect = await self.voice_channel.connect()
Ответы (1 шт):
Автор решения: Kelthic
→ Ссылка
Это условие:
if self.connect is None or not self.connect.is_connected():
заменить на:
if self.voice_channel == None or not self.voice_channel.is_connected():