0

我正在尝试为使用 twilio 的朋友创建 POC。POC 由两部分组成

1

显示电话号码文本框 使用 Twilio 记录和转录呼叫号码 10 秒 在网页上显示转录和录音链接 结束

2

显示电话号码的文本框 使用 Twilio 的呼叫号码 收听数字 (DTMF) 在网页上显示按下的数字 End

我想我有#1,但我有点坚持#2。所以我有一个 webform proj,它有一个带有文本框的 webform 页面和一个调用 twillio 的提交按钮。

代码

 protected void btnSubmit2_Click(object sender, EventArgs e)

    {
        var twilio = new TwilioRestClient(AccountSid, AuthToken); 

        var options = new CallOptions();

        options.Url = "http://servername/TwilioHandler.ashx"; // this needs to get replaced by DB Public url

        options.From = "+17143505676"; // Number that its calling from

        options.To = txtBox2.Text; // Number that its calling to

        options.Record = true;

        var call = twilio.InitiateOutboundCall(options);
      
        if (call.RestException == null)
            lblStartTime.Text = string.Format("Started call: {0}", call.Sid);
        else
            lblEror.Text = string.Format("Error: {0}", call.RestException.Message);
    }

上面的代码基本上是打电话给我的手机。

TwilioHandler.ashx 代码

public void ProcessRequest(HttpContext context)
{
        context.Response.ContentType = "application/xml";

        TwilioResponse twiml = new TwilioResponse();
        twiml.Say("Hi Jeff Berney, Please enter something.");

        string digits = context.Request["Digits"] ?? String.Empty;
       
        if (digits == String.Empty)
        {
            twiml.BeginGather(new
            {
                action = "http://servername/Twilio.aspx",
                numDigits = "1",
                method = "GET"
            });
            twiml.Say("To check the status of an order, press one");
            twiml.Say("To receive automated status updates via text message, press two");
            twiml.Say("To speak with a customer service representative, press three");
            twiml.EndGather();
            twiml.Say("Goodbye");
            twiml.Hangup();
        }

        if (digits == "1")
            twiml.Redirect("Twilio.aspx?Digits=1", "GET");
            //twiml.Say("you pressed one");
        if (digits == "2")
            twiml.Redirect("Twilio.aspx?Digits=2", "GET");
           // twiml.Say("you pressed two");
        if (digits == "3")
            twiml.Redirect("Twilio.aspx?Digits=3", "GET");
            //twiml.Say("you pressed three");
        if (digits == "4")
            twiml.Redirect("Twilio.aspx?Digits=4", "GET");
            //twiml.Say("you pressed four");
        if (digits == "5")
            twiml.Redirect("Twilio.aspx?Digits=5", "GET");
            //twiml.Say("you pressed five");
   
        context.Response.Write(twiml.ToString());
    
    }

此代码侦听来自手机的用户输入并将其发送回 Twilio.aspx 页面。我的问题是我需要将该数字显示回 Twilio.aspx 页面......但我不能。我尝试刷新页面,但这不起作用。

任何指导都会有所帮助。

4

0 回答 0