- Регистрация
- 27.08.2013
- Сообщения
- 848
- Благодарностей
- 532
- Баллы
- 93
Здравствуйте всем!
Подскажите, кто шарит, в какую сторону копать.
Суть: есть код который работал исправно пару лет. Отправка письма через smtp.yandex.ru
Недавно перестал работать.
Пишет - Служба недоступна. Закрытие канала передачи. Отклик сервера: Cannot connect to SMTP server, connect error 10061
или так
Неправильная последовательность команд. Отклик сервера: 5.5.4 Error: send AUTH command first.
Сам код
Что это может быть и как можно исправить. Пробовал разные порты и 25, и 465 - не выходит
Подскажите, кто шарит, в какую сторону копать.
Суть: есть код который работал исправно пару лет. Отправка письма через smtp.yandex.ru
Недавно перестал работать.
Пишет - Служба недоступна. Закрытие канала передачи. Отклик сервера: Cannot connect to SMTP server, connect error 10061
или так
Неправильная последовательность команд. Отклик сервера: 5.5.4 Error: send AUTH command first.
Сам код
Код:
// с какого email отправлять
var fromEmailString = project.Variables["login_send"].Value;
// куда отправлять
var toEmailString = project.Variables["adresat"].Value;
// логин для авторизации на сервере отправки письма
var login = project.Variables["login_send"].Value;
// пароль от email, от имени которого отправляем письмо
var password = project.Variables["password_send"].Value;
// сервер, через который отправляем письмо
var server = "smtp.yandex.ru";
// порт сервера, через который отправляем письмо
int port;
int.TryParse("587", out port);
// нужно ли шифровать подключение (например для gmail нужно)
bool encryptConnection;
bool.TryParse("true", out encryptConnection);
// текст письма
var messageText = project.Variables["send"].Value;
// заголовок письма
var messageSubject = "Отчет по работе";
// Формирование реквизитов письма
var fromAddress = new System.Net.Mail.MailAddress(fromEmailString, fromEmailString);
var toAddress = new System.Net.Mail.MailAddress(toEmailString, toEmailString);
// создаем подключение к почтовому серверу
var smtp = new System.Net.Mail.SmtpClient {
Host = server,
Port = port,
EnableSsl = encryptConnection,
DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network,
UseDefaultCredentials = false,
Credentials = new System.Net.NetworkCredential(login, password)
};
// создаем письмо
var message = new System.Net.Mail.MailMessage(fromAddress, toAddress) {
Subject = messageSubject,
Body = messageText,
IsBodyHtml = false,
};
smtp.Send(message);
message.Dispose();