【发布时间】:2021-02-20 13:56:11
【问题描述】:
我编写了一个 discord.py 机器人,它有自己的类别和分配给它的频道。我想以这种方式设置频道的权限,只有机器人可以在那里发送消息:
bot_role = discord.utils.get(guild.roles, name=settings.BOT_ROLE_NAME)
for role in guild.roles:
await category.set_permissions(role, send_messages=False)
await category.set_permissions(bot_role, send_messages=True)
这段代码可以正常工作,只是它需要我将 BOT_ROLE_NAME 定义为字符串,而我不希望这样。我想动态设置权限,而不在任何地方定义角色,只使用机器人实例。我尝试过这样的事情:
for role in guild.roles:
await category.set_permissions(role, send_messages=False)
await category.set_permissions(bot.user, send_messages=True)
但它不起作用。有没有办法直接使用bot实例设置频道的权限?
【问题讨论】:
标签: python discord.py discord.py-rewrite