Я пытаюсь найти IP-адрес клиента с помощью WebRT C, но в firefox я получаю эту ошибку:
Сбой ICE, сервер TURN неисправен, см. About: webrt c для более подробной информации
var myPeerConnection = window.RTCPeerConnection || window.mozRTCPeerConnection || window.webkitRTCPeerConnection;
var pc = new myPeerConnection({ iceServers: [
{ url: "turn:numb.viagenie.ca:3478", username: "my@gmail.com", "credential": "xxxxxx" },
{ urls: "stun:stun.l.google.com:19302" }
] }),
noop = function () { },
localIPs = {},
ipRegex = /([0-9]{1,3}(\.[0-9]{1,3}){3}|[a-f0-9]{1,4}(:[a-f0-9]{1,4}){7})/g,
key;
function ipIterate(ip) {
if (!localIPs[ip]) onNewIP(ip);
localIPs[ip] = true;
}
pc.createDataChannel("");
pc.createOffer(function (sdp) {
sdp.sdp.split('\n').forEach(function (line) {
if (line.indexOf('candidate') < 0) return;
line.match(ipRegex).forEach(ipIterate);
});
pc.setLocalDescription(sdp, noop, noop);
}, noop);
pc.onicecandidate = function (ice) {
if (!ice || !ice.candidate || !ice.candidate.candidate || !ice.candidate.candidate.match(ipRegex)) return;
ice.candidate.candidate.match(ipRegex).forEach(ipIterate);
};
войдите в систему: webrt c:
ICE Relay log
0,009 rtp host 3350409123 udp e6e7f092-e632-4986-97b2-90b20c3b15cd.local 59923 126 | 30 | 255 0,062 RTP srflx 842163049 UDP IP 59923 100 | 30 | 255 0,313 РТП реле 453802058 UDP IP 57652 2 | 30 | 255 0,313 Готово 0,315