【问题标题】:How to use Twilio function to repeat the message?如何使用 Twilio 功能重复消息?
【发布时间】:2018-12-12 09:15:29
【问题描述】:

这是我的代码

exports.handler = function(context, event, callback) {
  let twiml = new Twilio.twiml.VoiceResponse();
  twiml.gather({ numdigit:"1", tiemout:"5"}).say("some message , press 9 to repeat");

  if(event.numdigit === 9)
  {
      twiml.repeat;
  }
  else if(event.numdigit != 9){
      twiml.say("soory");
  }
  callback(null, twiml);
};

我是 twilio 函数的新手。我浏览了文档,但找不到任何关于此的内容。

当我打电话给号码时被按下了

目前,如果我按了 9 以外的数字,那么也会播放相同的消息。如果我确实按了任何东西,那么它会变成“对不起”

任何人都可以提出解决方案

【问题讨论】:

    标签: javascript function twilio twilio-functions twilio-programmable-voice


    【解决方案1】:

    这里是 Twilio 开发者宣传员。

    这里可能令人困惑的是,作为调用的一部分,这个函数实际上被调用了两次。

    <Gather> 的工作方式如下:当用户输入数字时,Twilio 使用Digits 参数向<Gather> action attribute 或默认使用与当前响应相同的URL 发出新的HTTP 请求。在您的情况下,这意味着它将再次请求相同的 Twilio 函数。

    没有可重复的 TwiML,所以我们需要再说一遍。下面是一个示例,说明如何通过为初始请求和 Digits 参数不是“9”的任何请求返回相同的 TwiML:

    exports.handler = function(context, event, callback) {
      const message = "some message , press 9 to repeat";
      const gatherOptions = { numDigits:"1", timeout:"5"};
      let twiml = new Twilio.twiml.VoiceResponse();
    
      if (event.Digits) {
        if(event.Digits === '9') {
          twiml.gather(gatherOptions).say(message);
        } else {
          twiml.say("sorry");
        }
      } else {
        twiml.gather(gatherOptions).say(message);
      }
      callback(null, twiml);
    };
    

    如果有帮助,请告诉我。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-08-04
      • 2022-11-22
      • 1970-01-01
      • 2023-03-29
      相关资源
      最近更新 更多