Skip to content

b3rnie/crontab

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Crontab

Crontab for Erlang.

Execute scheduled functions.

Authors

API

API consists of crontab:add/3 and crontab:remove/1.

crontab:add(Name::atom(), Spec::list(), MFA::mfa()) -> ok | {error, Rsn}
crontab:remove(Name::atom()) -> ok | {error, Rsn}
Spec = [year(), month(), day(), hour(), min()]

year()  :: 0..N  | '*' | [2013, 2015, ..]
month() :: 1..12 | '*' | [1, 2, 3, ..]
day()   :: 1..31 | monday | tuesday | wednesday | thursday | friday |
           saturday | sunday | [monday, 21, friday, ..]
hour()  :: 0..23 | '*' | [12, 22, ..]
min()   :: 0..59 | '*' | [0, 15, 30, 45, ..]

MFA = {module, function, args}

Usage

Example:

ok = application:start(crontab),
MFA = {module, function, []},

%% once/week, monday 8.30
ok = crontab:add(foo, ['*', '*', monday,  8, 30], MFA),
%% first day of month, 00.00
ok = crontab:add(bar, ['*', '*', 1, 0, 0], MFA),
%% 29th of february, 20.00
ok = crontab:add(baz, ['*', 2, 29, 20, 0], MFA),
%% every 15 minute on mondays and fridays
ok = crontab:add(buz, ['*', '*', [monday, friday], '*', [0, 15, 30, 45]], MFA),
ok = application:stop(crontab),

Manifest

About

crontab for Erlang

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages