見出し画像

Slack用「確認お願いしますボット」をKurocoで作成し(てもらっ)たので解説

Kuroco(クロコ)で作成した、「確認お願いします」ボットの解説です。

「確認お願いしますボット」とは?

Slackにて、メッセージの承認や確認リマインドしてくれるbotです。botと連絡したい人にメンションをつけてメッセージを投稿すると、定期的にbotからリマインダーが届きます。

無題のプレゼンテーション

リモートワークが一般的になり、Slackの利用頻度が高まってきています。その中で、メッセージの確認&返信忘れが起きることもあり、それを防ぐ役目を担えるかなと思います。

実際の利用方法や仕様はこちらのドキュメントで公開しています。


作るきっかけ

きっかけはこちらの深津さんのnoteです。

このツイートから、ディバータ代表の加藤さんがすぐ動き出して作り始めました。

要望 -> 開発・テスト -> リリースまでほぼ1日
かなりのスピード感で開発されてました。早かった!

機能概要

ほぼ上記深津さんのnoteの仕様通りの作りですが、以下にもまとめます。

起動条件

- @KurocoWorkflow にメンションがついていること
- 誰か宛にメンションがついていること

画像4

リマインダー発生の条件

メンション受けた人で「👍」または「👎」スタンプをつけてない人に定期的にDMでリマインダーが送られます。

画像5

リマインダー発生時間について

デフォルトでは12時間毎にリマインド発生しますが、メッセージ内に「🔥」が記載されている場合は1時間毎にリマインドが発生します。
(メッセージ編集して「🔥」を追加し、途中から1時間毎にすることもできます)

画像6

確認完了の条件

メンションつけられたユーザが、slackのメッセージに「👍」または「👎」スタンプをつけたユーザーにはリマインドストップとなります。

画像7

キャンセルの条件

メッセージ内に「❌」スタンプを記入すると、リマインドキャンセルとなります。(そのため、投稿者のみキャンセル可能となっています)

画像8

注) スタンプではなくメッセージ内に「❌」が必要となりますのでご注意ください。

ワークフロー終了の条件

メンションを受けた人が全員「👍」または「👎」のリアクションをすると、ワークフローが終了します。

画像9

技術のポイント

Kuroco利用

当然なのですが、バックエンドはディバータ社で作成しているHeadlessCMS『Kuroco(クロコ)』で作成しています。

メッセージの管理

botにメンションがついたメッセージがSlackに投稿された内容は、Kurocoの管理画面からも確認できます。

Kurocoにはコンテンツ管理画面があるのですが、1メッセージ1コンテンツとして、メッセージがある度に自動でコンテンツが投稿されます。

画像3

コンテンツ詳細画面より、メッセージの詳細が確認できます。

画像11

現在はメッセージとステータスだけの確認となりますので、みなさんからの意見をもとに今後改善していければと思います。

Slackへの投稿について

Slackメッセージや、処理の挙動はKuroco内のオリジナル処理を利用しています。こちらでPHP(Smarty)が利用できるので、プログラム実装しています。

画像10

PHP利用できる方であれば、こちらのエディタより実装することでSlackの挙動を修正することができます。

Kurocoオリジナル処理の参考:
- 管理画面マニュアル -> オリジナル処理
- チュートリアル -> オリジナル処理を利用して、コンテンツ追加時にメールを送信する


最後に

以上、Slack用「確認お願いしますボット」の簡単な解説でした。

Headless CMSというとWebサイトに利用するのが一般的ですが、このようにSlackアプリ等にも利用できるようになります。私もこういう利用方法があるという発想がなかったので、とても勉強になりました。


Kurocoは無料で利用開始できますので、ぜひ利用してみてください。


利用方法のご不明点は、twitterでDMか、KurocoサポートSlackまでご連絡ください!

よろしくお願いします🎉

読んでいただきありがとうございます。