2015-12-14 1 views
0

У меня есть частное поле для регистрации бета-версии, которое мгновенно отправит электронное письмо с уведомлением пользователя, чтобы посмотреть письмо с одобрением, с помощью специального ключа для регистрации, затем отправьте внесите электронное письмо со специальным ключом в более позднюю запланированную дату.расписание для отправки по электронной почте позднее с помощью nodemailer/node-cron

send.pre_approval(function(){ 
    new Cron({ 
    cronTime: // some later time, 
    onTick: function(){ 
     send.approval() 
     this.stop() 
    } 
    }).start() 
}) 

send.pre_approval отправит электронное письмо pre_approval сразу после регистрации частной бета-версии. Задание cron будет запущено через некоторое время, а функция onTick, которая срабатывает в установленном cronTime, отправит электронное письмо с подтверждением, затем вызовет его метод остановки.

Это похоже на работу, как я и ожидал, но мне было интересно, если это способ остановить работу cron с помощью node-cron.

Я по существу планирую работу и останавливаю ее после ее запуска, похоже, лучший способ - запланировать выполнение задания в более позднее время со времени регистрации, любых идей?

ответ

0

Мой коллега поднял лучшее решение, имеющее больше смысла.

Запланируйте задание cron, которое проверяет поле create_date пользователя, который подписывается и по истечении установленного промежутка времени с момента создания send_date отправляет электронное письмо.

Таким образом, для каждого пользователя нет задания cron.

Смежные вопросы