不和谐on_reaction_add错误未知角色

时间:2020-10-05 22:44:40

标签: python discord bots discord.py

我想创建一个机器人,该机器人将通过响应使用户获得角色。 该代码似乎正在工作,但控制台出现错误。 但是我得到一个错误。

Ignoring exception in on_reaction_add
Traceback (most recent call last):
  File "/home/pi/.local/lib/python3.7/site-packages/discord/client.py", line 312, in _run_event
    await coro(*args, **kwargs)
  File "slh.py", line 47, in on_reaction_add
    await user.add_roles(user, newrole)
  File "/home/pi/.local/lib/python3.7/site-packages/discord/member.py", line 641, in add_roles
    await req(guild_id, user_id, role.id, reason=reason)
  File "/home/pi/.local/lib/python3.7/site-packages/discord/http.py", line 223, in request
    raise NotFound(r, data)
discord.errors.NotFound: 404 Not Found (error code: 10011): Unknown Role
Ignoring exception in on_reaction_add
Traceback (most recent call last):
  File "/home/pi/.local/lib/python3.7/site-packages/discord/client.py", line 312, in _run_event
    await coro(*args, **kwargs)
  File "slh.py", line 47, in on_reaction_add
    await user.add_roles(user, newrole)
  File "/home/pi/.local/lib/python3.7/site-packages/discord/member.py", line 641, in add_roles
    await req(guild_id, user_id, role.id, reason=reason)
  File "/home/pi/.local/lib/python3.7/site-packages/discord/http.py", line 223, in request
    raise NotFound(r, data)
discord.errors.NotFound: 404 Not Found (error code: 10011): Unknown Role

我不知道为什么会收到此错误。因为我的不和谐中存在“角色”角色。我尝试将discord.utils.get与name =“ channelname”和id =“ 723xxxxx”一起使用。两者都带来相同的错误。

机器人拥有不和谐的所有特权/权利。 谁可以帮助我解决此问题?

代码如下:

@bot.event
async def on_reaction_add(reaction, user):
    if reaction.emoji == '✅':
      newrole = discord.utils.get(user.guild.roles, name="testrole")
      await user.add_roles(user, newrole)

希望有人可以帮助我。

1 个答案:

答案 0 :(得分:0)

问题是它正在尝试添加user作为角色。您可以简单地删除它,而不必将其作为参数传递,因为您已经在类中调用了该函数。改用它:

await user.add_roles(newrole)