Node.js 让Hubot在某个时间说话?
我正在考虑制作一个基于Hubot时钟的通知程序(想想“现在是5点,该回家了!”但不那么烦人,原因也不一样)。在Hubot脚本中执行类似操作的最佳方式是什么 [编辑]下面是一个使用节点cron的示例:Node.js 让Hubot在某个时间说话?,node.js,coffeescript,hubot,Node.js,Coffeescript,Hubot,我正在考虑制作一个基于Hubot时钟的通知程序(想想“现在是5点,该回家了!”但不那么烦人,原因也不一样)。在Hubot脚本中执行类似操作的最佳方式是什么 [编辑]下面是一个使用节点cron的示例: TIMEZONE = "America/New_York" QUITTING_TIME = '0 0 17 * * 2-6' # M-F 5pm ROOM = "Dev" cronJob = require('cron').CronJob module.exports = (robot) -&g
TIMEZONE = "America/New_York"
QUITTING_TIME = '0 0 17 * * 2-6' # M-F 5pm
ROOM = "Dev"
cronJob = require('cron').CronJob
module.exports = (robot) ->
gohome = new cronJob QUITTING_TIME,
->
robot.messageRoom ROOM, "It's 5! Go home!"
null
true
TIMEZONE
依赖项:
"cron": "0.3.3",
"time": "0.8.2"
我将使用节点cron。它非常灵活,非常适合您的用例 我只是偶然发现了
这允许您在hubot中安排消息,但遗憾的是,无法通过重新启动来持久化作业。这段代码是否使cronJob在hubot启动时自动运行?@Hlung是的,在加载脚本时。我遇到了messageRoom无法在cron作业回调中工作的奇怪问题。我最终使用了robot.send.Hi,我写了hubot cron。它将您的作业保存在robot.brain中,这意味着只要您使用诸如Redis之类的持久数据存储,它就会通过重启来持久化数据。