〜Microsoft Flow のカスタムコネクタで新着タスクをSlack(スラック)に通知!〜

API


Microsoft Flow 連携 第三弾!

今回は定期的に新着タスクをチェックして Slack に通知するフローを作成しましょう。

※本稿に掲載されているインターフェース画像は記事がリリースされた時点のものであり、現在のものとは完全に一致しない場合があります。

事前準備

フローを作成する前に、パラメータで使用するタスクワールドのデータを確認しましょう。第1回を参考にしてタスクワールドのアクセストークンと、スペースおよびプロジェクトの ID を取得してください。それと今回は特定のタスクリストを監視して新着タスクをチェックするので、対象にするタスクリストをひとつ選んで、タスクリストの ID を確認しておきましょう。

そして今回は Flow と Slack のアカウントを使用しますので、それぞれログイン確認を行っておいてください。

カスタムコネクタの作成

Flow からタスクワールド API を呼ぶためのカスタムコネクタを作成します。

Postman で tasklist.get-all のクエリを作成し、クエリのテンプレートをエクスポートします。このテンプレートを Flow にインポートして、カスタムコネクタを作成しましょう。詳しい手順は第2回を参考にしてください。

フローの作成

カスタムコネクタを作成したら、フローを作成します。今回はタイマーで定期的にフローを起動してタスクワールド API を実行します。タスクリストを取得し、1時間以内に作成されたタスクがあれば、タスクの名前を Slack に送信します。

まず Microsoft Flow 管理画面にログインし、左メニューの「マイフロー」から「+新規」の「一から作成」を選択します。

01_new_flow

「多数のコネクタやトリガーを検索する」をクリックしてコネクタの選択画面を開き、検索欄に「繰り返し」と入力して、トリガー欄に表示された「繰り返し」のアイコンを選択します。

02_select_loop_timer

「繰り返し」の設定フォームが開くので、起動間隔を1時間に設定します。

03_set_timer

入力したら「+新しいステップ」をクリックして、今度は先ほど作成した tasklist.get-all のカスタムクエリを選択します。

04_sel_cutom_query

tasklist.get-all のリクエストパラメータを入力します。

05_set_cutom_query

次のステップでは、タスクワールド API のレスポンス JSON を解析して、タスクリストから新しいタスクを抽出する処理を設定します。

「+新しいステップ」をクリックして検索欄に「フィルター」と入力し、「配列のフィルター処理」を選択します。

06_sel_array_filter

フィルター設定の「差出人」(フィルターを適用する配列)をクリックすると右側に入力補助のフォームが表示されるので、「動的なコンテンツ」タブから tasklist.get-all の「tasks」を選択します。

07_set_array_filter_1

次に、左下の「詳細設定モードで編集」をクリックし、条件欄に以下のように入力します。

@greater(convertToUtc(item()?['created'], 'UTC', 'yyyy-MM-dd HH:mm'),formatDateTime(addhours(utcnow(),-1),'yyyy-MM-dd HH:mm'))
この条件でタスクの作成日時を判定し、現在より1時間以内に作成されたタスク情報だけを抽出して、後続の処理で使用できるようにします。

08_set_array_filter_2

次が最後のアクションになります。「+新しいステップ」をクリックして「slack」で検索し、「投稿メッセージ」を選択します。

09_sel_slack

設定フォームでメッセージを投稿したいチャネルを選択します。「メッセージテキスト」は動的コンテンツから「配列のフィルター処理」の「title」を選択しましょう。メッセージは動的コンテンツの他に任意の文字も入力できます。

10_set_slack

フィルターのコンテンツを選択するとアクションが自動的に「Apply to each」でラップされて、配列の繰り返し処理を行うようになります。この状態で「保存」をクリックしてフローを保存しましょう。これでフロー作成は完了です!

11_save_flow


フローの動作確認

画面右上の「テスト」をクリックしてフローの動作確認をしてみましょう。「トリガーアクションを実行する」を選択して「保存&テスト」をクリックし、続けて表示される確認ウインドウでは「フローの実行」「完了」と進みます。

処理結果の画面で「ご利用のフローが正常に実行されました。」と表示されればOKです。もし失敗した場合は、赤いチェックが付いたステップをクリックしてエラー情報を確認しましょう。

13_result

フローが正常に動作できたら、Slack への投稿処理も確認をしてみましょう。タスクワールドに新規タスクを登録してからフローのテストを実行して Slack にタスク名が投稿されれば成功です!

14_tw_add_new_task


15_slack_message


まとめ

いかがでしたでしょうか?このように Flow ではメジャーなサービスへのコネクタが揃っているので、Slack 以外にも様々なサービスをタスクワールドと連携させられます。また、より複雑な分岐や条件を盛り込むことで、高度にカスタマイズした通知も可能になります。

皆さんもぜひ Flow との連携にチャレンジしてみてください!

--------------

タスクワールドは、15日間無料でトライアル利用が可能です。
トライアル期間中は、アナリティクス機能を含む、そのすべての機能を無制限で使えます。
日本語によるサポートもバッチリなので、ぜひ気軽にトライアルスタートを!

twbanner_700x230_ja

1-cR7Xny-Rt1dGa1JGiexWBw

1-LXIE6IOdez6aMNcva6C6Bg