Валидация электронных адресов для массовой рассылки

Опубликовал Алексей Мутовкин (mrWatson) в раздел Обработки - Обработка справочников

Рано или поздно вы сталкиваетесь с массовой рассылкой маркетинговой или иной информации клиентам в базе 1С. Можно делать на своем почтовом сервере или бесплатном SMTP сервере, например, от Яндекса.
Если у вас маленькие объемы рассылки и у вас получится не попасть в черный список с вашим почтовым сервером или не поймать блокировку ящика Яндексом, то вам повезло.

Например, вот что пишет Яндекс, объясняя блокировку нашего ящика:

Наша почта не предназначена для проведения рассылок. В Яндекс.Почте для домена существуют следующие ограничения на отправку писем:
1. Одно письмо можно отправить не более чем на 50 адресов одновременно.
2. В зависимости от характера писем Вы можете отправить максимум 5000 сообщений в сутки.
Ограничение очень условное и зависит от множества параметров отправляемых писем, которые анализируются Спамообороной Яндекса в каждом конкретном случае.
Если Вы отправляете одно сообщение на 50 адресов, с точки зрения Спамообороны было отправлено 50 писем. Некоторые рекомендации «честных рассылок» Вы можете найти на странице http://help.yandex.ru/mail/spam.xml#about-spam . Чем меньше Ваша рассылка соответствует описанным условиям, тем меньше писем Вам удастся отправить. При нарушении одного из правил возможность отправки писем из почтового ящика может блокироваться. Ваши почтовые ящики разблокируются автоматически через сутки после прекращения рассылки.

Нам на помощь приходят коммерческие сервисы, предоставляющие услуги SMTP сервера. Пробежимся по основным:

1) mandrillapp.com
Зарубежный сервис рассылки предлагает отправить 12000 в месяц бесплатно, далее вам надо будет доплатить за каждую тысячу. Количество писем в час тоже ограничено и зависит от вашей репутации и чистоты вашей рассылки. Не пытайтесь завести несколько бесплатных аккаунтов, это ведет к блокировке их всех.

2) smtp.com
Тоже западные товарищи. Бесплатного плана у них нет, тарифы от 15 долларов в месяц за 10000 писем.

3) epochta.ru
Это наши соотечественники. Тех. поддержка на русском языке и быстро откликается. Цены от 400 руб. в месяц за 10000 писем. Но важен объем писем т.к. учитывается еще и траффик. Пока остановились на нем.

Коммерческие сервисы выдвигают требования к вашей базе адресов: не более 10% "баунсов" (bounce - отскок) т.е. недоставленных писем и не более 1% нажатий кнопки "Спам". Таким образом вашу базу адресов надо подготовить перед тем как заниматься рассылками. Для проверки адресов есть, например, бесплатное решение Mail List Validator, оно принимает на вход текстовый файл с адресами (один адрес - одна строка) и позволяет сохранить такой же файл с плохими адресами. Кроме того epochta.ru позволяет выгрузить в текстовый файл список эл. адресов, по которым не удалось доставить письмо.

Что нам не хватает, чтоб "отвалидировать" нашу базу адресов в 1С? Это обработка, которая достанет электронные адреса из регистра "Контактная информация" в текстовый файлик для валидации и потом позволит исключить "плохие" из регистра.

Встречайте:

2014_09_24_1914обработка "Валидатор почтовых адресов"

В таблице задаются отборы для РС Контактная информация. Пропуски означают, что фильтр по данному полю нам не нужен. Далее вы можете провести "Замер выборки" т.е. узнать сколько записей регистра подпадает под выборку. Есть функция "Выгрузить бакап" (выгружаются только записи подходящие под отбор) и "Загрузить бакап" на всякий случай. Нажав "Выгрузить на валидацию" получим текстовый файл с адресами. Если в строке записи задано несколько адресов через разделитель ";" (это для нас допустимо) или через "/\,<>" (что обычно вводят пользователи), то такие строки будут разбиты на несколько адресов.

После получения списка плохих адресов его можно применить к нашему регистру т.е. "Исключить невалидные". При этом в поле "Комментарий" записи регистр будет сохранено (см. галочку на форме!!!) прежнее значение в формате "{БЫЛО:....}" и список исключенных адресов в формате "{ИСКЛЮЧЕНО:....}". Функция "Причесать емейлы" не принимает на вход файл с плохими адресами, а просто приводит адреса в божеский вид: переводит в нижний регистр, разделитель адресов становится ";", убирает лишние пробелы и т.д., по-сути это подфункция основной функции обработки.


Вот пример работы(все адреса случайны):

Был указан адрес

nas@bk.ru / "Буб" / chm@nail.ru /ale@nandex.ru , VOIR@MAIL \ ruj@nandex.ru

получим

nas@bk.ru; byb@nail.ru; chm@nail.ru; ale@nandex.ru

а в комментарии

{БЫЛО:nas@bk.ru / "Буб" / chm@nail.ru /ale@nandex.ru , VOIR@MAIL \ ruj@nandex.ru}
{ИСКЛЮЧЕНО:ruj@nandex.ru}

Обработка опен-сорс. Проверено на УПП 1.2

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

Наименование Файл Версия Размер
обработка "Валидатор почтовых адресов"
.epf 11,31Kb
26.09.14
12
.epf 11,31Kb 12 Скачать

См. также

Добавить вознаграждение
Комментарии
1. Егор Иванов (Infactum) 197 26.09.14 18:21 Сейчас в теме
Если цель валидации - уменьшение количества отказов, то ваша обработка практически бесполезна. Практически все серверы валидации проверяют лишь соответствие синтаксиса адреса стандарту. Иногда могут проверить наличие MX записи у домена, но это уже реже.
Эти сведения абсолютно ничего не говорят о том, существует ли ящик. Некоторые почтовые сервера конечно сообщают информацию о существовании ящика еще до этапа отправки письма, но это редкость. Тот же mail.ru например выдаст такую информацию только в том случае, если вы отправите письмо. Все это сделано для защиты от спама.
Таким образом не имея на 99% валидной базы, рассылать "спам" (маркетинговую информацию) не получится. А перечисленные вами сервисы предназначены в первую очередь для транзакционной почты.
В свое время у нас в компании была схожа проблема. После долгих поисков остановились на sendsay.ru. Лучшего решения как для рассылок, так и для валидации базы найти не удалось. Плюс у них есть отличный APIю
adhocprog; +1 Ответить
2. kiruha Дронов (kiruha) 356 02.10.14 10:51 Сейчас в теме
Где гарантия что через Mail List Validator автор не соберет ваш список адресов и не продаст его спамерам ?
3. Алексей Мутовкин (mrWatson) 292 02.10.14 11:08 Сейчас в теме
(1) Infactum,(2) kiruha, можно не пользоваться Mail List Validator, он действительно просто проверяет наличие почтового сервера и здоровается с ним. Можно просто "причесать" адреса (отбросить откровенный брак, например, без собаки адреса или без точки), потом начинать рассылки и уже, получая от сервиса рассылки списки плохих адресов, проводить их очистку.