流星电子邮件 - 同步的 Cron - setTimeout 回调中的异常:类型错误:无法调用未定义的方法'getTime'"



使用percolate: synchronized -cron包,我试图在未来的特定时间安排发送电子邮件。我插入一个未来的任务到数据库中,但我得到这个错误Exception in setTimeout callback: TypeError: Cannot call method 'getTime' of undefined

db.future_tasks.find({}).pretty()
{
    "_id" : "t35s5Daj7iwNeW9gm",
    "to" : "niko.tzikas@gmail.com",
    "from" : "niko.tzikas@gmail.com",
    "subject" : "wassup",
    "text" : ISODate("2015-07-22T19:25:32.781Z"),
    "date" : ISODate("2015-07-22T19:25:32.781Z")
}


I20150722-15:22:50.339(-4) (synced-cron-server.js:52) SyncedCron: scheduled "EguDR6bFxKNECZAXF" next run @Wed Jul 22 2015 15:23:10 GMT-0400 (EDT)
I20150722-15:23:10.266(-4) (synced-cron-server.js:52) SyncedCron: Starting "EguDR6bFxKNECZAXF".
I20150722-15:23:10.269(-4) (synced-cron-server.js:52) SyncedCron: Removed "EguDR6bFxKNECZAXF
I20150722-15:23:10.271(-4) (synced-cron-server.js:52) SyncedCron: Finished "EguDR6bFxKNECZAXF".
I20150722-15:23:10.279(-4)? Exception in setTimeout callback: TypeError: Cannot call method 'getTime' of undefined
I20150722-15:23:10.279(-4)?     at scheduleTimeout (packages/percolatestudio:synced-cron/synced-cron-server.js:238:1)
I20150722-15:23:10.280(-4)?     at Object.SyncedCron._laterSetTimeout (packages/percolatestudio:synced-cron/synced-cron-server.js:228:1)
I20150722-15:23:10.280(-4)?     at scheduleTimeout (packages/percolatestudio:synced-cron/synced-cron-server.js:206:1)
I20150722-15:23:10.280(-4)?     at packages/percolatestudio:synced-cron/synced-cron-server.js:248:1
I20150722-15:23:10.280(-4)?     at [object Object]._.extend.withValue (packages/meteor/dynamics_nodejs.js:56:1)
I20150722-15:23:10.281(-4)?     at packages/meteor/timers.js:6:1
I20150722-15:23:10.281(-4)?     at runWithEnvironment (packages/meteor/dynamics_nodejs.js:108:1)

我试着把日期变成字符串,但是没有区别。如果我尝试通过电子邮件发送任务(不需要SyncedChron),如:

Email.send({
    from: details.from,
        to: details.to,
        subject:new Date(),
    text: details.date
    //date: details.date
});

我得到:

TypeError: Object Wed Jul 22 2015 15:24:46 GMT-0400 (EDT) has no method 'replace'
http://richsilv.github.io/meteor/scheduling-events-in-the-future-with-meteor/

https://github.com/percolatestudio/meteor-synced-cron

这是包中的一个bug。该链接上列出了一个修复程序,并且显然包含在此包中。

最新更新