加入语音频道(discord.py)

新手上路,请多包涵

当我尝试让我的机器人加入我的语音频道时,出现此错误:

await client.join_voice_channel(voice_channel) (产生错误的行)

 Traceback (most recent call last):
   File "/usr/local/lib/python3.5/site-packages/discord/ext/commands/core.py", line 50, in wrapped
 ret = yield from coro(*args, **kwargs)
 File "bot.py", line 215, in sfx
vc = await client.join_voice_channel(voice_channel)
File "/usr/local/lib/python3.5/site-packages/discord/client.py", line 3176, in join_voice_channel
session_id_future = self.ws.wait_for('VOICE_STATE_UPDATE', session_id_found)
AttributeError: 'NoneType' object has no attribute 'wait_for'

上述异常是以下异常的直接原因:

 Traceback (most recent call last):
 File "/usr/local/lib/python3.5/site-packages/discord/ext/commands/bot.py", line 848, in process_commands
yield from command.invoke(ctx)
 File "/usr/local/lib/python3.5/site-packages/discord/ext/commands/core.py", line 369, in invoke
yield from injected(*ctx.args, **ctx.kwargs)
 File "/usr/local/lib/python3.5/site-packages/discord/ext/commands/core.py", line 54, in wrapped
raise CommandInvokeError(e) from e
discord.ext.commands.errors.CommandInvokeError: Command raised an exception: AttributeError: 'NoneType' object has no attribute 'wait_for'

我收到有关频道名称和频道 ID 的错误

功能:

 description = "Bot"
bot_prefix = "!"

client = discord.Client()
bot = commands.Bot(description=description, command_prefix=bot_prefix)

@bot.command(pass_context=True)
async def join(ctx):
   author = ctx.message.author
   voice_channel = author.voice_channel
   vc = await client.join_voice_channel(voice_channel)

原文由 Francesco 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 610
1 个回答

这是我用来让它工作的代码。

 #Bot.py
import discord
from discord.ext import commands
from discord.ext.commands import Bot
from discord.voice_client import VoiceClient
import asyncio

bot = commands.Bot(command_prefix="|")

async def on_ready():
    print ("Ready")

@bot.command(pass_context=True)
async def join(ctx):
    author = ctx.message.author
    channel = author.voice_channel
    await bot.join_voice_channel(channel)

bot.run("token")

原文由 Speaax 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题