Вход | Регистрация
 

Отправка писем на неправильные адреса

Отправка писем на неправильные адреса
Я
   rooffy
 
13.03.19 - 17:03
Добрый день, вопрос вот какой:
Есть рассылка в 1С и иногда она не происходит из-за неправильных адресов почты.
Нужно чтобы если почта не отправилась выдавать какое-то сообщение, чтобы вручную не шерстить всех адресатов.
Код отправки примерно такой:

    Профиль = Новый ИнтернетПочтовыйПрофиль;
    Профиль.АдресСервераSMTP = ОбщегоНазначениеПривелигированный.АдресСервераSMTPРассылки();
    Профиль.ПользовательSMTP = ОбщегоНазначениеПривелигированный.ПользовательSMTP();
    Профиль.ПарольSMTP          = ОбщегоНазначениеПривелигированный.ПарольSMTP();
    Профиль.АутентификацияSMTP = СпособSMTPАутентификации.Login;
    
    Почта = Новый ИнтернетПочта;
    Попытка
        Почта.Подключиться(Профиль);        
    Исключение
        Сообщить(ОписаниеОшибки());
        Возврат;
    КонецПопытки;

    Сообщение = Новый ИнтернетПочтовоеСообщение;
    Сообщение.ИмяОтправителя = "Отправитель ";
    Сообщение.Отправитель = ОбщегоНазначениеПривелигированный.ОтправительSMTP();
    Сообщение.Тема = "Тема письма";        
    Сообщение.Тексты.Добавить("Сообщение");
    Сообщение.Получатели.Добавить("НеправильныйАдрес");

    Попытка
        Если ЗначениеЗаполнено(Сообщение.Получатели)  Тогда
            Почта.Послать(Сообщение);                        
        КонецЕсли;            
    Исключение
        Инфо = ИнформацияОбОшибке();
        Сообщить(ОписаниеОшибки());
    КонецПопытки;    

При этом никаких ошибок не появляется, верный адрес или нет, сообщение якобы отправлено.
Так вот в описании метода Послать() в синтакс-помощнике есть такое:
Возвращаемое значение:

Тип: Соответствие.
Если почтовый сервер не принял какой-нибудь из адресов получателей, то возвращаемое значение содержит соответствие ошибочный получатель - сообщение об ошибке.
При возникновении других ошибочных ситуаций, генерируется исключение.

Но когда я проверяю что возвращает мне этот Послать() то там пустое соответствие, якобы все отправилось.
Можно ли как-то поймать эту ошибку?
 
 
   rooffy
 
1 - 14.03.19 - 11:51
вверх
   sieben
 
2 - 14.03.19 - 12:07
Почему ты думаешь, что почтовый сервер не принял какой-нибудь из адресов получателей?
   ДенисЧ
 
3 - 14.03.19 - 12:09
В случае почты ты не узнаешь, что адрес неправильный... Сейчас сервера не говорят о том, что адрес неправильный... Защита от спама.
   polosov
 
4 - 14.03.19 - 12:10
(0) Это особенность почтового протокола. Сервер не проверяет сразу же правильность адреса. Он отправляет как есть, ответ приходит от конечного почтового домена.
   arsik
 
5 - 14.03.19 - 12:11
(0) Ну проверяй ответы. Если в ответе ошибка, исключай это емейл для следующих отправок.
   Bigbro
 
6 - 14.03.19 - 12:42
"сообщение якобы отправлено" - оно не якобы, оно отправлено.
но отправлено != доставлено
и если в процессе доставки возникли проблемы, то о них почтовые сервера сообщат друг другу по обратной цепочке. но произойти это может с существенной задержкой, у нас в некоторые моменты пиковых перегрузок письма в почте сервер обрабатывал почти с 2 часовой задержкой бывало. админы рассказывали что почти до суток доходило, может врут, сам не помню такого.

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.