2011-06-20 86 views
2

我計劃建立一個連續撥號twilio程序和到目前爲止,我的代碼一點點,我有點卡住....我應該怎麼做或者我可以做,使Twilio呼叫數字,如果這個數字犯規拿起調用數組中的下一個數字,如果數字犯規拿起電話另一號碼....twilio PHP的連續撥號

<?php 
    require "twilio.php"; 

    // initiate response library 
    $response = new Response(); 

    header("content-type: text/xml"); 
    echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"; 


$PhoneNumbers= array('4167841543','6478704858'); 



$variableToCall=$PhoneNumbers[0]; 

    if(($_REQUEST['DialStatus'] == "busy" || $_REQUEST['DialCallStatus'] == "no-answer" || $_REQUEST['DialCallStatus'] == "failed" || $_REQUEST['DialCallStatus'] == "canceled")) { 

     $variableToCall=$PhoneNumbers[1]; 

    } 




?> 


<Response> 
<Dial> <?php echo $variableToCall ?> </Dial> 

</Response> 

回答

2

要Twilio你需要同時發送Web服務請求盡其用(REST ),以及提供的網址,其Twilio將張貼到呼叫數據,並得到進一步的說明(TwiML)

你與REST初始呼叫。 http://www.twilio.com/docs/api/rest/making_calls。如果您需要稍後的電話才能等待最初的通話結束。然後,您的腳本將不得不等待完成第一個電話才能創建另一個電話。由於Twilio不能發表您的行書,你必須追蹤使用某種共享存儲機制的呼叫的狀態。

Twilio將張貼到您的呼叫請求提供的URL。該網址將有一個腳本,用於更新共享存儲中的通話狀態。您的其他腳本將檢查狀態並等待您的呼叫完成。

0

你也應該看看this example application更多細節上向外撥打電話。它說明了你需要採取的很多步驟。

1

如果我理解你的使用情況,直接,你正在尋找一個打電話的手機,直到超時,然後撥打另一個號碼,然後最後一個,你都存儲在你的PHP代碼中的數組最後一個號碼。

雖然你可以在會議上這樣做,我認爲你可能會發現執行通過使用calls-回調的說法更容易> create方法。例如,您目前使用的回調方法來引用我們的默認語音歡迎像這樣:

https://gist.github.com/1155487/919a93ed2ea9f5c8eb9f7cb75d99951f76430f2b

一個簡單的方法來傳遞你的腳本的當前索引會改變第三回調參數引用自己腳本:

https://gist.github.com/1155487/533223a4199dacc2dffff3bb5a6ceb107f94a697