尝试为discord bot设置权限,但无法';我似乎不能

尝试为discord bot设置权限,但无法';我似乎不能,discord,python-3.6,discord.py-rewrite,Discord,Python 3.6,Discord.py Rewrite,因此,我正在为我使用的服务器制作一个discord bot,并希望添加一个审查功能,这样,如果用户在“bannedWords”列表中说了什么,而不是在特定的频道(工作),它将编辑消息,使“[编辑]”处于其位置。我相信代码本身正在工作,但每次测试时都会收到此错误消息。我尝试过通过Discord开发者门户添加权限(选择“OAuth2”,选择“bot”范围,以及管理角色、查看频道、发送消息、管理消息、读取消息历史记录和提及所有人权限),复制了链接并将其添加到我的测试服务器,但它似乎仍然无法通过角色获得

因此,我正在为我使用的服务器制作一个discord bot,并希望添加一个审查功能,这样,如果用户在“bannedWords”列表中说了什么,而不是在特定的频道(工作),它将编辑消息,使“[编辑]”处于其位置。我相信代码本身正在工作,但每次测试时都会收到此错误消息。我尝试过通过Discord开发者门户添加权限(选择“OAuth2”,选择“bot”范围,以及管理角色、查看频道、发送消息、管理消息、读取消息历史记录和提及所有人权限),复制了链接并将其添加到我的测试服务器,但它似乎仍然无法通过角色获得适当的权限。 完全错误:

Traceback (most recent call last):
  File "C:\Users\Me\AppData\Local\Programs\Python\Python36\lib\site-packages\discord\client.py", line 312, in _run_event
    await coro(*args, **kwargs)
  File "C:\Users\Me\Desktop\Productive\Programming Projects\Python 3\Other\MyBot\bot.py", line 32, in on_message
    await message.edit(content = editedMessage)
  File "C:\Users\Me\AppData\Local\Programs\Python\Python36\lib\site-packages\discord\message.py", line 843, in edit
    data = await self._state.http.edit_message(self.channel.id, self.id, **fields)
  File "C:\Users\Me\AppData\Local\Programs\Python\Python36\lib\site-packages\discord\http.py", line 241, in request
    raise Forbidden(r, data)
discord.errors.Forbidden: 403 Forbidden (error code: 50005): Cannot edit a message authored by another user
代码

导入不一致
bot=discord.Client()
@机器人事件
_ready()上的异步定义:
打印('已登录')
打印(“用户名:%s”%(bot.user.name))
打印(“用户id:%s”%(bot.user.id))
@机器人事件
异步def on_消息(消息):
如果message.author.id==bot.user.id:
返回
bannedWords=['chink','dyke','fag','ook','molest','nig','rape','Delay','spic','zipperhead','tranny']
打印(str(信息))
打印(str(message.content))
如果str(message)中没有“name='no-rules-lol'”:#可能是一种更好的方法,但它很有效
对于横幅文字:
如果message.content.lower()中有单词:
wait message.channel.send(“{0.author.notice},您使用了一个黑名单单词,请阅读以获取黑名单单词的完整列表。格式(消息))
#等待消息。编辑(内容=消息+“此消息已编辑”)
editedMessage=str(message.content.replace(单词“[redact]”)
等待消息。编辑(content=editedMessage)
bot.run(令牌)

您无法编辑非机器人程序发送的消息。 相反,只需尝试删除邮件

await message.delete()
就这么简单

如果要向bot中添加更多命令,最后只需将其添加到on_消息中即可:

await bot.process_commands(message)

谢谢。

无法在Discord或Discord API中编辑其他用户的消息。即使是管理员也没有这样的权限。哦,好吧,所以我认为下一个最好的办法就是删除它?是的,这似乎是一种方式。