Portions created by the Initial Developer are Copyright (C) 2008-2019 the Initial Developer. All Rights Reserved. Contributor(s): Mark J Crane */ //includes require_once "root.php"; require_once "resources/require.php"; require_once "resources/check_auth.php"; require_once "xml_cdr_statistics_inc.php"; //check permissions if (permission_exists('xml_cdr_statistics')) { //access granted } else { echo "access denied"; exit; } //add multi-lingual support $language = new text; $text = $language->get(); //additional includes $document['title'] = $text['title-call-statistics']; require_once "resources/header.php"; //search url $search_url = ''; if (permission_exists('xml_cdr_search_advanced')) { $search_url .= '&redirect=xml_cdr_statistics'; } if(permission_exists('xml_cdr_all') && ($_GET['showall'] === 'true')){ $search_url .= '&showall=true'; } if (strlen($_GET['direction']) > 0) { $search_url .= '&direction='.urlencode($_GET['direction']); } if (strlen($_GET['leg']) > 0) { $search_url .= '&leg='.urlencode($_GET['leg']); } if (strlen($_GET['caller_id_name']) > 0) { $search_url .= '&caller_id_name='.urlencode($_GET['caller_id_name']); } if (strlen($_GET['caller_extension_uuid']) > 0) { $search_url .= '&caller_extension_uuid='.urlencode($_GET['caller_extension_uuid']); } if (strlen($_GET['caller_id_number']) > 0) { $search_url .= '&caller_id_number='.urlencode($_GET['caller_id_number']); } if (strlen($_GET['destination_number']) > 0) { $search_url .= '&destination_number='.urlencode($_GET['destination_number']); } if (strlen($_GET['context']) > 0) { $search_url .= '&context='.urlencode($_GET['context']); } if (strlen($_GET['start_stamp_begin']) > 0) { $search_url .= '&start_stamp_begin='.urlencode($_GET['start_stamp_begin']); } if (strlen($_GET['start_stamp_end']) > 0) { $search_url .= '&start_stamp_end='.urlencode($_GET['start_stamp_end']); } if (strlen($_GET['answer_stamp_begin']) > 0) { $search_url .= '&answer_stamp_begin='.urlencode($_GET['answer_stamp_begin']); } if (strlen($_GET['answer_stamp_end']) > 0) { $search_url .= '&answer_stamp_end='.urlencode($_GET['answer_stamp_end']); } if (strlen($_GET['end_stamp_begin']) > 0) { $search_url .= '&end_stamp_begin='.urlencode($_GET['end_stamp_begin']); } if (strlen($_GET['end_stamp_end']) > 0) { $search_url .= '&end_stamp_end='.urlencode($_GET['end_stamp_end']); } if (strlen($_GET['duration']) > 0) { $search_url .= '&duration='.urlencode($_GET['duration']); } if (strlen($_GET['billsec']) > 0) { $search_url .= '&billsec='.urlencode($_GET['billsec']); } if (strlen($_GET['hangup_cause']) > 0) { $search_url .= '&hangup_cause='.urlencode($_GET['hangup_cause']); } if (strlen($_GET['uuid']) > 0) { $search_url .= '&uuid='.urlencode($_GET['uuid']); } if (strlen($_GET['bleg_uuid']) > 0) { $search_url .= '&bleg_uuid='.urlencode($_GET['bleg_uuid']); } if (strlen($_GET['accountcode']) > 0) { $search_url .= '&accountcode='.urlencode($_GET['accountcode']); } if (strlen($_GET['read_codec']) > 0) { $search_url .= '&read_codec='.urlencode($_GET['read_codec']); } if (strlen($_GET['write_codec']) > 0) { $search_url .= '&write_codec='.urlencode($_GET['write_codec']); } if (strlen($_GET['remote_media_ip']) > 0) { $search_url .= '&remote_media_ip='.urlencode($_GET['remote_media_ip']); } if (strlen($_GET['network_addr']) > 0) { $search_url .= '&network_addr='.urlencode($_GET['network_addr']); } if (strlen($_GET['mos_comparison']) > 0) { $search_url .= '&mos_comparison='.urlencode($_GET['mos_comparison']); } if (strlen($_GET['mos_score']) > 0) { $search_url .= '&mos_score='.urlencode($_GET['mos_score']); } //show the content echo "
\n"; echo "
".$text['title-call-statistics']."
\n"; echo "
\n"; if (substr_count($_SERVER['HTTP_REFERER'], 'app/xml_cdr/xml_cdr.php') != 0) { echo button::create(['type'=>'button','label'=>$text['button-back'],'icon'=>$_SESSION['theme']['button_icon_back'],'id'=>'btn_back','style'=>'margin-right: 15px;','link'=>'xml_cdr.php']); } if (permission_exists('xml_cdr_search_advanced')) { echo button::create(['type'=>'button','label'=>$text['button-advanced_search'],'icon'=>'tools','link'=>'xml_cdr_search.php?type=advanced'.$search_url]); } if (permission_exists('xml_cdr_all') && $_GET['showall'] != 'true') { echo button::create(['type'=>'button','label'=>$text['button-show_all'],'icon'=>$_SESSION['theme']['button_icon_all'],'link'=>'xml_cdr_statistics.php?showall=true'.$search_url]); } echo button::create(['type'=>'button','label'=>$text['button-extension_summary'],'icon'=>'list','link'=>'xml_cdr_extension_summary.php']); echo button::create(['type'=>'button','label'=>$text['button-download_csv'],'icon'=>$_SESSION['theme']['button_icon_download'],'link'=>'xml_cdr_statistics_csv.php?type=csv'.$search_url]); echo "
\n"; echo "
\n"; echo "
\n"; echo $text['label-call-statistics-description']."\n"; echo "

\n"; ?>
\n"; echo "\n"; echo " ".$text['table-hours']."\n"; echo " ".$text['table-date']."\n"; echo " ".$text['table-time']."\n"; echo " Volume\n"; echo " ".$text['table-minutes']."\n"; echo " ".$text['table-calls-per-minute']."\n"; echo " ".$text['table-missed']."\n"; echo " ASR\n"; echo " ".$text['label-aloc']."\n"; echo "\n"; $i = 0; foreach ($stats as $row) { echo "\n"; if ($i <= $hours) { echo " ".($i+1)."\n"; } else if ($i == $hours+1) { echo "

\n"; echo "\n"; echo "\n"; echo " \n"; echo "

\n"; echo " \n"; echo "\n"; echo "\n"; echo " ".$text['table-days']."\n"; echo " ".$text['table-date']."\n"; echo " ".$text['table-time']."\n"; echo " Volume\n"; echo " ".$text['table-minutes']."\n"; echo " ".$text['table-calls-per-minute']."\n"; echo " ".$text['table-missed']."\n"; echo " ASR\n"; echo " ALOC\n"; echo "\n"; echo "\n"; } if ($i > $hours) { echo " " . floor(escape($row['hours'])/24) . "\n"; } if ($i <= $hours) { echo " ".date('j M', $row['start_epoch'])."\n"; echo " ".date('H:i', $row['start_epoch'])." - ".date('H:i', $row['stop_epoch'])." \n"; } else { echo " ".date('j M', $row['start_epoch'])." \n"; echo " ".date('H:i', $row['start_epoch'])." - ".date('j M H:i', $row['stop_epoch'])." \n"; } echo " ".escape($row['volume'])." \n"; echo " ".(round(escape($row['minutes']),2))." \n"; echo " ".(round(escape($row['avg_min']),2))." / ".(round(escape($row['cpm_ans']),2))." \n"; echo " ".escape($row['missed'])." \n"; echo " ".(round(escape($row['asr']),2))." \n"; echo " ".(round(escape($row['aloc']),2))." \n"; echo "\n"; $i++; } echo "\n"; echo "

"; //include the footer require_once "resources/footer.php"; ?>