#!/usr/bin/perl -w

#`killall -9 mygnokii 1>/dev/null 2>/dev/null`;
`killall -9 gnokii 1>/dev/null 2>/dev/null`;
sleep(1);


use File::Copy;

# use Gnokii::GSM;
# my $gsm_conn = Gnokii::GSM->new("/dev/ttyS1","5110");

my $outfolder = "/var/gsm/out";
my $infolder = "/var/gsm/in";
my $sentfolder = "/var/gsm/sent";
my $failfolder = "/var/gsm/fail";
my $number="";
my $message="";
my $failemail="neshac_nospam\@gmail.com";
my $okemail="neshac_nospam\@gmail.com";
my $gnokii = "/usr/bin/gnokii";
#my $gnokii_getsms = "/usr/bin/mygnokii";
my $gnokii_getsms = "/usr/bin/gnokii";

############# START RECEIVING ##################
for (my $place=1; $place<6; $place++) {
	my $reply = `$gnokii_getsms --getsms ME $place`;
	chomp($reply);
	if ($reply ne "SMS location ME $place empty." && $reply ne "") {
		my @lines = split "\n",$reply;
		my $sender="";
		my $tmp="";
		my @tmp;
		my $datetime;
		foreach (@lines) {
			if (/Sender:/) {
				s/.*Sender:/Sender:/;
				($tmp,$sender,@tmp) = split (" ",$_);
				chomp($sender);
				$sender =~ s/\+//g;
				#print "$sender\n";
			}
			if (/^Date/) {
				($datetime) = $_;
				chomp($datetime);
				$datetime =~ s/Date\/time: //g;
				$datetime =~ s/(:)|(\/)/./g;
				$datetime =~ s/ /_/g;
				$datetime =~ s/_\+.*$//g;
				#print "$datetime\n";
			}
		}

		#print "SMS nro $place\n";
		my $in = "$infolder" . "/$sender-$datetime" . ".txt";
		#print "$in";
		open SMSIN, ">>$in" || die "ERROR: $_";
		print SMSIN "$reply";
		close SMSIN;
		open M, "|mail -s 'Incoming SMS' $okemail";
		print M "$in:\n$reply\n\n";
		close M;

		############ DELETING SMS FROM PHONE #########
		$reply=`$gnokii_getsms --deletesms ME $place $place`;
		#print "$reply";
	}
}
########### RECEIVING IS READY ###########

sleep(2);
#`killall -9 mygnokii 1>/dev/null 2>/dev/null`;
`killall -9 gnokii 1>/dev/null 2>/dev/null`;
