簡體   English   中英

Discord.py 添加反應角色問題

[英]Discord.py add reaction role issue

我已經開始為我的 discord 創建一個機器人,試圖在用戶反應后添加一個角色,但我仍然有 403 禁止(錯誤代碼 50013):當我已經輸入正確的權限時缺少權限 (8)到機器人。

@client.event
async def on_raw_reaction_add(payload):
    message_id = payload.message_id
    if message_id == 706945439945195551:
        guild_id = payload.guild_id
        guild = discord.utils.find(lambda g : g.id == guild_id, client.guilds)

        if payload.emoji.name == 'montmo':
            role = discord.utils.get(guild.roles, name='membre')
Traceback (most recent call last):
  File "D:\ProgramData\Python\lib\site-packages\discord\client.py", line 312, in _run_event
    await coro(*args, **kwargs)
  File "c:/Users/bntth/Documents/Python/Projets/Bot discord/bot_elogic.py", line 47, in on_raw_reaction_add
    await member.add_roles(role)
  File "D:\ProgramData\Python\lib\site-packages\discord\member.py", line 641, in add_roles
    await req(guild_id, user_id, role.id, reason=reason)
  File "D:\ProgramData\Python\lib\site-packages\discord\http.py", line 221, in request
    raise Forbidden(r, data)
discord.errors.Forbidden: 403 Forbidden (error code: 50013): Missing Permissions

您知道可能導致此錯誤的原因嗎? 我是否忘記了配置或代碼中的某些內容? 預先感謝您的幫助

機器人的最高角色必須高於您嘗試添加的角色。

考慮以下角色列表:

  1. 行政
  2. 機器人
  3. 主持人
  4. 成員

Member是默認值。 他們無法將ModeratorBotAdmin分配給其他成員。
同樣,擁有Moderator的人將無法分配BotAdmin ,但可以分配Member角色。
如果一個具有Bot角色的機器人試圖將Admin分配給另一個用戶,它就沒有權限。 但是,它將有權分配ModeratorMember角色。

要解決此問題,只需將Bot角色移動到列表頂部,然后它將能夠分配所有角色。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM