【问题标题】:Discord bot responds multiple times for one eventDiscord 机器人针对一个事件多次响应
【发布时间】:2017-10-02 00:11:42
【问题描述】:

我希望我的机器人对诸如.on 之类的命令做出一次响应。但是,它每次输入都会响应多次:

代码是:

client.on('message', message =>{
    if(message.content === '.on'){
        message.channel.sendMessage('Testing Bot is now Online, Greetings, ' + message.author.username);
    }

如果有人能指出我正确的方向,让机器人做出响应,那就太好了。

【问题讨论】:

标签: javascript discord discord.js


【解决方案1】:

sendMessagedeprecated。尝试改用send

client.on('message', message => {
    if(message.content === '.on') {
        message.channel.send('Testing Bot is now Online, Greetings, ' + message.author.username);
    }
}

此外,如果这仍然导致问题,请考虑检查消息事件的 ID/内容以及返回的承诺,以确保您没有在其他地方犯错。很快就会明白发生了什么。那是:

client.on('message', message => {
    if(message.content === '.on') {
        console.log('Received #' + message.id + ': ' + message.content);
        message.channel.send('Testing Bot is now Online, Greetings, ' + message.author.username)
        .then(message => console.log('Sent #' + message.id + ': ' + message.content))
        .catch(console.error);
    }
}

【讨论】:

    【解决方案2】:

    我迟到了,但我认为您的机器人有多个 instances 同时运行。

    【讨论】:

      【解决方案3】:

      尝试更改令牌,以便所有机器人停止工作,然后确保您只是启动一个实例。

      【讨论】:

      • 您能详细解释一下吗?
      猜你喜欢
      • 2018-12-06
      • 2021-08-13
      • 2020-04-02
      • 2021-04-09
      • 2020-01-25
      • 2021-05-25
      • 2023-02-10
      • 2019-08-14
      • 2020-07-08
      相关资源
      最近更新 更多