# ATSlog version 2.1.1 build 664 www.atslog.com # # VENDOR: Panasonic # MODELS: KX-TA616RU,KX-TA308RU,KX-TA308,KX-TA616,KX-TEM824,KX-TES824 # AUTHOR: Alex Samorukov # # TESTLOG: Panasonic KX-TA308.txt # TESTLOG: Panasonic KX-TA308RU 2.txt # TESTLOG: Panasonic KX-TA616.txt # TESTLOG: Panasonic KX-TEM824.txt # # KX-TA616RU, Panasonic KX-TA308RU,Panasonic KX-TA308 # (c) Alex Samorukov, samm@os2.kiev.ua, 2006 # sub parsecurcalls() { while ($str=) { $stringNumber++; # regexp if ($str =~ /(.{1,2}\/.{2}\/.{2}) (.)(.{2}:\d{2}.{2}) (.\d{2}) (\d{2}) (.{37}) (.{8})\" (.{4})/){ unitecurcalls(); }else{ if ($vars{debug} =~ /yes/i){ if ($str !~ /^$/){ print $str; }; }; }; }; }; sub unitecurcalls() { my $date=$1; my $mode=$2; my $time=$3; my $ext_number=$4; my $line=$5; my $dialed_number=$6; my $call_duration=$7; my $business_code=$8; my $co=$line; if ($dialed_number=~/(\d+)/) { $number=$1; } else { $number=0; } if($dialed_number =~ /incoming/i){ $way='1'; }else{ $way='2'; }; if ($time=~(/(\d+):(\d{2})(.{2})/)) { $CallHour=&AmPmTo24($1,$3); $time=sprintf("%02d",$CallHour).":".$2; } #replace leading " " $date =~ s/ /0/g; if ($date=~(/(\d{2})\/(\d{2})\/(\d{2})/)) { $Month=$1; $Day=sprintf("%02d",$2); $Year=$3+2000; $timeofcall = "$Year-$Month-$Day $time:00"; } $internally=$ext_number; if ($call_duration=~(/(\d{2}):(\d{2})\'(\d{2})/)) { $duration = (($1*60*60)+($2*60)+$3); } if($mode=~/\*/){ $forwarded=1; } else { $forwarded =0; } $forwarder=0; if($business_code=~/(\d+)/){ $code=$1; } else { $code=0; } if ($timeofcall ne ""){ # We need to check that we had records for database $callsCount++; } WriteRecord($timeofcall, $forwarded, $internally, $co, $way, $number, $duration); } 1;