livekit-client 2.20.1 → 2.20.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/livekit-client.e2ee.worker.js +1 -1
- package/dist/livekit-client.e2ee.worker.js.map +1 -1
- package/dist/livekit-client.e2ee.worker.mjs +33 -7
- package/dist/livekit-client.e2ee.worker.mjs.map +1 -1
- package/dist/livekit-client.esm.mjs +589 -163
- package/dist/livekit-client.esm.mjs.map +1 -1
- package/dist/livekit-client.fm.worker.js +1 -1
- package/dist/livekit-client.fm.worker.js.map +1 -1
- package/dist/livekit-client.fm.worker.mjs +33 -7
- package/dist/livekit-client.fm.worker.mjs.map +1 -1
- package/dist/livekit-client.umd.js +1 -1
- package/dist/livekit-client.umd.js.map +1 -1
- package/dist/src/api/SignalClient.d.ts.map +1 -1
- package/dist/src/logger.d.ts +3 -1
- package/dist/src/logger.d.ts.map +1 -1
- package/dist/src/room/PCTransport.d.ts +2 -0
- package/dist/src/room/PCTransport.d.ts.map +1 -1
- package/dist/src/room/PCTransportManager.d.ts +1 -0
- package/dist/src/room/PCTransportManager.d.ts.map +1 -1
- package/dist/src/room/RTCEngine.d.ts +45 -4
- package/dist/src/room/RTCEngine.d.ts.map +1 -1
- package/dist/src/room/RegionUrlProvider.d.ts.map +1 -1
- package/dist/src/room/Room.d.ts.map +1 -1
- package/dist/src/room/data-track/incoming/IncomingDataTrackManager.d.ts +7 -0
- package/dist/src/room/data-track/incoming/IncomingDataTrackManager.d.ts.map +1 -1
- package/dist/src/room/data-track/outgoing/OutgoingDataTrackManager.d.ts.map +1 -1
- package/dist/src/room/participant/LocalParticipant.d.ts.map +1 -1
- package/dist/src/room/participant/Participant.d.ts.map +1 -1
- package/dist/src/room/participant/publishUtils.d.ts +7 -0
- package/dist/src/room/participant/publishUtils.d.ts.map +1 -1
- package/dist/src/room/track/LocalAudioTrack.d.ts +1 -0
- package/dist/src/room/track/LocalAudioTrack.d.ts.map +1 -1
- package/dist/src/room/track/Track.d.ts.map +1 -1
- package/dist/src/room/track/options.d.ts +11 -1
- package/dist/src/room/track/options.d.ts.map +1 -1
- package/dist/src/test/signalToken.d.ts +26 -0
- package/dist/src/test/signalToken.d.ts.map +1 -0
- package/dist/src/utils/dataPacketBuffer.d.ts +18 -0
- package/dist/src/utils/dataPacketBuffer.d.ts.map +1 -1
- package/dist/ts4.2/logger.d.ts +3 -1
- package/dist/ts4.2/room/PCTransport.d.ts +2 -0
- package/dist/ts4.2/room/PCTransportManager.d.ts +1 -0
- package/dist/ts4.2/room/RTCEngine.d.ts +45 -4
- package/dist/ts4.2/room/data-track/incoming/IncomingDataTrackManager.d.ts +7 -0
- package/dist/ts4.2/room/participant/publishUtils.d.ts +7 -0
- package/dist/ts4.2/room/track/LocalAudioTrack.d.ts +1 -0
- package/dist/ts4.2/room/track/options.d.ts +11 -1
- package/dist/ts4.2/test/signalToken.d.ts +26 -0
- package/dist/ts4.2/utils/dataPacketBuffer.d.ts +18 -0
- package/package.json +7 -3
- package/src/api/SignalClient.e2e.test.ts +264 -0
- package/src/api/SignalClient.ts +34 -2
- package/src/logger.ts +2 -0
- package/src/room/PCTransport.ts +66 -31
- package/src/room/PCTransportManager.ts +10 -6
- package/src/room/RTCEngine.test.ts +275 -2
- package/src/room/RTCEngine.ts +276 -71
- package/src/room/RegionUrlProvider.ts +4 -2
- package/src/room/Room.ts +7 -1
- package/src/room/data-track/incoming/IncomingDataTrackManager.test.ts +303 -0
- package/src/room/data-track/incoming/IncomingDataTrackManager.ts +70 -8
- package/src/room/data-track/outgoing/OutgoingDataTrackManager.ts +2 -0
- package/src/room/errors.ts +4 -4
- package/src/room/participant/LocalParticipant.ts +16 -6
- package/src/room/participant/Participant.ts +5 -0
- package/src/room/participant/publishUtils.ts +14 -11
- package/src/room/track/LocalAudioTrack.ts +16 -0
- package/src/room/track/Track.ts +10 -6
- package/src/room/track/options.ts +11 -1
- package/src/test/signalServerSetup.ts +151 -0
- package/src/test/signalToken.ts +59 -0
- package/src/test/vitest-context.d.ts +10 -0
- package/src/utils/dataPacketBuffer.test.ts +100 -0
- package/src/utils/dataPacketBuffer.ts +46 -1
|
@@ -379,6 +379,8 @@ var LoggerNames;
|
|
|
379
379
|
LoggerNames["PCTransport"] = "livekit-pc-transport";
|
|
380
380
|
LoggerNames["E2EE"] = "lk-e2ee";
|
|
381
381
|
LoggerNames["DataTracks"] = "livekit-data-tracks";
|
|
382
|
+
LoggerNames["Region"] = "livekit-region";
|
|
383
|
+
LoggerNames["ICE"] = "livekit-ice";
|
|
382
384
|
})(LoggerNames || (LoggerNames = {}));
|
|
383
385
|
let livekitLogger = loglevelExports.getLogger(LoggerNames.Default);
|
|
384
386
|
Object.values(LoggerNames).map(name => loglevelExports.getLogger(name));
|
|
@@ -398,9 +400,27 @@ livekitLogger.setDefaultLevel(LogLevel.info);
|
|
|
398
400
|
function getLogger(name, ctxFn) {
|
|
399
401
|
const logger = loglevelExports.getLogger(name);
|
|
400
402
|
logger.setDefaultLevel(livekitLogger.getLevel());
|
|
401
|
-
{
|
|
403
|
+
if (!ctxFn) {
|
|
402
404
|
return logger;
|
|
403
405
|
}
|
|
406
|
+
return wrapWithContext(logger, ctxFn);
|
|
407
|
+
}
|
|
408
|
+
function wrapWithContext(base, ctxFn) {
|
|
409
|
+
// Resolve the underlying method on every call so that later
|
|
410
|
+
// setLogExtension installations (which replace the base logger's
|
|
411
|
+
// methods via loglevel's methodFactory) are picked up.
|
|
412
|
+
const wrap = method => (msg, extra) => {
|
|
413
|
+
const ctx = ctxFn();
|
|
414
|
+
const merged = ctx || extra ? Object.assign(Object.assign({}, ctx), extra) : undefined;
|
|
415
|
+
base[method](msg, merged);
|
|
416
|
+
};
|
|
417
|
+
const proxy = Object.create(base);
|
|
418
|
+
proxy.trace = wrap('trace');
|
|
419
|
+
proxy.debug = wrap('debug');
|
|
420
|
+
proxy.info = wrap('info');
|
|
421
|
+
proxy.warn = wrap('warn');
|
|
422
|
+
proxy.error = wrap('error');
|
|
423
|
+
return proxy;
|
|
404
424
|
}
|
|
405
425
|
const workerLogger = loglevelExports.getLogger(LoggerNames.E2EE);
|
|
406
426
|
|
|
@@ -5566,6 +5586,9 @@ class Track extends eventsExports.EventEmitter {
|
|
|
5566
5586
|
}
|
|
5567
5587
|
/** @internal */
|
|
5568
5588
|
setStreamState(value) {
|
|
5589
|
+
if (this._streamState !== value) {
|
|
5590
|
+
this.log.debug("stream state changed: ".concat(this._streamState, " -> ").concat(value));
|
|
5591
|
+
}
|
|
5569
5592
|
this._streamState = value;
|
|
5570
5593
|
}
|
|
5571
5594
|
constructor(mediaTrack, kind) {
|
|
@@ -5590,8 +5613,8 @@ class Track extends eventsExports.EventEmitter {
|
|
|
5590
5613
|
this.handleAppVisibilityChanged();
|
|
5591
5614
|
}
|
|
5592
5615
|
};
|
|
5593
|
-
this.log = getLogger((_a = loggerOptions.loggerName) !== null && _a !== void 0 ? _a : LoggerNames.Track);
|
|
5594
5616
|
this.loggerContextCb = loggerOptions.loggerContextCb;
|
|
5617
|
+
this.log = getLogger((_a = loggerOptions.loggerName) !== null && _a !== void 0 ? _a : LoggerNames.Track, () => this.logContext);
|
|
5595
5618
|
this.setMaxListeners(100);
|
|
5596
5619
|
this.kind = kind;
|
|
5597
5620
|
this._mediaStreamTrack = mediaTrack;
|
|
@@ -5659,9 +5682,11 @@ class Track extends eventsExports.EventEmitter {
|
|
|
5659
5682
|
this.emit(hasAudio ? TrackEvent.AudioPlaybackFailed : TrackEvent.VideoPlaybackFailed, e);
|
|
5660
5683
|
} else if (e.name === 'AbortError') {
|
|
5661
5684
|
// commonly triggered by another `play` request, only log for debugging purposes
|
|
5662
|
-
|
|
5685
|
+
this.log.debug("".concat(hasAudio ? 'audio' : 'video', " playback aborted, likely due to new play request"));
|
|
5663
5686
|
} else {
|
|
5664
|
-
|
|
5687
|
+
this.log.warn("could not playback ".concat(hasAudio ? 'audio' : 'video'), {
|
|
5688
|
+
error: e
|
|
5689
|
+
});
|
|
5665
5690
|
}
|
|
5666
5691
|
// If audio playback isn't allowed make sure we still play back the video
|
|
5667
5692
|
if (hasAudio && element && allMediaStreamTracks.some(tr => tr.kind === 'video') && e.name === 'NotAllowedError') {
|
|
@@ -5704,6 +5729,7 @@ class Track extends eventsExports.EventEmitter {
|
|
|
5704
5729
|
}
|
|
5705
5730
|
}
|
|
5706
5731
|
stop() {
|
|
5732
|
+
this.log.debug('stopping track');
|
|
5707
5733
|
this.stopMonitor();
|
|
5708
5734
|
this._mediaStreamTrack.stop();
|
|
5709
5735
|
}
|
|
@@ -5724,12 +5750,12 @@ class Track extends eventsExports.EventEmitter {
|
|
|
5724
5750
|
}
|
|
5725
5751
|
/** @internal */
|
|
5726
5752
|
updateLoggerOptions(loggerOptions) {
|
|
5727
|
-
if (loggerOptions.loggerName) {
|
|
5728
|
-
this.log = getLogger(loggerOptions.loggerName);
|
|
5729
|
-
}
|
|
5730
5753
|
if (loggerOptions.loggerContextCb) {
|
|
5731
5754
|
this.loggerContextCb = loggerOptions.loggerContextCb;
|
|
5732
5755
|
}
|
|
5756
|
+
if (loggerOptions.loggerName) {
|
|
5757
|
+
this.log = getLogger(loggerOptions.loggerName, () => this.logContext);
|
|
5758
|
+
}
|
|
5733
5759
|
}
|
|
5734
5760
|
recycleElement(element) {
|
|
5735
5761
|
if (element instanceof HTMLAudioElement) {
|