使用Twilio从菜单中获取呼叫响应

时间:2013-09-16 16:58:46

标签: c# .net api twilio

我正在使用C#发送带有选项(Twimlet)的电话留言,供用户按1进行确认。如何从通话中获得响应?

代码在放置呼叫之前终止,我假设我需要使用呼叫sid查询twilio服务器?

static void Main(string[] args)
{
var twilio = new TwilioRestClient(AccountSid, AuthToken);
var options = new CallOptions();
options.Url = "http://twimlets.com/menu?Message=Please%20press%201%20to%20confirm%20or%20Press%202%20to%20cancel&Options%5B1%5D=http%3A%2F%2Ftwimlets.com%2Fmessage%3FMessage%255B0%255D%3DYou%2520have%2520confirmed%252C%2520Thank%2520you%2520good%2520bye.%26&Options%5B2%5D=http%3A%2F%2Ftwimlets.com%2Fmessage%3FMessage%255B0%255D%3DYou%2520have%2520selected%2520to%2520cancel.%2520Thank%2520you.%2520Good%2520bye%26&";
options.To = "+13105551212";
options.From = "+13105551213";
var call = twilio.InitiateOutboundCall(options);
Console.WriteLine(call.Sid);

1 个答案:

答案 0 :(得分:1)

为了响应来自通话的任何输入,您需要使用您控制下的网址。 Twimlets是预先定义的" apps"除了您在URL参数中指定的内容之外,您无法控制呼叫流程。

你现在已经终止的代码,因为它所做的就是向Twilio的服务器发出HTTP调用,告诉它启动呼叫,options.Url端点负责处理该呼叫。流。要编写自定义流,您需要创建一个公共URL,为期望的流返回TwiML

一旦你完成了这项工作,你就会使用<Gather>动词的url属性来指示应该发送关键新闻数据的位置。