#perl #sendmail
#perl #sendmail
Вопрос:
Я работаю над отправкой электронной почты с использованием языка perl и использую пакет Win32 :: OLE, используя объект CDO.
мой $ cdomsg = Win32::OLE->new(‘CDO.Message’); … $cdomsg -> Отправить();
Моя проблема в том, что иногда может возникнуть какая-то сетевая ошибка или что-то в этом роде, я хочу повторить попытку отправки почты 10 раз, если она не была отправлена успешно. Есть ли какой-либо способ решить проблему?
Ответ №1:
Я не знаком с этим пакетом, но, предположительно, вы могли бы проверить значение возврата команды Send() и цикла.
Но это не элегантное решение. Эта проблема решалась много раз. Лучший ответ — отправить электронное письмо через SMTP через какую-нибудь реальную почтовую систему. Я использую Postfix в своих ящиках Unix, я не знаю, каков ответ для пользователей Windows. Все полнофункциональные пакеты почтовых серверов будут иметь встроенное решение для повторных попыток, которое будет пытаться повторно отправлять электронные письма в течение настраиваемого периода времени, используя интеллектуальный алгоритм для уменьшения частоты повторных попыток с интервалом в несколько дней.