2011-04-23 61 views
4

我正在使用twilio呼叫用戶,並且無法收集用戶輸入。最初的通話工作正常,但是當我按1或3時,似乎什麼也沒有發生,並且在3秒暫停後,它繼續前進。無法讓twilio聚攏工作

//This works fine, I can call and hear the options being read. 
<?php 
    header("content-type: text/xml"); 
    echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"; 
?> 
<Response> 
    <Gather action="https://mydomain.com/twilio/process_response.php" method="post" numDigits="1" timeout="3"> 
    <Say>I can hear this.</Say> 
    <Say>Press 1.</Say> 
    <Say>Press 3.</Say> 
    </Gather> 
<Say>It looks like you didn't select an option.</Say> 
</Response> 

響應 - https://mydomain.com/twilio/process_response.php

<?php 
header("content-type: text/xml"); 
echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"; 
?> 
<Response> 
<Say>I should hear this, but I dont...</Say> 
</Response> 

謝謝!

+1

? Google語音或Skype等一些服務不會很好地發送觸摸音。 – 2011-04-23 20:45:58

+0

嗨,謝謝你的回覆。我正在使用(comcast)陸線的無繩電話。我只是嘗試撥打手機,它完美地工作。它必須是無繩電話的東西。再次感謝! – Matt 2011-04-24 02:41:43

回答

3

這個問題是由我用來測試不識別輸入的無繩電話造成的。換手機「解決」了這個問題。

1

'action'屬性採用絕對或相對URL作爲值。

從查看他們的文檔看來,action屬性只能包含「/page.php」或「page.php」。您需要刪除協議和主機部分。所以:

<Gather action="/twilio/process_response.php" method="post" numDigits="1" timeout="3"> 
+0

您可以使用完整的URL沒有問題。 – 2011-04-23 20:45:10

+0

感謝您的回覆。我嘗試了所有可能的網址,因此我不確定它與操作有關。 – Matt 2011-04-24 02:28:01

3

<Gather>通過收聽您的手機或設備產生的聲音DTMF來工作。事情會讓你很難聽到另一端的人說什麼也會使Twilio很難識別DTMF音。手機接收不良,背景噪音過大,或者有很多靜電的連接都可能使<Gather>難以識別數字按鍵。

此外,VoIP電話可以安裝非標準的DTMF音調作爲默認設置,Twilio也很難識別。 VoIP電話也可能使用強大的壓縮功能,這可能會干擾DTMF。在任何一種情況下,諮詢手機的手冊或安裝手機的人通常都是下一步。

基於VoIP電話遇到問題的相同原因,基於瀏覽器或基於應用程序的VoIP(如Skype或Google Voice)有時也會出現<Gather>問題。

Twilio的<Gather>故障排除鏈接:http://www.twilio.com/docs/api/twiml/gather#troubleshooting

0

我都面臨着同樣的問題。
後來,我發現追加本次發行後消失finishOnKey
或者你在使用與測試任何其他「定製finishOnKey」