Получить SMTP-ответ по почте - PullRequest
2 голосов
/ 23 февраля 2009

Возможно ли получить SMTP-ответ от почты. Например, я отправляю письмо на несуществующий почтовый идентификатор. Конечно, наш сервер отправит нам письмо о сбое демона почтовой программы на наш почтовый идентификатор. Мне нужно захватить это сообщение об ошибке.

Как это возможно? пожалуйста, объясните мне. Некоторое время мы можем ввести более одного несуществующего идентификатора электронной почты, поэтому мне приходится извлекать все сообщения об ошибках отдельно для каждого соответствующего электронного письма

Пожалуйста, ведите меня!

Заранее спасибо,

Правин Дж

Ответы [ 4 ]

2 голосов
/ 23 февраля 2009

Мне кажется, я правильно понял ваш вопрос. Как я понимаю, вы пишете заявку на отправку почты. И в вашем приложении, когда вы отправляете почту, вы также хотите убедиться, что если почта была доставлена, а также, если она не была доставлена, вы хотите получить сообщение об ошибке в вашем приложении. Это то, что вы имеете в виду?

Ну, если вы это имеете в виду, то я думаю, что невозможно отследить статус почты с помощью вашего кода приложения. Например, если вы используете в своем приложении java sendMail, вы можете только гарантировать, что отправка произошла из вашего кода (без каких-либо исключений отправки, таких как java.net.SocketException или javax.mail.MessagingException). Но вы никогда не сможете убедиться, что почта действительно дошла до получателя. то есть вы никогда не сможете отслеживать в своем приложении, если письмо было отклонено из-за неправильного адреса получателя или любой другой ошибки, такой как незаконное вложение на почтовом сервере-получателе, или ошибок, таких как заблокированный идентификатор отправителя и т. д.

Это потому, что любое такое состояние ошибки будет передано почтовым сервером-получателем отправляющему почтовому серверу, информация о котором присутствует в заголовке отправленной почты.

Это отвечает на ваш вопрос? (Или я правильно понял ваш вопрос?; -))

1 голос
/ 23 февраля 2009

Отскоченные сообщения возвращаются в почтовый ящик. Вы должны иметь возможность настроить этот почтовый ящик, правильно настроив заголовки отправляемых вами сообщений. Затем вам нужно будет отслеживать этот почтовый ящик или заставить этот почтовый ящик доставлять сообщения в вашу программу.

Я бы посоветовал вам использовать VERP для всех отправляемых вами сообщений. Вам будет намного проще определить, к какому адресу электронной почты относится данный отскок. Для этого вам понадобится контроль вашего почтового сервера. Требуется некоторая работа по настройке вещей.

Чтобы ответить на вопрос более подробно, вам нужно сообщить нам, как вы отправляете сообщения, какой тип почтового сервера вы используете, и насколько вы контролируете почтовый сервер.

1 голос
/ 23 февраля 2009

Я не уверен, правильно ли я понимаю ваш вопрос. Если вы отправляете электронное письмо на любой несуществующий адрес, скажем, xxx@gmail.com со своего адреса yyy@yourhost.com, почтовый сервер на gmail.com отвечает на почтовый сервер yourhost.com с сообщением об ошибке и причиной, с вашей доставкой адрес, и вы получите почту fialure автоматически. вам не нужно ничего делать в этом.

Если вы говорите о просмотре заголовков почты, то это зависит от того, какой клиент вы используете. Например, если вы используете MS Outlook, вы можете щелкнуть правой кнопкой мыши на сообщении и щелкнуть на опции, а затем увидеть раздел заголовков Интернета, чтобы получить заголовки почты. Если вы используете веб-почту, то я уверен, что у вас будет возможность просмотреть подробные заголовки почты.

0 голосов
/ 23 февраля 2009

В Unix для этого вы можете использовать " procmail ". Procmail - это сервис, который может перехватывать ваши письма и обрабатывать их в соответствии с правилами.

Если вы можете получить доступ к своей почте через мой IMAP, я предлагаю взглянуть на модуль Python imaplib .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...