$v) $msg.= sprintf("%s ---> %s\n", $k, $v); $msg.= "-----------------------------------------------------\n"; $f= fopen("call_log_params.txt","a"); fwrite($f, $msg); fclose($f); } if(isset($_GET['debug'])){ ini_set("display_errors",1); error_reporting(E_ALL); } function get_call_dur($tmp) { if(count($tmp) == 3) $s= intval($tmp[0])*60*60 + intval($tmp[1])*60 + intval($tmp[2]); else $s= 0; return intval($s); } include_once $_SERVER['DOCUMENT_ROOT'] . "burrp/conf/Constants.php"; include_once $_SERVER['DOCUMENT_ROOT'] . Constants::PORTAL . "/utils/Conn.php"; include_once $_SERVER['DOCUMENT_ROOT'] . Constants::PORTAL . "/utils/mongo_connection.php"; $logfile = "did_call_logs.txt"; $con = new Conn("ReadWriteBurrp"); $responseData = array(); $responseData['STATUS_CODE'] = 0; $responseData['RESPONSE'] = array(); $responseData['RESPONSE_COUNT'] = 0; $responseData['MSG'] = ""; $log = ""; $log .= "\n DATE : ".date("Y-m-d H:i:s"); if($_GET['test']==1){ $_POST = $_GET; } $params = array(); $params['caller_number'] = $_REQUEST['caller_number']; //user number $params['called_number'] = $_REQUEST['called_number']; //dnis number $params['call_duration'] = $_REQUEST['call_duration']; $params['call_status'] = $_REQUEST['call_status']; $params['recording_url'] = $_REQUEST['recording_url']; $params['forwarded_number'] = $_REQUEST['forwarded_number']; $params['call_start_date_time'] = $_REQUEST['call_start_date_time']; $params['call_end_date_time'] = $_REQUEST['call_end_date_time']; w2f($_REQUEST); if($_GET['test']==1) { print_r($params); } //validate if(validate()){ //check valid dnis number and get listing id $currentDate = date("Y-m-d"); $didCheckSQL = "select establishment_id from burrp_sw.establishment_did_contract_knowlarity WHERE status=1 and virtual_number = '".$params['called_number']."' AND '".$currentDate."' between start_date AND end_date"; if($_GET['test']==1) { print_r($didCheckSQL); } $didCheckRes = mysqli_query($con->_Link, $didCheckSQL); if(mysqli_num_rows($didCheckRes) > 0){ $didData = mysqli_fetch_assoc($didCheckRes); if($didData){ $params['listing_id'] = $didData['establishment_id']; $call_dur= get_call_dur(explode(':', $params['call_duration'])); // // $sql = sprintf("insert into burrp_sw.call_logger( src_id,caller_number,dnis_number,call_start_tstamp,call_end_tstamp, call_duration,listing_id,src_id_old,business_number,downloadCount, duration_update,update_cnt,recording_url,call_status,system_type) VALUES (0,'%s','%s','%s', '%s',%d, %d,'','%s', '0','0','0','%s','%s','1')", $params['caller_number'], $params['called_number'],$params['call_start_date_time'], $params['call_end_date_time'],$call_dur,$params['listing_id'],$params['forwarded_number'], $params['recording_url'],$params['call_status']); if($_GET['test']==1) print_r($sql); // // $res = mysqli_query($con->_Link,$sql); if($res){ $responseData['STATUS_CODE'] = 1; $responseData['RESPONSE'] = array('recorded'=>$params['called_number']); $responseData['RESPONSE_COUNT'] = 1; $responseData['MSG'] = "Successful"; $log .= "\r\n Sucess"; $log .= "\r\n Data :".json_encode($params); $log .= "\r\n ------------------------------------------"; $file = fopen($logfile,"a+"); $fres = fwrite($file,$log); fclose($file); } else { $log .= "\r\n Error : Query failed"; $log .= "\r\n Data :".json_encode($params); $log .= "\r\n ------------------------------------------"; $responseData['MSG'] = "Error"; $file = fopen($logfile,"a+"); $fres = fwrite($file,$log); fclose($file); } }else{ $log .= "\r\n Error : DID contract expired/DID not found."; $log .= "\r\n Data :".json_encode($params); $log .= "\r\n ------------------------------------------"; $responseData['MSG'] = "DID contract expired/DID not found."; $file = fopen($logfile,"a+"); $fres = fwrite($file,$log); fclose($file); } } else{ $log .= "\r\n Error : DID check failed."; $log .= "\r\n Data : ".json_encode($params); $log .= "\r\n ------------------------------------------"; $responseData['MSG'] = "DID check failed."; $file = fopen($logfile,"a"); $fres = fwrite($file,$log); fclose($file); } } else{ $log .= "\r\n Error : " . $responseData['MSG']; $log .= "\r\n Data : ".json_encode($params); $log .= "\r\n ------------------------------------------"; $file = fopen($logfile,"a"); $fres = fwrite($file,$log); fclose($file); } //http://api.burrp.com/burrp/api/v1/did_call_log.php?&caller_number=123&called_number=33130603&call_duration=0:07:07&forwarded_number=890&call_status=1&call_start_date_time=2012-09-10%2017:06:37&call_start_date_time=2012-09-10%2017:06:44&recording_url=urlvalue function validate(){ global $params,$responseData; $errormsg = array(); if(empty($params['caller_number'])){ $errormsg[] = "Caller number is mandatory."; } if(empty($params['called_number'])){ $errormsg[] = "Called number is mandatory."; } if($params['call_duration'] == ""){ $errormsg[] = "Call duration is mandatory."; } if(empty($params['forwarded_number'])){ $errormsg[] = "Forwarded number is mandatory."; } if(!is_numeric($params['caller_number'])){ $errormsg[] = "Caller number must contain only numeric values."; } /*if(!is_numeric($params['called_number'])){ $errormsg[] = "Called number must contain only numeric values."; }*/ //if(!is_numeric($params['call_duration'])){ // $errormsg[] = "Call duration must contain only numeric values."; // } /*if(!is_numeric($params['forwarded_number'])){ $errormsg[] = "Forwarded number must contain only numeric values."; }*/ if(count($errormsg) > 0){ $responseData['MSG'] = implode(",",$errormsg); return false; }else{ return true; } } echo json_encode($responseData); exit; //http://api.burrp.com/burrp/api/v1/did_call_log.php?&caller_number=123&called_number=456&call_duration=7&forwarded_number=890&call_status=1&call_start_date_time=2012-09-10 17:06:37&call_start_date_time=2012-09-10 17:06:44&recording_url=urlvalue ?>