
Slack用「確認お願いしますボット」をKurocoで作成し(てもらっ)たので解説
Kuroco(クロコ)で作成した、「確認お願いします」ボットの解説です。
「確認お願いしますボット」とは?
Slackにて、メッセージの承認や確認リマインドしてくれるbotです。botと連絡したい人にメンションをつけてメッセージを投稿すると、定期的にbotからリマインダーが届きます。
リモートワークが一般的になり、Slackの利用頻度が高まってきています。その中で、メッセージの確認&返信忘れが起きることもあり、それを防ぐ役目を担えるかなと思います。
実際の利用方法や仕様はこちらのドキュメントで公開しています。
作るきっかけ
きっかけはこちらの深津さんのnoteです。
書いた。たぶんこれ作ったら、メチャメチャ需要があると思う。どっかに提案したい。
— 深津 貴之 / THE GUILD / note (@fladdict) September 22, 2021
reading...
Slack用「確認お願いしますボット」の仕様(誰か作ってほしい)https://t.co/qg8BrTjnJk
このツイートから、ディバータ代表の加藤さんがすぐ動き出して作り始めました。
@fladdict さんの記事にインピレーションをもらってご要望のものを作りました!是非、ご利用ください。年内無料です!(100人以下の会社さんはずっと無料かも?)https://t.co/kyR4nrHBRv pic.twitter.com/R9nUkPT766
— 加藤 健太 / Diverta Inc. CEO (@katoh_kenta) September 24, 2021
要望 -> 開発・テスト -> リリースまでほぼ1日。
かなりのスピード感で開発されてました。早かった!
機能概要
ほぼ上記深津さんのnoteの仕様通りの作りですが、以下にもまとめます。
起動条件
- @KurocoWorkflow にメンションがついていること
- 誰か宛にメンションがついていること
リマインダー発生の条件
メンション受けた人で「👍」または「👎」スタンプをつけてない人に定期的にDMでリマインダーが送られます。
リマインダー発生時間について
デフォルトでは12時間毎にリマインド発生しますが、メッセージ内に「🔥」が記載されている場合は1時間毎にリマインドが発生します。
(メッセージ編集して「🔥」を追加し、途中から1時間毎にすることもできます)
確認完了の条件
メンションつけられたユーザが、slackのメッセージに「👍」または「👎」スタンプをつけたユーザーにはリマインドストップとなります。
キャンセルの条件
メッセージ内に「❌」スタンプを記入すると、リマインドキャンセルとなります。(そのため、投稿者のみキャンセル可能となっています)
注) スタンプではなくメッセージ内に「❌」が必要となりますのでご注意ください。
ワークフロー終了の条件
メンションを受けた人が全員「👍」または「👎」のリアクションをすると、ワークフローが終了します。
技術のポイント
Kuroco利用
当然なのですが、バックエンドはディバータ社で作成しているHeadlessCMS『Kuroco(クロコ)』で作成しています。
メッセージの管理
botにメンションがついたメッセージがSlackに投稿された内容は、Kurocoの管理画面からも確認できます。
Kurocoにはコンテンツ管理画面があるのですが、1メッセージ1コンテンツとして、メッセージがある度に自動でコンテンツが投稿されます。
コンテンツ詳細画面より、メッセージの詳細が確認できます。
現在はメッセージとステータスだけの確認となりますので、みなさんからの意見をもとに今後改善していければと思います。
Slackへの投稿について
Slackメッセージや、処理の挙動はKuroco内のオリジナル処理を利用しています。こちらでPHP(Smarty)が利用できるので、プログラム実装しています。
PHP利用できる方であれば、こちらのエディタより実装することでSlackの挙動を修正することができます。
Kurocoオリジナル処理の参考:
- 管理画面マニュアル -> オリジナル処理
- チュートリアル -> オリジナル処理を利用して、コンテンツ追加時にメールを送信する
最後に
以上、Slack用「確認お願いしますボット」の簡単な解説でした。
Headless CMSというとWebサイトに利用するのが一般的ですが、このようにSlackアプリ等にも利用できるようになります。私もこういう利用方法があるという発想がなかったので、とても勉強になりました。
Kurocoは無料で利用開始できますので、ぜひ利用してみてください。
利用方法のご不明点は、twitterでDMか、KurocoサポートSlackまでご連絡ください!
よろしくお願いします🎉
いいなと思ったら応援しよう!
