2013-11-26 43 views
0

在我的應用程序中,我使用REST API創建了傳出調用。如何轉發撥出電話?

調用啓用了機器檢測功能,所以當檢測到機器應答時,我至少可以掛機。

問題是:我可以在這種情況下撥打另一個號碼而不用REST API創建新的呼叫嗎?我可以使用<Forward><Redirect>或類似的東西嗎?或者沒有辦法實現這一點,我需要創建另一個電話?

回答

2

Twilio在這裏的福音傳教士。首先,您可以通過[email protected]聯繫支持人員詢問Twilio的直接問題。

所以,這是一個相當複雜的問題。但恐怕答案是你不能。請允許我解釋一下:

如果您使用REST API進行出站呼叫,則有2個呼叫結束。第一個是您撥打的號碼(被叫方),第二個是充當您的主叫方的TwiML。你的來電者可能是一個機器人(使用<Say><Gather>等),或者可能是另一個號碼的<Dial>

如果您查看documentation,Twilio進行出站呼叫時,您使用ifMachine屬性來確定如何處理呼叫。然後,Twilio將向您發送一個額外的參數AnsweredBy,表明它是否是人類或電話答錄機。

此時,正在請求充當呼叫者的TwiML。你可以<Hangup>(或設置ifMachine=Hangup所以你won't be charged for this call)或選擇留言。

但我認爲你在這一點上要求做的是放下出站呼叫,然後撥打一個新的被叫給呼叫者。我的第一個想法是,沒有一個優雅的方式來解決這個問題,而無需進行新的出站呼叫。

需要記住的一點是,當Twilio請求TwiML時,它期望它爲被調用者(在這種情況下爲答案機)做些事情,如果您嘗試撥入另一個號碼,則最終會答案機連接到另一個號碼!

我認爲你最好的選擇是在TwiML中輸入<hangup>,並在此時從服務器發起一個新的呼出呼叫。

祝你好運!