Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/40.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js Twilio节点-浏览器到手机状态回调事件_Node.js_Twilio_Twilio Api - Fatal编程技术网

Node.js Twilio节点-浏览器到手机状态回调事件

Node.js Twilio节点-浏览器到手机状态回调事件,node.js,twilio,twilio-api,Node.js,Twilio,Twilio Api,当我从浏览器拨到电话时,我试图返回StatusCallback事件 当用户单击拨号浏览器时,我将向twilio发送以下响应: const dial = twiml.dial({ callerId: Meteor.settings.private.twilio.TWILIO_CALLER_ID, answerOnBridge: true, record: "record-from-answer-dual", StatusCallbackEvent: ["init

当我从浏览器拨到电话时,我试图返回StatusCallback事件

当用户单击拨号浏览器时,我将向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,也通过命令发送了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();
    }));
  });

我只收到<代码>已完成的<代码>事件,如何将其他状态设置为,以便我可以在响铃时显示响铃UI,并在回答时显示挂断按钮?

Twilio developer evangelist在此

在示例代码中,您没有包含
StatusCallback
的选项,因此Twilio没有要调用的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);