$query = "update logs set status='Connected' where autoID='{$dbid}'"; $result = mysql_query($query) or die("Database Error"); $keys = "Nil"; $count = 0; do { if ($count > 2) { break; } $result = $agi->get_data("{$audio}", 5000, 1); $keys = $result['result']; if ($keys == "1" or $keys == "2") { break; } $count++; } while ($keys != 1 and $keys != 2); $query = "update logs set options='{$keys}' where autoID='{$dbid}'"; $result = mysql_query($query) or die("Database Error"); $msg = date("r", time()) . " -- User pressed {$keys} -- Number:{$userNumber} -- Audio:{$audio}\n"; file_put_contents($basepath . "logs/callLog.txt", $msg, FILE_APPEND); if ($keys == 1 or $keys == "1") { $agi->exec_goto($context_1, $exten_1, $priority_1); $query = "update logs set status='Transferred' where autoID='{$dbid}'"; $result = mysql_query($query) or die("Database Error"); } if ($keys == 2 or $keys == "2") { $agi->exec_goto($context_2, $exten_2, $priority_2); $query = "update logs set status='Transferred' where autoID='{$dbid}'"; $result = mysql_query($query) or die("Database Error"); } $query = "update logs set status='Completed' where autoID='{$dbid}'"; $result = mysql_query($query) or die("Database Error");
$logger = new AGI_Logger($agi); $cdr = new AGI_CDR($agi); // Get Called Extension informations $called_ext = $agi->request['agi_extension']; $Extension_D = DB_Extension($called_ext); // Get Called Queue information $Queue = Database_Entry('Ext_Queues', $Extension_D['PK_Extension']); //CDR: Set called info $cdr->set_called("{$Queue['PK_Extension']}", "Queue", "{$Queue['Name']}", "{$Extension_D['Extension']}"); // Set values to pass to [Extension_Queue_RingQueue] $QUEUE_ARGS = "queue-{$Queue['PK_Extension']}"; if ($Queue['PlayMohInQueue'] == 0) { $QUEUE_ARGS .= "|r||||"; } else { $QUEUE_ARGS .= "|||||"; } // Maybe we can pass our cdr id to the agents called throught this url //$QUEUE_ARGS .= "|http://www.google.com"; $QUEUES_NOAGENTS_EXTEN = "{$Queue['JoinEmptyExtension']}"; $QUEUE_MAXCYCLES_EXTEN = "{$Queue['CyclesExtension']}"; $QUEUE_MAXLEN_EXTEN = "{$Queue['MaxLenExtension']}"; $QUEUE_TIMEOUT_EXTEN = "{$Queue['TimeoutExtension']}"; $QUEUE_OPER_EXTEN = "{$Queue['OperatorExtension']}"; $agi->set_variable('QUEUE_ARGS', $QUEUE_ARGS); $agi->set_variable('QUEUE_NOAGENTS_EXTEN', $QUEUES_NOAGENTS_EXTEN); $agi->set_variable('QUEUE_MAXCYCLES_EXTEN', $QUEUE_MAXCYCLES_EXTEN); $agi->set_variable('QUEUE_MAXLEN_EXTEN', $QUEUE_MAXLEN_EXTEN); $agi->set_variable('QUEUE_TIMEOUT_EXTEN', $QUEUE_TIMEOUT_EXTEN); $agi->set_variable('QUEUE_OPER_EXTEN', $QUEUE_OPER_EXTEN); $agi->exec_goto('Extension_Queue_RingQueue', $called_ext);
require dirname(__FILE__) . '/common/AGI_Logger.class.php'; require dirname(__FILE__) . '/common/AGI_CDR.class.php'; require dirname(__FILE__) . '/common/AGI_Utils.php'; $agi = new AGI(); $logger = new AGI_Logger($agi); $cdr = new AGI_CDR($agi); // Get Called Extension informations $called_ext = $agi->request['agi_extension']; $Extension_D = DB_Extension($called_ext); // Get Caller Extension infomation $cid = $agi->parse_callerid(); $caller_ext = $cid['username']; $Extension_S = DB_Extension($caller_ext); // Park Calls if ($Extension_D['Type'] == 'ParkingLot') { $agi->exec_goto('park_call', 0, 1); // UnPark Calls } else { // See if the extension is alowed to unpark calls if ($Extension_S['Type'] == 'SipPhone') { $query = "SELECT * FROM Ext_SipPhones_Features WHERE FK_Extension = {$Extension_S['PK_Extension']} AND FK_Feature = 6"; $result = $mysqli->query($query) or $agi->verbose($query); } else { $query = "SELECT * FROM Ext_Virtual_Features WHERE FK_Extension = {$Extension_S['PK_Extension']} AND FK_Feature = 6"; $result = $mysqli->query($query) or $agi->verbose($query); } $agi->verbose($query); // Unpark calls if allowed if ($mysqli->num_rows($result) == 1) { $agi->exec_goto('park_call', $Extension_D['Extension'], 1); }