【Power Automate】特定のメールが届いたらメール自体を保存してTeamsへ通知

事例紹介
この記事は約5分で読めます。

決済完了の通知メールを受信したら、メール自体をOneDriveに保存して、ファイルのリンクをTeamsに投稿しています

もちぱん
もちぱん

Power Automateでその流れ、全部自動化しましょう!

本記事では、「決済完了」と件名に入ったメールを受信したら、OneDriveにメールを保存し、Teamsへ通知するフローを紹介します。

この記事でわかること
  • メール自体を保存する方法
  • OneDrive内のファイルの共有リンクを自動で作成する方法

 
 
▼動画はこちら




作成するフローの内容

本記事では、下記のフローを作成します。


 

フロー全体のショット



前提条件

現在、メールのエクスポートアクションは「Office 365 Outlook」コネクタでのみ利用可能です。
個人向けの無料サービスの「Outlook.com」コネクタでは利用できません。


 

自動化したクラウドフローでトリガーの作成

フローの作成に入ります。
作成画面で「自動化したクラウドフロー」を選択します。



下記画面でフロー名とトリガーを設定します。
トリガーは「新しいメッセージが届いたとき」です。

「Outlook.com」と「Office 365 Outlook」があるので、「Office 365 Outlook」を選んでください。


 

「新しいメールが届いたとき」の設定

パラメータを設定します。

差出人決済完了メールがいつも特定の差出人から届く場合は、
そのメールアドレスを入力してください。
件名フィルター「決済完了」と入力します。
フォルダー対象メールが届くフォルダーを指定してください。



 「新しいメールが届いたとき」の詳細設定方法は以下を参考ください。


 

「メールのエクスポート」アクションの追加

受信したメールをファイル形式にエクスポートするため、「メールのエクスポート」アクションを追加します。


「Office 365 Outlook」コネクタの「メールのエクスポート」を追加します。

メッセージID動的なコンテンツより「メッセージID」を選択します。


「ファイルの作成」アクションの追加

エクスポートしたメールファイルを実際にOneDriveフォルダ内に生成するため、「ファイルの作成」アクションを追加します。


「OneDrive for Business」コネクタの「ファイルの作成」を追加します。

フォルダーのパスフォルダアイコン📁より、対象フォルダを選択します
ファイル名ここでは、「yyyyMMdd(日付)_決済完了メール.eml」というファイル名にします。
※「.eml」はメールファイルの拡張子です。

日付部分を動的に出力するため、関数アイコン(fx)よりaddToTime関数を入力します。
addToTime(triggerOutputs()?['body/receivedDateTime'],9,'Hour','yyyyMMdd')

triggerOutputs()?['body/receivedDateTime']は、動的なコンテンツより、「新しいメールが届いたとき」の「受信日時」を選択
ファイルコンテンツ動的なコンテンツより「メールのエクスポート」の「本文」を選択



 「addToTime関数」の詳細は以下を参考ください。


「共有リンクを作成する」アクションの追加

フォルダ内に格納したメールファイルの共有リンクを作成するため、「共有リンクを作成する」アクションを追加します。


「OneDrive for Business」コネクタの「共有リンクを作成する」を追加します。

ファイル動的なコンテンツより、「ファイルの作成」の「ID」を選択します
リンクの種類以下より選択してください。
・共有者に編集権限を付与する場合…Edit
・共有者に閲覧権限を付与する場合…View
リンクスコープ以下より選択してください
・共有者を組織内に留める場合…Organization
・共有者は組織内外問わない場合…Anonymous


「チャットまたはチャネルでメッセージを投稿する」アクションの追加

Teamsチャネルに決済完了メールを保存したことを通知するため、本アクションを追加します。


「Microsoft Teams」コネクタの「チャットまたはチャネルでメッセージを投稿する」アクションを追加します。

投稿者ユーザーかボットかを選択します
投稿先本記事ではチャネルを選択します
チーム対象チームを選択します
チャネル対象チャネルを選択します
メッセージ本記事では、「こちら」の文字にメールファイルの共有リンクを挿入します。
リンクを挿入する🔗アイコンより、動的なコンテンツの「共有リンクを作成する」の「Web URL」を挿入します。
件名本記事では、「決済完了メールを保存しました」という件名を入力します



 「チャットまたはチャネルでメッセージを投稿する」の詳細設定方法は以下を参考ください。


フローのテスト

フローを保存し、テストします。
実際に「決済完了」のテストメールを自分に送信してみると…


Teamsにメッセージが届いているのがわかります。



リンクをクリックすると、OneDriveに保存された対象メールが表示されます。

コメント