BPM 5.4.0.317
Когда пытаюсь сделать рассылку, на кнопку "Запустить рассылку", то письма не отсылаются, а появляется ошибка "The server rejected the specified sender email address. The server responded: 530 5.7.1 Client was not authenticated". Точно такая же ошибка на отправку обычного письма.
Все параметры для отправки почты занесены в системные настройки. На всякий случай, пользователю делающему рассылку указал тот же e-mail, что и в настройках.
Скрипт

var Smtp = new SmtpClient(GetSysSettingsValue("SmtpHost"), Convert.ToInt32(GetSysSettingsValue("SmtpPort")));
Smtp.Credentials = new NetworkCredential(GetSysSettingsValue("SmtpUserName"), GetSysSettingsValue("SmtpUserPassword"));
Smtp.DeliveryMethod = SmtpDeliveryMethod.Network;
       
MailMessage Message = new MailMessage();

Message.From = new MailAddress(GetSysSettingsValue("MassMailingFromAddress"));
Message.To.Add(new MailAddress("xxx@xxx.xxx"));
Message.Subject = "test subject";
Message.Body = "test body";
Message.IsBodyHtml = true;

Smtp.DeliveryMethod = SmtpDeliveryMethod.Network;
try
{
   Smtp.Send(Message);
}
catch (SmtpException e)
{
}
return true;

отрабатывается на ура. Письмо приходить, значит с настройками все ок. Тогда в чем проблема?

Нравится

3 комментария

Здравствуйте, Александр Владимирович!

В ходе удаленного подключения проблема была решена исправлением в методе SendMessage объекта
SmtpClient создания объекта server.

var server = new SmtpServer(_credentials.Host, _credentials.UserName, _credentials.UserPassword) {
		  Port = _credentials.Port,
		  SslMode = _credentials.UseSsl ? SslStartupMode.OnConnect : SslStartupMode.Manual,
		  Timeout = _credentials.Timeout,
};

После внесения изменений и компилирования конфигурации отправка заработала.

Напишу тут.
Андрей, помните у нас после этой письмо отправлялось, но возникла другая ошибка.
Дело в том, что в скрипте smtp после отправления письма bpm пытался найти status(состояние)
активности с кодом Finish и кое-где напрямую id

activity.SetColumnValue("StatusId", "4BDBB88F-58E6-DF11-971B-001D60E938C6");

Но с таким id и кодом "Finish" не было в базе (уж не знаю наши молодцы удалили или же terrasoft забыл добавить), но изменил "Finish" на "Done" и этот id поменял на другой и теперь все в порядке.

Здравствуйте, Александр Владимирович!

Больше спасибо за предоставленное решение.

Если данная ошибка и имела место быть, то в самых ранних сборках BPMonline 5.4.

В более поздних релизах подобных ошибок замечено не было.

В любом случае, спасибо!

Показать все комментарии