メールを送信したか判定

Gmailの送信Boxから、今日メールを特定の相手(複数)に送信したか判定し、していなければ送信したいです。
Gsuiteのメールのリストを取得でフィルターに今日の日付と相手のメールアドレスを設定し、List型の変数に出力されるようにして、Exists in collectionで取得したリストが空かどうかで判定しようとしています。
コレクションにList型の変数を入れており、項目にuipath.Gsuite.Models.GmailMessage型の変数を入れるようにと出ますが、Exists in collectionの項目に何を入れたら良いのかわかりません。Listの中にそれがあるかで判定するというのはわかるのですが…
よろしくお願いいたします。

もちろん、その問題を解決するお手伝いをいたします!

"Exists in Collection"アクティビティを使用して特定の要素がリスト内に存在するかどうかをチェックする方法について詳しく説明します。

:e-mail: Get GSuite Mail Messages Activity: このアクティビティは、GSuiteのメールボックスからメールメッセージを取得します。次のように設定します:

"MailFolder"フィールドに、メールを取得したいメールフォルダを指定します。たとえば、"Sent"を指定して送信済みメールを取得します。
"Filter"フィールドに、特定の日付とメールアドレスを指定します。たとえば、"after:2022/01/01 to:example@gmail.com"と指定すると、2022年1月1日以降にexample@gmail.comに送信されたメールをフィルタリングします。
"Top"フィールドには、取得したいメールの数を指定します。たとえば、最新の10通のメールを取得したい場合は10を入力します。
"Messages"フィールドには、取得したメールを格納するための変数(例:"mails"という名前のList型変数)を作成します。
:arrows_counterclockwise: Exists in Collection Activity: このアクティビティは、特定の項目がコレクションに存在するかどうかをチェックします。次のように設定します:

"Collection"フィールドには、検索したいコレクション(上記で作成した"mails"という名前の変数)を指定します。
"Item"フィールドには、コレクション内で検索したい項目を指定します。この場合、"UiPath.Gsuite.Models.GmailMessage"型の要素を指定します。これは、特定のメールメッセージを表します。
"Result"フィールドには、結果を格納するためのBoolean型の変数(例:“isExists"という名前の変数)を作成します。この変数は、指定した項目がコレクションに存在する場合は"True”、存在しない場合は"False"になります。
これらのステップを設定した後、プロセスを実行すると、指定したメールアドレスに対して今日送信したメールがあるかどうかを判定できます。

なお、"Exists in Collection"アクティビティで検索する項目は、具体的なメールメッセージを指定する必要があります。メールメッセージは"UiPath.Gsuite.Models.GmailMessage"型で、その属性(例えば、送信者、受信者、件名、本文など)を基に特定のメールメッセージを指定します。

他に質問がありましたらお知らせください。

1 Like

ありがとうございます。
"UiPath.Gsuite.Models.GmailMessage"型変数を件名にして、"today"が入っている場合としたい場合は、どのように作れば良いのでしょうか?

Hi @sayaka.y

  • Create a new variable of type UiPath.Gsuite.Models.GmailMessage. Let’s name it “gmailMessage.”

  • Use assign Activity and give the below syntax:

gmailMessage.Subject = "Your subject text here " + DateTime.Now.ToString("dd-MM-yyyy")

Hope it helps!!

1 Like

お尋ねいただきありがとうご���います。"UiPath.Gsuite.Models.GmailMessage"型の変数を使用して、メールの件名に"today"が含まれているかどうかを確認する方法について説明します。

For Eachアクティビティの中でIfアクティビティを使用します。IfアクティビティのConditionフィールドに以下の条件を入力します:

item.Subject.Contains("today")

ここで、'item’は各メールメッセージを参照するための変数名で、'Subject’はメールメッセージの件名を参照します。'Contains’メソッドは、指定した文字列(この場合は"today")が件名に含まれているかどうかを確認します。

この条件が真(つまり、メールの件名に"today"が含まれている)場合、IfアクティビティのThenセクションに追加したアクティビティが実行されます。条件が偽(つまり、メールの件名に"today"が含まれていない)場合、Elseセクションに追加したアクティビティが実行されます。

この方法で、メールの件名に特定の文字列が含まれているかどうかを判定することができます。

他に何かご質問がありますか?

1 Like

お二人ともありがとうございました。教えていただいた方法は残念ながらできなかったのですが、違う方法で解決しました。
ありがとうございました。

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.