我需要机器人从命令作者中删除消息,并保留机器人消息。任何帮助将不胜感激!谢谢。
我已经尝试在谷歌上寻找答案,但没有任何效果
答案 0 :(得分:1)
我来晚了。我尝试使用新的 1.0 条款来实现它,但无法使其工作。如果有人有更新的版本,请告诉
编辑:我发现最好的新方法是在函数的末尾添加:
await ctx.message.delete()
不再需要单独的删除功能。
答案 1 :(得分:0)
您可以使用pass_context
选项通过使用命令传递上下文来获取调用该命令的消息。您可以使用Client.delete_message
协程删除邮件。
from discord.ext import commands
bot = commands.Bot(command_prefix='!')
@bot.command(pass_context=True)
async def deletethis(ctx):
await bot.say('Command received')
await bot.delete_message(ctx.message)
await bot.say('Message deleted')
bot.run('token')