【2021/6/19】追記
Teamsのデフォルトの機能として、Teamsメッセージからタスク登録が先日できるようになったので、こちら の記事でまとめてみました。よろしければぜひご覧ください...!
#はじめに
Teamsを使っていると、いろんなチームにいろんなチャットがあって、どれを返信するのかわからなくなった経験、ありませんか...?「保存する」を使ってもいまいちだったり。。。
チャットそのものをタスクとして登録・管理できたら便利そう、というアイデアが沸いてきたので、Microsoft Power AutomateとPlannerを使って実装してみました!
目次
- 【1】作ったもの(概要)
- 【2】各フローの作り方
- 【3】テストしてみる
- 【4】おわりに
- 【5】参考サイト
#【1】作ったもの(概要)
Teamsのチャットを、Plannerのタスクとして登録し、また、自分に割り当てられたタスクが進行中の間は、指定時刻にリマインドを送ってくれるフローを作成しています。大きく分けて「タスク登録用フロー」と「タスクリマインド用フロー」の2つのフローから構成されます。
操作感は下記のとおりです。
-
アダプティブカードを使って、チャットをPlannerにタスクとして登録できます。
→以下のようにPlannerにタスクが追加されます。(Plannerタスク内メモ欄のリンクから、該当チャットへジャンプすることが可能です...!)
-
毎日、指定日時になると、自身に割り当てられている処理中のタスク一覧が、メールで通知されます。先の手順で登録したPlannerタスク以外にも、手動で直接Plannerにて登録したタスクもリマインドされます。
#【2】各フローの作り方
【2-1】タスク登録用フローの作り方
-
Office.comにてサインイン後、左ペインよりPower Automateアプリを開きます。
※アプリ一覧に表示されない場合は、Power Automateのライセンスが有効になっていないことが考えられますので、適宜、組織のシステム管理者へお問い合わせください。 -
左ペインの「+ 作成」より、「インスタント フロー」を選択します。フロー名を適当に付け、画面下部の「スキップ」を押下します。
-
Card Elementsより、アダプティブカードにドラッグ&ドロップして、以下のようなアダプティブカードを作成します。
7.トリガー下の「+」ボタンを押し、「アクションの追加」を選択します。
8. 「Office 365 ユーザー」コネクタより、アクション「ユーザ-プロフィールの取得」を選択します。
9. 「ユーザー(UPN)」の枠をクリックし、”動的なコンテンツ”内に表示される「操作元ユーザのID」を選択します。
10. さらに+を押し、Plannerのアクションの「タスクを作成する」を追加します。
11. 以下のようにそれぞれの項目を埋めます。※予め、Plannerアプリ上で、個人用のToDo管理のプラン「myWorkList」を作成しています。
12. 続いて、「タスクを作成する」の下に、「タスクの更新」「タスクの詳細の更新」をそれぞれ追加します。「タスクの更新」では、進捗状況を「In Progress」(進行中)にし、「タスクの詳細の更新」では、説明欄に「メッセージへのリンク」を追加しておきます。
13. 必要に応じて、「メッセージをフローボットとしてユーザに投稿する」アクションを追加しておきます。(登録できたことを即確認したい場合は、追加しておくと良いです。)
14. 右上のフローチェッカーにて、エラーが表示されていないことを確認&画面左上「戻るボタン」横のフロー名を好きな名称(筆者の場合は「Workリストへの登録」)に変更します。その後、自身のTeamsにて、チャット右上「…」マーク>「その他の操作」と進み、自身の作成したフローアクションが表示されていることを確認します。
【2-2】タスクリマインド用フローの作り方
- テンプレート「すべての未処理のPlannerタスクのダイジェストをメールで送信」 を確認し、「続行」を押下します。
- トリガー「Recurrence」をクリックし、詳細オプションを表示の上、以下のようにします。
- アクション「Select」を選択の上、マップの値を以下のように設定します。
※ここで、期限日時、タスク詳細については、以下のような形で指定しておきます。- 期限日時: formatDateTime(item()?['dueDateTime'],'yyyy-MM-dd')
- タスク詳細:concat('https://tasks.office.com/xxxxxxx.onmicrosoft.com/Home/Task/',item()?['id'])
- xxxxxxxは、自身のOfiice365テナントの環境にあわせて設定します。Plannerのタスクのリンク等を見てみると分かります。
- フロー末尾のアクション「Send an email」にて、件名と重要度を、自身の好みにあわせて設定します。
【3】テストしてみる
ここまで作成した2つのフローにより、以下のようになります。
【3-1】タスク登録のテスト
-
タスクとして登録したいメッセージの右上[・・・]より、「その他の操作」>「<自身が設定したフローの名前(筆者の場合は「Workリストへの登録」)>」と進みます。
-
Plannerにタスクが追加され、進行状況が「処理中(In Progress)」になっていることがわかります。また、メモ内のリンクより、該当チャットへジャンプすることもできます。
【3-2】タスクリマインドのテスト
【3-3】フローのデバック
あれ?思った通りに動いていない...?/実行はできたけど時間がかかったので処理を見直したい/...etc.という場合には、以下の手順でエラー箇所/処理遅延箇所の特定が可能です。
- 該当フローの概要ページを開く。
- 画面下の「28日間の実行履歴」にて、処理が走ったと思われる時刻をクリックする。(以下スクリーンショットの赤線部分)
- 各アクションの右上に実行結果(エラー有無・処理時間)が表示されます。また、各アクションをクリックすることで、それぞれのアクションでの出力結果を確認可能です。
【4】おわりに
Power Automate、ローコードでありながら、アイデア次第でいろいろなことができそうです...! 今後も便利な機能作れたら随時公開予定ですので、よかったらフォローいただけると幸いです。
【5】参考サイト
- PowerAutomate公式ページ
-
Adaptive Cards Designer
- その名の通り、アダプティブカードをデザインできるWebツールです。
-
Schema Explore
- アダプティブカードで使える要素とJSONのサンプルが豊富にあります。ここでのJSON構文をコピーして、Adaptive Cards Designにペーストしていくことで、独自のカードを作れます。
-
Microsoft 365 開発者プログラム
- Microsoft 365の試験テナントが欲しい方はお勧めです。無償です。開発用データセットを使って、いろいろと試すことができます。