Hubot
Slack

Hubotに予測できないタイミングで発言して貰う

予期せず人間との連携プレーを果たしたりしてとてもよいです。

実装方法

cronとtimeを入れてね。
npm install cron time --save

要は1分毎にガチャ引いて、当たったら発言するというだけです。

scripts/cron.coffee
cronJob = require('cron').CronJob
random = require('hubot').Response::random

module.exports = (robot) ->
  randomTalk = new cronJob
    cronTime: '0 * 0-2,10-23 * * *' # ここでBOTが起きてる時間を調整
    timeZone: "Asia/Tokyo"
    onTick: () =>
      envelope = room: "#channel_name" # チャンネル名
      sayArr = [ # 発言リスト
        'ほげほげ'
        'ふがふが'
      ]
      if Math.random() < 0.005 # ここの数字を調整して、発言頻度を変える
        say = random sayArr
        robot.send envelope, say