Как это работает

Короткая версия: событие заказа → правило → независимые действия → результат в Журнале.

Цепочка

  1. Событие. В Shop-Script с заказом что-то произошло: он создан, оплачен, отправлен и т. д. Плагин замечает это и сразу записывает событие: это быстрая операция с жёстким ограничением по времени, оформление заказа она не задерживает.
  2. Правило. Правило говорит: «когда происходит такое событие (и подходят условия) — сделай вот это». У правила есть событие, необязательные общие условия и одно или несколько действий.
  3. Действия. Каждое действие — это одно сообщение: кому (покупателю заказа или сотруднику), по какому каналу (Email или PWA Push), когда (сразу или с задержкой) и какой текст. Действия независимы: ошибка или пропуск одного не мешает остальным.
  4. Воркер. Письма отправляет не сайт во время оформления заказа, а воркер — фоновая команда, которую каждую минуту запускает cron хостинга. Поэтому «сразу» означает «при ближайшем запуске воркера» (обычно в течение минуты), а не «в момент оформления».
  5. Журнал. По каждому действию и каждому событию в Журнале записан результат и причина.

Слова, которые встретятся

Слово Что это
Cron Расписание на хостинге. Запускает команды по времени, например «каждую минуту».
Воркер Команда плагина, которую запускает cron: планирует отправки и отправляет письма.
Очередь Список отправок, которые уже запланированы, но ещё не отправлены.
Тестовый режим Защита: пока он включён, плагин пишет только на зарезервированные тестовые адреса (*.test, *.example, example.com…) и не пишет реальным людям. Включён по умолчанию.
Ревизия правила Каждое сохранение изменений включённого правила создаёт новую версию. Она применяется только к новым событиям.
Предпросмотр Проверка правила на уже существующем заказе без отправки.

Главные ограничения

  • Только будущие события. Правило не отправляет сообщения по заказам, которые случились до его включения, и по заказам, пока приём событий был приостановлен. «Задним числом» ничего не отправляется.
  • «Принято» ≠ «доставлено». Статус «Принято почтовым сервером» означает: сервер принял письмо. Дошло ли оно до ящика, открыли ли его — плагин не знает.
  • Email не зависит от PWA. Письма работают без приложения PWA. Push — отдельная необязательная возможность (PWA Push).
  • Приём событий включается сам, когда включено хотя бы одно правило. Если правил нет или стоит «Аварийная остановка приёма событий» (в настройках плагина), события не принимаются, а Журнал не пополняется.
  • Повторы. Если почтовый сервер временно отказал, плагин повторит попытку несколько раз с растущими паузами (до 8 попыток в течение примерно 6 часов). Если результат передачи письма неизвестен, плагин не повторяет его сам — чтобы не отправить дубль; такую отправку вы можете повторить вручную (Журнал).
  • Устаревшие сообщения не отправляются. Если к моменту отправки заказ уже изменился или прошло слишком много времени, отправка пропускается с пояснением (Правила → актуальность).
  • Записи журнала хранятся ограниченное время (порядка полугода); тексты писем после отправки удаляются раньше.

Три раздела плагина

  • Правила — список правил, редактор, готовые примеры.
  • Журнал — что произошло с каждым событием и каждым действием.
  • Каналы — состояние cron, настройки Email и тестового режима, проверки PWA Push.

Дальше: Быстрый старт или Правила.

Просмотр изображения
Оригинал