5

POP3 サーバーからメールを取得していますが、通常のメールと DSN (Delivery Status Notification) / NDR (Non-Delivery Report/Receipt) メッセージを区別したいと考えています。

これらのメッセージを識別するための最善/最も安全な方法は何ですか? 探している特定のメッセージ ヘッダーはありますか?

前もって感謝します!

4

1 に答える 1

7

一部のメール サーバーはRFC 3464を実装しています。これを行うものは、通常、メッセージ ヘッダー Content-Type が multipart/report で、3 つのコンポーネント パーツ (text/plain、message/delivery-status、および message/rfc822) を持つ配信ステータス通知を生成します。したがって、メッセージのこれらの特性を検出し、それに応じて処理できます。メッセージは通常、次のようになります。

From: 「メール配信システム」 <MAILER-DAEMON@example.com>
件名: 配信ステータス通知 (失敗) Content-Type: multipart/report; report-type=配送状況

Content-Type: text/plain 人間が読める形式の配信ステータス通知の説明。

Content-Type: message/delivery-status 構造化された機械可読の配信ステータス通知の理由。

Content-Type: message/rfc822 元のメッセージ。

構造化されていない形式で配信ステータス通知を生成するメール サーバーの場合、From: および Subject: メッセージ ヘッダーのテキストを分析して通知を検出する必要があります。

于 2011-02-01T20:23:00.100 に答える