【ワークフロー】Slackで匿名掲示板を作る

# 目的
Slackを使っていると、大抵どのワークスペースにも雑談や質問用のチャンネルが作られているかと思います。
チャンネル運営側からすると、そこで多くのエンジニアたちのコミュニケーションがとられることを期待しています。

しかし、結局は特定の人のみがたま～に使う程度になっていませんか？
その原因に「自分がチャットを投げてもいいのだろうか？」という心理的ハードルが大きく関わっていると思っています。

そこで、ここではSlackのワークフローという機能を使って匿名でチャットを投稿できるチャンネルを作ります。
なんちゃって掲示板みたいなものです。

※Slackの有料プランが必要になります。


# ワークフローとは
公式からの引用です。
> ワークフローは、あなたとチームが Slack で毎日実行するタスクをやりやすくしてくれます。仕事の中のほとんどすべてのタスクやプロセスを、ワークフロービルダーツールで自動化できます。

https://slack.com/intl/ja-jp/help/articles/16583775096083-%E8%87%AA%E5%8B%95%E5%8C%96---Slack-%E3%83%AF%E3%83%BC%E3%82%AF%E3%83%95%E3%83%AD%E3%83%BC%E3%81%A8%E3%81%AF

要は、フォームの回答をスプレッドシートに追加したり、タスクのリマインダーを作ったりといった作業の自動化ができるものになります。


# 匿名投稿ワークフローを作る
では、本題です。
先の内容で、ワークフローは作業の自動化ができるとありましたが、それを利用して自分の投稿を代わりにワークフローにやってもらうことで匿名化を実現させます。

### チャンネルを作成
まずは匿名チャットを行うためのチャンネルを作成しておきます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/621838/7416c8a6-cb6b-c96d-86e4-3f199db3db8a.png)


### ワークフロービルダーを作成
以下に公式サイトを載せておきます。

https://slack.com/intl/ja-jp/help/articles/360035692513-Slack-%e3%83%af%e3%83%bc%e3%82%af%e3%83%95%e3%83%ad%e3%83%bc%e3%83%93%e3%83%ab%e3%83%80%e3%83%bc%e3%82%ac%e3%82%a4%e3%83%89

今回はSlackのアプリからサイドメニュー > ワークフロービルダー > ワークフローを作成する を選択します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/621838/83b967d7-a2b7-7c33-106d-11e1afb9cbda.png)

次に`Slack 内のリンクから`を選択してください

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/621838/63f90476-f561-83e2-477a-dfde139e6d80.png)

サンプルのリンクが表示されます。続行を選択してください。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/621838/9c9af6ce-fb96-9e86-21f5-0b69bea4f405.png)

ワークフローの作成画面が表示されました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/621838/64e9c521-bf66-83ca-0376-c3fd1ad4468f.png)

名前の部分を選択すると、詳細編集ができるのでここは好きに変更してください。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/621838/cd8eb223-8f73-26e3-d371-416fa5aae7d5.png)

次に、サイドメニューにある フォーム > 情報をフォームで収集する を送信する を選択してください。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/621838/ed958b10-37a3-d536-5607-8b63730f3184.png)

フォーム入力欄が表示されますので、各項目を設定してください。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/621838/fae34416-b437-44cb-29ee-066da7d0d29e.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/621838/fba61725-d3d6-c1b0-d282-b18423cf5170.png)

次に、サイドメニューにある メッセージ > チャンネルへメッセージを送信する を選択してください。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/621838/1cfdd7e2-01da-956f-8228-9de419633167.png)

メッセージ入力欄が表示されますので、各項目を設定してください。
- チャンネルは最初に作成した`匿名チャットを送りたいチャンネル`を選択してください
- メッセージ欄には`変数を挿入する`から「<フォーム> への回答」を選択してください

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/621838/dba028c5-818d-0257-3050-765ed1339900.png)

最終的にこうなっていればOKです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/621838/16834167-5554-f819-37e0-a1a057485afd.png)


### ワークフローの権限の設定
ワークフローの権限を設定します。
ワークフロービルダーの 三点リーダ > 設定 を選択してください。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/621838/f0fc1a7e-6a44-edfa-cbda-86a493d631bb.png)

権限の編集を選択してください。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/621838/ff8a9536-65d2-e638-9bfe-e18bf03e584f.png)

権限の編集欄が表示されますので、各項目を設定してください。
- ワークフローマネージャー
    - 自分、（他任意）
- 誰がワークフローを見つけて使用できますか
    - 匿名チャットを投稿したいチャンネル
- このワークフローは誰がコピーできますか？
    - ワークフローマネージャーのみ

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/621838/77b14383-32a7-029a-8e06-5cadf8aa6767.png)


### ワークフローの公開
ここまでの設定が終わったら、`完了`を選択してください。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/621838/5374e00e-1dc7-6303-7a2f-a8a7956502e5.png)

各項目の確認欄が表示されますので、問題なければ `公開する`を選択してください。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/621838/3f3260dd-e61e-8617-013f-9e6a82058c25.png)

公開成功です。リンクは後から使いますので、コピーしておきましょう。（後からでもできますが）

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/621838/3368f158-a56f-042d-bccc-80c2c487b0ca.png)


### ワークフローを使う
では、早速作ったワークフローを使ってみましょう。
匿名チャット用のチャンネルを開き、`ショートカットを実行するアイコン`を選択してください。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/621838/986b0aef-aa07-3a87-cd06-581068d33ac7.png)

匿名用フォームが表示されますので、お好きな文言を入力しましょう。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/621838/3192a239-636d-eaa4-4d4c-062c4f31f875.png)

ワークフローが自分の代わりに入力した文言をチャンネルに投稿してくれました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/621838/34ee3826-02b0-79e7-7edf-b9af6589ea0d.png)

ちなみにチャンネルのキャンバスにワークフローのURLをカードとして貼り付けておくこともできます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/621838/b79f5df0-ded2-0207-e9af-cbaacd91d87d.png)


### ログを管理する
ワークフロービルダー画面から 三点リーダ > アクティビティログを確認する を選択してください。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/621838/05a466aa-86db-d999-68a8-b6c834258222.png)

いつ誰がこのワークフローを使ったかが表示されます。
チャット欄の投稿時間と照らし合わせれば投稿内容までわかりますので、悪いことはできないですね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/621838/1e18466a-0ac9-7c53-ff68-05052aaa76a8.png)


### まとめ
以上がSlackのワークフロー機能を使った匿名チャットのやり方になります。
匿名制になるだけでコミュニティが活発化するのはどうなのか。。。という意見もある気はしますが、
試みとしては面白いのではないでしょうか。

興味がある方は是非作ってみてください！！！