在聊天中输入任何内容后,如何让 Discord 机器人说些啥?

Posted

技术标签:

【中文标题】在聊天中输入任何内容后,如何让 Discord 机器人说些啥?【英文标题】:How do I make a Discord bot say something after anything is typed in chat?在聊天中输入任何内容后,如何让 Discord 机器人说些什么? 【发布时间】:2019-08-03 10:00:24 【问题描述】:

所以我正在为 Discord 开发垃圾邮件机器人。 好吧,它并不是真正的 spam 机器人,我只是希望它回复聊天中的任何消息(除了从其他机器人发送的消息)。我将如何进行这项工作?我在其他任何地方都找不到这个,所以我不妨在这里问一下。

另外,不,除了通用导入命令和一些控制台日志之外,我没有任何代码。

【问题讨论】:

digitaltrends.com/gaming/how-to-make-a-discord-bot 该指南仅适用于响应特定消息的机器人。我正在寻找让机器人响应任何消息的代码。 然后删除检查要响应的消息的逻辑,并使其响应任何内容。你必须尝试一下…… 【参考方案1】:

根据消息传入的速度,您可能会受到速率限制。

要让它忽略其他机器人用户,您可以使用:

if(message.author.bot) return;

然后,要回复任何进来的消息,您只需像往常一样处理 message 事件,但如果您希望它回复每条消息,则无需附加条件。

<Client>.on('message', message =>  
    //handle reply
);

【讨论】:

那我要怎么做才能随机回复不同的消息呢? @ConeyIsland 使用一些 NLP 引擎,如 amazon lex、dialogflow、rasa、luis 等 您可以按照 Sid 的建议使用 NLP,尽管您也可以拥有一组随机选择并发送的短语,这样您就可以更好地控制所说的内容,尽管取决于在你使用的 NLP 引擎上,你也可以对其进行大量控制。

以上是关于在聊天中输入任何内容后,如何让 Discord 机器人说些啥?的主要内容,如果未能解决你的问题,请参考以下文章

如何让我的不和谐机器人只在聊天中工作?

在 SwiftUI 中制作聊天应用程序:如何让 ScrollView 在键盘出现时保持原位?

在 Discord.js 上进行另一个嵌入后的反应时遇到问题

你如何让机器人在消息中下一行?

如何让您的 Discord 机器人说出具体内容,然后删除上一条消息

如何让我的机器人在聊天中写欢迎消息?