我一直在做一个不和谐的机器人进入一个vc播放音频然后离开,但我似乎无法让离开的部分工作。这是我的代码:
# Discord specific import
import discord
from discord.ext import commands
import asyncio
Client = discord.Client()
client = commands.Bot(command_prefix="..")
@client.command(pass_context=True)
async def dan(ctx):
author = ctx.message.author
channel = author.voice_channel
vc = await client.join_voice_channel(channel)
player = vc.create_ffmpeg_player('dan.mp3', after=lambda: print('done'))
player.start()
player.disconnect()
client.run('token')
我没有遇到任何错误,但同时机器人没有与vc断开连接,我尝试将'播放器'更改为'客户端','客户端'和'client.voice'
答案 0 :(得分:0)
vc.disconnect()
,如Client.join_voice_channel(channel)
here in the docs所述creates a VoiceClient
。另外我建议没有像
author = ctx.message.author
channel = author.voice_channel
何时可以vc = await client.join_voice_channel(ctx.message.author.voice_channel)
另外,另一个冗余变量是Client = discord.Client()
,因为你不在任何地方使用它,你使用commands.Bot
实例,所以最好删除它。
答案 1 :(得分:0)
player.disconnect()
是协程,您应该使用之前的await
关键字。
await player.disconnect()
答案 2 :(得分:0)
我的问题是:
希望这有助于解决我的问题的人