if ($_POST['from'] && $_POST['to'])
{
$fromNumber = $_POST['from']; // the number of the caller
$toNumber = $_POST['to']; // the number on which the call was received on
if ($_POST['direction'] == "out")
{
$filename = "/tmp/$toNumber.txt";
$handle = fopen($filename, "r");
$caller_id = trim(fread($handle, filesize($filename)));
fclose($handle);
// Create new DOM Document for the response
$dom = new DOMDocument('1.0', 'UTF-8');
// Add response child
$response = $dom->createElement('Response');
$dom->appendChild($response);
// Add dial command as child in response
$dial = $dom->createElement('Dial');
// Create a new attribute for the callerId element
$callerId = $dom->createAttribute('callerId');
//$anonymous = $dom->createAttribute('anonymous');
$fromNumber = $caller_id;
// set callerId - you should change that to your desired number
$callerId->value = $fromNumber;
//$anonymous->value = 'true';
// Add a number target and append it to the dial command, we're calling '+49211000000' - you should maybe change that... ;-)
$number = $dom->createElement('Number',$toNumber);
$dial->appendChild($callerId);
//$dial->appendChild($anonymous);
$dial->appendChild($number);
$response->appendChild($dial);
header('Content-type: application/xml');
echo $dom->saveXML();
}
}
[outgoing]
exten => s,1,NoOp(Callerid(all) is ${CALLERID(all)})
exten => s,n,NoOp(Callerid(number) is ${CALLERID(number)})
exten => s,n,NoOp(REALCALLERIDNUM is ${REALCALLERIDNUM}
exten => s,n,NoOp(DIAL_NUMBER is ${DIAL_NUMBER})
exten => s,n,Set(TO=${DIAL_NUMBER})
exten => s,n,Set(FROM=${REALCALLERIDNUM})
exten => s,n,ExecIf($["${FROM}"=""]?Set(FROM=${CALLERID(number)}))
exten => s,n,ExecIf($["${TO:0:1}"="+"]?Set(TO=${TO:1}))
exten => s,n,ExecIf($["${TO:0:2}"="00"]?Set(TO=${TO:2}))
exten => s,n,ExecIf($["${TO:0:1}"="0"]?Set(TO=49${TO:1}))
exten => s,n,ExecIf($["${FROM:0:1}"="+"]?Set(FROM=${FROM:1}))
exten => s,n,ExecIf($["${FROM:0:2}"="00"]?Set(FROM=${FROM:2}))
exten => s,n,ExecIf($["${FROM:0:1}"="0"]?Set(FROM=49${FROM:1}))
exten => s,n,System(echo ${FROM} > /tmp/${TO}.txt)
exten => s,n,Dial(SIP/sipgate/00${TO},tT,60)