首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >message.guild.me将角色分配给机器人,而不是用户发出命令

message.guild.me将角色分配给机器人,而不是用户发出命令
EN

Stack Overflow用户
提问于 2021-06-17 14:28:05
回答 1查看 30关注 0票数 2

我的代码有一个奇怪的问题。当使用message.guild.me时,机器人应该将新的权限分配给发出不一致命令的用户,但是它会将其分配给机器人。我还验证了这是将权限添加到机器人的命令,并且还验证了用户没有获得权限。根据Discord.py应用编程接口指南,这应该分配给发出命令的用户(应该是"me“)。关于我可以尝试什么或者如何纠正这个问题,有什么见解吗?

下面是代码。有一些信息丢失了,但它们不应该对发生的事情有任何影响(例如,print命令中的时间)。

代码语言:javascript
运行
AI代码解释
复制
elif message.content.startswith('!disbute'):
        to_role = get(message.guild.roles, id=846420097156775956)
        autorize_role = get(guild.roles, name=role)
        overwrites = {
            message.guild.default_role: discord.PermissionOverwrite(read_messages=False),
            message.guild.me: discord.PermissionOverwrite(read_messages=True),
            to_role: discord.PermissionOverwrite(read_messages=True)}
        channel = await message.guild.create_text_channel('dispute-regionals', overwrites=overwrites)
        print('Disbute regionals | Triggered: ' + time)
EN

回答 1

Stack Overflow用户

发布于 2021-06-17 14:46:35

message.guild.me指的是bot客户端,使用message.author获取调用命令的用户。

我强烈建议用discord.ext.commands代替on_message来创建命令

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68021360

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文