Python 如果Discord guild中使用Discord.py API提到另一个不同的用户(机器人除外),我如何使用@bot.commands进行检测?

Python 如果Discord guild中使用Discord.py API提到另一个不同的用户(机器人除外),我如何使用@bot.commands进行检测?,python,api,discord,discord.py,bots,Python,Api,Discord,Discord.py,Bots,我和一个朋友一直在设计一个简单的Discord机器人,用官方的Python API在公会(服务器)中使用。下面是我们正在使用的代码(与repl.it,基于浏览器的IDE一起使用): 如上所示,我一直在使用basic@client.event命令来启动异步函数。然而,我想这样做,如果一个特定的用户被提到,那么机器人将响应与一些东西。例如,如果我在Discord服务器中键入以下内容: @Mr.Names 这将是一个提及,也就是提及一个特定的用户。如何使我的bot使用当前代码工作,以便它能够识别何时提

我和一个朋友一直在设计一个简单的Discord机器人,用官方的Python API在公会(服务器)中使用。下面是我们正在使用的代码(与repl.it,基于浏览器的IDE一起使用):

如上所示,我一直在使用basic@client.event命令来启动异步函数。然而,我想这样做,如果一个特定的用户被提到,那么机器人将响应与一些东西。例如,如果我在Discord服务器中键入以下内容: @Mr.Names


这将是一个提及,也就是提及一个特定的用户。如何使我的bot使用当前代码工作,以便它能够识别何时提到该用户,并根据是否提到该用户,在服务器中发送消息?我将Python 3.8.5与repl.it一起使用,这是一个在线IDE。

您应该查看包含消息中提到的所有用户列表的属性。然后,您可以迭代此列表,并将其id与您需要的特定用户进行比较

只需添加此代码

for user in message.mentions:
    if user.id == specific_user_id:
        await message.channel.send("Specific user mentionned")

在你的on_message功能中,用你需要你的机器人注意的人的用户id替换
特定的用户id
,非常感谢!这非常有效,现在当消息中提到特定用户时,bot会做出响应。再次感谢!
for user in message.mentions:
    if user.id == specific_user_id:
        await message.channel.send("Specific user mentionned")