Coffee scriptでstep.jsを使う (Hubotで3秒毎に発言させる)

Hubotに3秒おきに発言させるため setTimeout 使う時、あれこれ試してみて以下の様に書いてみた。step.jsを利用してコールバックのネストが深くならなくて多少見やすいかなと思ったのですが、もっと良い書き方があったら是非知りたい。

cronJob = require('cron').CronJob
step = require('step')
new cronJob('0 15 * * *', () ->
step(
() ->
robot.send {room:'sample'}, "3時です"
setTimeout @, 3000
return
() ->
robot.send {room:'sample'}, "お茶の時間です"
setTimeout @, 3000
return
() ->
robot.send {room:'sample'}, "休みましょう"
return
)
).start()
(Visited 3 times, 1 visits today)

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です