这是我在机器人中的代码
@Bot.event
async def on_voice_state_update(member,before,after): #Создание войс комнат
if after:
if after.channel:
if after.channel.id == $$$$$$$$$$$$$$$$$$$$$:
print(f'{member} зашёл в канал')
for guild in Bot.guilds:
maincategory = discord.utils.get(guild.categories, id=$$$$$$$$$$$$$$$$$$$$)
channel2 = await guild.create_voice_channel(name=f'{member.display_name}`s Channel',category = maincategory)
await channel2.set_permissions(member,connect=True,mute_members=True,move_members=True,manage_channels=True)
await member.move_to(channel2)
def check(x,y,z):
return len(channel2.members) == 0
await Bot.wait_for('voice_state_update',check=check)
await channel2.delete()
这是我在终端上的错误
Ignoring exception in on_voice_state_update
Traceback (most recent call last):
File "C:\Users\Макс\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\discord\client.py", line 343, in _run_event
await coro(*args, **kwargs)
File "C:\Users\Макс\DRACULA-rms\bot.py", line 115, in on_voice_state_update
await member.move_to(channel2)
File "C:\Users\Макс\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\discord\member.py", line 725, in move_to
await self.edit(voice_channel=channel, reason=reason)
File "C:\Users\Макс\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\discord\member.py", line 668, in edit
await http.edit_member(guild_id, self.id, reason=reason, **payload)
File "C:\Users\Макс\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\discord\http.py", line 254, in request
raise HTTPException(r, data)
discord.errors.HTTPException: 400 Bad Request (error code: 40032): Target user is not connected to voice.
请帮帮我吧,我自己解决不了这个错误,我用的是Python 39
我在代码中看到一些错误。我无法解释您提到的错误,因为您的代码中没有搜索特定用户。让我们看看其他方面:
首先:它是
bot.event
,而不是Bot.event
,除非您以不同的方式定义它,否则请忽略此消息。(代码必须由您调整)在测试时,我注意到
for guild in Bot.guilds:
抛出了以下错误:我通过直接定义
guild
修复了这个错误:我还对代码进行了一些重构,并添加了一个
discord.PermissionOverwrite
函数以使其更清晰完整代码:
代码可能需要根据您的喜好进行调整,但这一个对我来说很好
相关问题 更多 >
编程相关推荐