~Power Automate のカスタムコネクタで新着タスクをSlack(スラック)に通知!~

API


Microsoft Power Automate 第三弾!

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

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

事前準備

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

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

カスタムコネクタの作成

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

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

フローの作成

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

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

08_01_new_flow


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

02_select_loop_timer

トリガー欄に表示された「繰り返し」のアイコンを選択して設定フォームを開き、起動間隔を1時間に設定します。

03_set_timer

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

04_sel_cutom_query

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

08_05_set_cutom_query


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

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

08_06_sel_array_filter


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

08_07_set_array_filter_1


「tasks」を選択するとアレイのフィルター処理の外側に「Apply to each」というフォームが出現しましたね。このフォームがタスクリストからタスクを一件ずつ取り出して「アレイのフィルター処理」にタスク情報を渡す役目をします。

次に、アレイフィルターフォーム左下の「詳細設定モードで編集」をクリックし、条件欄に以下のように入力します。
@greater(convertToUtc(item()?['created'], 'UTC', 'yyyy-MM-dd HH:mm'),formatDateTime(addhours(utcnow(),-1),'yyyy-MM-dd HH:mm'))

08_08_set_array_filter_2


この条件でタスクの作成日時を判定し、現在より1時間以内に作成されたタスク情報だけを抽出して、後続の処理で使用できるようにします。

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

08_09_sel_slack


設定フォームでメッセージを投稿したいチャネルを選択します。「メッセージテキスト」はパラメータの「title」(タスク名)を選択しましょう。パラメータの他に任意の文字も入力できます。

08_10_set_slack


最後に「保存」をクリックしてフローを保存しましょう。これでフロー作成は完了です!

フローの動作確認

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

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

13_result

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

14_tw_add_new_task


15_slack_message


まとめ

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

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

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

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

twbanner_700x230_ja

1-cR7Xny-Rt1dGa1JGiexWBw

1-LXIE6IOdez6aMNcva6C6Bg