Вход на хостинг
IT-новости
20.04.2016 iPhone 2017 года поместят в водонепроницаемый корпус из стекла
Линейка iPhone в новом году серьезно поменяется. В этом уверен аналитический исследователь Мин Чи Ку......
30.07.2015 Ищем уникальный контент для сайта
Ищем уникальный контент для сайта Без уникального контента Ваш сайт обречен на то, что его страницы......
# программа работает в бесконечном цикле, периодически (раз в две минуты) подключаясь к порту, на который
# АТС посылает данные о звонках
while(1)
{
$dsh="dbi:Pg:dbname=$dbname;port=5432";
$dbh=DBI->connect("$dsh", "$user") or die "can't connect: $! ";
$pid=open (ATS, "cu -l/dev/cuaa1 -s9600|");
$p=($pid)+1;
# программа подключилась к базе данных и начала считывать данные от АТС
eval { alarm(60); };
my @str = <ATS>;
my $sstr;
my $ccc;
my $ss;
my $g;
# в этом цикле начинается обработка поступающих строк от АТС
foreach $sstr (@str) {
if ($sstr=~ /!/)
{
my @s= split /!/, $sstr;
# подсчет времени звонка удобно выделить в отдельную подпрограмму
sub duration {
my $a=substr($ccc, 6, 10);
my $b=substr($ccc, 16, 10);
my @aa=split //, $a;
my @bb=split //, $b;
my $aaa=(($aa[2]*10)+$aa[3])*24*60*60+($aa[4]*10+$aa[5])*60*60+($aa[6]*10+$aa[7])*60+$aa[8]*10+$aa[9];