PAD(Power Automate Desktop)を使ってメール操作を自動化することもできます。
Power Automate Desktopでメールの操作
普通にメールメッセージの送受信の自動化をさせることが可能です。
メールの受信のサンプル
hotmail
アクションの「メール」で「メールメッセージの取得」を選択します。
利用しているIMAPサーバのURLやユーザ名、パスワードを記述することでダイレクトにメールサーバへアクセスできます。
以下はhotmail.comでのメールを取り出す場合の書き方です。
メールフォルダーは「INBOX」でいける(場合が多い)と思います。
実行すると変数「RetrievedEmails」にメールデータが格納されます。
xserver
うちは運営サイトはXサーバを利用しているものも多いです。
Xサーバでのメールを利用する場合、以下のようにして取得できました。
- IMPAサーバはXサーバから割り当てられたSV番号を含むサーバアドレスとなります。
- ポートはSSL利用時993です。
- ユーザ名とパスワードは、利用するメールアドレスのものを使います。
- メールフォルダーは「INBOX」を指定します。
メールデータを切り出しのサンプル
本文は変数「RetrievedEmails」から取得したデータで「BodyText」という配列に格納されています。
例えば入手した1番目のメールの本文のデータは「%RetrievedEmails[0]['BodyText']%」のように記述すればアクセスできます。
タイトルは、本文は変数「RetrievedEmails」から取得したデータで「Subject」という配列に格納されています。
例えば入手した1番目のメールの本文のデータは「
['Subject']%」のように記述すればアクセスできます。
同様に送信者は「From」、届いたメアドは「To」に格納されています。
メールの送信のサンプル
「アクション>メール>メールの送信」を使って自動送信させることができます。
Xサーバを使ったメールの場合以下のように記述します。
- SMTPサーバー:指定のXサーバを使います。
- サーバーポート:指定のポートを使います。
- 送信元:こちらのメールアドレス
- 送信先:送る相手のメールアドレス
- 件名:メールのタイトル
- 本文:メール文章
メールの一括配信のサンプル
メールを複数に送る場合はLoopやListを活用して行うことができます。
まず「変数>新しいリストの作成」を追加。これで「List」というからの変数が作成されます。
続けて「変数>項目をリストに追加」でメールアドレスを追加していきます。
次に「ループ>Loop」を追加。
Listで作ったメールアドレスの件数分実行します。
2通の場合、開始値が0、終了が1、増分が1です。
ループに挟まれたなかに「メール>メールの送信」を記述。
ポイントは送信先で「%List[LoopIndex]%」のようにします。これはListという変数に入ったメールアドレスで「LoopIndex」番目のものを取り出す...という意味になります。
フローは以下のようになりますが、一度に大量のメールを送ると怒られることがある?ので、待ち時間をいれたほうがよいでしょう。
「遅延>Wait」で例えば3秒待ってから次のメール送信...というようにしておきます。
メールの不具合
メール受信が遅い?止まる?
hotmailへのアクセスでは結構時間がかかります。10秒以上はかかりますので、ある程度時間がかかるのは仕様なのかなと思います。
メールサーバにアクセスできない?
主なIMAPサーバは、
- imap-mail.outlook.com (Outlook.com)
- outlook.office365.com (Office365.com)
- imap.mail.yahoo.com (Yahoo mail)
- imap.gmail.com (Google mail)
主なSMTPサーバは
- smtp-mail.outlook.com (Outlook.com)
- smtp.office365.com (Office365.com)
- smtp.mail.yahoo.com (Yahoo mail)
- smtp.gmail.com (Google mail)
Email - Power Automate | Microsoft Docs
また、メールフォルダーは
- INBOX
- 受信トレイ
などが利用されます。
設定情報が違うとサーバにアクセスできません。
メールが配達されない?
今回メールの送信テストをした場合、以下のようにメール送信が実行されないケースがありました。
テストでは送信できたものもあるのですが、送信後に「未配達」として通知されるものもありました。
送る宛先のサイトによってはセキュリティのためにはじかれているかもしれません。原因や対処がわかりましたら更新したいと思います。