はじめに
Outlookの機能の一つに、登録している予定が開始される前に(既定では15分)アラームが鳴り予定をリマインドしてくれる機能がありますが、予定が終了する前にもリマインドが欲しいタイミングがあります。
例えば長引きがちな会議で時間の管理まで手が回らなくなっている時、スケジュールした仕事の区切りを意識したい時などなど…。
Teams会議の場合は、終了5分前に画面上に通知が表示されますが、あまりにも画面の色に溶け込みすぎていたり、表示時間がわずか10秒だったりと気付きにくいです。
(インフォメーション馴染みすぎじゃない…?)
そこで業務時間を有効活用するために、予定や会議が終了する10分前にタイムリーな通知を受けとれるようなフローを作成していきます。
結果
フローの設定
-
トリガーは「予定しているイベントが間もなく開始されるとき (V3)」
カレンダー IDは自分の「予定表」を選択。ルックアヘッドタイム(通知前時間)はデフォルトの15のまま。 -
スケジュール「延期期限」アクションを追加
何分前に通知を送るかを設定します。式の入力欄にformatDateTimeの条件式を入力し、出力する日時のフォーマットを以下のように設定します。
'yyyy-MM-ddTHH:mm:ssZ'
上記のフォーマットでは次のように出力されます。
例)2023-08-16T04:50:00Z ※最後の「Z」は UTC を表します。
次にformatDateTimeのtimestamp部分(最初の括弧のすぐ後ろ)にaddMinutes式を挿入します。
addMinutesの()中に、トリガーアクションの「予定しているイベントが間もなく開始されるとき」から「終了時刻」の動的コンテンツを選択します。
挿入した終了時間の動的コンテンツの後ろで分を指定します。今回は終了時間の10分前に通知が届いてほしいので「-10」を入力します。
入力した式の全体は以下の通り。
formatDateTime(addMinutes(triggerOutputs()?['body/end'],-10),'yyyy-MM-ddTHH:mm:ssZ')
-
「条件」の設定 ※必要がなければ飛ばしてもOK
Outlookの仕様上、自分以外の人が作成した予定がキャンセルされると削除されずに「Canceld:~~」または「キャンセル済み:~~」として予定表に残り続けます。
キャンセル通知が来た時に予定表から都度消せばいいのですが、消し忘れもあるのでキャンセルされた予定の場合、通知は送らないように設定をしておきます。
条件アクションを追加して、イベントの「件名」を選択し次のように条件を設定します。次に「いいえの場合」に終了アクションを追加し、状態は「成功」にします。
これで予定されたイベントの件名に「Canceld」または「キャンセル済み」が入っていたらフローが終わるようになりました。
-
通知するアクションを追加
最後にメールやTeamsなどの通知を受けたいコネクタアクションを追加します。
個人的には通知のポップアップが出るものがリマインドされた時に気づきやすいのでおすすめです。
またメールで通知を受ける場合は、受信後に通知メールを削除するアクションを追加してメールの整理を行っても良いと思います。
まとめ
Outlookの機能ではカバーしきれなかった予定終了前のリマインドをPowerAutomateで行うことができました。
お読みいただき、ありがとうございました。