【问题标题】:My discord bot keeps spamming after I send a message发送消息后,我的不和谐机器人不断发送垃圾邮件
【发布时间】:2020-07-18 21:25:56
【问题描述】:

每次我在我的不和谐服务器中发送消息时,我的机器人都会发送垃圾邮件并在它执行此操作时 ping 自己。

 const Discord = require('discord.js');
const bot = new Discord.Client();

const token = 'Faketoken';

bot.on('ready', () =>{
    console.log('This bot is online!');
})

bot.on('message', msg=>{
    if(msg.content = "hello"){
        msg.reply('Hello!');
    }
})

bot.login(token);

我认为问题出在 bot.on('message',

【问题讨论】:

  • 您正在尝试使用一个“=”来检查相等性,这是一个赋值。由于这不是 None 它每次都被评估为 True。

标签: node.js discord.js


【解决方案1】:

欢迎使用 Stack-Overflow!

所以首先要解决您的问题:您需要这条简单的行:if(message.author.bot) return;message 事件的开头。 为什么?好吧,机器人正在响应自己。

它会看到您的消息,然后发送响应。看到它自己的回应,假设它是一条新消息。并发送另一个响应。一遍又一遍。
该行检查看到的消息是否来自机器人,如果是:什么都不做

第二个问题就在这里:if(msg.content = "hello") 这是设置 msg.content 到“你好”。 检查是否与“hello”匹配替换为:if(msg.content === "hello")

【讨论】:

  • 谢谢!它阻止了我的机器人发送垃圾邮件,它只响应命令。
猜你喜欢
  • 1970-01-01
  • 2018-10-08
  • 2021-08-11
  • 1970-01-01
  • 2016-04-22
  • 2021-08-19
  • 2022-11-02
  • 1970-01-01
  • 2019-12-10
相关资源
最近更新 更多