我正在努力让我的Discord机器人回应提及“@ TLG-bot#5376你多大了?”我正在使用Discord.py来实现这一目标。
我试图将我的机器人变成对话机器人,但现在不需要:)
Discord以一种从外观上看不明显的方式处理提及。
每次提及实际上都是这样的字符串:<@user_id>
(如果成员有昵称,则为<@!user_id>
。)您可以通过复制机器人用户ID并用它替换user_id
来尝试这个(例如<@330407844660641792>
)
如果您使用discord.py中包含的ext.commands
框架,则可以在when_mentioned
初始化中使用commands.Bot(...)
作为前缀。
您还可以使用Message.mentions
获取消息中提到的discord.Member
列表。请注意,这将解析整个消息中的提及,而不仅仅是开头,并将解析所提到的每个成员,而不仅仅是您的机器人。
否则,使用on_message
事件,使用您认为合适的方法从消息内容中手动解析字符串。
尽管您的评论表明您已完成研究,但在搜索discord.py时,您似乎没有阅读Google上的第一个链接,这是他们的API参考。 qazxsw poi。
所有开玩笑都在旁边,里面有一个叫做的函数
discord.on_message(消息)
在创建消息并将其发送到服务器时调用。
您可以在每次发送邮件时使用此功能,然后扫描此信息以获取您的机器人用户名。