Как сравнить и настроить резервный SMS-канал через двух провайдеров

Резервный SMS-канал — это второе подключение к независимому провайдеру, которое подхватывает отправку, когда основной перестаёт доставлять сообщения. Статья покажет, как выбрать схему резервирования под масштаб вашего бизнеса, на что смотреть при сравнении провайдеров и как запустить переключение без дублей и потерь. Всё описано для тех, кто работает без штатного разработчика и выделенной CRM.
Зачем вообще держать второго провайдера?
SMS-провайдер зависит от цепочки, которую не контролирует ни он, ни вы: SMPP-сессии, маршруты к операторам, биллинг, репутация имени отправителя. Сбой в любом звене приводит к одной из трёх ситуаций. Первая — сессия разорвалась, отправка не проходит, ошибку видно сразу. Вторая — сообщения уходят, а отчёты о доставке молчат: снаружи всё чисто, но клиент ничего не получает. Третья — один оператор принимает трафик, другой нет.
Вторая ситуация опаснее всего. Счётчик растёт, деньги списываются, а OTP-код так и не дошёл. Пользователь запрашивает код повторно, удваивая нагрузку на уже просевший канал, или просто уходит (Хабр). Для транзакционных сценариев — подтверждение заказа, ссылка на оплату — потеря даже пяти минут означает потерю конверсии. Поэтому второй провайдер нужен не «на всякий случай», а как рабочий инструмент, который вы проверяете каждый месяц.
Какие схемы резервирования подходят малому бизнесу?
| Схема | Суть | Когда подходит |
|---|---|---|
| Активный + пассивный | Первый провайдер отправляет всё, второй держит сессию и ждёт команды | Небольшие объёмы, нет дежурного инженера |
| Разделение по операторам | Каждый провайдер обслуживает тех операторов, на которых у него лучше маршрут | База от нескольких тысяч номеров, важна цена за сообщение |
| Единый шлюз-роутер | Все системы отправляют через один шлюз, он распределяет трафик между провайдерами | Отправка идёт из нескольких точек: сайт, склад, учётная система |
| Ручное переключение | Сотрудник меняет настройки вручную при проблеме | Единичные рассылки, до 200 сообщений в месяц |
Для микробизнеса на старте хватает первой схемы. Два договора, тестовая отправка раз в месяц, инструкция переключения на одну страницу. Подробный разбор каждого варианта с параметрами сессий и примерами логики переключения есть в статье на smpp.by.
На что смотреть при сравнении двух провайдеров?
Сравнивать провайдеров по одному тарифу — мало. Вот пять параметров, которые определят, сработает ли ваш резерв в нужный момент.
- Протокол подключения. Оба провайдера должны поддерживать один и тот же способ — SMPP 3.4 или HTTP API. Иначе придётся писать два разных интеграционных модуля.
- Имя отправителя. Согласуйте одинаковое имя у обоих. Разные подписи путают клиента и делают статистику по каналам несопоставимой.
- Отчёты о доставке (DLR). Провайдер, который не возвращает DLR-статусы, не подходит на роль резерва: вы не узнаете, дошло ли сообщение. Сравнивайте DLR-статусы обоих каналов с поведением пользователей — сколько кодов ввели, сколько ссылок открыли (sostav.ru).
- Лимит скорости. Резервный канал обычно слабее основного. Узнайте его потолок заранее, чтобы не упереться в ограничение при аварии.
- Шифрование сессии. TLS снижает число обрывов на промежуточном оборудовании. Если провайдер поддерживает — включайте сразу.
Сервисы-агрегаторы рейтингов помогают не тратить неделю на ручной обзвон. На странице сравнения SMS-провайдеров для микробизнеса параметры собраны в единую таблицу — проще увидеть, кто подходит на роль основного, а кто на роль резерва.
Как настроить переключение и не задвоить отправки?
Дубли — главная цена за резерв. Клиент получает два одинаковых SMS, раздражается и отписывается. Защита строится на одном принципе: каждое сообщение получает внутренний ID в вашей базе ещё до отправки. ID связывает попытки через обоих провайдеров и не даёт повторить то, что уже принято.
Сообщение считается отправленным, когда провайдер подтвердил приём. Добралось ли оно до абонента — вопрос DLR. Если подтверждения приёма нет, можно повторить попытку, но строго один раз и через другой канал. Перед повтором — пауза и проверка журнала по внутреннему ID.
Отдельно определите, что считаете сбоем. Переключение при первой ошибке приведёт к лишним скачкам: одна ошибка на тысячу сообщений ничего не значит. Практичнее отслеживать долю ошибок за короткое окно — скажем, за последние пять минут — и наличие финальных DLR-статусов. Если промежуточные статусы приходят, а финальных нет дольше порога, пора переключаться.
После восстановления основного канала не возвращайте на него весь поток сразу. Пустите сначала небольшой тестовый объём и понаблюдайте за DLR хотя бы день.
Типичные ошибки при резервировании
- Резервный канал записан в договоре, сессия не поднята, тестовых отправок не было. В момент аварии настраиваете всё с нуля — и теряете те самые минуты, ради которых затевали резерв.
- Разные имена отправителя у двух провайдеров. Клиент видит две подписи от одной компании и подозревает фишинг.
- Переключение только после жалоб клиентов. Пока жалоба дойдёт до менеджера, часть аудитории получит сообщение с опозданием на часы.
- Повтор без проверки журнала. Два одинаковых SMS раздражают сильнее, чем задержка на минуту.
- Логирование только успешных отправок. Ошибки и таймауты остаются незамеченными ровно тогда, когда нужны.
Что отслеживать после запуска?
Резервирование без аналитики — просто два счёта за SMS. Минимальный набор метрик: доля доставленных по каждому провайдеру и оператору, число переключений с причинами, среднее время от отправки до DLR и количество дублей за период. Рост времени до DLR сигнализирует о деградации маршрута задолго до полного отказа.
Если вы уже работаете с каскадами Viber + SMS, резервный канал встраивается в ту же цепочку: Viber не доставлен — SMS через основного провайдера — SMS через резервного. Стоимость сообщения в Viber ниже операторского SMS (isms.by), поэтому резерв задействуется для малой доли аудитории и не раздувает бюджет.
Раз в месяц отключайте основной канал вручную и отправляйте тестовое сообщение на контрольный номер, чтобы убедиться, что резервный провайдер подхватывает трафик без задержек (sostav.ru). Настройте уведомления о сбоях основного канала — хотя бы в почту, чтобы узнавать о проблеме сразу.
Если ваши SMS привязаны к статусам заказа, полезно посмотреть, как настроить SMS-допродажи для малого бизнеса — принцип событийной отправки даёт больше отклика, чем рассылка по расписанию, и хорошо ложится на архитектуру с двумя провайдерами.
3 шага, которые можно сделать на этой неделе:
- Поднимите тестовую сессию ко второму провайдеру и отправьте через неё десяток сообщений на свои номера — 30 минут.
- Добавьте в базу поле с внутренним ID сообщения и начните сохранять message_id обоих провайдеров в одном журнале — около часа.
- Запишите правило переключения одним абзацем: что считаете сбоем, через сколько минут переключаетесь, как проверяете журнал перед повтором — 15 минут.


