diff --git a/app/custom/VideoConferenceClientImpl.tsx b/app/custom/VideoConferenceClientImpl.tsx index 9e74d4b..576db01 100644 --- a/app/custom/VideoConferenceClientImpl.tsx +++ b/app/custom/VideoConferenceClientImpl.tsx @@ -16,6 +16,7 @@ import { KeyboardShortcuts } from '@/lib/KeyboardShortcuts'; import { SettingsMenu } from '@/lib/SettingsMenu'; import { useSetupE2EE } from '@/lib/useSetupE2EE'; import { useLowCPUOptimizer } from '@/lib/usePerfomanceOptimiser'; +import { isMeetStaging } from '@/lib/client-utils'; export function VideoConferenceClientImpl(props: { liveKitUrl: string; @@ -43,7 +44,7 @@ export function VideoConferenceClientImpl(props: { worker, } : undefined, - singlePeerConnection: location.origin.startsWith('meet.staging.livekit.io'), + singlePeerConnection: isMeetStaging(), }; }, [e2eeEnabled, props.codec, keyProvider, worker]); diff --git a/app/rooms/[roomName]/PageClientImpl.tsx b/app/rooms/[roomName]/PageClientImpl.tsx index fa43801..adccf7b 100644 --- a/app/rooms/[roomName]/PageClientImpl.tsx +++ b/app/rooms/[roomName]/PageClientImpl.tsx @@ -1,7 +1,7 @@ 'use client'; import React from 'react'; -import { decodePassphrase } from '@/lib/client-utils'; +import { decodePassphrase, isMeetStaging } from '@/lib/client-utils'; import { DebugMode } from '@/lib/Debug'; import { KeyboardShortcuts } from '@/lib/KeyboardShortcuts'; import { RecordingIndicator } from '@/lib/RecordingIndicator'; @@ -129,7 +129,7 @@ function VideoConferenceComponent(props: { adaptiveStream: true, dynacast: true, e2ee: keyProvider && worker && e2eeEnabled ? { keyProvider, worker } : undefined, - singlePeerConnection: location.origin.startsWith('meet.staging.livekit.io'), + singlePeerConnection: isMeetStaging(), }; }, [props.userChoices, props.options.hq, props.options.codec]); diff --git a/lib/client-utils.ts b/lib/client-utils.ts index a742ae3..11ca60b 100644 --- a/lib/client-utils.ts +++ b/lib/client-utils.ts @@ -23,3 +23,7 @@ export function randomString(length: number): string { export function isLowPowerDevice() { return navigator.hardwareConcurrency < 6; } + +export function isMeetStaging() { + return new URL(location.origin).host === 'meet.staging.livekit.io'; +}