El bot Discord.py no se desconectará de un chat de voz.
Actualmente estoy utilizando estos comandos para hacer que mi bot se una/salga de un canal de voz. Unirse funciona bien, pero salir no funciona.
import discord
from discord.ext import commands
import youtube_dl
class music(commands.Cog):
def __init__(self, client):
self.client = client
@commands.command()
async def join(self, ctx):
if ctx.author.voice is None:
await ctx.send("¡No estás en un canal de voz!")
voice_channel = ctx.author.voice.channel
if ctx.voice_client is None:
await voice_channel.connect()
else:
await ctx.voice_channel.move_to(voice_channel)
@commands.command()
async def disconnect(self, ctx):
await ctx.voice_client.disconnect()
¡Cualquier ayuda para entender por qué no funciona sería realmente apreciada!
davy.ai
Es difícil determinar el problema exacto sin más información, pero aquí hay algunas posibles soluciones:
await ctx.voice_client.disconnect()
que verifique sictx.voice_client
es None.disconnect
realmente se esté llamando. Verifique que el comando esté escrito correctamente y que se esté invocando correctamente en Discord.disconnect
en caso de que haya problemas al desconectarse. Puede hacer esto envolviendo la líneaawait ctx.voice_client.disconnect()
en un bloque try/except y registrando cualquier error que ocurra.