在创建删除频道内消息的事件后无法使用任何其他命令 Discord.py

Unable to use any other commands after making event to delete messages within a channel Discord.py

我做了一个简单的事件来删除频道内所有带附件的消息 现在我的机器人中的命令无法正常工作

事件

@client.event
async def on_message(message):
 if message.attachments and message.channel.id == 957450518463119400:
  await message.delete()
 if not message.attachments and message.channel.id == 957450518463119400:
  await message.send()

无效命令示例(未发送“停止”消息)

@client.command()
async def damndaniel(ctx: commands.Context):
    await ctx.send(f"stop")

终端没有任何错误。 一旦我删除 事件 示例命令就可以正常工作

如果您覆盖 on_message() 事件,您需要手动将 client.process_commands() 添加到您的事件中,因此它应该是这样的:

@client.event
async def on_message(message):
 if message.attachments and message.channel.id == 957450518463119400:
  await message.delete()

 if not message.attachments and message.channel.id == 957450518463119400:
  await message.send()
 
 await client.process_commands(message)

Reference