2017-10-23 11 views
0

に参加し、私はこのエラーを取得する:は、音声チャネル(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' 

私は

0チャンネル名とチャンネル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) 
+0

'self.ws'は' None'です。どのように修正するかわからない、再現可能な例は与えていない。 – roganjosh

+0

私は関数 – Francesco

+0

を投稿しましたあなたのコードをもっと見ることができますか? – GiantsLoveDeathMetal

答えて

0

これは、私はそれを動作させるために使用するコードです。

#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="|") 
client = discord.Client() 

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") 
+0

これは疑問に答えるかもしれませんが、答えの本質的な部分を説明し、OPコードの問題点を説明する方が良いでしょう。 – pirho

+0

@pirho私はそれを説明する方がはるかに良いだろうと知っていますが、残念ながら私はちょうどpythonで自分自身を開始し、それをほとんど理解していません。私は彼が1ヶ月前に何の応答もせずに投稿して以来、少なくとも私のために働いたコードを残しておくのが良いでしょう。 – Speaax

関連する問題