diff --git a/openvidu-browser/src/OpenVidu/OpenVidu.ts b/openvidu-browser/src/OpenVidu/OpenVidu.ts index c75ee113..cdbf67ce 100644 --- a/openvidu-browser/src/OpenVidu/OpenVidu.ts +++ b/openvidu-browser/src/OpenVidu/OpenVidu.ts @@ -59,7 +59,7 @@ export class OpenVidu { /** * @hidden */ - turnCredentials: RTCIceServer; + iceServers: RTCIceServer[]; /** * @hidden */ diff --git a/openvidu-browser/src/OpenVidu/Session.ts b/openvidu-browser/src/OpenVidu/Session.ts index d24f2eaf..aadda643 100644 --- a/openvidu-browser/src/OpenVidu/Session.ts +++ b/openvidu-browser/src/OpenVidu/Session.ts @@ -945,9 +945,13 @@ export class Session implements EventDispatcher { this.openvidu.recorder = true; } if (!!turnUsername && !!turnCredential) { + const stunUrl = 'stun:' + url.hostname + ':3478'; const turnUrl1 = 'turn:' + url.hostname + ':3478'; const turnUrl2 = turnUrl1 + '?transport=tcp'; - this.openvidu.turnCredentials = { urls: [turnUrl1, turnUrl2], username: turnUsername, credential: turnCredential }; + this.openvidu.iceServers = [ + { urls: [stunUrl] }, + { urls: [turnUrl1, turnUrl2], username: turnUsername, credential: turnCredential } + ]; console.log('TURN temp credentials [' + turnUsername + ':' + turnCredential + ']') } if (!!role) { diff --git a/openvidu-browser/src/OpenVidu/Stream.ts b/openvidu-browser/src/OpenVidu/Stream.ts index fbbf45d0..2b716e85 100644 --- a/openvidu-browser/src/OpenVidu/Stream.ts +++ b/openvidu-browser/src/OpenVidu/Stream.ts @@ -530,8 +530,8 @@ export class Stream { returnValue = this.session.openvidu.advancedConfiguration.iceServers === 'freeice' ? undefined : this.session.openvidu.advancedConfiguration.iceServers; - } else if (this.session.openvidu.turnCredentials) { - returnValue = [this.session.openvidu.turnCredentials]; + } else if (this.session.openvidu.iceServers) { + returnValue = this.session.openvidu.iceServers; } else { returnValue = undefined; }