X-Git-Url: https://defaria.com/gitweb/?a=blobdiff_plain;f=bin%2FannounceEmail.pl;h=cb6667be3d343c51a59b1f88f39b4dd1b5845f15;hb=29e7a76b102f27fe3017887c8936665ba9932d98;hp=3b9d52aa052a3e5f8fe6d5361ad526ebcd902c2f;hpb=4acb6f612a8cf19db26bc40060ed8e79fb16b91d;p=clearscm.git diff --git a/bin/announceEmail.pl b/bin/announceEmail.pl index 3b9d52a..cb6667b 100755 --- a/bin/announceEmail.pl +++ b/bin/announceEmail.pl @@ -75,9 +75,10 @@ use warnings; use FindBin; use Getopt::Long; -use Pod::Usage; use Mail::IMAPTalk; use MIME::Base64; +use Pod::Usage; +use Proc::ProcessTable; use lib "$FindBin::Bin/../lib"; @@ -89,6 +90,16 @@ use Utils; local $0 = "$FindBin::Script " . join ' ', @ARGV; +my $processes = Proc::ProcessTable->new; + +for my $process (@{$processes->table}) { + if ($process->cmndline eq $0 and $process->pid != $$) { + verbose "$FindBin::Script already running"; + + exit 0; + } # if +} # for + my $defaultIMAPServer = 'defaria.com'; my $IMAP; my %unseen; @@ -252,9 +263,7 @@ sub MonitorMail() { my $greeting = $greetings[int rand $#greetings]; my $msg = "$greeting from $from... $subject"; - $msg =~ s/\"/\\"/g; - - my $hour = (localtime)[2]; + my $hour = (localtime)[2]; # Only announce if after 6 Am. Note this will announce up until # midnight but that's ok. I want midnight to 6 Am as silent time.