2012-02-04 13 views
1

ウェブ大量メール送信ソフトウェアを構築する場合、電子メールのバウンス/エラーを管理する最良の方法は何でしょうか?私はそれのためにPHPを使用する予定です。電子メールのバウンスやエラーをPHPで管理するには?

誰かが叫ぶ前に、はい、オプトインを持っている有効な顧客からのリストになります。

このようなことを管理できるデスクトップソフトウェアまたは第三者のウェブサイトがあります。私は現在のCMSのビジュアルに似たデザインでそれを表示し、そこにアクセス可能にしたいと思います。

唯一の解決策は、メールサーバーに接続し、バウンスバックメッセージを読み取ることであれば、私はそのように向かいます。次に、そのメールを「無効」とフラグを立てるためにデータをどのように解析しますか?

はあなたがPHPスクリプトを持つとは別に行うことができます

+0

「最善の管理方法」とはどういう意味ですか?何を管理する? –

+0

@Paul、電子メールをバウンスしますか?宛先がもはや存在しないか到達不能であるためにサーバに返送されたメール – Cybrix

+0

不在通知もバウンスバックとみなされても無視されます。 – Cybrix

答えて

1

一つの可能​​なものはPHPスクリプトに特定のアドレスのためのパイプの受信メールになりPOP/IMAPサーバからメールを読んでいただきありがとうございます。 See Google

あなたは、私はRFCメールを解析するのを支援するためにPHP拡張mailparseをインストールした$email = file_get_contents('php://stdin');ような何かを行うことによって、メッセージの内容全体を読んでいましたが、利用可能な他のオプションがあります。必ずしもメッセージを解析するために何かを使う必要はありません。

メッセージを受け取ったら、メッセージにバウンスとしてフラグを立てるために使用できる多くのインジケータがあります。まず、Non Delivery Reportsについてのウィキペディアの記事、具体的にはFormatRFC 6522 - The Multipart/Report Media Type for the Reporting of Mail System Administrative Messagesを参照してください。また、メッセージの一般的なヘッダー(X-Failed-RecipientsまたはDiagnostic-Codeなど)を確認することもできます。

メッセージがPHPメールプロセッサでバウンスと判断されたら、適切な処置をとり、そのメールに関連するデータベースのフラグを設定できます。気になるところがありますが、いくつかのエラーがアドレスがうまくないとは限りません。たとえば、メールサーバーが数日間停止している場合、MTAは辞めるかもしれませんが、アドレスが悪いというわけではありません。また、ユーザーのメールボックスがいっぱいになる可能性があります。

バウンスされたメッセージのコピーを記録して、問題を診断したり、フラグを立てたり、特定のメールアドレスを取り消したりする必要がある場合、人が確認できるようにすることは悪い考えではありません。

http://forums.theplanet.com/lofiversion/index.php/t89873.html(ノート改善可能性2)
https://stackoverflow.com/questions/5700034/how-do-i-process-a-bounce-email-to-find-the-error-code
Bounce Email handling with PHP?

希望に役立ちます:

はここにいくつかの追加の参照です。

関連する問題