Twilio节点 - 浏览器到电话状态验证事件



当我从浏览器拨打电话到电话时,我正试图恢复状态。

当用户单击浏览器中的拨号时,我将以下响应发送给Twilio:

  const dial = twiml.dial({
    callerId: Meteor.settings.private.twilio.TWILIO_CALLER_ID,
    answerOnBridge: true,
    record: "record-from-answer-dual",
    StatusCallbackEvent: ["initiated", "ringing", "answered", "completed"],
    StatusCallback,
    recordingStatusCallback: recordURLCallback,
  });
  dial.number(toNumber);

我都在Twilio控制台上注册了Webhook,并且还通过命令发送,但我没有收到"铃声",从Twilio

回答了"已回答"事件
   WebApp.connectHandlers.use("/twilio-status-callback", function( req, res, next ) {
     console.log('***status url callback***');
     var body = "";
     req.on('data', Meteor.bindEnvironment(function (data) {
       body += data;
     }));
     req.on('end', Meteor.bindEnvironment(function () {
      body = qs.parse(body)
      console.log(body);
      res.end();
    }));
  });

我只收到completed事件,如何获得其他状态,以便在回答时可以显示响铃UI?

twilio开发人员在这里。

在您的示例代码中,您不包含StatusCallback的选项,因此没有Webhook可以致电,只有recordingStatusCallback。另外,节点库实际上会将键中的键转换为较低的库,因此键应为 statusCallback。尝试将代码更新为这样的内容,并让我知道它的发展:

const dial = twiml.dial({
  callerId: Meteor.settings.private.twilio.TWILIO_CALLER_ID,
  answerOnBridge: true,
  record: "record-from-answer-dual",
  statusCallbackEvent: ["initiated", "ringing", "answered", "completed"],
  statusCallback: statusURLCallback,
  recordingStatusCallback: recordURLCallback,
});
dial.number(toNumber);

最新更新