我的WebRTC配置中有多个转弯服务器:
iceServers: [
{
urls: 'turn:turn.example.com',
username: 'username',
credential: 'pass'
},
{
urls: 'turn:turn2.example.com',
username: 'username',
credential: 'pass'
}
]
当我启动WebRTC呼叫然后关闭turn.example.com
时,通信会冻结。 WebRTC似乎没有自动获取新的ICE候选人并恢复通话。
有没有办法使用第二台ICE服务器恢复/重新建立通信?
答案 0 :(得分:3)
您应该可以使用ICE重新启动来收集新的TURN候选人。要重新启动ICE,您需要执行另一个更改ICE用户名片段和密码的商品/答案交换。要触发此操作,您只需致电:
pc.createOffer({iceRestart: true})