} elsif(!defined($number)) { $status{"is_active"}=0; last; };
}
my %newstatus=gather_data($gsm);
- print $newstatus{'call'}." ".$status{'call'}."\n";
ring() if($newstatus{"call"}!=0 && $status{"call"}==0 && !$status{"number"});
foreach (keys %newstatus) {
$status{$_} = $newstatus{$_} if(defined ($newstatus{$_}));
rename "/tmp/.phone-status.new", "/tmp/.phone-status" || die $!;
}
+sub daemonize {
+ chdir "/";
+ my $pid=fork();
+ if($pid) {
+ exit(0)
+ }
+ elsif(defined($pid))
+ {
+ close STDIN;
+ close STDOUT;
+ close STDERR;
+ }
+ else { exit(1); }
+}
+
sub death {
$gsm->disconnect() if($gsm);
unlink "/tmp/.phone-status.new", "/tmp/.phone-status";