");
$tmp = explode(": ", $bufer);
$campo = ($tmp[0]);
$valor = trim($tmp[1]);
if (($valor != 'Cdr')) {
if ($campo == 'Event') {
connect_db();
$evento = trim($valor);
$query = "INSERT INTO pbx_monitor_evento (EVENTO) VALUES ('" . strtolower($valor) . "')";
pg_query($query);
$query = "SELECT ID FROM pbx_monitor_evento order by id desc limit 1";
$result = pg_query($query);
while ($dados = pg_fetch_array($result)) {
$id = $dados['id'];
}
pg_close();
} else if ($id > 0) {
connect_db();
if ((strtolower($campo) != 'cause-txt') && (strtolower($campo) != 'cid-callingpres')) {
$query = "update pbx_monitor_evento set " . strtolower($campo) . "='$valor' where id=$id";
} else if (strtolower($campo) == 'cid-callingpres') {
$query = "update pbx_monitor_evento set \"cid-callingpres\"='$valor' where id=$id";
} else {
$query = "update pbx_monitor_evento set \"cause-txt\"='$valor' where id=$id";
}
pg_query($query);
pg_close();
}
if (($campo == 'Uniqueid') or ( ($campo == 'Cause-txt') && ($evento == 'Hangup')) or ( ($campo == 'PeerStatus') && ($evento == 'PeerStatus')) or ( ($campo == 'HoldTime') && ($evento == 'QueueCallerAbandon')) or ( ($campo == 'DestUniqueID') && ($evento == 'Dial')) or ( ($campo == 'Newcallerid') && ($evento == 'CID-CallingPres')) or ( ($campo == 'CallerID2') && ($evento == 'Link')) or ( ($campo == 'CallerID2') && ($evento == 'Unlink'))) {
//echo $campo .'->'. $valor."
";
}
}
}
//print_r($bufer."
");
flush();
}
fclose($socket);
?>