Teamsでメンションされた際にToDoを作成する

メンションされた際に、ToDoを作成する

Teamsでメンションされた際にToDoを作成する

みなさんは仕事などでTeamsでやり取りをする機会が多いかと思います。
Teamsにはメンション機能があり、グループチャットやチャネルにて宛先を指定し通知をさせることができます。
非常に便利な機能なのですが、多用されると通知がたまり、対応漏れ気が付かないケースが出てくるかと思います。

こういった対応漏れを防ぐために色々な対策をとっているかと思いますが、今回は私が実装している対策を紹介をしたいと思います。
方法としては、PowerAutomateで対応フローを作成し、メンションされた際にToDoリストに追加するようにしています。
是非参考にしてみてください。

なお、動画でも同じ内容を紹介しているので併せて参考にしてみてください。


フロー紹介

それではフローを紹介していきます。

  1. トリガー
  2. メンションされた際に起動するようにしたいので、トリガーはTeamsの「自分が@mentionされたとき」を選択します。

    このトリガーでは詳細設定が必要になるので、設定をしていきます。

    • メッセージの種類
    • このトリガーは「グループチャット」と「チャネル」の2つから選択します。
      今回は「チャネル」を選択します。

    • チーム
    • メッセージの種類でチャネルを選択したので、チャネルが所属しているチームを選択します。
      あらかじめ、トリガーに設定したいチャネルが所属するチームを確認しておきましょう。

      チームを設定すると、チャネルが選択できるようになるので、お好みのチャネルを設定します。
      なおチャネルは複数設定することが可能なので、必要な場合は「新しい項目の追加」をクリックします。

    これでトリガーの設定は完了です。

  3. 変数の準備
  4. 後続のステップでいくつかパラメータが必要になるので、変数の初期化をしておきます。
    今回準備するのは2つで、textという変数と、urlという変数です。
    どちらも文字列変数で初期値は不要です。

  5. メッセージ取得
  6. 今回のトリガーですが、自分がメンションされた際にフローを起動させますが、メッセージの内容などは取得してくれません。 トリガーはあくまでメッセージリンクした取得してくれないので、そのリンクを使ってメッセージの詳細を取得する必要があります。

    Teamsで絞り込み、「メッセージ詳細を取得する」を選択します。
    ここでは、複数の項目を設定する必要がありますが、基本的にはトリガーで取得した項目を利用できるので難しくはないです。

    • メッセージ
    • メッセージの中身を取得するため、メッセージIDを設定します。
      これをもとに、Teams上のメッセージを特定して取得してきてくれます。

    • メッセージの種類
    • ここは選択式で、トリガーで設定したものと同じものを選択します。

    • TeamとChannel
    • この2つの項目は、メッセージの種類で「チャネル」を選択しているため表示されています。
      トリガーで取得した項目に、それぞれのIDがあるので、それを設定します。

    • Parent message ID
    • 必須項目ではないので空白でも問題ないです。
      スレッドでのやり取りなどにおいて、スレッドの最初の投稿などが存在する場合に設定することがあります。

    メッセージ取得は以上です。

  7. 変数格納
  8. メッセージの詳細を取得したため、事前に初期化しておいた変数に値を格納します。
    text変数には、「Body plainTextContent」を設定します。これはメンションされた際のメッセージをプレーンテキストとして出力してくれるものです。
    ※TeamsのメッセージはHTMLなどのタグ形式になっているので、プレーンテキストの方がオススメです。
    url変数には、「Message Link」を設定します。これを設定することで、このリンクからTeamsのメッセージに遷移することができます。

  9. 現在時刻の設定
  10. ToDoリストに登録する際に期限を設定するため、現在時刻を取得しておきます。
    「現在の時刻」ステップ以外に、「タイムゾーンの変換」ステップも追加します。
    現在の時刻は協定世界時で取得されてしまうので、日本時間に合わせるためにタイムゾーンを変換しておきます。

  11. ToDoを登録する
  12. 準備ができたら、ToDoを登録します。
    今回はMicrosoft-ToDoを使っていくので、必須項目はToDoリストとタイトルです。 これらは自分が普段使っているToDoリストを指定し、わかりやすいタイトルを設定しておきます。

    それ以外の項目は任意なので、今回は画像のように登録をします。
    先程取得した日本時間をもとに、期限にはyyyy/MM/dd形式で登録をします。
    本文コンテンツには、Teamsのメッセージとそのリンクを貼り付けておきます。 ここでリンクを付けておくことで、ToDoリストからでもTeamsのスレッドに遷移することができます。

これでフローの構築は完了です。


稼働テスト

フローが完成したらフローのテストをします。
このフローは自分がメンションされた際に起動するため、テストするには誰かにメンションしてもらう必要があります。 もし一人でテストする場合は、自分自身にメンションをすることはできないので、別のフローからボットを使い自分にメンションします。

フローで指定していたチャネルで、自分がメンションされるとフローが起動します。
メンションされたことを確認したら、ToDoリストを確認します。するとToDoリストにタスクが追加されています。
本文のリンクをクリックすることで該当のTeamsメッセージに遷移することができます。


さいごに

今回はPowerAutomateを使い、Teamsでメンションされた際に、自動的にToDoリストに追加する方法を紹介しました。
メンション機能は便利である反面、大量にメンションされることで見落としや対応漏れが出やすくなってしまいます。
その対策として、今回紹介した方法を導入してみると、少し改善できるかもしれません。少しでも参考になれば幸いです。
今回はこのへんで、ではまた!

コメント

このブログの人気の投稿

PowerAppsで座席表を作成する

Power Automateで文字列抽出

Power Automateでファイル名から拡張子を取得