Discord bot检查消息作者是否具有管理权限

时间:2019-07-14 22:57:51

标签: python-3.x anaconda discord.py-rewrite

我正在尝试创建一条仅在消息作者具有管理权限或更高权限时起作用的日志命令。 我为此使用了 discord.Permission 命令,但是当询问用户是否具有管理权限时,它仅询问用户是否具有管理员权限,何时用户具有更多权限。由于管理员代码更改,它实际上已经停止工作,而不仅仅是管理员权限。因此,对于我的代码,我收到消息“您无权使用此命令”。虽然我有每一个许可 (当我出于某种原因仅授予自己管理权限时,也可能会发生这种情况,也许因为我获得了额外的权利而无法使用?(所有者))

这是我正在谈论的命令:

elif msg.content == "e.log":
 if msg.author == discord.Permissions.administrator:
        await msg.channel.send("Please define the logging Channel:")
 else:
    await msg.channel.send("You do not have the rights to use this command.")

即使我拥有的权限不仅仅是管理权限,我还是希望收到消息“请定义日志记录通道:”。

谢谢。

1 个答案:

答案 0 :(得分:0)

下面的代码是一个例子,如果作者没有管理员,它什么都不做,如果有,它会执行这些东西

@bot.command()
@has_permissions(administrator=True)