From e44d934707f5f8e6590de85d5ee566a488d8d325 Mon Sep 17 00:00:00 2001 From: Andreas Granig Date: Mon, 21 Jan 2013 14:04:00 +0000 Subject: [PATCH] Make weekdays configurable. --- reminder.conf | 9 ++++++--- reminder.pl | 9 ++++++++- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/reminder.conf b/reminder.conf index ebc0803..66ff728 100644 --- a/reminder.conf +++ b/reminder.conf @@ -1,6 +1,9 @@ -#Configuration file for ngcp-reminder call scripts +# Configuration file for ngcp-reminder call scripts -#callfile settings +# weekday settings (1=sun, 7=sat) +weekdays = 2, 3, 4, 5, 6, 7 + +# callfile settings retries = 2 retry_time = 60 wait_time = 30 @@ -9,7 +12,7 @@ sip_peer = sip_proxy spool = /var/spool/asterisk/outgoing tmpdir = /tmp -#database settings +# database settings database = provisioning dbhost = localhost dbuser= soap diff --git a/reminder.pl b/reminder.pl index 21a427c..b412926 100755 --- a/reminder.pl +++ b/reminder.pl @@ -6,6 +6,7 @@ use File::Basename; use File::Copy; use DBI; +our $weekdays; our $retries; our $retry_time; our $wait_time; @@ -35,6 +36,11 @@ while () { } close CONFIG; +if(!defined $weekdays || $weekdays =~ /^\s*$/) { + $weekdays = '1,2,3,4,5,6'; +} +my @wdays = split /\s*,\s*/, $weekdays; + my $dsn = "DBI:mysql:database=$database;host=$dbhost;port=0"; @@ -55,7 +61,8 @@ while (my $ref = $sth->fetchrow_hashref()) if($ref->{'recur'} eq "weekdays") { my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = gmtime(time); - next if($wday == 0) # only exclude sunday for now + $wday++; # make sun=1, sat=7 + next unless(grep(/^$wday$/, @wdays)); } my ($tmp, $tmp_filename) = tempfile("$ref->{'username'}.XXXXXX", DIR => $tmpdir, UNLINK => 0);