diff --git a/frontend/app/components/Session/LivePlayer.js b/frontend/app/components/Session/LivePlayer.js index cf10dfbea..2a0b8cae0 100644 --- a/frontend/app/components/Session/LivePlayer.js +++ b/frontend/app/components/Session/LivePlayer.js @@ -30,9 +30,9 @@ const InitLoader = connectPlayer(state => ({ }))(Loader); -function WebPlayer ({ showAssist, session, toggleFullscreen, closeBottomBlock, live, fullscreen, jwt }) { +function WebPlayer ({ showAssist, session, toggleFullscreen, closeBottomBlock, live, fullscreen, jwt, iceServers }) { useEffect(() => { - initPlayer(session, jwt); + initPlayer(session, jwt, iceServers); return () => cleanPlayer() }, [ session.sessionId ]); @@ -59,6 +59,7 @@ export default connect(state => ({ session: state.getIn([ 'sessions', 'current' ]), showAssist: state.getIn([ 'sessions', 'showChatWindow' ]), jwt: state.get('jwt'), + iceServers: state.getIn([ 'user', 'account', 'iceServers' ]), fullscreen: state.getIn([ 'components', 'player', 'fullscreen' ]), }), { toggleFullscreen, diff --git a/frontend/app/player/MessageDistributor/MessageDistributor.ts b/frontend/app/player/MessageDistributor/MessageDistributor.ts index e8d807593..5e64ed436 100644 --- a/frontend/app/player/MessageDistributor/MessageDistributor.ts +++ b/frontend/app/player/MessageDistributor/MessageDistributor.ts @@ -118,11 +118,11 @@ export default class MessageDistributor extends StatedScreen { private navigationStartOffset: number = 0; private lastMessageTime: number = 0; - constructor(private readonly session: any /*Session*/, jwt: string) { + constructor(private readonly session: any /*Session*/, jwt: string, config: string) { super(); this.pagesManager = new PagesManager(this, this.session.isMobile) this.mouseManager = new MouseManager(this); - this.assistManager = new AssistManager(session, this); + this.assistManager = new AssistManager(session, config, this); this.sessionStart = this.session.startedAt; diff --git a/frontend/app/player/MessageDistributor/managers/AssistManager.ts b/frontend/app/player/MessageDistributor/managers/AssistManager.ts index ce2934607..3e05ec7c2 100644 --- a/frontend/app/player/MessageDistributor/managers/AssistManager.ts +++ b/frontend/app/player/MessageDistributor/managers/AssistManager.ts @@ -117,7 +117,7 @@ function resolveCSS(baseURL: string, css: string): string { export default class AssistManager { - constructor(private session, private md: MessageDistributor) {} + constructor(private session, private config, private md: MessageDistributor) {} private setStatus(status: ConnectionStatus) { @@ -149,7 +149,7 @@ export default class AssistManager { this.setStatus(ConnectionStatus.Connecting) import('peerjs').then(({ default: Peer }) => { // @ts-ignore - const iceServers = iceServerConfigFromString(window.ENV.ICE_SERVERS); + const iceServers = iceServerConfigFromString(this.config); const _config = { // @ts-ignore host: new URL(window.ENV.API_EDP).host, diff --git a/frontend/app/types/account/account.js b/frontend/app/types/account/account.js index 2493a692d..3d9374fc1 100644 --- a/frontend/app/types/account/account.js +++ b/frontend/app/types/account/account.js @@ -13,6 +13,7 @@ export default Member.extend({ smtp: false, license: '', expirationDate: undefined, + iceServers: undefined }, { fromJS: ({ current = {}, ...account})=> ({ ...account,