Я хотел бы вызвать письмо, отправленное пользователю после регистрации (что не проблема), а затем ровно через неделю после даты регистрации, а затем через месяц после даты регистрации. Так что мне было интересно, как я мог это сделать?
Я думаю, что они могут не подходить для заданий Cron, так как задача на самом деле не повторяется, а срабатывает только дважды.
Должен ли я использовать App->Console->Kernel.php
настроить расписание с when()
функция или что-то подобное? Какой будет лучший подход?
Это основано на мнениях и, следовательно, не очень хорошо подходит для формата stackoverflow, но вот как я это сделаю:
Есть флаги на записи пользователя для 1weekemail
а также 1monthemail
который по умолчанию ложно.
Каждую ночь запускаются две запланированные задачи, которые получают список пользователей, которые соответствуют критерию времени, но не имеют установленного флага.
Используйте этот набор результатов для отправки электронных писем, а затем установите соответствующие флаги в значение true.
Создать scheduler function
который проверяет каждого зарегистрированного пользователя в вашей таблице пользователей, он принимает запись пользователя, в которой last activity
или же registration time
там, проверьте интервал времени и отправьте электронное письмо, если условие интервала времени удовлетворяет, и включите эту функцию schedule
как на ежедневной или почасовой основе.