根据时间从节点发送短信

时间:2016-08-16 05:16:30

标签: node.js mongodb express cron

我有一个场景,如果面试的时间是从系统日期开始的15分钟,那么我需要向某个人发送短信。 为此,我使用schedule(cron),每隔15分钟运行一次,并检查访谈时间(在集合中的合并日期)是否大约15分钟然后发送短信。

JS:

var Profiles = require('./profiles.model');
var cron = require('cron');
var cronJob = cron.job("* */15 * * * *", function() {
    var date = new Date();
    Profiles.find({
        combinedDate: Date.parse(Date.parse(date)+60000)
    },function(err, profiless) {

    console.log(profiless);
            console.info('cron job completed');
    });
});
cronJob.start();

现在我只是打印消息" cron job completed"在控制台而不是短信。

但是这里console.log(profiless);这句话给了我空数组。

模式:

    var mongoose = require('mongoose'),
    Schema = mongoose.Schema;

    var ProfilesSchema = new Schema({
        name: String,
        uniqueId: String,
        combinedDate: Date,
        filepath: String,
        filename: String
    });

module.exports = mongoose.model('Profiles', ProfilesSchema);

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:1)

我认为问题出在你的约会对象上。你想检查一下距离当前时间15分钟的面试时间是否合适?

那么为什么不使用这样的东西?

var Profiles = require('./profiles.model');
var cron = require('cron');
var cronJob = cron.job("* */15 * * * *", function() {
var date = new Date();
Profiles.find({
    combinedDate: date.setMinutes(date.getMinutes()+15)
},function(err, profiless) {

console.log(profiless);
        console.info('cron job completed');
});
});
cronJob.start();