我正在寻找一种在节点中创建可以启动,停止/暂停并更改其间隔或功能的命名计时器的方法。
我正在制作一个IRC机器人,我想在计时器上说出某些一般性消息。
我有messages.js
设置了一些像这样的对象
module.exports = [
{
title: "donate",
message: "If you would like to help the stream out, donate at https://www.twitchalerts.com/donate/matax91 . All donations go toward the stream!",
interval: 1,
active: true
},
...
]
在app.js
我有这个设置
var Messages = require('./messages');
var activeMessages = [];
client.addListener('join', function(){
for(var id in Messages){
if(Messages[id].active){
console.log('set interval');
activeMessages[Messages[id].title] = setInterval(function(){
console.log('sent message');
client.say(config.channels[0], Messages[id].message);
},(Messages[id].interval * 60000));
}
}
});
我看到的问题是,如果我愿意,暂停这些消息或更改其间隔将非常困难。我觉得有一个模块可以帮助我做到这一点,但我的搜索结果并不多。任何建议都会很棒!