include "root.php"; require_once "resources/require.php"; require_once "resources/check_auth.php"; if (permission_exists('get_call_details') || if_group("superadmin")) { //access granted } else { echo "access denied"; exit; } //get_call_details //get the call details for all calls or all active calls //usage //http://x.x.x.x/app/get_call_details/index.php?dest=101&username=example&password=1234 $fp = event_socket_create($_SESSION['event_socket_ip_address'], $_SESSION['event_socket_port'], $_SESSION['event_socket_password']); if (!$fp) { $msg['error']['message'] = "Connection to Event Socket failed."; echo json_encode($row); } $response = trim(event_socket_request($fp, "api show calls")); $response = explode("\n\n", $response); $response_array = csv_to_named_array($response[0], ','); unset($response); if (isset($_REQUEST['dest'])) { foreach ($response_array as $row) { if ($row['dest'] == trim($_REQUEST['dest'])) { echo json_encode($row); } } } else { echo json_encode($response_array); }
// unset($dnd); //} //unset ($prep_statement); } } } //get the agents from the database $sql = "select * from v_call_center_agents "; $sql .= "where domain_uuid = '{$domain_uuid}' "; $prep_statement = $db->prepare(check_sql($sql)); $prep_statement->execute(); $agents = $prep_statement->fetchAll(PDO::FETCH_NAMED); //get the agent list from event socket $switch_cmd = 'callcenter_config agent list'; $event_socket_str = trim(event_socket_request($fp, 'api ' . $switch_cmd)); $call_center_agents = csv_to_named_array($event_socket_str, '|'); //echo "<pre>\n"; //print_r($call_center_agents); //echo "</pre>\n"; //get the agent status from mod_callcenter and update the agent status in the agents array $x = 0; foreach ($agents as $row) { //add the domain name $domain_name = $_SESSION['domains'][$row['domain_uuid']]['domain_name']; $agents[$x]['domain_name'] = $domain_name; //update the agent status foreach ($call_center_agents as $r) { if ($r['name'] == $row[agent_name] . '@' . $domain_name) { $agents[$x]['agent_status'] = $r['status']; } }