如何让我的Discord机器人响应提及? [关闭]

问题描述 投票:-2回答:2

我正在努力让我的Discord机器人回应提及“@ TLG-bot#5376你多大了?”我正在使用Discord.py来实现这一目标。

我试图将我的机器人变成对话机器人,但现在不需要:)

python python-3.x discord.py
2个回答
2
投票

Discord以一种从外观上看不明显的方式处理提及。

每次提及实际上都是这样的字符串:<@user_id>(如果成员有昵称,则为<@!user_id>。)您可以通过复制机器人用户ID并用它替换user_id来尝试这个(例如<@330407844660641792>

如果您使用discord.py中包含的ext.commands框架,则可以在when_mentioned初始化中使用commands.Bot(...)作为前缀。

您还可以使用Message.mentions获取消息中提到的discord.Member列表。请注意,这将解析整个消息中的提及,而不仅仅是开头,并将解析所提到的每个成员,而不仅仅是您的机器人。

否则,使用on_message事件,使用您认为合适的方法从消息内容中手动解析字符串。


2
投票

尽管您的评论表明您已完成研究,但在搜索discord.py时,您似乎没有阅读Google上的第一个链接,这是他们的API参考。 qazxsw poi。

所有开玩笑都在旁边,里面有一个叫做的函数

discord.on_message(消息)

在创建消息并将其发送到服务器时调用。

您可以在每次发送邮件时使用此功能,然后扫描此信息以获取您的机器人用户名。

© www.soinside.com 2019 - 2024. All rights reserved.