【问题标题】:nexmo: Dynamically generate NCCO for outbound callnexmo:为呼出动态生成 NCCO
【发布时间】:2018-07-02 14:42:06
【问题描述】:

我们正在使用出站语音 API。我们已成功设置应用程序并能够使用测试 NCCO 创建出站呼叫:https://developer.nexmo.com/ncco/tts.json 我们正在使用 NodeJS SDK。 但是,我们无法理解为什么必须通过 URL 访问 NCCO,而不是直接作为 JSON 对象提供。此外,我们正在使用语音 API 来验证我们服务中的用户帐户。用户注册我们的服务后,我们会为他们提供选择短信或电话来验证其帐户的选项。显然,每个用户都会在他们的 SMS/通话中收到一个不同的代码(例如 1234)。我们希望获得有关如何绕过 answer_url 字段并能够为每个用户提供不同的文本到语音文本的帮助。

简而言之,有没有一种方法可以代替通过公共 URL 向语音呼叫 API 提供静态 JSON 对象,而是提供动态生成的包含用户不同代码的 JSON 对象?

下面是nexmo节点方法生成外呼的示例:

nexmo.calls.create({ to: [{ type: 'phone', number: RECEIVING_NUMBER }], from: { type: "phone", number: NEXMO_VIRTUAL_NUMBER }, answer_url: ['https://developer.nexmo.com/ncco/tts.json'] }, (err, res) => { if(err) console.log(JSON.stringify(err,null,2)); else { console.log(res); } })

【问题讨论】:

    标签: node.js call vonage


    【解决方案1】:

    您可以构建返回 JSON 的 Nodejs api 并将其用作 answer_url。通过这种方式,您可以将查询参数发送到此 api 以制作动态 NCCO。

    示例:

    answer_url: ['https://example.com/answer?code=12345']

    app.get('/answer', function(req, res) {
    
      const ncco = [{
          'action': 'talk',
          'voiceName': 'Jennifer',
          'text': req.params.code
        }
      ];
      res.json(ncco);
      
    });

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-27
      • 2011-04-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多