UiPath

【UiPath】MicrosoftOffice365のOutlook関連アクティビティの使用例

UiPath Studioの開発では、Office365のOutlookのメールを操作したいケースがあります。

この記事では、Microsoft Office365アクティビティを使用して、Office365のOutlookのメールを操作する方法を説明します。

 

 関連記事 【UiPath】Udemyのオンラインコースでワンランク上のロボット作成技術を学ぶ

 

 

 

Office365アクティビティの使用準備と方法

Office365アクティビティのインストール方法

Microsoft Office365アクティビティは、デフォルトで作成したプロセスには存在しません。

別途、MicrosoftOffice365.Activitiesアクティビティパッケージを追加する必要があります。

Microsoft Office365アクティビティのインストール方法は、Office365アクティビティパッケージのインストールの記事を参考にしてください。

 

Office365アクティビティの使用方法

Office365の各アクティビティは、「Microsoft Office 365 スコープ」か「OneDrive と SharePoint を使用」内にアクティビティ配置して使用します。

「Microsoft Office 365 スコープ」は、連携>Microsoft>Office365 配下のアクティビティがすべて使用出来るのでおすすめです。

ただし、AzureADに対して「アプリの登録」の設定が必要です。

エフペン
エフペン
具体的な設定方法は、Microsoft Office 365 スコープによる認証を参照してください。

 

「OneDrive と SharePoint を使用」は、連携>Microsoft>Office365>ファイル 配下のアクティビティのみの使用となり、Office365上のファイルしか操作できません。

ラッコくん
ラッコくん
具体的な設定方法は、OneDrive と SharePoint による認証を参照してね。

 

Office365のOutlook操作のアクティビティ一覧

Office365のOutlookのメールを操作するアクティビティは、「連携>Microsoft>Office365>Outlook」配下にあります。

 

「連携>Microsoft>Office365>Outlook」配下のアクティビティは、以下表の通りです。

アクティビティの場所 アクティビティ名 アクティビティで出来ること
連携>Microsoft>
Office365>
Outlook
メールに返信(Reply to Mail) Microsoft Graph の Create Reply API と Reply API を使用して、メール メッセージに返信します。
メールのカテゴリを設定 (Set Mail Categories) Microsoft Graph の UpdateMessage API を使用して、メッセージにカテゴリを関連付けます。
メールを削除 (Delete Mail) Microsoft Graph の DeleteMessage API を使用して、メール メッセージを削除します。
メールを取得 (Get Mail) Microsoft Graph の GetMessage および ListMessages API を使用して、指定したメールボックス ([メールボックス]) から一致するメッセージを取得します。
メールを移動 (Move Mail) Microsoft Graph の Move event message API を使用して、メッセージ ([メッセージ]) を別のメール フォルダー ([保存先フォルダー]) に移動します。
メールを転送 (Forward Mail) Microsoft Graph の Create forward および Forward event message API を使用して、1 人以上の受信者 ([宛先]) に、内容 ([本文]) を追加してメッセージ ([メッセージ]) を転送します。
メールを送信 (Send Mail) Microsoft Graph の API である CreateMessage および SendMail を使用して、メッセージ ([本文] と [件名]) を 1 人または複数の受信者 ([宛先]、[CC]、[BCC]) に送信します。

 

エフペン
エフペン
他のアクティビティは、Office365アクティビティ一覧を参照してください。

 

 

Office365のOutlookのメール操作

Office365のOutlookのメールを操作するには、「連携>Microsoft>Office365>Outlook」にあるアクティビティを使用します。

ラッコくん
ラッコくん
この章では、使用頻度が高いアクティビティの使用例を紹介するよ

 

メールを取得 (Get Mail)

Outlookにあるメールを操作するためには、まず「メールを取得 (Get Mail)」アクティビティで検索して、「Office365Message」型の配列として取得します。

次に、取得したOffice365Messageを他のアクティビティで使用することにより、メールの転送や移動などができます。

 

メールを取得 (Get Mail)の設定項目

設定場所 設定項目 設定内容
[プロパティ] パネル内 共通 表示名 アクティビティの表示名です。
入力 アカウント (任意) 対話するメール アドレスです。
メール フォルダー メッセージの取得元のメール フォルダーです。
その他 プライベート オンにした場合、変数および引数の値が Verbose レベルでログに出力されなくなります。
オプション HTML として取得 選択した場合、メッセージ本文が HTML 形式で返されます。
既読にする 選択した場合、返されるメッセージが既読に設定されます。
未読メッセージのみ 選択した場合、未読のメッセージのみが返されます。
日付で並べ替え 返されたメッセージを日付で並び替えます。
クエリ 返されるメールのフィルター処理に使用するクエリです。
上限数 取得するメールの最大数です。
出力 結果 ユーザーの受信トレイにあるすべてのメールを返します。

 

 

 

サンプルプロセス
ワークフロー実行時にOffice365へログインしたユーザで、Outlookの受信トレイ内のメッセージを3件取得して、メッセージの件名をログメッセージへ表示する。

 

・変数

 

・Microsoft Office 365 スコープのプロパティ

 

・メールを取得のプロパティ

エフペン
エフペン
オプションの上限数を3とすることで、最大3件のメールを取得します。
ラッコくん
ラッコくん
新規メールから取得するため、オプションの日付で並び替えをNewestFirstを選択します。

 

・メールを取得する対象の受信トレイ

 

・ワークフロー実行結果のログ

エフペン
エフペン
新しいメール3件の件名をログへ表示できています。

 

 

 

メールを送信 (Send Mail)

Outlookでメールを送信するには「メールを送信 (Send Mail)」アクティビティを使用します。

 

メールを送信 (Send Mail)の設定項目

設定場所 設定項目 設定内容
[プロパティ] パネル内 添付ファイル 添付ファイル メールに添付するファイルのパスを含むコレクションです。
添付ファイルのコレクション このメッセージに添付するファイルのもう一つのリストです。
共通 表示名 アクティビティの表示名です。
メール 本文 メールのメッセージ本文です。
件名 メールの件名です。
入力 アカウント (任意) 対話するメール アドレスです。
その他 プライベート オンにした場合、変数および引数の値が Verbose レベルでログに出力されなくなります。
オプション 送信元 メールの送信元アドレスです。
重要度 メール メッセージの重要度です。
HTML 本文 選択した場合、メールの本文が HTML 形式で解釈されます。
下書き 選択すると、メッセージが下書きとして保存され、送信されません。
返信先 返信に使用するメール アドレスです。
受信者 Bcc Bcc 受信者に含めるメール アドレスのコンマ区切りのリストです。
Cc Cc 受信者に含めるメール アドレスのコンマ区切りのリストです。
宛先 メールの宛先に含めるメール アドレスのコンマ区切りのリストです。

 

 

 

サンプルプロセス
Office365のOutlookでメールを送信する。

 

・変数

 

・メールを送信のプロパティ

 

・ワークフロー実行後の送信済みアイテム

ラッコくん
ラッコくん
送信済みアイテムにUiPathで実行したメールがあります。

 

 

 

 

メールを転送 (Forward Mail)

Outlookにあるメールを転送するためには、まず「メールを取得 (Get Mail)」アクティビティで検索して、「Office365Message」型の配列として取得します。

次に、取得したOffice365Messageを「メールを転送 (Forward Mail)」で使用することにより、メールを転送します。

 

メールを転送 (Forward Mail)の設定項目

設定場所 設定項目 設定内容
[プロパティ] パネル内 添付ファイル 添付ファイル メールに添付するファイルのパスを含むコレクションです。
添付ファイルのコレクション このメールに添付するファイルのもう一つのリストです。
既存のファイルを置換 同じ名前の既存の添付ファイルを置換するかどうかを指定します。
共通 表示名 アクティビティの表示名です。
入力 アカウント (任意) 対話するメール アドレスです。
本文 メールのメッセージ本文です。
メッセージ 転送するメールです。
新しい件名 メールの新しい件名です。
その他 プライベート オンにした場合、変数および引数の値が Verbose レベルでログに出力されなくなります。
オプション 下書き 選択すると、メッセージが下書きとして保存され、送信されません。
受信者 Bcc Bcc 受信者として追加するメール アドレスのリストです。
Cc Cc 受信者として追加するメール アドレスのリストです。
宛先 メールの転送先アドレスのコンマ区切りのリストです。

 

 

 

サンプルプロセス
ワークフロー実行時にOffice365へログインしたユーザで、Outlookの受信トレイ内の件名が「周知メール」を含むメッセージを最大5件取得して、他ユーザへメールを転送する。

 

・変数

 

・メールを取得のプロパティ

ラッコくん
ラッコくん
「周知メール」が件名に含まれているメッセージを検索するために、クエリを ”contains(subject,’周知メール’)” としているよ。
エフペン
エフペン
クエリの使用方法や例は、「メールを取得 (Get Mail)」のオプションのクエリや「filter parameter」を参考にしてください

 

・繰り返し (コレクションの各要素)のプロパティ

ラッコくん
ラッコくん
Office365Messageの配列の各値をitemへセットするため、TypeArgumentに UiPath.MicrosoftOffice365.Models.Office365Messageを設定します。

 

・メールを転送のプロパティ

 

・メールの検索対象の受信トレイ

 

 

・ワークフロー実行後の送信済みアイテム

エフペン
エフペン
受信トレイ内に「周知メール」を含む件名が2件存在したので、2件メッセージを転送出来ています。

 

 

 

メールを移動 (Move Mail)

Outlookにあるメールを移動するためには、まず「メールを取得 (Get Mail)」アクティビティで検索して、「Office365Message」型の配列として取得します。

次に、取得したOffice365Messageを「メールを移動 (Move Mail)」で使用することにより、メールを移動します。

 

メールを移動 (Move Mail)の設定項目

設定場所 設定項目 設定内容
[プロパティ] パネル内 共通 表示名 アクティビティの表示名です。
入力 アカウント (任意) 対話するメール アドレスです。
保存先フォルダー 移動先フォルダーの名前です。
メッセージ 移動するメッセージです。
その他 プライベート オンにした場合、変数および引数の値が Verbose レベルでログに出力されなくなります。

 

 

 

サンプルプロセス
ワークフロー実行時にOffice365へログインしたユーザで、Outlookの受信トレイ内の送信者が「fpen-user22@*****.onmicrosoft.com」のメッセージを1件取得して、「アーカイブ」フォルダへメールを移動する。

 

・変数

 

・Microsoft Office 365 スコープのプロパティ

 

・メールを取得のプロパティ

 

 

・繰り返し (コレクションの各要素)のプロパティ

 

・メールを移動のプロパティ

 

・プロセス実行前の受信トレイ

 

・プロセス実行前のアーカイブ

 

・プロセス実行後のアーカイブ

エフペン
エフペン
受信トレイにある「fpen-user22@*****.onmicrosoft.com」(fpen user22)からのメッセージがアーカイブへ移動しています。

 

 

 

メールを削除 (Delete Mail)

Outlookにあるメールを削除するためには、まず「メールを取得 (Get Mail)」アクティビティで検索して、「Office365Message」型の配列として取得します。

次に、取得したOffice365Messageを「メールを削除 (Delete Mail)」で使用することにより、メールを削除します。

 

メールを削除 (Delete Mail)の設定項目

設定場所 設定項目 設定内容
[プロパティ] パネル内 共通 表示名 アクティビティの表示名です。
入力 アカウント (任意) 対話するメール アドレスです。
メッセージ 削除するメッセージです。
完全に削除 メールを完全に削除するかどうかを指定します。
その他 プライベート オンにした場合、変数および引数の値が Verbose レベルでログに出力されなくなります。

 

 

 

サンプルプロセス
ワークフロー実行時にOffice365へログインしたユーザで、Outlookの受信トレイ内で一番古いメッセージを1件取得して、メールを削除する。

 

・変数

 

・Microsoft Office 365 スコープのプロパティ

 

・メールを取得のプロパティ

 

・繰り返し (コレクションの各要素)のプロパティ

 

・メールを削除のプロパティ

 

 

・ワークフロー実行前の受信トレイ

 

・ワークフロー実行後の受信トレイ

ラッコくん
ラッコくん
一番古い2022/1/24のメッセージが削除されているよ。

 

 

 

まとめ

  • Office365のOutlookのメールを操作するためには、まずMicrosoftOffice365.Activitiesアクティビティパッケージを追加します。
  • Office365のメールを操作するワークフローに「Microsoft Office 365 スコープ」を配置し、その中に「連携>Microsoft>Office365>Outlook」アクティビティを配置する。
  • 「メールを取得(Get Mail)」アクティビティでメールのボックス内を検索して”Office365Message”型として取得した結果を、他のアクティビティで使用してメールを操作する。

目次へ戻る

 

 関連記事 【UiPath】Udemyのオンラインコースでワンランク上のロボット作成技術を学ぶ

 同カテゴリ UiPath

 

当ブログ『エフペンITブログ』の運営者