Привет я в настоящее время работает видео чат с использованием WebRTC и у меня возникает ошибка, когда я пытаюсь использовать PeerConnection.updateIce(config)
это говоритНе удалось выполнить «updateIce» на «RTCPeerConnection»: Не удалось обновить ICE агента с заданной конфигурацией
Uncaught DOMException: Не удалось выполнить 'updateIce' в 'RTCPeerConnection': не удалось обновить агент ICE с заданной конфигурацией. по адресу: 1: 4
var ICE_config= {
'iceServers': [
{
'url': 'stun:stun.l.google.com:19302'
},
{
'url': 'turn:192.158.29.39:3478?transport=udp',
'credential': 'JZEOEt2V3Qb0y27GRntt2u2PAYA=',
'username': '28224511:1379330808'
},
{
'url': 'turn:192.158.29.39:3478?transport=tcp',
'credential': 'JZEOEt2V3Qb0y27GRntt2u2PAYA=',
'username': '28224511:1379330808'
}
]
}
var peerConnection = new RTCPeerConnection(ICE_config);
Я обновляю мои iceServers
var new_ICE_config= {
'iceServers': [
{
'url': 'stun:stun.l.google.com:19302'
},... and so on
]
}
peerConnection.updateIce(iceServers);
Почему происходит эта ошибка (с) я не передать правильный параметр для этой функции?
Причина, по которой я использую этот метод, заключается лишь в том, чтобы обновить ледяные серверы (серверы) вместо повторного установления нового однорангового соединения, что потребует много времени, потому что У меня есть функция повторного подключения видео или обновления, посмотрите здесь https://gyazo.com/e9c81fd0779aad22a19e37659b9abbe1, а ледяной сервер (ы), который я использую, имеет ограничение в 20 сек. (TTL), и предыдущий сервер льда истек. I также попробуйте PeerConnection.setConfiguration(), но он не выглядит как функция – Beginner
setConfiguration доступен только в Chrome 58 и далее, см. связанную проблему. До тех пор вам понадобится более длинный TTL для учетных данных. –
, так что это означает, что нет решения для этого, кроме поиска ледяного сервера (ов) с более длинным TTL. хорошо, потому что 'updateIce' никогда не был правильно реализован, а' setConfiguration' все еще находится на экспериментальном – Beginner