twilio - Twilio Ougoing 语音呼叫:令牌不允许首次尝试拨出电话
问题描述
我最近开始遇到奇怪的行为,试图发起拨出电话浏览器 - > 电话。
每次我刷新浏览器时,我的初始调用都会Twilio.Device.connect(phonecallParams)
导致错误:
Received an error from the gateway: {code: 31002, connection: Connection, message: "Token does not allow outgoing calls."}
.
如果我再次调用Twilio.Device.connect(phonecallParams)
,它可以工作。
每个后续调用也有效。但是如果我刷新浏览器,那么第一次调用会再次失败。
它曾经第一次工作,每次。但我最后一次测试是在几周前。现在它第一次失败,每次。
第一个失败的电话:
- 我打电话给我的后端以获取令牌
- 我将令牌返回给 JS 方法
- 我打电话给 Twilio.Device.connect(phonecallParams)
- 我收到错误消息。
- 没有其他事情发生。没有尝试调用我的 TwiML 处理程序。
第二次成功调用:
- 我打电话给我的后端以获取令牌
- 我将令牌返回给 JS 方法
- 我打电话给 Twilio.Device.connect(phonecallParams)
- 我处理 TwiML 的后端方法被称为
- 发起呼叫。
在这两种情况下:
令牌构造与以相同方式创建令牌的相同方法相同(并且包括
new OutgoingClientScope(_twilioAccount.TwiMLApplicationSid)
)phonecallParams 是相同的
有人会知道会发生什么吗?
解决方案
好的,所以这原来是那些愚蠢的事情之一......
我在请求我的令牌后立即/过早地调用 Twilio.Device.connect() - 请求令牌的同一触发器也触发了 Twilio.Device.connect()。
我现在在我的页面加载时请求我的拨出电话令牌,并且当用户想要发起呼叫时,令牌已经完全设置,无论它需要在哪里。
推荐阅读
- omnet++ - OMNET++:无法将 openflow 扩展导入静脉
- c# - WebAPI 返回“堆栈不足,无法继续安全地执行程序。”
- python - 当我构建一个简单的模型时,在 keras 中引发了 InvalidArgumentError
- c# - 在文件返回类型的 MVC 操作中,文件下载在大约 1 分钟后停止
- asp.net-mvc - 如何在 MVC Razor 语法中设置默认图像
- php - 无法更改 WordPress 管理员邮件
- php - 测试文件下载,但禁止在命令行上输出文件内容
- c - 在附加字符串字符时添加随机值的字符指针
- hibernate-mapping - 应该使用什么类型的休眠映射
- encryption - 组策略在 Windows 中设置强密钥保护时,对 UI 提示有何影响?