Power Automate でチャット型会議への参加状況を自動で確認

仕事で使いまくっているPower Automate Desktopですが、今回は勉強会のレポートの提出状況やチャット型会議の参加状況を自動で取得するフローを組んでみたいと思います。

あかしあでは、毎月実施している定例会議を、動画配信チャット形式で行なっています。
手間もかからず、ヘルパーさんも空いた時間で参加でき、事業所的にも法令で定められた全員参加の要件も楽々クリアできるので、一石三鳥です。
何より、動画編集が楽しすぎます!

さて、チャット形式の会議ですが、ワードプレスのコメント投稿機能を使っています。
このコメントから、ヘルパー氏名と投稿日時を取得し、ヘルパー名簿と照合して参加状況の確認をしたいと思います。
いつも、参加締め切りの数日前に、未参加のヘルパーさんに参加促しのメールを送っています。
今回は、参加済みのヘルパーさんの確認のみのフローですが、メールと連動すれば、未参加のヘルパーさんに自動で催促のメールを送れるようにもなりますね。

まずは、コメント投稿のUI要素の確認です。意外にも、ワードプレスのコメント投稿欄のUI要素に変数を組み込むのに苦労しました。
実は、コメント投稿欄の上から順に、インデックス番号が振られているわけではなく、最初のコメントからの通し番号、かつ、時々飛んでる状態だったのです。
しかも、投稿日時がhyperlinkになっていて、Own Textでは属性が取得できなかったのです。(結論から言うとname属性でした。)

今回、初めて挑戦したのは、2次元配列変数〜データテーブルなるものでした。ヘルパー氏名と投稿日時を順に取得していく必要があります。
今までは、単純な変数のみしかやってきていませんでしたので苦労しましたが、使ってみると、なかなか便利な変数です。

フローは、最初にコメント投稿欄の一番上の番号を取得します。これは毎回、開発者ツールで調査する必要がありますね。
次に、ヘルパー氏名と投稿日時を設定した新しいデータテーブル作成し、最初のインデックスを削除してタイトルのみにしておきます。

続いて、コメント投稿欄の上から順に、ヘルパー氏名と投稿日時を取得するためのループを作ります。
いつものように、ヘルパー氏名のUI要素と投稿日時のUI要素に同じ変数を組み込んで、動的に動くようにします。
投稿日時については、UI要素の構造が分かりづらく属性の取得も試行錯誤したため、今までにない試練を強いられました。
また、コメント投稿欄の番号が飛んでいる箇所もあり、エラーが出た場合には先に進むラベルを入れる必要があります。

さて、続いて、取得したヘルパー氏名と投稿日時をデータテーブルに順に入れてゆくフローを作らなければいけません。
ここも、初めての2次元配列変数でしたので、いろいろ試行錯誤を繰り返しました。答えが分かれば簡単なことなのですが、答えに辿り着くまでの道がまた苦労なのですが、分かった時(フローが思い通りに動く)の快感がたまりません。

再度、新しい変数(ここではList)を設定し、変数の中身をヘルパー氏名に対応した変数と投稿日時に対応した変数を組み込みます。
そして、行をデータテーブルに挿入するフローで、上記で設定したList変数を追加してゆきます。

List変数の記述

%[AttributeValue, AttributeValue2]%

以上で、コメント投稿されたヘルパー氏名とそれぞれの投稿日時が全て一つの変数内に収納されました。
これを、あらかじめ用意してあるエクセルのワークシートに書き込んで、COUNTIF関数で投稿済みのヘルパーの欄に○印を出力すれば、自動で参加済みのヘルパーさんと未参加のヘルパーさんが、一目瞭然に分かるようになります。
今回は、2次元配列変数の利便性を感じた作業でした。

しかしながら、やっていて思うのは、ほとんどの定型業務は自動化できそうだと言うことです。
特に、転記作業やチェック作業は、人間が行うとヒューマンエラーも起きるので、パソコンに自動でやってもらうのが良いです。
次回は、メーラーに届いた勉強会レポートの自動チェックのフローを作りたいと思います。