Перейти к содержимому

Рассылка с нуля - сегмент, письмо, отправка, отписка

Собираем рассылку от сегмента до отписки: кому шлём, что именно, с какой скоростью и как не попасть в нежелательную почту с первого письма.

Решение

Собираем сегмент отбором, а не списком:

\Bitrix\Main\Loader::includeModule('sender');
$res = \Bitrix\Sender\ContactTable::getList([
'select' => ['ID', 'CODE', 'NAME', 'BLACKLISTED'],
'filter' => ['=BLACKLISTED' => 'N'],
'limit' => 10,
]);
// отбор пересчитывается перед запуском: новые покупатели попадут сами

Сегмент рассылки - это правило отбора, а не выгруженный список адресов. Правило пересчитывается перед запуском, поэтому покупатели, зарегистрировавшиеся вчера, попадают в завтрашнюю рассылку без ручной работы.

Готовим письмо с подстановками:

$body = 'Здравствуйте, #NAME#! Ваша скидка: #DISCOUNT#%';
// подстановки берут значения из полей получателя в сегменте
// поле, которого у получателя нет, останется в письме как есть

Подстановка подставляет в письмо значение из записи получателя. Поле, заполненное не у всех, оставляет в письме своё имя вместо значения, и такое письмо выглядит для получателя очевидной ошибкой.

Запускаем отправку порциями:

$res = \Bitrix\Sender\PostingTable::getList([
'select' => ['ID', 'STATUS', 'COUNT_SEND_ALL', 'COUNT_SEND_NONE'],
'filter' => ['=MAILING_ID' => $mailingId],
]);
// отправка идёт агентами: скорость задают настройки модуля, а не кнопка «начать»

Отправку писем выполняют агенты платформы порциями. Кнопка запуска только переводит рассылку в рабочее состояние, а реальная скорость зависит от расписания агентов и ограничений почтового сервиса.

Проверяем отписку и согласие:

$res = \Bitrix\Sender\ContactTable::getList([
'select' => ['ID', 'EMAIL' => 'CODE', 'BLACKLISTED'],
'filter' => ['=BLACKLISTED' => 'Y'],
]);
// отписавшиеся получают признак и больше не попадают ни в одну рассылку
// признак ставится на адрес целиком, а не на отдельный список рассылки

Отписка добавляет получателя в чёрный список, и он выпадает из всех рассылок сразу. Ссылка отписки обязана быть в каждом письме: без неё жалобы получателей быстро портят репутацию адреса отправителя.

Согласие на получение писем стоит хранить прямо рядом с самим адресом получателя. Дата и способ согласия - это единственный ответ на жалобу получателя, и собирать их задним числом обычно уже не из чего.

Массовую рассылку не отправляют одним махом сразу на всю накопленную базу. Разогрев адреса, разбивка на дни и проверка на небольшом сегменте стоят дешевле, чем возвращение доброго имени домену после блокировки.

Само письмо стоит проверять на себе задолго до запуска всей большой рассылки. Тестовая отправка показывает, как выглядят подстановки, не съехала ли вёрстка и попадает ли письмо во входящие у основных почтовых служб.

Типичные проблемы

В письме видно имя подстановки вместо значения.

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

Рассылка запущена, а письма не идут.

Отправку писем выполняют агенты платформы, а они на сайте не работают. Кнопка запуска только меняет состояние самой рассылки в общем списке.

Письма уходят слишком медленно.

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

Отписавшиеся снова получают письма.

Список получателей загружен файлом прямо поверх имеющегося чёрного списка. Отбор обязан исключать всех получателей, помеченных к отписке когда-либо ранее.

Письма попадают в нежелательную почту.

У адреса отправителя нет пока никакой истории отправки писем на большом объёме. Помогают постепенный разогрев адреса и записи домена, подтверждающие право на отправку.

Частые вопросы

Чем рассылка отличается от почтового события?

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

Можно ли загрузить готовый список адресов?

Да, файлом со списком. Согласие на рассылку при этом остаётся вашей ответственностью, а не задачей платформы.

Как измерить результат?

Счётчиками доставки и переходов в самой рассылке. Полезнее считать заказы по переходам, а не проценты открытий.

Что делать с недоставленными адресами?

Убирать после нескольких неудач подряд. Повторная отправка на мёртвые адреса вредит репутации отправителя.

Смежное

Первоисточник