javascript - 我怎样才能阻止不和谐的机器人回复自己或其他机器人? (discord.js)

标签 javascript node.js bots discord discord.js

我是整个编码领域的新手。 几天前我开始开发我的第一个 discord 机器人,你知道,我和我的 friend 们可以一起玩。 现在,假设我希望这个机器人检测消息中的单词并在每次有人提到该单词时回复,无论是在消息的哪个部分。我能够做到这一点,但现在有一个问题。 假设我正在寻找的词是“你好”。 如果有人说“哦你好”,“你好那里”,一 strip 有“你好”一词的消息,机器人将回复“你好”。 但机器人也会在自己的消息中检测到问候语,并一遍又一遍地回复自己,直到我将其关闭。 这是代码:

bot.on("message", message => {
    const hello = ["hello"];
    if( hello.some(word => message.content.includes(word)) ) {
        message.channel.send("Hello!");
}} ) 

所以,我想不出如何让机器人在它自己的消息中看到“你好”,或者任何机器人的消息,如果这样更容易,但能够分析“你好” "来自用户,这样它就不会陷入回复自身的无限循环。 我怎样才能做到这一点??提前谢谢你(:

最佳答案

如果想阻止机器人回复自己:

if (message.author == client.user)
    return;

您还可以阻止机器人回复另一个机器人:

if (message.author.bot)
   return;

关于javascript - 我怎样才能阻止不和谐的机器人回复自己或其他机器人? (discord.js),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62493409/

相关文章:

javascript - Angular 的 ng include 指令不适用于预期的链接

javascript - Angular ng-click 给出语法错误 : Token '{' invalid key at column 22 of the expression

node.js - Nodejs、TypeScript、ts-node-dev 和顶级等待

javascript - 如何正确使用 Redis 与 Koa (node.js)

javascript - 我将如何使用 .addField 遍历数组

javascript - AngularJS 选择语义 UI 下拉列表

javascript - 从 JQuery 函数 $.getJSON 获取数据

javascript - 如何重新排序存储在 Mongo 中的这个数组中的项目?

javascript - Discord.js 机器人赠品命令 : embedSent. Reactions.get 不是函数

python - 如何在 Python 中打开外部程序