Год жизни с Яндекс.Почтой

Публикация № 975376 05.01.19

Интеграция и обмен данными - Email рассылки

Документооборот внутренняя почта выполнение задач по почте Яндекс.Почта

Опишу свой опыт работы с Яндекс.Почтой из 1С:Документооборота. Ошибки, которые, видимо, редки и поэтому нигде не описаны, в основном побеждены и, может, мой опыт поможет кому-нибудь в его борьбе.

Глава 1. Внутренняя почта.

Моя организация использует в качестве корпоративной почты почту Яндекс с делегированием домена, а в качестве почтового клиента встроенную почту 1С:Документооборота. Настройка и тестирование почты велось в течение 2018 года на технологических платформах версий 8.3.10.2650 и 8.3.12.1685 и версиях конфигурации 2.1.11.5 и 2.1.12.2.

С настройками «из коробки» почта работала крайне плохо, часть пользователей перешла на web-доступ к Яндекс.Почте и выпали из корпоративной системы документооборота. Первое, что пришло на ум — перенастройка потоков сбора почты. По умолчанию учётные записи почты распределяется на потоки по 50 штук. Потоков всего 10, регламентные задачи «Прием отправка почты (номер потока)» запускаются каждые 30 секунд. Мне кажется это перебор и в настоящее время у хорошо себя зарекомендовали следующие настройки для 80 учётных записей: 2 потока, запуск каждый день с 7:00 по 23:00 каждые 600 секунд, завершать через 900 секунд, повторять через 600 секунд.

Но это не всё. Параметр «завершать через 900 секунд» введён потому, что почта очень глючит и может зависнуть. Почему? Не понятно. Техподдержка Яндекса отправила меня воспроизводить ошибки через «нормальный» почтовый клиент, а техподдержка 1С ткнула пальцем в ошибки TCP-пакетов в дампе WireShark и сказала, что у меня «неправильный» Интернет.

А ошибки очень занимательные.

 
 Пример ошибки

 {ОбщийМодуль.ЛегкаяПочтаСервер.Модуль(25)}: {ОбщийМодуль.Почта.Модуль(184)}: Ошибка при вызове метода контекста (Подключиться) Соединение.Подключиться(Профиль, ПротоколИнтернет); по причине: Произошла ошибка соединения с сервером при работе с IMAP. Код ошибки: 4 Ответ сервера: Yandex IMAP4rev1 at imap16j.mail.yandex.net:993 ready to talk with ::ffff:xx.xx.xx.xx:64776, 2019-Jan-02 11:10:49, mAYgYsk5YCg1

Сразу скажу, что к ошибкам протокола IMAP версии 4 этот код ошибки (а у меня было ещё 41 и 6) не имеет никакого отношения. Эти коды придуманы в 1С и они их не раскрывают (я просил). Согласно этой статьи для работы с почтовыми протоколами в 2015 году использовалась open source библиотека libetran, она поддерживается до сих пор, так что может и сейчас используется. Это делает ситуацию ещё более непонятной.

Не буду расписывать разнообразие ошибок, потому что их объединяет одно: информация об ошибке ничего не объясняет, а только запутывает, гугление приводит к единичным запросам на форумах, на которые не получены ответы.

Среди законов Мёрфи есть третий закон Финэйгла, который гласит, что в любом наборе исходных данных самая надежная величина, не требующая никакой проверки, является ошибочной. После долгих тестирований и раздумий над результатами я решил усомниться в корректности работы технологической платформы с механизмами шифрования почты. Для проверки этой крамольной мысли обратил взор на программу, которая хорошо известна нам всем. Это Stunnel.

И всё. Ошибки из массовых стали единичными.

Глава 2. Выполнение задач по почте.

Выполнение задач по почте - шикарная возможность 1С:Документооборота, которая не только позволяет сэкономить на лицензиях в ряде случаев, но и организовать удалённую работу руководителей, по согласованию документов. Однако «из коробки» она также не работает при использовании Яндекс.Почты.

Немного теории про удаление писем в протоколе IMAP. В этом протоколе для удаления письма нужно сначала его пометить на удаление, а потом удалить. Если мне память не изменяет, удаление писем должно происходить при закрытии ящика (команда CLOSE), при завершении сеанса (команда LOGOUT) и при сжатии ящика (команда EXPUNGE). Так вот сервера Яндекс.Почты удаляют письма только по команде ОчиститьУдаленныеСообщения() для объекта ИнтернетПочта (видимо это EXPUNGE), а во всех остальных случаях оставляют помеченные для удаления письма в ящике. А дальше происходит странный глюк, которого по идее быть не должно: процедура ПолучитьВходящиеСообщенияСистемнойУчетнойЗаписи общего модуля ВыполнениеЗадачПоПочтеСервер получает все письма и начинает их обработку, потом снова все и так далее. Если при обработке входящего письма происходит ошибка, то в сторону адресата уходит соответствующее письмо, что с одной стороны логично, но с другой приводит к ещё одному виду глюков, который выражается в переписке почтовых роботов.

Я написал обработку, которая имеет 2 команды:

  • автоматическая очистка почты сервера — удаление помеченных на удаление писем, период запуска равен периоду запуска регламентного задания «Выполнение задач по почте».
  • автоматическая очистка всей почты сервера — удаление всех писем, запуск ночью один раз в день.

Единственный нюанс при запуске этой обработки, нужно указать пароль к встроенной учётной записи. Мне было лень разбираться где его хранит система.

Всё, извините за небольшой сумбур и много букв. Всех с наступившим!

Скачать файлы

Наименование Файл Версия Размер
Очистка почтового ящика

.epf 9,10Kb
5
.epf 9,10Kb 5 Скачать

Специальные предложения

Оставьте свое сообщение

См. также

Видеокурс-самоучитель "1С:Документооборот " для самостоятельного внедрения Промо

Инструкции пользователю Документооборот и делопроизводство v8 ДО Платные (руб)

Самый детальный и самый полный самоучитель по программе 1С:Документооборот, в котором Вы научитесь правильно работать, настраивать, администрировать и внедрять конфигурацию 1С:Документооборот. Все уроки курса построены на последовательном заполнении пустой базы 1С:Документооборот КОРП в клиент-серверном варианте.

34000 руб.

30.10.2018    37221    14    0    

Автоматическое обновление файлов данными владельца в документообороте

Адаптация типовых решений v8 ДО Бесплатно (free)

Обновление данных файлов, созданных по шаблону в ДО 2.1.13.

10.09.2019    5316    pavelpribytkin96    5    

1С: Документооборот. Роли, использующие объекты адресации. Конфигурация остается типовой (используется расширение)

Информационная безопасность v8 ДО Абонемент ($m)

Расширение функционала документооборота. Реализована возможность использования ролей с объектами адресации. Конфигурация остается типовой (используется расширение)

5 стартмани

10.01.2019    21582    34    sulig    27    

Год жизни с Яндекс.Почтой

Email v8 ДО Абонемент ($m)

Опишу свой опыт работы с Яндекс.Почтой из 1С:Документооборота. Ошибки, которые, видимо, редки и поэтому нигде не описаны, в основном побеждены и, может, мой опыт поможет кому-нибудь в его борьбе.

1 стартмани

05.01.2019    19792    5    soulner    0    

Права доступа в 1С:Документооборот 2.1 Промо

Информационная безопасность Документооборот и делопроизводство v8 ДО Бесплатно (free)

В программе 1С:Документооборот ред 2.1 механизм системы прав доступа сильно изменился. С одной стороны, права доступа в данной версии стали проще и быстрее, с другой стороны - права по рабочим группам объектов теперь могут противоречить политикам доступа. Разберемся в данной статье как работает механизм прав доступа в 1с документообороте 2.1.

16.09.2016    94684    vlush78    0    

Вывод всей истории в задаче комплексного процесса

Универсальные функции v8::Бизнес-процессы ДО УУ Бесплатно (free)

В статье описывается, какие изменения нужно сделать, чтобы в задаче комплексного процесса выводилась вся история (по всем процессам), а не только история текущего процесса.

08.08.2018    8540    E_Babaylova    7    

Печать pdf документа со штампом ЭЦП

Печатные формы Документооборот и делопроизводство v8 v8::УФ ДО Абонемент ($m)

Печать pdf файла, прикрепленного к внутреннему документу, подписанному ЭЦП, с установкой отметки о подписании.

1 стартмани

24.05.2018    28478    141    App0st0l    14    

Нанесение штампа на PDF файл при регистрации (входящий номер и дата)

Универсальные функции v8 ДО Бесплатно (free)

Данный код реализует возможность автоматического нанесения штампа на PDF файл при регистрации (входящий номер и дата).

14.05.2018    21067    aabogachev    47    

Блокировка повторного запуска комплексного процесса в 1С: Документооборот 2

Инструменты администратора БД Документооборот и делопроизводство v8 ДО Абонемент ($m)

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

2 стартмани

04.10.2016    31766    105    zabaluev    25    

Нагрузочное тестирование 1С:Документооборот

Документооборот и делопроизводство HighLoad оптимизация v8 ДО Бесплатно (free)

Перед запуском 1С:Документооборот для средних и крупных внедрений крайне желательно провести нагрузочное тестирование, чтобы проверить корректность и скорость работы системы электронного документооборота в условиях максимальной нагрузки. В данной статье пойдет речь о том, как провести нагрузочное тестирование в 1С:Документооборот без использования 1С:КИП.

28.12.2015    23059    vlush78    1    

Обработчик автоматической регистрации документа 1С:Документооборот после утверждения и автозаполнения файла по шаблону

Документооборот и делопроизводство Адаптация типовых решений v8 ДО Абонемент ($m)

Дополнительный обрабочик для 1С:Документооборот, позволяющий выполнять автоматическую регистрацию внутреннего документа после его утверждения и автоматическое заполнение прикрепленного шаблонного файла.

1 стартмани

29.05.2013    47247    20    Killgur    17