Python Discord bot删除用户消息

时间:2020-05-09 18:37:23

标签: python python-3.x discord discord.py discord.py-rewrite

我正在使用python3(discord.py 1.3.3,discord 1.0.1)中的discord bot进行操作,我需要删除用户消息,但无法弄清楚如何正确调用协程。

我看过some other threads,并尝试查看documentation(和discord.py docs),但我无法弄清楚出来。

这是我正在测试的内容:

artifact ID

运行此命令将返回带有ID号的控制台调试消息,但不会删除该消息。如果我在import discord from discord.ext import commands TOKEN = os.getenv('DISCORD_TOKEN') bot = commands.Bot(command_prefix='!') @bot.command(name='deleteme', help='testing command for dev use') async def deleteme(ctx): msg = ctx.message.id print(f'DEBUG: message id is {msg}') await msg.delete # await ctx.delete(msg, delay=None) #nope # await ctx.delete_message(ctx.message) #nope # await bot.delete_message(ctx.message) #nope # await command.delete_message(ctx.message) #nope # await discord.Client.delete_message(msg) #nope 之后添加调试打印行,则该行不会返回。所以这告诉我脚本挂在哪里。就是说,我仍然无法弄清楚应该使用什么正确的命令。

漫游器服务器权限包括“管理消息”

1 个答案:

答案 0 :(得分:2)

例如,要删除一条消息,您必须使用discord.Message对象:

await ctx.message.delete()

delete()协程是discord.Message的一种方法