javascript - 为什么更新多个 Twilio IPM channel 的消耗范围失败?

标签 javascript twilio

我的 web 应用程序中有几个开放的 Twilio IP Messaging channel 。然后我尝试使用 updateLastConsumedMessageIndex 依次更新多个开放 channel 的消耗范围。我通过处理 .then 来处理 updateLastConsumedMessageIndex 返回的 Promise,并且 then 处理程序中的 channel 数据表明请求未完成,因为 channel 的 lastConsumedMessageIndex 仍然是旧的。

可以通过递归调用 updateLastConsumedMessageIndex 直到消耗范围更新来解决此问题。 示例代码:

function updateChannelConsumptionHorizon (channel) {
  let lastMessageIndex = channel.messages[channel.messages.length - 1].index
  channel.updateLastConsumedMessageIndex(lastMessageIndex).then(channel => {
    if (channel.lastConsumedMessageIndex !== lastMessageIndex) {
      setTimeout(() => {
        updateChannelConsumptionHorizon(channel)
      }, 100)
    }
  })
}

有趣的事实是,第一次调用 updateChannelConclusionHorizo​​n 不需要多次尝试,而后续调用最多可尝试 60 次来更新消耗范围。

最佳答案

Twilio 限制消耗范围内的更新,默认情况下每 10 秒发送一次到服务器。使用REST API更新consumation_report_interval

关于javascript - 为什么更新多个 Twilio IPM channel 的消耗范围失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35494552/

相关文章:

php - 云驱动器与云文件(或者我们不应该打扰吗?)

javascript - 获取多个单选按钮集的单选按钮值

php - Twilio 客户端 DTMF 不工作

ios - CallKit 错误 com.apple.CallKit.error.requesttransaction 错误 7

node.js - 如何使用 sendgrid 转发彩信?

javascript - 请等待页面完全加载后才会加载内容

javascript - 在一个脚本中使用多个 page.open

django - 在django中通过短信重置密码

python - 如何在 Twilio API 中使用 python 在给定日期后检索 SMS 消息

javascript - 如何使用 React 在客户端向外部站点发出 AJAX GET 请求