javascript - 让我的不和谐机器人在特定时间发送消息

标签 javascript discord discord.js

我有一个问题几乎已经解决,但现在陷入困境。

我想让我的机器人在镜像时间(00h00、01h01、02h02...)在 channel 中发送一条消息,与我的 friend 们一起进行搞笑,目前我做了这个: 在我的代码顶部,我有 var currentdate = new Date();

然后,在我的源代码中:

if(currentdate.getMinutes() == currentdate.getHours())
{
    bot.channels.get('SPECIFICCHANNELID').send('Touchez votre nez :nose:');
}

这是有效的,因为消息是由机器人在正确的 channel 中发送的,但是只有当机器人检测到消息时才会发送消息,因此如果在任何镜像时间内没有人发送消息,那么机器人就会不发送任何东西。

如果在这段时间内有多条消息,机器人也会发送多次消息,当然我希望它只发送一次消息,例如在 11:11:00。

感谢您的帮助,如果我的英语不好,请抱歉!

最佳答案

您需要每隔一段时间检查是否发送消息。

setInterval这样的东西可以工作。

setInterval(function(){
    if(currentdate.getMinutes() == currentdate.getHours())
    {
        bot.channels.get('SPECIFICCHANNELID').send('Touchez votre nez :nose:');
    }
}, MIN_INTERVAL)


您希望 MIN_INTERVAL 为检查发送消息的最短时间(以毫秒为单位)。

如果你想每分钟检查一次

常量 MIN_INTERVAL = 1000 * 60

关于javascript - 让我的不和谐机器人在特定时间发送消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54735856/

相关文章:

discord.js - Discord js创建不和谐类别

javascript - 如何在 SWT 浏览器中启用嵌入式 javascript 调试器?

javascript - 字符解码失败。值(value)被破坏

python - 无法解决: TypeError: 'NoneType' object is not iterable

heroku - 如何在 heroku 上使用音乐不和谐机器人播放声音

node.js - 为 Linux vps 安装 ffmpeg

javascript - 如何在没有 post 键的情况下将新数据添加到 firebase 中?

JavaScript,html5 : how to dynamically create a Vignette effect?

java - Discord-JDA:如何获取加入服务器的用户的数据?

javascript - 我如何在 discord.js 中等待回复?