Как восстановить SMS-рассылку после сбоя облачного сервиса

Как восстановить SMS-рассылку после сбоя облачного сервиса

Если облачный сервис SMS перестал отправлять сообщения, сначала проверьте, какие уведомления не дошли, и сохраните список событий для повторной отправки. Затем выясните, где произошёл сбой: в вашем сайте или CRM, в API-интеграции либо на стороне сервиса рассылки. Такой порядок помогает восстановить важные уведомления и не отправить клиентам дубли. Ниже — чек-лист для малого бизнеса: от проверки статусов до безопасного перезапуска очереди.

Что проверить сразу после сбоя?

Сначала определите время, когда сообщения перестали уходить, и запишите его. Затем сопоставьте события в магазине или CRM с журналом отправок SMS-сервиса: так станет понятно, какие заказы, оплаты или изменения статусов затронуты.

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

  • Запишите время начала и окончания сбоя, если сервис уже восстановился.
  • Сохраните список событий, по которым уведомления не отправились.
  • Отметьте статусы сообщений: отправлено, ошибка, неизвестный результат.
  • Проверьте, не менялись ли недавно настройки API или шаблоны сообщений.

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

Как повторно отправить сообщения и не создать дубли?

Разделите события на три группы: SMS точно не отправлено, результат неизвестен, сообщение подтверждено как отправленное. Повторяйте отправку только для первой группы. Для событий с неизвестным результатом сначала проверьте статус у провайдера или в журнале API: запрос мог дойти до сервиса, даже если ваш сайт не получил ответ.

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

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

Как найти причину сбоя и снизить риск повторения?

Сравните журналы своего сайта и SMS-сервиса за одинаковый период. Ищите момент, когда запросы перестали создаваться, начали завершаться ошибкой или перестали возвращать статус. Зафиксируйте код ответа, текст ошибки и затронутые типы уведомлений. Эти сведения пригодятся при обращении в поддержку и помогут отличить сбой интеграции от временной недоступности сервиса.

После восстановления проверьте полный путь на одном тестовом событии: смените статус тестового заказа, убедитесь, что сайт сформировал запрос, а сервис зафиксировал отправку. Затем проверьте ещё один сценарий, например подтверждение оплаты. Если магазин отправляет уведомления о разных этапах заказа, каждый сценарий нужно проверить отдельно.

Для критичных сообщений настройте очередь повторных попыток с ограничением числа повторов и журналом результата. Не запускайте бесконечный автоматический повтор: при ошибке в запросе он создаст лишнюю нагрузку и затруднит разбор. Подход к автоматической отправке событий через API можно сопоставить с настройкой SMS об изменении доставки для малого бизнеса.

Каких ошибок избегать при восстановлении?

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

Если сбой затронул сообщения о предзаказах, проверьте отдельно подтверждение заказа и уведомление о поступлении товара: это разные события с разными условиями отправки. Принцип настройки такого сценария описан в материале о SMS-уведомлениях по предзаказу товара.

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