Начните с общего правила для всех отправителей: перед каждым SMS проверяйте, какие сообщения уже ушли клиенту и что ещё стоит в очереди. Рекламные кампании должны учитывать уведомления о заказах и записи, а срочные сообщения — проходить по отдельным правилам. Ниже разберём, как расставить приоритеты, убрать дубли и настроить паузу между отправками. Вы сможете составить задание для разработчика или проверить, хватает ли нужных настроек в вашем сервисе рассылок.
Какие SMS учитывать в ограничении частоты?
Сначала соберите сообщения из всех источников. Интернет-магазин отправляет статусы заказа, администратор напоминает о записи, маркетолог запускает акцию. Если каждый видит только свою рассылку, клиент получает всю цепочку подряд. Поэтому проверка частоты нужна в общей точке, через которую проходят запросы на отправку.
Разделите SMS по задаче. Название отдела здесь ничего не решает: сообщение от администратора тоже бывает рекламным, если он приглашает воспользоваться скидкой.
- Коды для входа и подтверждения действий. Клиент ждёт их прямо сейчас; для повторных запросов нужны отдельные ограничения.
- Уведомления, без которых клиенту трудно завершить действие: например, сообщение о готовности заказа к выдаче.
- Напоминания о предстоящем событии: визите, доставке или записи.
- Акции и предложения вернуться за покупкой. Их можно отложить, если недавно ушло более важное SMS.
Добавьте каждой категории приоритет и условие отмены. Например, напоминание о визите теряет смысл после отмены записи, а предложение повторить покупку — после нового заказа. Такое правило позволяет убрать лишнее сообщение ещё до проверки частоты.
Коды подтверждения проверяйте отдельно от рекламной очереди. Пауза после акции не должна мешать человеку войти в кабинет. При этом повторное нажатие на кнопку получения кода требует собственной защиты; подробнее об этом — в материале о настройке SMS-кодов для входа и оплаты.
Как задать общий лимит и паузу между сообщениями?
Опишите правило обычной фразой: «Если клиент недавно получил уведомление по заказу, рекламное SMS ждёт до конца паузы». Затем укажите, какие сообщения запускают паузу, какие она задерживает и когда заканчивается. Формулировка «отправлять пореже» для настройки не подходит.
Используйте вместе два ограничения. Лимит за выбранный период сдерживает общий объём сообщений, а минимальная пауза не даёт отправить их подряд. Одного лимита недостаточно: вся допустимая серия может уйти клиенту в момент запуска кампании.
Длительность паузы выбирайте по сценарию. Напоминание о визите привязано ко времени записи, предложение из каталога обычно допускает перенос. Начните с осторожной частоты рекламных сообщений и проверяйте, не мешает ли она уведомлениям, которых клиент ждёт.
Для отложенной акции задайте крайний срок отправки. Если пауза закончится позже срока предложения, отмените SMS. Перенос без такой проверки приводит к сообщениям о скидке, которая уже закончилась. Связанный вопрос разобран в статье о сроке жизни SMS и отмене устаревших уведомлений.
Отдельно решите, что происходит при совпадении событий. Например, клиент оформил заказ в момент старта акции. Правило может пропустить подтверждение заказа, убрать рекламное SMS из текущей кампании и заново проверить его уместность перед следующей отправкой. Сам факт переноса ещё не означает, что сообщение нужно отправить позже.
Как связать массовую кампанию и автоматические уведомления?
Проверяйте ограничения непосредственно перед отправкой каждого SMS. Отбор аудитории при подготовке кампании для этого недостаточен: пока рассылка ждёт запуска, клиент может оформить заказ или получить напоминание от администратора.
Для разработчика задачу можно описать последовательностью действий:
- Принять запрос с категорией сообщения, причиной отправки и сроком актуальности.
- Проверить, нужно ли сообщение сейчас и нет ли такого же запроса в очереди.
- Проверить общие ограничения и правила для этой категории.
- Разрешить отправку, перенести её до определённого момента или отменить с понятной причиной.
- Учесть ответ SMS-сервиса, чтобы следующий запрос видел актуальный результат.
Проверка и разрешение на отправку должны работать как единая операция. Иначе кампания и уведомление одновременно увидят свободное место в лимите и оба отправят SMS. Попросите разработчика проверить именно одновременные запросы, а не только последовательный запуск.
Заранее определите, какой результат занимает место в лимите. Если сервис принял сообщение к отправке, его нужно учитывать, даже когда отчёт о доставке ещё не пришёл. Если сервис явно отклонил запрос, обработайте причину отказа. Когда ответ неизвестен из-за сбоя связи, сначала уточните статус: слепой повтор создаёт риск дубля.
У повторного запроса по одному событию должен оставаться тот же технический идентификатор. Тогда система сможет распознать повтор после сбоя. Для нового события нужен новый идентификатор, иначе она ошибочно отбросит нужное уведомление.
При выборе сервиса массовых кампаний проверьте, участвуют ли мгновенные уведомления в тех же ограничениях. Отчёт по отдельной рассылке не покажет всю нагрузку на клиента. Для общей картины нужна аналитика, которая связывает кампании и автоматические отправки.
Как проверить, что ограничения работают?
Прогоните тестовые сценарии до запуска на рабочей аудитории. Проверяйте не только факт доставки, но и решение системы: почему она пропустила сообщение, задержала его или отменила. Для каждого теста заранее запишите ожидаемый результат.
- После уведомления о заказе запускается акция. Рекламное SMS ждёт паузу либо пропускает эту кампанию по вашему правилу.
- Клиент запрашивает код во время рекламной паузы. Код проходит отдельную проверку и не застревает в очереди акций.
- Администратор отменяет запись до отправки напоминания. Система отменяет и SMS.
- Сервис не ответил на запрос отправки. Система уточняет результат, прежде чем повторять попытку.
- Кампания и уведомление стартуют одновременно. Общая проверка учитывает оба запроса без обхода лимита.
В отчёте разделяйте сообщения, которые система отправила, отложила и отменила. Причины тоже нужны отдельно: пауза, общий лимит, дубль или потеря актуальности. Иначе снижение числа отправок легко принять за технический сбой.
Если рекламные SMS регулярно теряют актуальность в очереди, пересмотрите расписание кампаний или размер аудитории. Простое повышение лимита скроет причину: сообщения по-прежнему будут конкурировать за один момент отправки.
Типичные ошибки при ограничении частоты SMS
- Лимит действует только внутри кампании. Подключите к общей проверке автоматические уведомления и ручные отправки.
- Все сообщения имеют одинаковый приоритет. Выделите коды и срочные уведомления, а для рекламы задайте правила переноса.
- Очередь помнит только время отправки. Добавьте проверку актуальности, чтобы отмена заказа или записи останавливала ненужное SMS.
- Система считает только доставленные сообщения. Учитывайте также запросы, которые сервис уже принял, иначе задержка отчёта позволит обойти ограничение.
- Отложенная акция уходит автоматически. Перед отправкой повторно проверьте срок предложения и действия клиента.
Начните с короткого действия: за две минуты выпишите все места, откуда ваш бизнес отправляет SMS. Рядом с каждым укажите тип сообщения и ответственного. Этот список покажет, какие отправки нужно объединить общей проверкой частоты в первую очередь.
