Twilio中的令牌过期

Twilio中的令牌过期,twilio,Twilio,我正在努力将一个软电话嵌入到一个网页中,该网页将进入Odoo(基于web的ERP系统)。它将允许员工拨打入站和出站电话 代币每小时过期一次。因此,这意味着用户必须每小时刷新一次页面。我可以进行http刷新,但如果用户在进行刷新时正在通话,则会中断通话 我们如何绕过这个问题,从而构建一个完全工作的拨号器 这里是Twilio福音传道者 我建议使用JavaScript执行一个异步HTTP请求,从服务器获取一个新令牌,然后用它更新客户端实例 希望这能有所帮助。这里又是一位Twilio福音传道者 实际上,

我正在努力将一个软电话嵌入到一个网页中,该网页将进入Odoo(基于web的ERP系统)。它将允许员工拨打入站和出站电话

代币每小时过期一次。因此,这意味着用户必须每小时刷新一次页面。我可以进行http刷新,但如果用户在进行刷新时正在通话,则会中断通话


我们如何绕过这个问题,从而构建一个完全工作的拨号器

这里是Twilio福音传道者

我建议使用JavaScript执行一个异步HTTP请求,从服务器获取一个新令牌,然后用它更新客户端实例


希望这能有所帮助。

这里又是一位Twilio福音传道者

实际上,你可以倾听声音。从:

.offline(处理程序(设备))

注册一个处理程序函数,以便在脱机事件发生时调用 解雇。当与Twilio的连接断开或 设备的功能令牌无效/过期。在这两种情况下 在某些情况下,设备无法接收传入连接或进行 传出连接。如果令牌在活动连接期间过期 将调用脱机事件处理程序,但不会调用连接 被终止。在这种情况下,你必须打电话 Twilio.Device.setup()在尝试或 正在接收下一个连接

所以你想要的是:

Twilio.Device.offline(function(device) {
  fetchTokenFromServer(function(token) {
    device.setup(token);
  });
});
其中,
fetchTokenFromServer
发出Devin在回答中建议的HTTP请求


让我知道这是否有帮助。

我刚刚遇到这个问题,希望我的解决方案能帮助您和其他人

我使用的是twilio.js v1.3,并尝试像@philnash推荐的那样实现我的
离线
回调,但不断收到错误
设备。安装程序不是一个函数
。然后,我尝试使用
Twilio.Device.setup(newToken)
,能够刷新功能令牌,但也出现了一个新错误:
无法读取未定义的属性“setToken”

我最终不得不使用twilio.jsV1.4来消除错误。我的工作解决方案如下所示:

Twilio.Device.offline(function(device) {
  $.ajax(urlToGetNewToken, type: 'get').done(function(newToken) {
    Twilio.Device.setup(newToken)
  })
})

在上面提到的fetchTokenFromServer函数中,我将回调python脚本以获取新的令牌。这样做,这个函数和我请求新令牌的方式是否可以公开访问?是什么阻止查看代码的人运行代码以从我的服务器获取新令牌?