GASを日次、週次の正確な時間に起動させたいときの対応方法(要Slack)

チームのSlackで、朝会だったりなにかとの確認だったりをリマインダーで流すようにしている。

なんですが、ちょっと可変的な要素を加えたい、例えば朝会の司会をランダムに決めて指定したいとかになると、リマインダーでは固定の文字しか使えないのでうまくいかない。

f:id:minemuracoffee:20170531193251p:plain

あと、もうひとつ見ての通り味気がない。botに個性を持たせていきたいのは前述した。

f:id:minemuracoffee:20170418220514p:plain

そういうわけで、GASを経由したbotに切り替えようと思った。

で、サクサクやろうと思ったら障害があった。

f:id:minemuracoffee:20170531193905p:plain

そういえばGASのトリガーは1時間のうちのどこかみたいな雑設定しかできないのだった。

きれいに解決する方法は調べたり同僚に聞いたりしたけどなさそうだったので、考えた結果こういうフローにした。

1.Slackでリマインダーを設定する

f:id:minemuracoffee:20170531194358p:plain

ここはチームのメインチャンネルとは別のbotだけが動くチャンネル(以下botチャンネル)とする。

2.Outgoing Webhooksでbotチャンネルの投稿を拾う

f:id:minemuracoffee:20170531194721p:plain

3.リマインダーの発言内容を起動キーとしてGASを起動させる

f:id:minemuracoffee:20170531195040p:plain

まどろっこしいけどまあいいやろ。

Slack入門 [ChatOpsによるチーム開発の効率化]

Slack入門 [ChatOpsによるチーム開発の効率化]