7
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Slackの絵文字でリアクションすることでスレッドに定型文を送るzapierを作ってみた

Last updated at Posted at 2022-04-17

はじめに

Slackの絵文字を押してリアクションするだけで自分の代わりに投稿してくれるBotがあれば良いなと思って作成しました。
初めてzapierを使ったのですが、Slackのスレッドに投稿させる方法も手探りだったので、他の人も参考になるかなと思って作成しました。

(ちなみに、Slackは便利でイケてるチャットツールでzapierは色々なアプリをノーコードで連携して自動化できるイケてるツールです!連携できるアプリの1つはSlackですね。 Slackは知っててもzapierを知らない人そこのあなた!この記事でちょっと触れるようになるかもしれませんよ! ちなみに私は知りませんでした!)

書かないこと

Slack, zapierの登録方法は解説しません。既にどちらもアカウント登録済みという前提で進めます。

完成形のイメージ

テーマは残業申請です。投稿されたコメントに対して「残業します」とスレッドにコメントできるようにします。
完成形は次のようになります。
21:40分にリマインダーが設定されているのはとてつもないブラック臭がプンプンしますね。一体定時は何時なんでしょうか。
スクリーンショット 2022-04-16 22.42.05.png

やること

大きく以下の3つを行います。
Slackのスレッドに自動で投稿させるだけなら、Zapierだけで設定できるので1と2はSKIPしても大丈夫です。

  1. リマインダーの登録
  2. Slackで利用するカスタム絵文字の作成・登録
  3. Zapierの設定

リマインダーの登録

以下のリンクを参考に登録してください。

Slackで利用するカスタム絵文字の作成・登録

Slackで利用するカスタム絵文字の作成には以下のサイトを利用しました。

今回は以下の設定で作成してみました。

テキスト
残業 申請
フォント
Noto Sans Mono CJK JP Bold
カラー
#EC71A1

作成したものをダウンロードします。
次のようなアイコンが作成できました。
残業_申請.png

登録方法は以下のリンクを参照ください。

Zapierの設定

こちらも完成形は次のリンクになりますが、せっかくなのでどういう設定をしたのか記載します。

また、公式のリンクもぜひ参考にしてください。

では、登録方法について解説します。

  1. zapierを開いて、Create Zapをクリックします。スクリーンショット 2022-04-16 21.39.28.png

  2. Triggerと言われる起点となるアクションの設定を行います。ここではSlackをクリックします。スクリーンショット 2022-04-16 21.39.54.png

  3. Trigger EventでNew Reaction Addedを選択します。スクリーンショット 2022-04-17 8.28.08.png

  4. 一番上のTriggerが1.Slackから1.New Reaction Added in Slack に変わりました。Continueを選択してください。(以降も作業が完了したらContinueを選択して次に進んでください。次から説明は割愛します)スクリーンショット 2022-04-16 21.40.11.png

  5. Slackのワークスペースを選択します。スクリーンショット 2022-04-16 21.40.32.png

  6. Set up triggerで起点となるReaction(Slackの絵文字)を選択してください。

    1. Reaction: 今回は上で作成した残業申請(登録名:zangyoshinsei)の絵文字をTriggerとします。Reactionに文字を打ち込むと候補が出てきます。スクリーンショット 2022-04-16 21.44.40.png
    2. Channel: 適応させたいチャンネルを選んでください。今回はzapier-testチャンネルに投稿させます。
    3. User: 全員に反応させたいので、空のままにしておきましょう。スクリーンショット 2022-04-16 21.44.46.png
  7. テストを行います。Slackを開いて上で設定した絵文字を押しましょう。(まだTest triggerは押しちゃ駄目ですよ!反応しないはずです!)スクリーンショット 2022-04-16 21.44.55.png

  8. 事前に設定したリマインダーに残業申請の絵文字を押しています。スクリーンショット 2022-04-16 21.49.25.png

  9. zapierに戻ってTest triggerを押しましょう。無事検知できたら次のような画面になります。スクリーンショット 2022-04-16 21.50.04.png

はい!ここまでで一旦Triggerの設定は完了です。
次はActionと呼ばれる、実際に行う操作を設定していきます。

  1. Triggerと同じような画面が出るのでここでもSlackをクリックします。スクリーンショット 2022-04-16 21.50.15.png

  2. Action EventでSend Channel Message を選択します。スクリーンショット 2022-04-17 8.48.35.png

  3. Triggerの時と同じく表記も変わりました。スクリーンショット 2022-04-16 21.50.48.png

  4. ここでもTriggerと同様に送信先のワークスペースを選択します。スクリーンショット 2022-04-16 21.51.00.png

  5. 送信先の設定や内容を選択します。スクリーンショット 2022-04-17 9.14.16.png
    スクリーンショット 2022-04-17 9.09.29.png

    1. Channel: zapier-test というチャンネルにします。(通知先チャンネル)
    2. Message Text User profile fisrt name: XXXXさんが残業を申請しました。としました。(実際のユーザーネーム。XXXXは画像だとYumihiki) 
    3. Send as a bot: Yes Botから送信したように見せるかどうか、です。
    4. Bot Name: 残業申請くん Botの名前です。
    5. Bot Icon: User profile medium image url こちらを選択することでBotのアイコンが絵文字をつけた人になりすませるようになります。視認性のためにはアイコンを一緒にさせた方が良いですよね!(Slackの絵文字を選択することも可能です)
    6. Include a link to this Zap?: No 今回作成したZapへのリンクを表示させるかどうか。
    7. Auto-Expand Links?: yes メッセージのリンクを自動展開するかどうか。(デフォルトのyesのままにしています)
    8. Link Usernames and Channel Names?: yes ユーザー名とチャンネル名をリンクさせるかどうか。(デフォルトのyesのままにしています)
    9. Thread: Message ts この設定が重要です!クリックしてCustomタブから選んでください。 メッセージのタイムスタンプを指定することでスレッドに投稿できるようになります。(タイムスタンプで判別させるような仕組みみたいです)
    10. Broadcast To Channel?: no スレッドに投稿している場合のみに適用されるかどうか。(デフォルトのnoのままにしています)
  6. テストをします。このような画面になったらSlackを確認してみます。(仮に届いていない場合は設定ミスが考えられます)スクリーンショット 2022-04-16 21.56.11.png

  7. メッセージが投稿されていることを確認できました!スクリーンショット 2022-04-16 22.02.44.png

  8. あとは左上の「Untitled Zap」から名前を「残業申請くん」と変更して、Publish Zapを選択します。スクリーンショット 2022-04-16 22.03.12.png

  9. Publish & Turn Onを選択します。スクリーンショット 2022-04-16 22.03.19.png

  10. これで公開できました!Copy linkでリンクをコピーしてぜひ共有しましょう!スクリーンショット 2022-04-16 22.03.37.png

  11. Slackに戻り最後の動作確認です。他の人が押しても同じようになることが確認できました。スクリーンショット 2022-04-16 22.05.29.png

以上で作業は完了です!

終わりに

いかがでしたか?
毎回同じ定型文を入力するようなことがあれば、作業を省力化できるのではないでしょうか。問い合わせ対応で「これを確認してね」というメッセージを投稿したり、後で確認します、というコメントを投稿したりなど他にも可能性は無限大なのでぜひみなさん試してみてください!

補足

メンションってどうやるんだろうと、ふと調べてみました。
メンションをさせたい場合は<@ User id> となるようにUser id を選択してやると良いみたいです!
スクリーンショット 2022-04-17 9.23.13.png

参考文献
https://blog.pirox.dev/2020/04/27/071145#%E3%83%A1%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%B3

7
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?