0
I_learn_1c
31.01.18
✎
14:57
|
День добрый!
есть письмо, отправить надо 100 получателям. но среди этих 100 получателей может какой-то ящик стал недействительный. отправка из за останавливается с Почтовый ящик недоступен (smtp error code 550 550 non-local recipient verification failed)
как проверить действителен ли данный адрес? или если например 55-ый адрес-получатель недействителен то пропускать его и отправлять дальше.
связаться с каждым лично и выяснить действителен ли адрес - не подходит, 100 адресов меняются.
на действительные адреса письма отправляются без ошибок. хотелось бы не разбивать на 10 писем по 10 получателей, или вообще 1 письмо - 1 получатель.
Почта = Новый ИнтернетПочта;
Письмо = Новый ИнтернетПочтовоеСообщение;
...//добавляем текст, отправителя Получатели - список значений выбран из регистра
Для каждого Получатель Из Получатели Цикл //Получателей 100 адресов
Письмо.СлепыеКопии.Добавить(Получатель); //может при добавлении какую то проверку?
КонецЦикла;
Попытка
Почта.Подключиться(Профиль);
Почта.Послать(Письмо); // или чтобы тут отправлялось всем пропуская недействительных
Сообщить("Письма успешно отправлены!");
Исключение
Сообщить(ОписаниеОшибки());
КонецПопытки;
|
|
2
drcrasher
31.01.18
✎
16:20
|
(1) это сильно зависит от smtp сервера, кмк. он может решить, что это спам рассылка. так что тут ещё нужно пачку почтовых ящиков держать для отправки.
вообще в (0) логичнее было использовать службы рассылок
|
|