2016-04-30 7 views
1

Ich versuche, eine E-Mail-Erinnerung mit Node-Schedule und NodeMailer einzurichten.node-schedule funktioniert nicht mit senden an bestimmten Datum Regel

Grundsätzlich muss meine Anwendung zwei E-Mails senden ... eine sofort beim Aufruf des Moduls und eine an einem bestimmten Datum.

Für jetzt habe ich nur ein zufälliges Datum zum Testen gewählt, aber ich kann die geplante Mail nicht empfangen.

Ich kann bestätigen, dass die E-Mails funktionieren gut, da ich in der Lage bin, sie zu erhalten, wenn sofort gesendet wird, das angegebene Datum Node Scheduler funktioniert jedoch nicht.

Nur FYI: Ich habe getestet, um sicherzustellen, dass mein Server zur gleichen Zeit läuft wie ich bin, und ich 24 Stunden Datumsformat eingeben.

var schedule = require('node-schedule'); 

module.exports = function (jobData) { 
    var nodemailer = require('nodemailer'); 
    var smtpTransport = nodemailer.createTransport 
     ('smtps://emailname%40gmail.com:[email protected]'); 

function callTransporter(emailData) { 
    smtpTransport.sendMail(emailData, function (error, info) { 
     if (error) { 
      return console.log(error); 
     } 
     console.log('Message sent: ' + info.response); 
    }); 
} 

function interviewReminderEmail(emailData) { 
    var mailOptions = { 
     from: '"Job Seeker" <[email protected]>', 
     to: '[email protected]', 
     subject: 'Interview coming up! ✔', 
     text: 'some message', 
     html: '<b>blablabla</b>' 
    }; 

    var interviewDate = new Date(2016, 4, 30, 15, 30, 0); 

    //region of code where I setup scheduled email. 
    // I get no errors, however it is not sending an email either. 
    var j = schedule.scheduleJob(interviewDate, function() { 
     console.log('Sending interview reminder Email.'); 
     callTransporter(mailOptions); 
    }); 
} 

interviewReminderEmail(jobData); 

}

Antwort

1

Ich glaube, ich es herausgefunden, ist der Monat April 3, da Januar um 0 doh beginnt!

Edit: Ich kann bestätigen, dass das das Problem war.

Verwandte Themen