2015-08-26 91 views
0

我想在Twilio上實現以下,但不知道爲什麼我無法正確完成它。我從twilio.device.connect開始使用標準Twilio程序進行呼叫。通話開始後,我正在更新對新網址的通話,以便暫停通話。如何將暫掛Twilio呼叫

$client = new Services_Twilio($accountSid, $authToken); 
$call = $client->account->calls->get($call_sid); 
$call->update( 
    array( 
     "Url" => "http://localhost/voice.xml",    
     "Method" => "POST", 
    ) 
); 

現在在這裏,而不是讓最終用戶擱置它只是斷開通話,並在我身邊播放音樂。爲什麼會發生?

+0

爲什麼不使用TwiML?你也是通過JS客戶端發起呼叫嗎?如果是這樣,與此相關的應用程序應指向包含一些XML的端點,並在其中執行保留功能。 – ecorvo

+0

是的,這是我正在做的,但它只是斷開呼叫 – user3279694

+0

看看你的代碼不是TwiML,你使用的是REST API。你的TwiML在哪裏? – ecorvo

回答

0

Twilio福音傳教士在這裏。

我建議檢查是否是Twilio記錄任何錯誤:

https://www.twilio.com/user/account/monitor/alerts

如果你想重定向到Twilio「http://localhost」,那是行不通的,因爲Twilio顯然不知道如何到達在你自己的機器上運行的本地主機。

如果您想通過公共URL將您自己的本地計算機上運行的Web服務器公開到Internet,請查看名爲ngrok的真棒工具。

+0

不我不使用本地主機,它是公共網址,但是當我執行上面的代碼時,它開始爲我保存音樂,而不是最終用戶,並且對於最終用戶它只是斷開 – user3279694

0

的原因是,在你的 「http://localhost/voice.xml」文件<Play>標籤後.. 存在着被執行沒有進一步TwiML。

解決的辦法是將重定向回原來的狀態