E メールの読み取り
E メール・メッセージを読み取ります。
コマンドの可用性: IBM RPA SaaS および IBM RPA オンプレミス
Description
E メール・メッセージを読み取り、そのすべての内容 (件名、E メール本文、送信元、送信先、Cc、Bcc、受信日、ヘッダー、カテゴリーなど) を取得し、それぞれの変数に個別に格納します。
スクリプト構文
IBM RPA の専有スクリプト言語の構文は、他のプログラミング言語と似ています。 スクリプト構文は、スクリプト・ファイル内のコマンドの構文を定義します。 この構文は、 IBM RPA Studioの 「スクリプト」 モードで操作できます。
emailRead --message(EmailMessage) (String)=subject (String)=body (String)=htmlbody (String)=from (List<String>)=to (List<String>)=cc (List<String>)=bcc (DateTime)=receiveddate (StringDictionary<String>)=headers (List<String>)=labels
依存関係
個別 (
forEach) コマンドを使用して、E メール・メッセージ・インスタンスを取得します。 それ以外の場合、コマンドは最初の結果のみを返します。E メール・サーバーに接続するには、以下のコマンドを使用します。
Exchange E メール・サーバーに接続 (
exchangeConnect)IMAP E メール・サーバーへの接続 (
imapConnect)Outlook サーバーへの接続 (
outlookConnect)
入力パラメーター
以下の表は、このコマンドで使用可能な入力パラメーターのリストを示しています。 この表では、 IBM RPA Studioのスクリプト・モードで作業しているときのパラメーター名と、それに相当する Designer モードのラベルを確認できます。
| 「デザイナー」モードのラベル | 「スクリプト」モードの名前 | 必須 | 使用可能な変数タイプ | Description |
|---|---|---|---|---|
| メッセージ | message |
Required |
Email Message |
読み取る E メールが含まれている E メール・メッセージのタイプの変数。 |
出力パラメーター
| 「デザイナー」モードのラベル | 「スクリプト」モードの名前 | 使用可能な変数タイプ | Description |
|---|---|---|---|
| 件名 | subject |
Text |
E メール・メッセージの件名を返します。 |
| E メール本文 | body |
Text |
プレーン・テキストの形式で E メール・メッセージの本文の内容を返します。 |
| HTML E メール本文 | htmlbody |
Text |
HTML 形式で E メール・メッセージの本文の内容を返します。 |
| 送信元 | from |
Text |
メッセージ送信者からの E メールを返します。 |
| 終了 | to |
List<Text> |
メッセージ受信者の E メールのリストを返します。 |
| Cc | cc |
List<Text> |
メッセージのコピーを受け取った受信者の E メール・アドレスのリストを返します。 |
| Bcc | bcc |
List<Text> |
メッセージのブラインド・コピーを受け取った受信者の E メール・アドレスのリストを返します。 |
| 受領日 | receiveddate |
Date Time |
E メール・メッセージの日時を返します。 |
| headers | headers |
String Dictionary<Text> |
メッセージに関してヘッダーに記述されているあらゆる情報 (送信者、受信者、サーバーなど) を参照するキーと値。 |
| カテゴリー | labels |
List<Text> |
E メール・メッセージの分類カテゴリーのリストを返します。 |
例
このコマンドで、E メール・メッセージの読み取りを行い、その内容を取得してそれぞれの変数に格納します。
defVar --name readMessage --type EmailMessage
defVar --name htmlEmailBody --type String
defVar --name emailSubject --type String
defVar --name emailBody --type String
defVar --name emailSender --type String
defVar --name emailDestinatary --type List --innertype String
defVar --name emailCopy --type List --innertype String
defVar --name emailHiddenCopy --type List --innertype String
defVar --name emailReceiveDate --type DateTime
defVar --name emailHeader --type "StringDictionary<TValue>" --innertype String
defVar --name emailCategory --type List --innertype String
defVar --name emailConnection --type EmailConnection
imapConnect --mailhost "outlook.office365.com" --mailport 993 --usessl--username "useremail@email.com" --mailusername "useremail@email.com" --mailpassword userpassword --enableLogemailConnection=value
// Using the "For Each" command allows each emails message contained in the connection established with the emails server to be read.
foreach --collection "${emailConnection}" --variable "${readMessage}"
emailRead --message ${readMessage} emailSubject=subject emailBody=body htmlEmailBody=htmlbody emailSender=from emailDestinatary=to emailCopy=cc emailHiddenCopy=bcc emailReceiveDate=receiveddate emailHeader=headers emailCategory=labels
endFor
emailDisconnect --connection ${emailConnection}
logMessage --message "${emailSubject}\r\n${emailBody}\r\n${emailCopy}\r\n${emailHiddenCopy}\r\n${emailReceiveDate}\r\n${emailSender}\r\n${emailDestinatary}\r\n${emailHeader}\r\n${emailCategory}" --type "Info"
// Each field obtained is displayed in its respective variable. Example: Subject, emails Body, Sender, Recipient, etc.
注: このサンプル・スクリプトを実行するには、有効な E メール接続を使用してください。
制限
このコマンドは、E メールに既読のマークを付けません。E メールから情報を抽出するだけです。