python - 当我使用函数获取前缀时,如何让我的 Discord 机器人同时响应自定义前缀和提及?

标签 python discord discord.py

我想以此作为序言,说我之前问过这个问题,它已关闭,并标记为重复。我之前见过那些其他问题。我尝试了这些解决方案。他们没有工作。它们不适用于前缀函数,只能使用前缀字符串。这就是我问这个问题的原因。我重新措辞了一些内容,在标题中添加了信息,尽我所能地解决这个问题,这样我就可以获得我需要的答案。拜托,请不要关闭这个。我想要一个有效的答案。

我有一个从数据库文件中检索自定义前缀的函数,但我想实现也响应提及的功能,如 when_thought() 函数中所示。但是,当我初始化机器人时,我无法将这两个函数传递给 command_prefix 参数,也无法将前缀函数添加到 when_thought_or() 函数以组合二。我有什么办法可以做到这一点吗?过去一小时我一直在寻找答案,但尚未发现任何有效的方法。

最佳答案

您可以简单地使用when_mentioned在您自己的函数中检索自定义前缀的函数。您可以使用相同的 bot 来调用它和msg你已经通过了,它会 return a list of the mention formats (for with and without a nickname) that you can use 。然后,您可以返回附加了自定义前缀的列表。

或者,您可以直接返回带有自定义前缀 bot.user.mention 的列表。 (请参阅 Bot.user ClientUser.mention 的文档),以及该提及的昵称格式( <@!{user_ID}> 而不是 <@{user_ID}> ;请参阅 ClientUser.id 的文档)。

关于python - 当我使用函数获取前缀时,如何让我的 Discord 机器人同时响应自定义前缀和提及?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59888666/

相关文章:

python - 使用带有 discord.py 的 tweepy 将推文发布到特定 channel

python - 使用列表随机向 channel 发送消息

python - 如何将 pyspark 日志记录级别设置为调试?

python - 如何在django中查询多列

python pandas - 使用单个字段名掩码过滤多个数据帧

javascript - 如何让不和谐机器人提及角色和用户?

python - 如何在崩溃时自动重启你的不和谐机器人

python - Discord py bot 限制玩家对投票的一个 react

python - on_message函数重复,Discord.py重写

python - 使用 lxml 获取内部 DTD