Have ideas to improve npm?Join in the discussion! ¬Ľ

    persistent-scheduler

    1.0.1¬†‚Äʬ†Public¬†‚Äʬ†Published

    Persistent Scheduler

    Schedules functions with long timeouts that persists when server is restarted. Now it stores data on mongodb. Redis and memcached connections comming soon!

    Usage:

    const { schedule } = require('persistent-scheduler')({
      mongodb: { url: process.env.MONGODB_URL, helloMessage: true }
    });
     
      (async () => {
        // Returns true if it was scheduled OK and null for error.
        const result = await schedule({
          id: 'Schedule Test 3',
          func: (data, modules) => {
            console.log('Function running!');
            console.log('data', data);
            console.log('modules', modules);
            // Using an example package
            console.log(modules.deepSpread.inject({ b: 2 }).to({ a: 1 }));
          },
          expression: { hours: 2, minutes: 30 },
          // expression: '0 */10 * ? * *',
          // expression: new Date(),
          // expression: 'Thu Apr 09 2020 18:00:00 GMT-0300',
          data: {
            test: 1,
            test2: true
          },
          // You can include external modules with relative or absolute paths.
          // You can also include npm packages for using inside the scheduled function.
          modules: { flow: '../server/commons/flow', deepSpread: 'deep-spread' }
        }).on('mongodb');
        console.log(result);
      })();

    Install

    npm i persistent-scheduler

    DownloadsWeekly Downloads

    2

    Version

    1.0.1

    License

    ISC

    Unpacked Size

    13.5 kB

    Total Files

    7

    Last publish

    Collaborators

    • avatar