试图删除某个特定频道的所有消息会破坏整个b

2024-03-29 07:35:09 发布

您现在位置:Python中文网/ 问答频道 /正文

我要创建用户类型!加入到游戏中,但删除其中的所有消息,这样它就不会满。但当我这样做时,它会删除该通道中的所有消息,但会破坏bot的所有其他部分。你知道吗

我试着等待消息.删除()等待消息.channel.purge(限制=1)。你知道吗

@client.event
async def on_message(message):
    channel = client.get_channel(590978944904331274)
    if message.channel == channel:
        await message.channel.purge(limit=1)


client.run(token)

它工作,但破坏了机器人的其余部分。你知道吗


Tags: 用户clientevent游戏消息类型messageget
2条回答

奥恩瑟号

根据文件:

Overriding the default provided on_message forbids any extra commands from running. To fix this, add a bot.process_commands(message) line at the end of your on_message. For example:

@bot.event
async def on_message(message):
    # do some extra stuff here

    await bot.process_commands(message)

默认的on\u消息包含对此协同程序的调用,但是当您用自己的on\u消息覆盖它时,您需要自己调用它。你知道吗

@本进在帖子中对此发表了评论。谢谢。你知道吗

@client.event
async def on_message(message):
    channel = client.get_channel(590978944904331274)
    if message.channel == channel:
        await message.delete()

或者在你的房间里!join命令 如果您正在使用

async def join(ctx):
    #do your code
    await ctx.message.delete()

使用命令时,await ctx.message.delete()将删除用户消息/命令。你知道吗

await message.delete()将删除任何人的信息甚至对话。你知道吗

相关问题 更多 >