<?php

	include_once('../token.php');

	include_once("/var/www/html/functions.php");
	
	//include_once("phpagi/phpagi.php");
	
	include_once("/var/www/html/phpagi/phpagi-asmanager.php");
	
	date_default_timezone_set('America/Denver');
	
	if ($_SERVER['REQUEST_METHOD']=='POST')
		
		$input = filter_input_array(INPUT_POST);
		
	else
		
		$input = filter_input_array(INPUT_GET);
	
	
	
	$uniqueid = $input['uniqueid'];
	
	$server = $input['server'];
	
	$language = $input['language'];
	
	$extlanguage = $input['extlanguage'];
	
	$queue = $input['queue'];
	
	$calldid = $input['calldid'];
	
	$callerid = $input['callerid'];
	
	$callername = $input['callername'];
	
	//$parthycall = $input[9];
	
	mylog("{$uniqueid} Data sent via " . $_SERVER['REQUEST_METHOD'] . ": " . var_export($input,true));
	
	mylog("{$uniqueid} Variable Data : |{$uniqueid}|{$server}|{$language}|{$extlanguage}|{$queue}|{$calldid}|{$callerid}|{$callername}|");
	
	//$agi = new AGI();
	
	//$agi->verbose("{$uniqueid} Variable Data : |{$uniqueid}|{$server}|{$language}|{$extlanguage}|{$queue}|{$calldid}|{$callerid}|{$callername}|");
	
	if(!empty($queue)){
		
		mylog("{$uniqueid} Starting AMI Connection for phpagi/asm{$server}.ini");
		
		//$agi->verbose("{$uniqueid} Starting AMI Connection for phpagi/asm{$server}.ini");
		
		$asm = new AGI_AsteriskManager("/var/www/html/phpagi/asm{$server}.ini");
		
		if(!$asm->connect()) {
		
			$error= "{$uniqueid} No Connected to AMI phpagi/asm{$server}.ini, Please Contact IT Desk";
			
			mylog($error);
			
			$data = array("error"=>$error);
			
			echo json_encode($data);
			
			exit;
		
		}
		
		$channel = 'Local/7'.$extlanguage.'@dialterp';
		
		$channel = '**' . $extlanguage . '@dialterp';
		
		$autocall = $asm->send_request('Originate',
		
		array(
		
			'Channel' => $channel,
		
			'Exten' => 's',
			
			'Context' => 'dialterp',
			
			'Priority' => 1,
			
			'Timeout' => '60000',
			
			'CallerID' => $callername . ' < ' . $callerid .'>',
			
			'Async' => 'true',
			
			'MaxRetries' => 2,
			
			'RetryTime' => '0',
			
			'Variable' => "thislanguage=$language,thisqueue=$queue,thisuniqueid=$uniqueid,thisextlanguage=$extlanguage,thisdid=$did,thisid=$callerid,thiscname=$callername"));
		
		$asm->disconnect();
		
		mylog("{$uniqueid} AMI Result: " . var_export($autocall,true));	
	
		$result = "{$uniqueid} Calling Agents in the system {$server} for $queue: ";

	
	} else {
		
		mylog("{$uniqueid} Search Data Result Extension not found: ");
		
		$result = "{$uniqueid} ERROR Calling Agents in the system {$server} for $queue";
	
	}
	
	echo $result;
	
?>