Discord.py - how to detect if a user mentions/pings the bot(Discord.py - 如何检测用户是否提到/ping 机器人)
问题描述
所以我只是想知道,如何在 discord.py 中创建一个事件,如果用户 ping 机器人,它会回复一条消息?
So I am just wondering, how can I create an event in discord.py where if a user pings the bot it will respond with a message?
我在任何地方都没有找到关于如何做到这一点的任何具体内容,如果有人能帮助我了解如何做到这一点,我将不胜感激.我很感激!
I have not found anything concrete anywhere on how to do this and I would appreciate it if someone could help get my feet wet on how to do this. I appreciate it!
推荐答案
发现默认函数discord.User.提到_in
有效
I found that the default function discord.User.mentioned_in
works
为了让它检查我们的机器人,我们在函数前面添加 client.user
(这是我们的机器人),使其成为 client.user.提到的_in(message)代码>.参数
message
应该与您为 async def on_message(message)
行提供的参数相同
In order for it to check for our bot, we add client.user
(which is our bot) in front of the function, making it client.user.mentioned_in(message)
. The argument message
, should be the same argument that you gave for the async def on_message(message)
line
例子:
@client.event
async def on_message(message):
if client.user.mentioned_in(message):
await message.channel.send('You mentioned me!')
我不知道为什么,但我还没有看到其他人使用这个功能.也许他们只是没有意识到这一点,而是在 message.content 中使用 client.user.id
I'm not sure why but I haven't seen any others use this function though. Maybe they just aren't aware of this, and instead use client.user.id in message.content
这篇关于Discord.py - 如何检测用户是否提到/ping 机器人的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:Discord.py - 如何检测用户是否提到/ping 机器人


- 计算测试数量的Python单元测试 2022-01-01
- 使用公司代理使Python3.x Slack(松弛客户端) 2022-01-01
- 如何使用PYSPARK从Spark获得批次行 2022-01-01
- 检查具有纬度和经度的地理点是否在 shapefile 中 2022-01-01
- 我如何透明地重定向一个Python导入? 2022-01-01
- YouTube API v3 返回截断的观看记录 2022-01-01
- 使用 Cython 将 Python 链接到共享库 2022-01-01
- ";find_element_by_name(';name';)";和&QOOT;FIND_ELEMENT(BY NAME,';NAME';)";之间有什么区别? 2022-01-01
- CTR 中的 AES 如何用于 Python 和 PyCrypto? 2022-01-01
- 我如何卸载 PyTorch? 2022-01-01