4Dにおけるメールの作成・送信・受信は Email
オブジェクトの操作よっておこなわれます。
transporter クラス関数を使ってメールを取得する際に、
Email
オブジェクトが作成されます。
- IMAP -
.getMail()
および.getMails()
関数は IMAPサーバーからメールを受信します。 - POP3 -
.getMail()
関数は POP3サーバーからメールを受信します。
また、新規かつ空の
Email
オブジェクトは SMTP .send()
関数を使って送信します。
MAIL Convert from MIME
および MAIL Convert to MIME
コマンドは、MIME コンテンツから Email
オブジェクトに、またはその逆の変換をおこなうのに使用できます。
Email オブジェクト
Email オブジェクトは次のプロパティを提供します:
4D は Email オブジェクトのフォーマットは JMAP specification に準拠します。
.attachments : Collection4D.MailAttachment オブジェクトのコレクション |
.bcc : Text .bcc : Object .bcc : Collection 非表示 (BCC: Blind Carbon Copy) のメール受信者 アドレス |
.bodyStructure : Object (任意) メッセージ本文の完全なMIME ストラクチャーである EmailBodyPart オブジェクト |
.bodyValues : ObjectbodyStructure の <partID> 毎にオブジェクトを格納している EmailBodyValue オブジェクト |
.cc : Text .cc : Object .cc : Collection 追加 (CC: Carbon Copy) のメール受信者 アドレス |
.comments : Text 追加のコメントのヘッダー |
.from : Text .from : Object .from : Collection メールの送信元 アドレス |
.headers : Collection メッセージ内で現れる順番どおりの EmailHeader オブジェクトのコレクション |
.htmlBody : Text (任意、SMTPのみ) HTML形式のメールメッセージ (デフォルトの文字セットは UTF-8) |
.id : Text IMAP サーバーからの固有ID |
.inReplyTo : Text カレントメッセージが返信している、元のメッセージのメッセージID |
.keywords : Object 各プロパティ名がキーワードであり、各値が true であるキーワードセットのオブジェクト |
.messageId : Text メッセージ識別ヘッダー ("message-id") |
.receivedAt : Text IMAPサーバーにメールが到着した時間の、ISO 8601 UTC フォーマットでのタイムスタンプ (例: 2020-09-13T16:11:53Z) |
.references : Collection 返信チェーン内メッセージの、全メッセージID のコレクション |
.replyTo : Text .replyTo : Object .replyTo : Collection 返信用 アドレス |
.sendAt : Text メールの タイムスタンプ (ISO 8601 UTCフォーマット) |
.sender : Text .sender : Object .sender : Collection メールのソース アドレス |
.size : Integer IMAPサーバーから返された Email オブジェクトのサイズ (バイト単位) |
.subject : Text メールの件名 |
.textBody : Text (任意、SMTPのみ) 標準テキスト形式のメールメッセージ (デフォルトの文字セットは UTF-8) |
.to : Text .to : Object .to : Collection メールのメインの受信者 アドレス |
メールアドレス
メールアドレスを格納するプロパティ (from
, cc
, bcc
, to
, sender
, replyTo
) はすべて、テキスト・オブジェクト・コレクション型の値を受け付けます。
テキスト
- 単一のメールアドレス: "somebody@domain.com"
- 単一の表示名+メールアドレス: "Somebody somebody@domain.com"
- 複数のメールアドレス: "Somebody somebody@domain.com,me@home.org"
オブジェクト
2つのプロパティを持つオブジェクト:
プロパティ | 型 | 説明 |
---|---|---|
name | Text | 表示名 (null も可能) |
Text | メールアドレス |
コレクション
アドレスオブジェクトのコレクション
メール本文の扱い
textBody
および htmlBody
はどちらもSMTP.send() でのみ使用され、これによって単純なメールの送信が可能になります。 プロパティが両方ともある場合、MIME content-type の multipart/alternative が使用されます。 メールクライアントは multipart/alternative パートを認識し、必要に応じてテキスト部または html 部を表示します。
Email オブジェクト が MIME ドキュメントからビルドされた場合 (例: MAIL Convert from MIME
コマンドで生成されたとき) は、bodyStructure
および bodyValues
が SMTP に使用されます。 この場合、bodyStructure
および bodyValues
プロパティは両方一緒に渡される必要があり、textBody
および htmlBody
の使用は推奨されません。
bodyStructure および bodyValues オブジェクトの例
"bodyStructure": {
"type": "multipart/mixed",
"subParts": [
{
"partId": "p0001",
"type": "text/plain"
},
{
"partId": "p0002",
"type": "text/html"
}
]
},
"bodyValues": {
"p0001": {
"value": "I have the most brilliant plan. Let me tell you all about it."
},
"p0002": {
"value": "<!DOCTYPE html><html><head><title></title><style type=\"text/css\">div{font-size:16px}</style></head><body><div>I have the most brilliant plan. Let me tell you all about it.</div></body></html>"
}
}
.attachments
.attachments : Collection