我正在使用twilio製作調用篩選應用程序,我使用url屬性給出了被調用者選項,但我無法返回調用者觀點看法。我使用twilio上的url屬性後需要回到調用者的角度
<?php
header("content-type: text/xml");
echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n";
?>
<Response>
<Say>please hold while we locate mike</Say>
<Dial>
<Number url="hello-monkey-name.php">+12154678556</Number>
<Number url="hello-monkey-name.php">+12123645995</Number>
</Dial>
</Response>
url屬性將被調用者發送到「hello-monkey-name.php」,它給了他/她三個選項。
<?php
session_start();
$var_value = $_SESSION['RecordingUrl'];
// now greet the caller
header("content-type: text/xml");
echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n";
?>
<Response>
// <Play><?php echo $_REQUEST['RecordingUrl']; ?></Play>
<Say> is calling <Say/>
<Gather numDigits="1" action="hello-monkey-called.php" method="POST">
<Say>To accept the call, press 1. To send call to voicemail, press 2. to hangup, press 3</Say>
</Gather>
</Response>
一旦被叫按一個按鈕其發送到「HELLO-猴子called.php」,其中它收集數字,並決定什麼需要做的,我可以讓它來完成呼叫和掛斷呼叫,但是當我無法將其轉接到語音信箱SIP地址時。任何想法,我可以讓它回到調用者的角度繼承人編寫該部分,如果它有幫助。
<?php
// if the caller pressed anything but 1 or 2 send them back
if($_REQUEST['Digits'] != '1' and $_REQUEST['Digits'] != '2' and $_REQUEST['Digits'] != '3') {
header("Location: hello-monkey-name.php");
die;
}
header("content-type: text/xml");
echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n";
>
<Response>
<?php if ($_REQUEST['Digits'] == '1') { ?>
<?php } elseif ($_REQUEST['Digits'] == '2') { ?>
<Dial>
<Sip> [email protected] <Sip/>
<Dial/>
<?php } elseif ($_REQUEST['Digits'] == '3') { ?>
<Hangup/>
<?php } ?>
</Response>
謝謝。我仍然有問題。讓我重新說一句 - CALLER呼叫twilio號碼。 Twilio腳本調用CALLEE。 CALLEE點擊「2」將呼叫轉接至語音信箱。如果我發出「掛斷」命令,它會掛斷呼叫的兩端。我真的需要一個命令來掛斷CALLEE上的呼叫,並用新的DIAL命令重新將呼叫者指向語音郵件。任何幫助,將不勝感激。謝謝。 –
所以我認爲這有點複雜。我認爲在這種情況下,您最終必須做的是利用來實質上停放CALLER,同時通過使用REST API啓動出站呼叫來響鈴CALLEE。一旦CALLEE做出決定,您可以將它們轉儲到同一個會議中,讓CALLER和CALLEE相互通話,或者讓CALLEE掛斷,然後將CALLER重定向到SIP端點。 –
如果你走這條路線,你必須在最初連接時(在數據庫或其他類型的商店中)保存CALLERs callsid,這樣如果你最終需要將呼叫重定向到SIP端點。希望有所幫助。 –