2.0.9 • Published 8 years ago

schedule-js v2.0.9

Weekly downloads
23
License
MIT
Repository
github
Last release
8 years ago

Small package to schedule function execution at specific time. You can use this package on client and server side.

Install

npm i --save schedule-js

Examples

You can use Schedule as class to create object with following methods:

import Schedule from 'schedule-js';

function catchClean(a, b, c) {...};

let autoCatchClean = new Schedule(catchClean, a ,b ,c); 
//first argument has to be function, rest of arguments will be pass to function

autoCatchClean.scheduleAt('1d', '18:00');
//will run function 'catchClean' at 18:00 and will rerun it every day.

Schedule.runAt('23:00', () => autoCatchClean.stop());
// at 23:00 will stop schedule

// - autoCatchClean.run(args) 
//execute function: autoCatchClean.run(arg1, arg2, arg3, ...) 

// - autoCatchClean.func 
//setter to change function: autoCatchClean.func = 'anoterFunction'

// - autoCatchClean.args 
//setter to change arguments, you have to pass argument/s in array: autoCatchClean.args = [arg1, arg2, arg3]

// - autoCatchClean.THIS 
//you can bind passed function: autoCatchClean.THIS = this

// - autoCatchClean.scheduleAt(interval, time) 
//schedule auto-run every "interval" first start at "time": autoCatchClean.scheduleAt('20s', '17:15')

// - autoCatchClean.runAt(time) 
//one time run at "time": autoCatchClean.runAt('12:12')

// - autoCatchClean.stop() 
//stop scheduled or/and one time run: autoCatchClean.stop()

You can also use static methods of Schedule class:

import Schedule from 'schedule-js';

function catchClean(arg1, arg2) {...};

- Schedule.scheduleAt('30m', '18:00', catchClean, arg1, arg2) 
//schedule auto-run every 30 minutes, schedule and firs ececution will be at 18:00

- Schedule.runAt('22:30', catchClean, arg1, arg2) 
//one time run at "22:30"

Note that if you use static methods you can't stop timer, it will stopped only with script.

Usage

  • scheduleAt(interval, time): 'interval' has to be string as following: '12345[ms || s || m || h || d]', 'time' has to be string as following: '23:30'
  • runAt(time): time has to be string as following: '23:30'
  • static scheduleAt(interval, time, func[, arg1, arg2, ...]) and static runAt(time, func[, arg1, arg2, ...]): same logic as above, but third argument has to be function which you are going to run by schedule, and all arguments after "func" will be passed to function.

####If you have any suggestion, please let me know.

2.0.9

8 years ago

2.0.8

8 years ago

2.0.7

8 years ago

2.0.6

8 years ago

2.0.5

8 years ago

2.0.4

8 years ago

2.0.3

8 years ago

2.0.1

8 years ago

2.0.0

8 years ago

1.1.2

8 years ago

1.1.1

8 years ago

1.1.0

8 years ago

1.0.2

8 years ago

1.0.1

8 years ago

1.0.0

8 years ago

0.0.3

8 years ago

0.0.2

8 years ago

0.0.1

8 years ago