使用IVR类型流重复语音中的自定义内容

时间:2015-01-12 21:52:12

标签: twilio twilio-click-to-call

我正在使用twilio进行调用。我正在使用ASP.NET MVC创建响应并收集输入

Q1:如何为动词

指定lang,voice,loop,pause属性等属性
 public ActionResult Welcome(string msg) {
  var response = new TwilioResponse();
  response.Say("This is a Sample Message");
  return TwiML(response);
 }

Q2:我正在使用Gather输入选项          a)按1重复该消息。          b)按2确认。          c)按3重复菜单选项      我无法找到将消息参数( msg )转发给“收集”操作的方法。

 public ActionResult WelcomeCall(string msg)      
 {
     var response = new TwilioResponse();
     response.BeginGather(new
        {
            action = "http://testurl.azurewebsites.net/Gather",
            Digits = "1"
        });
     response.Say(msg);
     response.Say("To repeat the message, press one");
     response.Say("To confirm, press two");
     response.Say("To repeat the menu options, press three");
     response.EndGather();
     return TwiML(response);
  }

  public ActionResult Gather(string Digits) 
  {
      var response = new TwilioResponse();
      if(Digits==1) 
      {
         response.Say(msg);
      }
      return TwiML(response);
   }

请您提供处理此案的方法。

1 个答案:

答案 0 :(得分:1)

Twilio传道者在这里。

Say方法(以及大多数TwiML方法)都有第二个参数,它采用匿名类型,允许您指定动词属性:

response.Say("This is a Sample Message", new { voice="alice", loop="2" } );

要将消息传递给Gather处理程序,您只需将其附加到操作URL:

response.BeginGather(new
{
    action = "http://testurl.azurewebsites.net/Gather?msg=" + msg,
    Digits = "1"
});
response.EndGather();

希望有所帮助。