// format should be callshop-XXXX $tmp = split("-", $context); $userid = $tmp[1]; $query = "SELECT clid FROM clid WHERE groupid = {$groupid} AND pin = '{$dnid}'"; debug($query); print "here"; exit; $clid = $db->getOne($query); if (!$clid) { // invalid pin number // hangup $agi->hangup($agi->request['agi_channel']); } # play dial prompt $dtmf = $agi->get_data($prompt_enter_dest, 4000, 20, "#"); $agi->set_callerid($clid); $agi->exec_dial($trunkname, $dtmf); /***********************************************************************/ function debug($string) { print $string; return; } exit; $charge_callback = 0; $G_startime = time(); $agi_date = "Release : no date"; $agi_version = "Version 1.4 - Trunk"; if ($argc > 1 && ($argv[1] == '--version' || $argv[1] == '-v')) { echo "Version {$agi_version} - {$agi_date}\n"; exit;
sleep(2); //I had it set up to check the callerid against a set of valid peeps - but i decided i was tired of that. and it made it too complex. //get caller id. $cid = $agi->parse_callerid(); $cid= $cid[username]; //streamfile that says "Enter number to spoof" $agi->stream_file('enter_spoof'); //beep then get the resulting 10 digits - set it to spoofnumber $result = $agi->get_data('beep', 3000, 10); $spoofnumber= $result['result']; $agi->verbose("Spoof Number:".$spoofnumber); //streamfile that says "enter number to call" $agi->stream_file('call_spoof'); //beep then get the resulting 10 digits - set it to callnumber $result = $agi->get_data('beep', 3000, 10); $callnumber= $result['result']; $agi->verbose("Number to call:".$callnumber); // set caller id to the spoofnumber $agi->set_callerid($spoofnumber); //call the number using whatever you got //notice i have placed the 1 before the callnumber. this is so that i can keep everything ten digits. and cuz i am lazy $agi->exec("Dial IAX2/yourpassword@provider/1".$callnumber); // That is it. simple.. scary and easy ?>