Сервис отключен с разрывом канала smtp error code 421 1с как исправить
Перейти к содержимому

Сервис отключен с разрывом канала smtp error code 421 1с как исправить

  • автор:

Странная ошибка при отправке эл.почты из 1с

Какой то курьез. Есть база бухгалтерии ред.2 на платформе 8.3.
Пишу простую обработку отправки почты (тестировал) и при попытке отправить письмо получаю следующее:
Ошибка при вызове метода контекста (Послать): Сервис отключен с разрывом канала (SMTP error code 421 421 SMTP connection broken (reply))

Пишу такую же обработку под УТ11, на управляемой форме и аллилуя — все работает, код идентичный, платформа одна и та же, только в первом случае это толстый клиент обычное приложение, а во втором тонкий клиент управляемое приложение.

Вопрос как заставить работать под обычным приложением? Создалось ощущение что разные программные модули работают, и под одни ошибка, а под другим все ОК.

Вот для пример текст кода:
мПрофиль = Новый ИнтернетПочтовыйПрофиль;
мПрофиль.ПарольSMTP="пороль";
мПрофиль.АдресСервераSMTP="smtp.office365.com";
мПрофиль.ПортSMTP=587;
мПрофиль.ИспользоватьSSLSMTP=Ложь;
мПрофиль.ПользовательSMTP="АдресПочты@zupk.ru";
мПрофиль.ТолькоЗащищеннаяАутентификацияSMTP=Ложь;
мПрофиль.Таймаут=30;

Соединение = Новый ИнтернетПочта;
ПротоколПодключения=ПротоколИнтернетПочты.POP3;
Соединение.Подключиться(мПрофиль, ПротоколПодключения);

Письмо = Новый ИнтернетПочтовоеСообщение;
Письмо.Тема = ПараметрыПисьма.Тема;

Получатель = Письмо.Получатели.Добавить(АдресПочты);
Получатель.ОтображаемоеИмя = АдресПочты;

Письмо.ИмяОтправителя = "адрес@zupk.ru";
Письмо.Отправитель.ОтображаемоеИмя = "адрес@zupk.ru";
Письмо.Отправитель.Адрес = "адрес@zupk.ru";

Текст=Письмо.Тексты.Добавить("текст");
Текст.ТипТекста = ТипТекстаПочтовогоСообщения.ПростойТекст;

Письмо.Важность = ВажностьИнтернетПочтовогоСообщения.Обычная;
Письмо.Кодировка = "UTF-8";

Попытка
Соединение.Послать(Письмо,ОбрабатыватьТекстСообщения,ПротоколИнтернетПочты.SMTP);
Исключение
Сообщить(ОписаниеОшибки());
КонецПопытки;
Соединение.Отключиться();

Ошибки при отправке почты из 1С

В 1С есть возможность работать с электронной почтой напрямую из приложения: отправлять и принять письма через корпоративную почту.

  • Отправка документов (договоров, счетов, актов и пр.) непосредственно из 1С на email клиента
  • Рассылка отчетов из 1С по расписанию на почту руководителям подразделений
  • Обмен данными 1С с разными системами
  • Отправка заказов поставщику из 1С при дефиците определенных товаров
  • и т.д.

На практике часто возникают ситуации, когда в какой-то момент (обычно в самый неподходящий :)) отправка писем из 1С или прием писем в 1С перестает работать.

  • Клиент не получит вовремя счет на оплату — компания не получит деньги вовремя

Будем рассматривать типовой механизм отправки электронной почты из 1С: т.е. со стороны 1С идет подключение к pop3 или smtp-серверу одного из почтовых сервисов: yandex, google, mail.ru и пр.

Ошибка № 1. Аутентификация не прошла (SMTP error code 535 5.7.8 Username and Password not accepted)
  • Неверно указан логин/пароль
Ошибка № 2. Сервис отключен с разрывом канала (SMTP error code 421 SMTP connection broken (reply))

Скриншот ошибки, которую вы можете встретить в 1С:
imageВозможная причина:IP-адрес сервера, с которого идет отправка сообщений (как правило — сервер 1С) попал в спам-базу.

Это означает, что почтовый сервис расценил письма, которые вы отправляете из 1С, как СПАМ, и они не будут доставлены получателю. Такая ситуация может возникнуть, если вы выполняете массовые email-рассылки из 1С большому количеству клиентов.

Что делать:
Шаг 1. Проверить наличие IP-адреса вашего сервера в СПАМ базах.
Один из удобных способов — воспользоваться сайтом 2ip: https://2ip.ru/spam/. Необходимо ввести IP-адрес и нажать на кнопку «Проверить». На выходе получите примерно такую таблицу:
imageЕсли во второй колонке увидели «LISTED», значит IP-адрес находится в СПАМ-базе.

Шаг 2. Вывести IP из спам базы
В зависимости от того в какой из спам листов попал ваш IP действия будут немного отличаться, но принцип один и тот же — нужно найти сайт этого спам-листа и отправить апелляцию. Рассмотрим, например, как вывести IP из спам листа BARRACUDA.

  • Email Server IP Address — IP-адрес, который угодил в спам лист
  • Email Address — личная почта. На эту почту придет ответ от Barracuda
  • Phone Number — номер телефона для связи (звонить вряд ли будут, но указать нужно)
  • Reason for Removal — тут надо написать (на английском) почему указанный IP-адрес должен быть удален из спам листа. Можно воспользоваться переводчиком и сформировать, например, такое оправдание: «Сотрудник не правильно пользовался сервером. Он наказан. Ситуацию исправили. Удалите, пожалуйста IP из спам листа»

Таким образом, в этой статье, мы рассмотрели некоторые ошибки, связанные с отправкой (получением) email из/в 1С, возможные причины и как устранить эти ошибки.

Если вам помогла эта статья, напишите об этом в комментариях. Также если вам не удалось решить ошибки, связанные с отправкой почты из 1С, опишите в комментариях проблему и текст ошибки. В этом случае мы постараемся вам помочь. К тому же это будет полезно другим и мы сможем дополнить текущую статью.

Сервис отключен с разрывом канала smtp error code 421 1с как исправить

Столкнулся с такой проблемой : процедура написана на 1С для отправки документов не всегда может отправить письма.

выдает ошибку 1с сервис отключен с разрывом канала (smtp error code 421).

Подскажите, как правильно настроить Exchange 2013 для отправки большого количества сообщений внутри сети что бы ок 5000 писем были отправлены и как вылечить эту ошибку. Возможно я чего то не учел в настройках почтового сервера?

Записки ИТ специалиста.

1с Ошибка «сервис отключен с разрывом канала (smtp error code 421)»

Настраивали программисты по 1С рассылку из 1С через корпоративный почтовый сервер MS Exchange 2016. При запуске обработки получили ошибку «сервис отключен с разрывом канала (smtp error code 421)»
Обратились к нам, системным администраторам. Мы со своей стороны настроили коннектор
/>
, параметры безопасности на картинке ниже

Задали нужные IP адреса, порт 25.
Попросили программистов еще раз запустить рассылку. Ошибка повторяется. 3-4 письма уходит и все, дальше ошибка. Исследуем проблему дальше. Поиск в интернете показал, что надо увеличить параметр MessageRatelimit у коннектора. Смотрим этот параметр

Get-ReceiveConnector mbx01\1C | fl name, MessageRatelimit

Где mbx01 имя сервера, 1С — имя коннектора
Получил ответ

Name : 1C
MessageRateLimit : Unlimited

Лимит неограничен.
Попросил со стороны 1С более подробные логи, сказали, что берите, что есть. Запустили Wireshark, тут выловили ошибку
/>
По ней было проще уже найти решение. Оно оказалось в следующем — необходимо увеличить дефолтный коннектор с именем «Client Proxy MBX01». Установил лимит 1200 соединений, было 5.

Set-ReceiveConnector «mbx01\Client Proxy MBX01» -MessageRatelimit 1200

Ниже код 1С для рассылки сообщений. Прислали программисты 1С, верю им на слово

Профиль = Новый ИнтернетПочтовыйПрофиль;
Профиль.АутентификацияSMTP = СпособSMTPАутентификации.Login;
Профиль.АдресСервераSMTP = фАдресSMTP; // определяется на форме
Профиль.ИспользоватьSSLSMTP = ложь;
Профиль.ПортSMTP = 25;
Профиль.ПарольSMTP = фПарольSMTP; // определяется на форме
Профиль.ПользовательSMTP = фЛогинSMTP; // определяется на форме
Профиль.ВремяОжидания = 350;

почта = новый интернетпочта;
почта.Подключиться(Профиль);

Сообщение = Новый интернетПочтовоеСообщение;
Сообщение.Отправитель = АдресОтправителя;
сообщение.Тема =»Тестовое сообщение через MS Exchange 2016″;
ИнтернетТекстПочтовогоСообщения = Сообщение.Тексты.Добавить();
ИнтернетТекстПочтовогоСообщения.Текст = ТекстПисьма;
сообщение.Получатели.Добавить(сокрлп(ТекСтрока.Почта));
почта.Послать(Сообщение);

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *