【问题标题】:Twilio sends call completed status for all callsTwilio 发送所有呼叫的呼叫完成状态
【发布时间】:2020-03-20 06:04:25
【问题描述】:

我正在为 nodeJS 中的调用设置状态回调。我在电话号码配置中设置了“CALL STATUS CHANGES”来向我的节点发出 POST 请求。但 twilio 似乎正在发送所有呼叫的呼叫状态已完成,无论答案是“忙”、“未应答”还是“已完成”。

这是用于显示 Twilio 发送的呼叫状态的节点代码:

app.post("/status", (req, res) => {
  res.sendStatus(200);
  console.log(req.body);
});

忙音输出:

{
   ApiVersion: '2010-04-01',
   Called: '',
   CallStatus: 'completed',
   Duration: '15',
   From: 'client:AbrasiveHannahLiberty',
   CallDuration: '15',
   Direction: 'inbound',
   Timestamp: 'Fri, 20 Mar 2020 05:43:09 +0000',
   AccountSid: 'ACxxxxxxxx',
   CallbackSource: 'call-progress-events',
   ApplicationSid: 'APxxxxxxxx',
   Caller: 'client:AbrasiveHannahLiberty',
   SequenceNumber: '0',
   To: '',
   CallSid: 'CAxxxxxxxx'
 }

【问题讨论】:

    标签: node.js twilio twilio-api twilio-twiml twilio-programmable-voice


    【解决方案1】:

    Twilio 客户端调用有两个调用分支。当 Twilio 客户端发出出站呼叫时,这就是父分支。 Twilio 会自动应答该呼叫段,因此可以访问与您的语音请求 URL 关联的 TwiML,所有呼叫都将导致呼叫完成。

    一旦发出客户端调用,您定义的 TwiML 应用程序(并通过访问令牌传送给您的 Twilio 客户端)具有一个用于获取 TwiML 的请求 URL,因此 Twilio 知道如何处理该调用,例如,向公共交换电话网络 (PSTN),即子分支发出出站呼叫。

    请求 URL 中的 TwiML 应该使用带数字名词的 Dial 动词和 statusCallback URL 来获取您正在寻找的状态。

    TwiML™ Voice: Number

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-22
      • 1970-01-01
      • 2022-11-28
      • 2019-01-19
      相关资源
      最近更新 更多