如何使discord.py机器人忽略@所有人提及



我为我的不和制作了一个机器人,但我以自己的名字命名。所以有时机器人会不小心代替我被提及,而我没有收到通知。我写了一些代码,如果有人提到机器人,它会回复我的id,所以我得到了提及。

我的问题是:机器人也会回复@everyone,我该如何防止这种情况?

@client.event
async def on_message(message):
if message.author == client.user:
return
if client.user.mentioned_in(message):
await message.channel.send(f'{message.author.mention} You probably meant that message for <@my_id>')
await client.process_commands(message)

您可以制作一个previor if语句来检查消息是否提到了所有人,如果是,则忽略它。

@client.event
async def on_message(message):
if message.author == client.user:
return
if message.mention_everyone:
return
if client.user.mentioned_in(message):
await message.channel.send(f'{message.author.mention} You probably meant that message for <@my_id>')
await client.process_commands(message)

最新更新