const Engine = require('js-rule-engine')
const engine = new Engine()
engine.addRule('r1', {
conditions: {
all: [{
fact: `s2`,
operator: 'equal',
value: true,
path: '.test'
},{
fact: `s3`,
operator: 'equal',
value: true
}]
},
timers: [
{
id: 's124',
type: 'CONDITION',
rule: "00 44 10 ? * MON,TUE,WED,THU,FRI,SAT,SUN *"
}, {
id: 's124',
type: 'LIMIT',
recurrence: {
range: ['10:50', '11:0'],
dayofWeek: [0 ,1, 2, 3, 4, 5, 6]
}
}
]
})
const ret = engine.addFact([
{ factId: 's2', value: { test: true } },
{ factId: 's3', value: true }
])
engine.deleteRule('r1')
* * * * * * *
┬ ┬ ┬ ┬ ┬ ┬ ┬
│ │ │ │ │ │ └ year
│ │ │ │ │ └ day of week (0 - 7) (0 or 7 is Sun)
│ │ │ │ └───── month (1 - 12)
│ │ │ └────────── day of month (1 - 31)
│ │ └─────────────── hour (0 - 23)
│ └──────────────────── minute (0 - 59)
└───────────────────────── second (0 - 59, OPTIONAL)