@@ -2,11 +2,11 @@ import type { IRoom } from '@rocket.chat/core-typings';
22import type { StreamKeys , StreamNames , StreamerCallbackArgs } from '@rocket.chat/ddp-client' ;
33import { Emitter } from '@rocket.chat/emitter' ;
44import { GenericModal , imperativeModal } from '@rocket.chat/ui-client' ;
5- import { Meteor } from 'meteor/meteor' ;
65import { ReactiveVar } from 'meteor/reactive-var' ;
76
87import { ChromeScreenShare } from './screenShare' ;
98import { settings } from '../../../client/lib/settings' ;
9+ import { getUserId } from '../../../client/lib/user' ;
1010import { goToRoomById } from '../../../client/lib/utils/goToRoomById' ;
1111import { Subscriptions , Users } from '../../../client/stores' ;
1212import { sdk } from '../../utils/client/lib/SDKClient' ;
@@ -1035,31 +1035,28 @@ const WebRTC = new (class {
10351035 }
10361036 switch ( subscription . t ) {
10371037 case 'd' :
1038- enabled = settings . watch ( 'WebRTC_Enable_Direct' ) ?? false ;
1038+ enabled = settings . peek ( 'WebRTC_Enable_Direct' ) ?? false ;
10391039 break ;
10401040 case 'p' :
1041- enabled = settings . watch ( 'WebRTC_Enable_Private' ) ?? false ;
1041+ enabled = settings . peek ( 'WebRTC_Enable_Private' ) ?? false ;
10421042 break ;
10431043 case 'c' :
1044- enabled = settings . watch ( 'WebRTC_Enable_Channel' ) ?? false ;
1044+ enabled = settings . peek ( 'WebRTC_Enable_Channel' ) ?? false ;
10451045 break ;
10461046 case 'l' :
1047- enabled = settings . watch < string > ( 'Omnichannel_call_provider' ) === 'WebRTC' ;
1047+ enabled = settings . peek < string > ( 'Omnichannel_call_provider' ) === 'WebRTC' ;
10481048 }
10491049 } else {
1050- enabled = settings . watch < string > ( 'Omnichannel_call_provider' ) === 'WebRTC' ;
1050+ enabled = settings . peek < string > ( 'Omnichannel_call_provider' ) === 'WebRTC' ;
10511051 }
1052- enabled = enabled && ( settings . watch ( 'WebRTC_Enabled' ) ?? false ) ;
1052+ enabled = enabled && ( settings . peek ( 'WebRTC_Enabled' ) ?? false ) ;
10531053 if ( enabled === false ) {
10541054 return ;
10551055 }
10561056 if ( this . instancesByRoomId [ rid ] == null ) {
1057- let uid = Meteor . userId ( ) ! ;
1058- let autoAccept = false ;
1059- if ( visitorId ) {
1060- uid = visitorId ;
1061- autoAccept = true ;
1062- }
1057+ const uid = visitorId ?? getUserId ( ) ;
1058+ if ( ! uid ) return undefined ;
1059+ const autoAccept = ! ! visitorId ;
10631060 this . instancesByRoomId [ rid ] = new WebRTCClass ( uid , rid , autoAccept ) ;
10641061 }
10651062 return this . instancesByRoomId [ rid ] ;
0 commit comments