diff --git a/src/utils/ServerSocket.js b/src/utils/ServerSocket.js index 2e36b54..95f9f97 100644 --- a/src/utils/ServerSocket.js +++ b/src/utils/ServerSocket.js @@ -1,8 +1,10 @@ import { io } from "socket.io-client"; -import adapter from "webrtc-adapter"; +import adapterRaw from "webrtc-adapter"; import { ReconnectManager } from "./ReconnectManager"; import { PROTOCOL_RESPONSES } from "../model/protocol"; +const adapter = adapterRaw.default ?? adapterRaw; + const DEFAULT_SOCKET_PATH = "/protocol/socket.io/v4"; const NOOP_KEEPALIVE_INTERVAL = 2000; diff --git a/src/webrtc/P2pRtcManager.js b/src/webrtc/P2pRtcManager.js index a9f3d8c..16046e5 100644 --- a/src/webrtc/P2pRtcManager.js +++ b/src/webrtc/P2pRtcManager.js @@ -9,7 +9,7 @@ import * as CONNECTION_STATUS from "../model/connectionStatusConstants"; import RtcStream from "../model/RtcStream"; import { getOptimalBitrate } from "../utils/optimalBitrate"; import { setCodecPreferenceSDP, addAbsCaptureTimeExtMap } from "./sdpModifier"; -import adapter from "webrtc-adapter"; +import adapterRaw from "webrtc-adapter"; import ipRegex from "../utils/ipRegex"; import { Address6 } from "ip-address"; import checkIp from "check-ip"; @@ -17,6 +17,7 @@ import validate from "uuid-validate"; import rtcManagerEvents from "./rtcManagerEvents"; import Logger from "../utils/Logger"; +const adapter = adapterRaw.default ?? adapterRaw; // eslint-disable-line no-unused-vars const logger = new Logger(); const ICE_PUBLIC_IP_GATHERING_TIMEOUT = 3 * 1000; diff --git a/src/webrtc/Session.js b/src/webrtc/Session.js index 156826b..3370c4a 100644 --- a/src/webrtc/Session.js +++ b/src/webrtc/Session.js @@ -1,10 +1,11 @@ import * as sdpModifier from "./sdpModifier"; import * as statsHelper from "./statsHelper"; import { setVideoBandwidthUsingSetParameters } from "./rtcrtpsenderHelper"; -import adapter from "webrtc-adapter"; +import adapterRaw from "webrtc-adapter"; import { MAXIMUM_TURN_BANDWIDTH_UNLIMITED } from "./constants"; import Logger from "../utils/Logger"; +const adapter = adapterRaw.default ?? adapterRaw; const logger = new Logger(); export default class Session { diff --git a/src/webrtc/VegaRtcManager.js b/src/webrtc/VegaRtcManager.js index 1b5d3c1..e1fec76 100644 --- a/src/webrtc/VegaRtcManager.js +++ b/src/webrtc/VegaRtcManager.js @@ -4,19 +4,21 @@ import * as CONNECTION_STATUS from "../model/connectionStatusConstants"; import ServerSocket from "../utils/ServerSocket"; import rtcManagerEvents from "./rtcManagerEvents"; import rtcStats from "./rtcStatsService"; -import adapter from "webrtc-adapter"; +import adapterRaw from "webrtc-adapter"; import VegaConnection from "./VegaConnection"; import { getMediaSettings, modifyMediaCapabilities } from "../utils/mediaSettings"; import { MEDIA_JITTER_BUFFER_TARGET } from "./constants"; import { getHandler } from "../utils/getHandler"; import assert from "../utils/assert"; -import { v4 as uuidv4 } from "uuid"; +import * as uuid from "uuid"; import createMicAnalyser from "./VegaMicAnalyser"; import { maybeTurnOnly } from "../utils/transportSettings"; import VegaMediaQualityMonitor from "./VegaMediaQualityMonitor"; import Logger from "../utils/Logger"; +const adapter = adapterRaw.default ?? adapterRaw; const logger = new Logger(); +const uuidv4 = uuid.default?.v4 ?? uuid.v4; const browserName = adapter.browserDetails.browser; let unloading = false; diff --git a/src/webrtc/bugDetector.js b/src/webrtc/bugDetector.js index 546b3e0..30e32c1 100644 --- a/src/webrtc/bugDetector.js +++ b/src/webrtc/bugDetector.js @@ -1,4 +1,6 @@ -import adapter from "webrtc-adapter"; +import adapterRaw from "webrtc-adapter"; + +const adapter = adapterRaw.default ?? adapterRaw; /** * Detect mic issue which seems to happen on OSX when the computer is woken up and sleeping diff --git a/src/webrtc/mediaConstraints.js b/src/webrtc/mediaConstraints.js index dee4d98..3130259 100644 --- a/src/webrtc/mediaConstraints.js +++ b/src/webrtc/mediaConstraints.js @@ -1,4 +1,6 @@ -import adapter from "webrtc-adapter"; +import adapterRaw from "webrtc-adapter"; + +const adapter = adapterRaw.default ?? adapterRaw; const isSafari = adapter.browserDetails.browser === "safari"; diff --git a/src/webrtc/rtcStatsService.js b/src/webrtc/rtcStatsService.js index 2a7f373..780e970 100644 --- a/src/webrtc/rtcStatsService.js +++ b/src/webrtc/rtcStatsService.js @@ -1,7 +1,10 @@ // ensure adapter is loaded first. -import adapter from "webrtc-adapter"; // eslint-disable-line no-unused-vars +import adapterRaw from "webrtc-adapter"; import rtcstats from "rtcstats"; -import { v4 as uuidv4 } from "uuid"; +import * as uuid from "uuid"; + +const adapter = adapterRaw.default ?? adapterRaw; // eslint-disable-line no-unused-vars +const uuidv4 = uuid.default?.v4 ?? uuid.v4; const RTCSTATS_PROTOCOL_VERSION = "1.0"; diff --git a/src/webrtc/sdpModifier.js b/src/webrtc/sdpModifier.js index 10903e9..bc65282 100644 --- a/src/webrtc/sdpModifier.js +++ b/src/webrtc/sdpModifier.js @@ -1,8 +1,9 @@ import SDPUtils from "sdp"; -import adapter from "webrtc-adapter"; +import adapterRaw from "webrtc-adapter"; import * as sdpTransform from "sdp-transform"; import Logger from "../utils/Logger"; +const adapter = adapterRaw.default ?? adapterRaw; const logger = new Logger(); const browserName = adapter.browserDetails.browser; diff --git a/tests/webrtc/RtcManagerDispatcher.spec.js b/tests/webrtc/RtcManagerDispatcher.spec.js index ab39f28..4a7711e 100644 --- a/tests/webrtc/RtcManagerDispatcher.spec.js +++ b/tests/webrtc/RtcManagerDispatcher.spec.js @@ -7,7 +7,9 @@ import * as mediasoupClient from "mediasoup-client"; import { PROTOCOL_RESPONSES } from "../../src/model/protocol"; import * as CONNECTION_STATUS from "../../src/model/connectionStatusConstants"; import EventEmitter from "events"; -import { v4 as uuidv4 } from "uuid"; +import * as uuid from "uuid"; + +const uuidv4 = uuid.default?.v4 ?? uuid.v4; const originalMediasoupDevice = mediasoupClient.Device;