2016-02-16 63 views
0

我對Twilio相對較新,雖然它看起來像一個很棒的應用程序!Twilio出站呼叫將數據傳回網站.net

基本上我需要完成如下:

我有產生呼出,並提示此人的數字輸入.NET應用程序 - 如何獲得該輸入(當然只是數)回到我的.aspx頁面進一步處理它?例如,如果它表示「輸入你的年齡」,然後我想讓.aspx頁面在標籤中顯示其年齡。

我現在有一個發送網頁上的按鈕進入到運行twiml代碼ashx的文件,在

context.Response.Write(twiml.ToString()); 
    context.Response.End();` 

其結束,類型爲「text/xml」的

也許我很愚蠢,完全忽略了這一點,但我不能爲我的生活找出如何完成這一點。

非常感謝你提前!

西德妮

回答

0

Twilio開發者傳道這裏。

你在找什麼是Gather動詞。這樣你就可以獲得通話中輸入的數字。所以,當有電話打進來,例如,您可以返回TwiML這樣:

<?xml version="1.0" encoding="UTF-8"?> 
<Response> 
    <Gather timeout="10" finishOnKey="*"> 
     <Say>Please enter your pin number and then press star.</Say> 
    </Gather> 
</Response> 

如果你想要的信息到你的服務器,你可以使用動作這樣:

<?xml version="1.0" encoding="UTF-8"?> 
<Response> 
    <Gather action="/process_gather.aspx" method="GET"> 
     <Say> 
      Please enter your age and press star on your keypad. 
     </Say> 
    </Gather> 
    <Say>We didn't receive any input. Goodbye!</Say> 
</Response> 

Twilio會然後用這些數字向您的服務器發送POST請求,您可以隨心所欲地做任何事情。

生成TwiML在.NET MVC如下例如可以實現:

public ActionResult MainMenu() 
{ 
    var response = new TwilioResponse(); 

    response.BeginGather(new { 
    action = "/process_gather.aspx", numDigits = "2" }); 
    response.Say("Please enter your age"); 
    response.EndGather(); 
    response.Hangup(); 

    return TwiML(response); 
} 

而且,看看這個blog post閱讀有關呼叫使用Twilio在.NET中流動。

希望能對你有所幫助

+0

謝謝你的回答。我知道了,我把aspx頁面當作動作,當通話結束後,在我輸入要收集的數字後,它會掛起,但.aspx頁面不會刷新或任何東西。我如何確保/仔細檢查數據是否回到頁面並使其刷新? – blubberbo

+0

現在我擁有:twiml.BeginGather(new { action =「http://sydheller.com/default.aspx」, numDigits =「1」}); twiml.Say(「請輸入您的PIN碼」); twiml.EndGather(); twiml.Say(「Thank You」); twiml.Hangup(); – blubberbo

+0

我正在使用Webforms,但我想我可以切換到mvc,如果我不得不 – blubberbo