Help us understand the problem. What is going on with this article?

Slack Workflow Builderで依頼を効率的にしよう

なにこれ

社内slackで発生する、所謂 依頼 のような運用フローをある程度自動化し、依頼を投げる側も受ける側も楽にしようというものです。
※プログラミングそのものの記事ではないです。

例えば、以下のような仕組みになっていることを仮定します。

  • 商談が成立した時にマスターデータを更新する必要がある
  • マスターデータの更新は内部管理画面のようなもので管理している
  • 内部管理画面にアクセス出来るのはエンジニアチーム、あるいは運用チームのみ
  • マスターデータ更新は営業、あるいはディレクターからの依頼が起点

図にするとこんな感じ(いらすとやさん。いつもお世話になってます)

このような場合、更新依頼のフォーマットが人によってバラバラになりがちで困ります。

  • 前置きが長くてどこが要点か不明
  • 文章!しかも本文が長すぎて何が設定項目かわかりにくい!
  • そもそも必須項目がない。どこを更新しろと・・・。

そういった事態を避けるため、設定項目を過不足ないように制限し自動でメンションが届くように出来たら便利ですよね。

それ、Slackで出来ますよ。

Workflowを設定する

今回は次のような依頼フローを自動化します。

樹脂粘土を使ったお手製マグネットの作成を依頼する
・・・え、営業とかの話は?って感じですが、ビジネス的なものを題材にしてると飽きちゃうので適当な題材にしました。

以下のようなフローを仮定します。

  1. 新しいお手製マグネットが欲しい人が依頼を投げる
  2. 趣味で粘土細工をやっている人で対応できる人が対応する
  3. 依頼内容は穴埋め的に指定できれば十分
  4. 対応開始のタイミングと完了のタイミングを共有する

Workflow BuilderでActionを設定

Slackメニューで Workflow Builder を選択します。
スクリーンショット 2019-12-05 13.37.49.png

新しいウィンドウが開いてworkflowの追加画面が出てくるのでCreateボタンをクリック
スクリーンショット 2019-12-05 13.39.38.png

適当に名前を付けます。今回は新規マグネット作成依頼とします
スクリーンショット 2019-12-05 13.46.52.png

ワークフローの起点を設定できます。
今回はAction menuに設定します。
こうするとslack画面右上に稲妻マークが追加され、任意のタイミングで実行できるようになります。
スクリーンショット 2019-12-05 13.59.03.png

Which channelは必須項目です。
ここで指定したチャンネルのみアクションが実行できます。
アクションを実行するにあたり、どんな機能があるのかをパッと見でわかるようにしたいので、アクションの詳細を追加します。
プレビューが大変便利。
スクリーンショット 2019-12-05 14.22.02.png

しれっと変わっていますがアイコンが標準だと可愛くないので適当に変えます。
Settingsメニューから変更できます。
スクリーンショット 2019-12-05 14.20.38.png

一旦ここまででこんな状態になっていると思います。
アクションは見れるけれど、実行する処理は何もないという状態ですね。
スクリーンショット 2019-12-05 14.21.15.png

Stepを追加する

アクションができたら実際のステップを作っていきます。
今回は「マグネットが欲しい人」がポチポチ項目を埋めるだけで依頼が出せるようにしたいので、フォームの作成をしていきます。

Create a formを押すと
スクリーンショット 2019-12-05 14.07.47.png

なんか出てきます。
スクリーンショット 2019-12-05 14.32.37.png
ここのQuestionsを追加することで設定項目を増やしていくことができます。

formの設定項目

設定できるquestionの項目には種類があり、Choose a question typeで細かく制御できます。
例えば依頼者が誰かという場合はSelect a personで指定すれば@メンションつきで処理してくれます。
また、この項目が必須かどうかも指定できます。
スクリーンショット 2019-12-05 14.34.09.png

依頼の概要や簡単な説明はShort answerで指定できます。
スクリーンショット 2019-12-05 14.36.41.png

下にある Long answer との違いは入力可能な文字数なので、詳細情報や備考などを利用したい時に入れてあげればいいかと思います。
スクリーンショット 2019-12-05 14.37.23.png

select boxで選択的に項目を指定したい場合はSelect from a listを指定します。
スクリーンショット 2019-12-05 14.38.28.png

List itemsを追加することで項目をどんどん増やしていけます。
今回は金額を入れていますが、管理項目として固定の値があればそれを指定してあげれば良いのかなと思います。
スクリーンショット 2019-12-05 14.39.24.png

最終的にこんな感じになりました。
今回は邪魔なので外していますが、チェックボックスを入れると、action実行時にDMが飛んでくるように設定可能です。
スクリーンショット 2019-12-05 14.41.43.png

設定項目ごとにアイコンが変わるので、どんな設定になっているのかがパッと見てわかるのがとても良いですね。

messageの設定

フォームができたら、フォームの記入を起点にメッセージが飛ぶようにします。
Add Stepを押してSend a messageを設定します。
スクリーンショット 2019-12-05 14.42.49.png

フォームを実行したらどこに飛ぶかを指定します。
画面では隠れていますが、Specific people and channels以下にchannelが並んでいるので、そこで送りたいチャンネルを指定します。
スクリーンショット 2019-12-05 14.43.13.png

送り先を指定したらメッセージの内容を入れていきます。
Message textの右下にInsert variableというのがあるのでそこをクリックしてあげると、先のformで指定した変数の内容を取得することができます。
また、いつ対応開始したかがわかるようにしたいので、これから対応しますというボタンも用意しておきます。
実際に送られる内容なんかはpreviewを見ながら確認していきます。
スクリーンショット 2019-12-05 14.50.28.png

対応作業をしていることを他のメンバーに伝えたいので、同じ要領で対応中ですというメッセージをことなるチャンネルに投げるようにしました。
スクリーンショット 2019-12-05 14.52.11.png

いったんこれでStepは完成です。
※実在のチャンネル名を出したくないので個人向けのメンションにしていますが、それぞれでメッセージを送るチャンネルの指定が可能です
スクリーンショット 2019-12-05 14.51.54.png

ここまで行くと次のような処理が走ることになります
1. 稲妻マークを押してマグネット作成依頼を実行
2. 依頼者がフォームをポチポチ → フォームの内容が担当者のいるチャンネルに飛ぶ
3. これから対応します → 対応中のメッセージが担当者チームのチャンネルに飛ぶ

Publishして実行できるようにします。
スクリーンショット 2019-12-05 14.52.44.png

Publishした段階でこんなメッセージが該当のチャンネルに飛んできます。
スクリーンショット 2019-12-05 14.53.07.png

では、実際動かしてみましょう!

Workflowを動かす

稲妻マークを押してアクションを選択
スクリーンショット 2019-12-05 14.53.23.png

作成したフォームが出てくる
スクリーンショット 2019-12-05 14.53.46.png

良い感じに埋める
スクリーンショット 2019-12-05 14.55.06.png

Submitを実行するとメンションが飛ぶ。
スクリーンショット 2019-12-05 14.55.25.png

これから対応しますを押すと、作業チームのチャンネルにメッセージが飛ぶ
スクリーンショット 2019-12-05 14.55.42.png

ボタンは一回しか押せないので、完了済みかどうかは一目瞭然。
スクリーンショット 2019-12-05 14.55.55.png

依頼した結果

可愛いマグネットができました!

これが本当の自作自演

まとめ

今回はしょうもない依頼フローを主題に取り扱いましたが、現実的には運用⇆エンジニアのやりとりをスムーズにする上でとても便利に使えます。
何よりも既定のフォーマットになるというのが美味しすぎるので、どんどん自動化を進めていきましょう!

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした