wf-order-review-followup
Назначение
Одно напоминание. Один запуск берёт одну отправленную ссылку на отзыв, которая
оставалась без ответа указанное в настройках число дней и по которой ещё не было
отправлено максимально разрешённое число напоминаний, и напоминает ещё раз.
Почему это рабочий процесс
Выбор не является задачей этого процесса: — этоreviews.findInvitesToFollowUp
вопрос о приглашениях, и он относится к . Этот поток добавляет имяrp-reviews
заказа для письма и отправку — два сервиса в одном процессе, что здесь и
определяет рабочий процесс.
Чего он намеренно никогда не делает
Он никогда не напоминает тому, кто открыл форму. Пользователь прочитал просьбу и
решил не писать; повторная просьба превращает запрос отзыва в спам. Это условие
находится в запросе репозитория, а не в этом потоке, поэтому будущий вызывающий
код не сможет его забыть.
При отказе от напоминания приглашение остаётся в состоянии , а неsent: первое письмо действительно было отправлено, и клиент всё ещё можетfailed
ответить на него.
Структура
read-settings → find-due (sent, never opened, under the allowance)
→ read-order (for the name only)
→ send-email → count-followup
Именно подсчёт напоминания делает его однократным: тот же запрос больше не
вернёт эту ссылку. формирует письмо и ничего не подсчитывает.dryRun полностью отключает напоминания, и поток останавливается доmaxFollowups: 0
того, как отправит его.
Параметры
(обязательный) — адрес отправителя.from(обязательный) —ses.SesCredentials,shopName,delayDays,maxFollowups— переопределения; значенияdryRun
по умолчанию берутся из.reviews.getSettings()
Прямые зависимости модуля
g-ordersg-reviewsg-ses
Исходный код
modules/workflows/wf-order-review-followup