Задать вопрос
@Mindgrow

Почему при рассылке с Yandex — EMail сообщения не доставляются и определяются как спам?

Добрый день!

В проекте есть рассылка уведомлений на почту. При выполнении определенного дейтсвия на сайте, пользователь должен получать уведомление на EMail.

Я реализовал отправку на C# через почтовый ящик Yandex.
Но сообщения определяются как спам и до получателя не доходят.

Почему так происохдит и как это обойти? Пробовал рассылать с google - сообщения слишком долго доходят до получателя.

Вот что пишет яндекс:
5addaa43779ed492674483.png

Код
using (MailMessage mail = new MailMessage())
            {
                MailAddress addrFrom = new MailAddress(_emailFrom, "Adaptive CRM");
                MailAddress addrTo = new MailAddress(email, email);


                mail.From = addrFrom;
                mail.To.Add(addrTo);
                mail.Subject = subject;
                mail.Body = message;
                mail.IsBodyHtml = true;
                mail.Priority = MailPriority.High;

                ContentType mimeTypeHtml = new System.Net.Mime.ContentType("text/html");
                ContentType mimeTypePlain = new System.Net.Mime.ContentType("text/plain");
                // Add the alternate body to the message.

                AlternateView html = AlternateView.CreateAlternateViewFromString(message, mimeTypeHtml);
                AlternateView plain = AlternateView.CreateAlternateViewFromString(message, mimeTypePlain);


                mail.AlternateViews.Add(html);
                mail.AlternateViews.Add(plain);


                // Can set to false, if you are sending pure text.

                //mail.Attachments.Add(new Attachment("C:\\SomeFile.txt"));
                //mail.Attachments.Add(new Attachment("C:\\SomeZip.zip"));

                using (SmtpClient smtp = new SmtpClient(_smtpAddress, _portNumber))
                {
                    smtp.Host = _smtpAddress;
                    smtp.Port = _portNumber;
                    smtp.EnableSsl = _enableSSL;
                    smtp.Credentials = new NetworkCredential(_emailFrom, _password);
                    

                    try
                    {
                        smtp.Send(mail);
                    }
                    catch (Exception ex)
                    {
                    }
                }
            }
  • Вопрос задан
  • 306 просмотров
Подписаться 1 Простой 3 комментария
Решения вопроса 1
AlexanderYudakov
@AlexanderYudakov
C#, 1С, Android, TypeScript
Нужен частный домен отправителя, а также SPF и DKIM записи в DNS.

P.S. В Яндекс-почте для домена есть поддержка и SPF и DKIM.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@cpanelhostig
hosting, php dev
Необходима настройка SPF, DCIM, DMARC.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы