让discord.py机器人回显一条消息,然后将其删除

时间:2020-02-22 09:53:18

标签: python discord discord.py

基本上,我想制作一个机器人,该机器人使用特定的命令复制一条消息,然后删除原始消息并保留其原始内容。 这是我使用的代码

if message.content.startswith("!echo"):
            await message.channel.send(message.content[5:].format(message))
            await client.delete_message(context.message) 

到目前为止,回声效果很好,但原始消息并未被删除

1 个答案:

答案 0 :(得分:0)

确保您使用的是最新的discord.py库。您可以使用python -m pip freeze

检出已安装的版本

在discord.py版本1.0中,.delete_message更改为.delete
https://discordpy.readthedocs.io/en/latest/migrating.html
https://discordpy.readthedocs.io/en/latest/api.html?highlight=delete#discord.Message.delete

要删除邮件,请执行以下操作:

if message.content.startswith("!echo"):
  await message.channel.send(message.content[5:].format(message))
  await message.delete()

如果您希望在5秒钟后删除邮件,也可以执行await message.delete(delay=5)
您的漫游器必须有权删除该文本通道中的消息。