节点中可管理的计时器

时间:2015-07-25 18:20:29

标签: javascript node.js timer

我正在寻找一种在节点中创建可以启动,停止/暂停并更改其间隔或功能的命名计时器的方法。

我正在制作一个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));
    }
  }
});

我看到的问题是,如果我愿意,暂停这些消息或更改其间隔将非常困难。我觉得有一个模块可以帮助我做到这一点,但我的搜索结果并不多。任何建议都会很棒!

0 个答案:

没有答案