@whereby.com/media 8.0.10 → 8.1.0
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/index.cjs +43 -2
- package/dist/index.d.cts +11 -0
- package/dist/index.d.mts +11 -0
- package/dist/index.d.ts +11 -0
- package/dist/index.mjs +43 -2
- package/dist/legacy-esm.js +43 -2
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -1738,7 +1738,7 @@ const logger$8 = new Logger();
|
|
|
1738
1738
|
const CPU_OBSERVER_OPTIONS = {
|
|
1739
1739
|
sampleRate: 1,
|
|
1740
1740
|
};
|
|
1741
|
-
function startCpuObserver(cb, { sampleRate
|
|
1741
|
+
function startCpuObserver(cb, { sampleRate } = CPU_OBSERVER_OPTIONS, window = globalThis.window) {
|
|
1742
1742
|
var _a;
|
|
1743
1743
|
let pressureObserver;
|
|
1744
1744
|
if ("PressureObserver" in window &&
|
|
@@ -2509,6 +2509,8 @@ class P2pRtcManager {
|
|
|
2509
2509
|
P2PNonErrorRejectionValueGUMError: 0,
|
|
2510
2510
|
numNewPc: 0,
|
|
2511
2511
|
numIceConnected: 0,
|
|
2512
|
+
numIceDisconnected: 0,
|
|
2513
|
+
numIceFailed: 0,
|
|
2512
2514
|
numIceRestart: 0,
|
|
2513
2515
|
numIceNoPublicIpGathered: 0,
|
|
2514
2516
|
numIceNoPublicIpGatheredIn3sec: 0,
|
|
@@ -2990,6 +2992,7 @@ class P2pRtcManager {
|
|
|
2990
2992
|
break;
|
|
2991
2993
|
case "disconnected":
|
|
2992
2994
|
newStatus = TYPES.CONNECTION_DISCONNECTED;
|
|
2995
|
+
this.analytics.numIceDisconnected++;
|
|
2993
2996
|
setTimeout(() => {
|
|
2994
2997
|
if (pc.iceConnectionState === "disconnected") {
|
|
2995
2998
|
this._maybeRestartIce(clientId, session);
|
|
@@ -2998,6 +3001,7 @@ class P2pRtcManager {
|
|
|
2998
3001
|
break;
|
|
2999
3002
|
case "failed":
|
|
3000
3003
|
newStatus = TYPES.CONNECTION_FAILED;
|
|
3004
|
+
this.analytics.numIceFailed++;
|
|
3001
3005
|
if (currentStatus !== newStatus) {
|
|
3002
3006
|
this._maybeRestartIce(clientId, session);
|
|
3003
3007
|
}
|
|
@@ -4412,8 +4416,17 @@ class VegaRtcManager {
|
|
|
4412
4416
|
vegaIceRestartWrongTransportId: 0,
|
|
4413
4417
|
vegaNonErrorRejectionValueGUMError: 0,
|
|
4414
4418
|
vegaReplaceTrackNoProducerNoEnabledTrack: 0,
|
|
4419
|
+
vegaMicProducerFailed: 0,
|
|
4420
|
+
vegaWebcamProducerFailed: 0,
|
|
4421
|
+
vegaConsumerCreationFailed: 0,
|
|
4422
|
+
vegaScreenVideoProducerFailed: 0,
|
|
4423
|
+
vegaScreenAudioProducerFailed: 0,
|
|
4415
4424
|
micTrackEndedCount: 0,
|
|
4416
4425
|
camTrackEndedCount: 0,
|
|
4426
|
+
numNewPc: 0,
|
|
4427
|
+
numIceConnected: 0,
|
|
4428
|
+
numIceDisconnected: 0,
|
|
4429
|
+
numIceFailed: 0,
|
|
4417
4430
|
};
|
|
4418
4431
|
}
|
|
4419
4432
|
_updateAndScheduleMediaServersRefresh({ iceServers, turnServers, sfuServer, mediaserverConfigTtlSeconds, }) {
|
|
@@ -4629,8 +4642,20 @@ class VegaRtcManager {
|
|
|
4629
4642
|
transportOptions.iceServers = turnServerOverride(this._features.turnServersOn ? this._turnServers : this._iceServers, this._features.turnServerOverrideHost);
|
|
4630
4643
|
maybeTurnOnly(transportOptions, this._features);
|
|
4631
4644
|
const transport = (_a = (yield this._mediasoupDeviceInitializedAsync)) === null || _a === void 0 ? void 0 : _a[creator](transportOptions);
|
|
4645
|
+
this.analytics.numNewPc++;
|
|
4632
4646
|
const onConnectionStateListener = (connectionState) => __awaiter(this, void 0, void 0, function* () {
|
|
4633
4647
|
logger$2.info(`Transport ConnectionStateChanged ${connectionState}`);
|
|
4648
|
+
switch (connectionState) {
|
|
4649
|
+
case "connected":
|
|
4650
|
+
this.analytics.numIceConnected++;
|
|
4651
|
+
break;
|
|
4652
|
+
case "disconnected":
|
|
4653
|
+
this.analytics.numIceDisconnected++;
|
|
4654
|
+
break;
|
|
4655
|
+
case "failed":
|
|
4656
|
+
this.analytics.numIceFailed++;
|
|
4657
|
+
break;
|
|
4658
|
+
}
|
|
4634
4659
|
if (connectionState !== "disconnected" && connectionState !== "failed") {
|
|
4635
4660
|
return;
|
|
4636
4661
|
}
|
|
@@ -4816,6 +4841,8 @@ class VegaRtcManager {
|
|
|
4816
4841
|
this._pauseResumeMic();
|
|
4817
4842
|
}
|
|
4818
4843
|
catch (error) {
|
|
4844
|
+
this.analytics.vegaMicProducerFailed++;
|
|
4845
|
+
rtcStats.sendEvent("VegaMicProducerFailed", { error });
|
|
4819
4846
|
logger$2.error("micProducer failed:%o", error);
|
|
4820
4847
|
}
|
|
4821
4848
|
finally {
|
|
@@ -5013,6 +5040,8 @@ class VegaRtcManager {
|
|
|
5013
5040
|
this._pauseResumeWebcam();
|
|
5014
5041
|
}
|
|
5015
5042
|
catch (error) {
|
|
5043
|
+
this.analytics.vegaWebcamProducerFailed++;
|
|
5044
|
+
rtcStats.sendEvent("VegaWebcamProducerFailed", { error });
|
|
5016
5045
|
logger$2.error("webcamProducer failed:%o", error);
|
|
5017
5046
|
}
|
|
5018
5047
|
finally {
|
|
@@ -5116,6 +5145,8 @@ class VegaRtcManager {
|
|
|
5116
5145
|
yield this._replaceScreenVideoTrack();
|
|
5117
5146
|
}
|
|
5118
5147
|
catch (error) {
|
|
5148
|
+
this.analytics.vegaScreenVideoProducerFailed++;
|
|
5149
|
+
rtcStats.sendEvent("VegaScreenVideoProducerFailed", { error });
|
|
5119
5150
|
logger$2.error("screenVideoProducer failed:%o", error);
|
|
5120
5151
|
}
|
|
5121
5152
|
finally {
|
|
@@ -5184,6 +5215,8 @@ class VegaRtcManager {
|
|
|
5184
5215
|
yield this._replaceScreenAudioTrack();
|
|
5185
5216
|
}
|
|
5186
5217
|
catch (error) {
|
|
5218
|
+
this.analytics.vegaScreenAudioProducerFailed++;
|
|
5219
|
+
rtcStats.sendEvent("VegaScreenAudioProducerFailed", { error });
|
|
5187
5220
|
logger$2.error("screenAudioProducer failed:%o", error);
|
|
5188
5221
|
}
|
|
5189
5222
|
finally {
|
|
@@ -5592,7 +5625,15 @@ class VegaRtcManager {
|
|
|
5592
5625
|
_onConsumerReady(options) {
|
|
5593
5626
|
return __awaiter(this, void 0, void 0, function* () {
|
|
5594
5627
|
logger$2.info("_onConsumerReady()", { id: options.id, producerId: options.producerId });
|
|
5595
|
-
|
|
5628
|
+
let consumer;
|
|
5629
|
+
try {
|
|
5630
|
+
consumer = yield this._receiveTransport.consume(options);
|
|
5631
|
+
}
|
|
5632
|
+
catch (error) {
|
|
5633
|
+
this.analytics.vegaConsumerCreationFailed++;
|
|
5634
|
+
rtcStats.sendEvent("VegaConsumerCreationFailed", { producerId: options.producerId, error });
|
|
5635
|
+
throw error;
|
|
5636
|
+
}
|
|
5596
5637
|
consumer.pause();
|
|
5597
5638
|
consumer.appData.localPaused = true;
|
|
5598
5639
|
consumer.appData.spatialLayer = 2;
|
package/dist/index.d.cts
CHANGED
|
@@ -396,8 +396,17 @@ type VegaAnalytics = {
|
|
|
396
396
|
vegaIceRestartWrongTransportId: number;
|
|
397
397
|
vegaNonErrorRejectionValueGUMError: number;
|
|
398
398
|
vegaReplaceTrackNoProducerNoEnabledTrack: number;
|
|
399
|
+
vegaMicProducerFailed: number;
|
|
400
|
+
vegaWebcamProducerFailed: number;
|
|
401
|
+
vegaScreenVideoProducerFailed: number;
|
|
402
|
+
vegaScreenAudioProducerFailed: number;
|
|
403
|
+
vegaConsumerCreationFailed: number;
|
|
399
404
|
micTrackEndedCount: number;
|
|
400
405
|
camTrackEndedCount: number;
|
|
406
|
+
numNewPc: number;
|
|
407
|
+
numIceConnected: number;
|
|
408
|
+
numIceDisconnected: number;
|
|
409
|
+
numIceFailed: number;
|
|
401
410
|
};
|
|
402
411
|
|
|
403
412
|
type VegaAnalyticMetric = keyof VegaAnalytics;
|
|
@@ -1308,6 +1317,8 @@ type P2PAnalytics = {
|
|
|
1308
1317
|
P2PNonErrorRejectionValueGUMError: number;
|
|
1309
1318
|
numNewPc: number;
|
|
1310
1319
|
numIceConnected: number;
|
|
1320
|
+
numIceDisconnected: number;
|
|
1321
|
+
numIceFailed: number;
|
|
1311
1322
|
numIceRestart: number;
|
|
1312
1323
|
numIceNoPublicIpGathered: number;
|
|
1313
1324
|
numIceNoPublicIpGatheredIn3sec: number;
|
package/dist/index.d.mts
CHANGED
|
@@ -396,8 +396,17 @@ type VegaAnalytics = {
|
|
|
396
396
|
vegaIceRestartWrongTransportId: number;
|
|
397
397
|
vegaNonErrorRejectionValueGUMError: number;
|
|
398
398
|
vegaReplaceTrackNoProducerNoEnabledTrack: number;
|
|
399
|
+
vegaMicProducerFailed: number;
|
|
400
|
+
vegaWebcamProducerFailed: number;
|
|
401
|
+
vegaScreenVideoProducerFailed: number;
|
|
402
|
+
vegaScreenAudioProducerFailed: number;
|
|
403
|
+
vegaConsumerCreationFailed: number;
|
|
399
404
|
micTrackEndedCount: number;
|
|
400
405
|
camTrackEndedCount: number;
|
|
406
|
+
numNewPc: number;
|
|
407
|
+
numIceConnected: number;
|
|
408
|
+
numIceDisconnected: number;
|
|
409
|
+
numIceFailed: number;
|
|
401
410
|
};
|
|
402
411
|
|
|
403
412
|
type VegaAnalyticMetric = keyof VegaAnalytics;
|
|
@@ -1308,6 +1317,8 @@ type P2PAnalytics = {
|
|
|
1308
1317
|
P2PNonErrorRejectionValueGUMError: number;
|
|
1309
1318
|
numNewPc: number;
|
|
1310
1319
|
numIceConnected: number;
|
|
1320
|
+
numIceDisconnected: number;
|
|
1321
|
+
numIceFailed: number;
|
|
1311
1322
|
numIceRestart: number;
|
|
1312
1323
|
numIceNoPublicIpGathered: number;
|
|
1313
1324
|
numIceNoPublicIpGatheredIn3sec: number;
|
package/dist/index.d.ts
CHANGED
|
@@ -396,8 +396,17 @@ type VegaAnalytics = {
|
|
|
396
396
|
vegaIceRestartWrongTransportId: number;
|
|
397
397
|
vegaNonErrorRejectionValueGUMError: number;
|
|
398
398
|
vegaReplaceTrackNoProducerNoEnabledTrack: number;
|
|
399
|
+
vegaMicProducerFailed: number;
|
|
400
|
+
vegaWebcamProducerFailed: number;
|
|
401
|
+
vegaScreenVideoProducerFailed: number;
|
|
402
|
+
vegaScreenAudioProducerFailed: number;
|
|
403
|
+
vegaConsumerCreationFailed: number;
|
|
399
404
|
micTrackEndedCount: number;
|
|
400
405
|
camTrackEndedCount: number;
|
|
406
|
+
numNewPc: number;
|
|
407
|
+
numIceConnected: number;
|
|
408
|
+
numIceDisconnected: number;
|
|
409
|
+
numIceFailed: number;
|
|
401
410
|
};
|
|
402
411
|
|
|
403
412
|
type VegaAnalyticMetric = keyof VegaAnalytics;
|
|
@@ -1308,6 +1317,8 @@ type P2PAnalytics = {
|
|
|
1308
1317
|
P2PNonErrorRejectionValueGUMError: number;
|
|
1309
1318
|
numNewPc: number;
|
|
1310
1319
|
numIceConnected: number;
|
|
1320
|
+
numIceDisconnected: number;
|
|
1321
|
+
numIceFailed: number;
|
|
1311
1322
|
numIceRestart: number;
|
|
1312
1323
|
numIceNoPublicIpGathered: number;
|
|
1313
1324
|
numIceNoPublicIpGatheredIn3sec: number;
|
package/dist/index.mjs
CHANGED
|
@@ -1717,7 +1717,7 @@ const logger$8 = new Logger();
|
|
|
1717
1717
|
const CPU_OBSERVER_OPTIONS = {
|
|
1718
1718
|
sampleRate: 1,
|
|
1719
1719
|
};
|
|
1720
|
-
function startCpuObserver(cb, { sampleRate
|
|
1720
|
+
function startCpuObserver(cb, { sampleRate } = CPU_OBSERVER_OPTIONS, window = globalThis.window) {
|
|
1721
1721
|
var _a;
|
|
1722
1722
|
let pressureObserver;
|
|
1723
1723
|
if ("PressureObserver" in window &&
|
|
@@ -2488,6 +2488,8 @@ class P2pRtcManager {
|
|
|
2488
2488
|
P2PNonErrorRejectionValueGUMError: 0,
|
|
2489
2489
|
numNewPc: 0,
|
|
2490
2490
|
numIceConnected: 0,
|
|
2491
|
+
numIceDisconnected: 0,
|
|
2492
|
+
numIceFailed: 0,
|
|
2491
2493
|
numIceRestart: 0,
|
|
2492
2494
|
numIceNoPublicIpGathered: 0,
|
|
2493
2495
|
numIceNoPublicIpGatheredIn3sec: 0,
|
|
@@ -2969,6 +2971,7 @@ class P2pRtcManager {
|
|
|
2969
2971
|
break;
|
|
2970
2972
|
case "disconnected":
|
|
2971
2973
|
newStatus = TYPES.CONNECTION_DISCONNECTED;
|
|
2974
|
+
this.analytics.numIceDisconnected++;
|
|
2972
2975
|
setTimeout(() => {
|
|
2973
2976
|
if (pc.iceConnectionState === "disconnected") {
|
|
2974
2977
|
this._maybeRestartIce(clientId, session);
|
|
@@ -2977,6 +2980,7 @@ class P2pRtcManager {
|
|
|
2977
2980
|
break;
|
|
2978
2981
|
case "failed":
|
|
2979
2982
|
newStatus = TYPES.CONNECTION_FAILED;
|
|
2983
|
+
this.analytics.numIceFailed++;
|
|
2980
2984
|
if (currentStatus !== newStatus) {
|
|
2981
2985
|
this._maybeRestartIce(clientId, session);
|
|
2982
2986
|
}
|
|
@@ -4391,8 +4395,17 @@ class VegaRtcManager {
|
|
|
4391
4395
|
vegaIceRestartWrongTransportId: 0,
|
|
4392
4396
|
vegaNonErrorRejectionValueGUMError: 0,
|
|
4393
4397
|
vegaReplaceTrackNoProducerNoEnabledTrack: 0,
|
|
4398
|
+
vegaMicProducerFailed: 0,
|
|
4399
|
+
vegaWebcamProducerFailed: 0,
|
|
4400
|
+
vegaConsumerCreationFailed: 0,
|
|
4401
|
+
vegaScreenVideoProducerFailed: 0,
|
|
4402
|
+
vegaScreenAudioProducerFailed: 0,
|
|
4394
4403
|
micTrackEndedCount: 0,
|
|
4395
4404
|
camTrackEndedCount: 0,
|
|
4405
|
+
numNewPc: 0,
|
|
4406
|
+
numIceConnected: 0,
|
|
4407
|
+
numIceDisconnected: 0,
|
|
4408
|
+
numIceFailed: 0,
|
|
4396
4409
|
};
|
|
4397
4410
|
}
|
|
4398
4411
|
_updateAndScheduleMediaServersRefresh({ iceServers, turnServers, sfuServer, mediaserverConfigTtlSeconds, }) {
|
|
@@ -4608,8 +4621,20 @@ class VegaRtcManager {
|
|
|
4608
4621
|
transportOptions.iceServers = turnServerOverride(this._features.turnServersOn ? this._turnServers : this._iceServers, this._features.turnServerOverrideHost);
|
|
4609
4622
|
maybeTurnOnly(transportOptions, this._features);
|
|
4610
4623
|
const transport = (_a = (yield this._mediasoupDeviceInitializedAsync)) === null || _a === void 0 ? void 0 : _a[creator](transportOptions);
|
|
4624
|
+
this.analytics.numNewPc++;
|
|
4611
4625
|
const onConnectionStateListener = (connectionState) => __awaiter(this, void 0, void 0, function* () {
|
|
4612
4626
|
logger$2.info(`Transport ConnectionStateChanged ${connectionState}`);
|
|
4627
|
+
switch (connectionState) {
|
|
4628
|
+
case "connected":
|
|
4629
|
+
this.analytics.numIceConnected++;
|
|
4630
|
+
break;
|
|
4631
|
+
case "disconnected":
|
|
4632
|
+
this.analytics.numIceDisconnected++;
|
|
4633
|
+
break;
|
|
4634
|
+
case "failed":
|
|
4635
|
+
this.analytics.numIceFailed++;
|
|
4636
|
+
break;
|
|
4637
|
+
}
|
|
4613
4638
|
if (connectionState !== "disconnected" && connectionState !== "failed") {
|
|
4614
4639
|
return;
|
|
4615
4640
|
}
|
|
@@ -4795,6 +4820,8 @@ class VegaRtcManager {
|
|
|
4795
4820
|
this._pauseResumeMic();
|
|
4796
4821
|
}
|
|
4797
4822
|
catch (error) {
|
|
4823
|
+
this.analytics.vegaMicProducerFailed++;
|
|
4824
|
+
rtcStats.sendEvent("VegaMicProducerFailed", { error });
|
|
4798
4825
|
logger$2.error("micProducer failed:%o", error);
|
|
4799
4826
|
}
|
|
4800
4827
|
finally {
|
|
@@ -4992,6 +5019,8 @@ class VegaRtcManager {
|
|
|
4992
5019
|
this._pauseResumeWebcam();
|
|
4993
5020
|
}
|
|
4994
5021
|
catch (error) {
|
|
5022
|
+
this.analytics.vegaWebcamProducerFailed++;
|
|
5023
|
+
rtcStats.sendEvent("VegaWebcamProducerFailed", { error });
|
|
4995
5024
|
logger$2.error("webcamProducer failed:%o", error);
|
|
4996
5025
|
}
|
|
4997
5026
|
finally {
|
|
@@ -5095,6 +5124,8 @@ class VegaRtcManager {
|
|
|
5095
5124
|
yield this._replaceScreenVideoTrack();
|
|
5096
5125
|
}
|
|
5097
5126
|
catch (error) {
|
|
5127
|
+
this.analytics.vegaScreenVideoProducerFailed++;
|
|
5128
|
+
rtcStats.sendEvent("VegaScreenVideoProducerFailed", { error });
|
|
5098
5129
|
logger$2.error("screenVideoProducer failed:%o", error);
|
|
5099
5130
|
}
|
|
5100
5131
|
finally {
|
|
@@ -5163,6 +5194,8 @@ class VegaRtcManager {
|
|
|
5163
5194
|
yield this._replaceScreenAudioTrack();
|
|
5164
5195
|
}
|
|
5165
5196
|
catch (error) {
|
|
5197
|
+
this.analytics.vegaScreenAudioProducerFailed++;
|
|
5198
|
+
rtcStats.sendEvent("VegaScreenAudioProducerFailed", { error });
|
|
5166
5199
|
logger$2.error("screenAudioProducer failed:%o", error);
|
|
5167
5200
|
}
|
|
5168
5201
|
finally {
|
|
@@ -5571,7 +5604,15 @@ class VegaRtcManager {
|
|
|
5571
5604
|
_onConsumerReady(options) {
|
|
5572
5605
|
return __awaiter(this, void 0, void 0, function* () {
|
|
5573
5606
|
logger$2.info("_onConsumerReady()", { id: options.id, producerId: options.producerId });
|
|
5574
|
-
|
|
5607
|
+
let consumer;
|
|
5608
|
+
try {
|
|
5609
|
+
consumer = yield this._receiveTransport.consume(options);
|
|
5610
|
+
}
|
|
5611
|
+
catch (error) {
|
|
5612
|
+
this.analytics.vegaConsumerCreationFailed++;
|
|
5613
|
+
rtcStats.sendEvent("VegaConsumerCreationFailed", { producerId: options.producerId, error });
|
|
5614
|
+
throw error;
|
|
5615
|
+
}
|
|
5575
5616
|
consumer.pause();
|
|
5576
5617
|
consumer.appData.localPaused = true;
|
|
5577
5618
|
consumer.appData.spatialLayer = 2;
|
package/dist/legacy-esm.js
CHANGED
|
@@ -1717,7 +1717,7 @@ const logger$8 = new Logger();
|
|
|
1717
1717
|
const CPU_OBSERVER_OPTIONS = {
|
|
1718
1718
|
sampleRate: 1,
|
|
1719
1719
|
};
|
|
1720
|
-
function startCpuObserver(cb, { sampleRate
|
|
1720
|
+
function startCpuObserver(cb, { sampleRate } = CPU_OBSERVER_OPTIONS, window = globalThis.window) {
|
|
1721
1721
|
var _a;
|
|
1722
1722
|
let pressureObserver;
|
|
1723
1723
|
if ("PressureObserver" in window &&
|
|
@@ -2488,6 +2488,8 @@ class P2pRtcManager {
|
|
|
2488
2488
|
P2PNonErrorRejectionValueGUMError: 0,
|
|
2489
2489
|
numNewPc: 0,
|
|
2490
2490
|
numIceConnected: 0,
|
|
2491
|
+
numIceDisconnected: 0,
|
|
2492
|
+
numIceFailed: 0,
|
|
2491
2493
|
numIceRestart: 0,
|
|
2492
2494
|
numIceNoPublicIpGathered: 0,
|
|
2493
2495
|
numIceNoPublicIpGatheredIn3sec: 0,
|
|
@@ -2969,6 +2971,7 @@ class P2pRtcManager {
|
|
|
2969
2971
|
break;
|
|
2970
2972
|
case "disconnected":
|
|
2971
2973
|
newStatus = TYPES.CONNECTION_DISCONNECTED;
|
|
2974
|
+
this.analytics.numIceDisconnected++;
|
|
2972
2975
|
setTimeout(() => {
|
|
2973
2976
|
if (pc.iceConnectionState === "disconnected") {
|
|
2974
2977
|
this._maybeRestartIce(clientId, session);
|
|
@@ -2977,6 +2980,7 @@ class P2pRtcManager {
|
|
|
2977
2980
|
break;
|
|
2978
2981
|
case "failed":
|
|
2979
2982
|
newStatus = TYPES.CONNECTION_FAILED;
|
|
2983
|
+
this.analytics.numIceFailed++;
|
|
2980
2984
|
if (currentStatus !== newStatus) {
|
|
2981
2985
|
this._maybeRestartIce(clientId, session);
|
|
2982
2986
|
}
|
|
@@ -4391,8 +4395,17 @@ class VegaRtcManager {
|
|
|
4391
4395
|
vegaIceRestartWrongTransportId: 0,
|
|
4392
4396
|
vegaNonErrorRejectionValueGUMError: 0,
|
|
4393
4397
|
vegaReplaceTrackNoProducerNoEnabledTrack: 0,
|
|
4398
|
+
vegaMicProducerFailed: 0,
|
|
4399
|
+
vegaWebcamProducerFailed: 0,
|
|
4400
|
+
vegaConsumerCreationFailed: 0,
|
|
4401
|
+
vegaScreenVideoProducerFailed: 0,
|
|
4402
|
+
vegaScreenAudioProducerFailed: 0,
|
|
4394
4403
|
micTrackEndedCount: 0,
|
|
4395
4404
|
camTrackEndedCount: 0,
|
|
4405
|
+
numNewPc: 0,
|
|
4406
|
+
numIceConnected: 0,
|
|
4407
|
+
numIceDisconnected: 0,
|
|
4408
|
+
numIceFailed: 0,
|
|
4396
4409
|
};
|
|
4397
4410
|
}
|
|
4398
4411
|
_updateAndScheduleMediaServersRefresh({ iceServers, turnServers, sfuServer, mediaserverConfigTtlSeconds, }) {
|
|
@@ -4608,8 +4621,20 @@ class VegaRtcManager {
|
|
|
4608
4621
|
transportOptions.iceServers = turnServerOverride(this._features.turnServersOn ? this._turnServers : this._iceServers, this._features.turnServerOverrideHost);
|
|
4609
4622
|
maybeTurnOnly(transportOptions, this._features);
|
|
4610
4623
|
const transport = (_a = (yield this._mediasoupDeviceInitializedAsync)) === null || _a === void 0 ? void 0 : _a[creator](transportOptions);
|
|
4624
|
+
this.analytics.numNewPc++;
|
|
4611
4625
|
const onConnectionStateListener = (connectionState) => __awaiter(this, void 0, void 0, function* () {
|
|
4612
4626
|
logger$2.info(`Transport ConnectionStateChanged ${connectionState}`);
|
|
4627
|
+
switch (connectionState) {
|
|
4628
|
+
case "connected":
|
|
4629
|
+
this.analytics.numIceConnected++;
|
|
4630
|
+
break;
|
|
4631
|
+
case "disconnected":
|
|
4632
|
+
this.analytics.numIceDisconnected++;
|
|
4633
|
+
break;
|
|
4634
|
+
case "failed":
|
|
4635
|
+
this.analytics.numIceFailed++;
|
|
4636
|
+
break;
|
|
4637
|
+
}
|
|
4613
4638
|
if (connectionState !== "disconnected" && connectionState !== "failed") {
|
|
4614
4639
|
return;
|
|
4615
4640
|
}
|
|
@@ -4795,6 +4820,8 @@ class VegaRtcManager {
|
|
|
4795
4820
|
this._pauseResumeMic();
|
|
4796
4821
|
}
|
|
4797
4822
|
catch (error) {
|
|
4823
|
+
this.analytics.vegaMicProducerFailed++;
|
|
4824
|
+
rtcStats.sendEvent("VegaMicProducerFailed", { error });
|
|
4798
4825
|
logger$2.error("micProducer failed:%o", error);
|
|
4799
4826
|
}
|
|
4800
4827
|
finally {
|
|
@@ -4992,6 +5019,8 @@ class VegaRtcManager {
|
|
|
4992
5019
|
this._pauseResumeWebcam();
|
|
4993
5020
|
}
|
|
4994
5021
|
catch (error) {
|
|
5022
|
+
this.analytics.vegaWebcamProducerFailed++;
|
|
5023
|
+
rtcStats.sendEvent("VegaWebcamProducerFailed", { error });
|
|
4995
5024
|
logger$2.error("webcamProducer failed:%o", error);
|
|
4996
5025
|
}
|
|
4997
5026
|
finally {
|
|
@@ -5095,6 +5124,8 @@ class VegaRtcManager {
|
|
|
5095
5124
|
yield this._replaceScreenVideoTrack();
|
|
5096
5125
|
}
|
|
5097
5126
|
catch (error) {
|
|
5127
|
+
this.analytics.vegaScreenVideoProducerFailed++;
|
|
5128
|
+
rtcStats.sendEvent("VegaScreenVideoProducerFailed", { error });
|
|
5098
5129
|
logger$2.error("screenVideoProducer failed:%o", error);
|
|
5099
5130
|
}
|
|
5100
5131
|
finally {
|
|
@@ -5163,6 +5194,8 @@ class VegaRtcManager {
|
|
|
5163
5194
|
yield this._replaceScreenAudioTrack();
|
|
5164
5195
|
}
|
|
5165
5196
|
catch (error) {
|
|
5197
|
+
this.analytics.vegaScreenAudioProducerFailed++;
|
|
5198
|
+
rtcStats.sendEvent("VegaScreenAudioProducerFailed", { error });
|
|
5166
5199
|
logger$2.error("screenAudioProducer failed:%o", error);
|
|
5167
5200
|
}
|
|
5168
5201
|
finally {
|
|
@@ -5571,7 +5604,15 @@ class VegaRtcManager {
|
|
|
5571
5604
|
_onConsumerReady(options) {
|
|
5572
5605
|
return __awaiter(this, void 0, void 0, function* () {
|
|
5573
5606
|
logger$2.info("_onConsumerReady()", { id: options.id, producerId: options.producerId });
|
|
5574
|
-
|
|
5607
|
+
let consumer;
|
|
5608
|
+
try {
|
|
5609
|
+
consumer = yield this._receiveTransport.consume(options);
|
|
5610
|
+
}
|
|
5611
|
+
catch (error) {
|
|
5612
|
+
this.analytics.vegaConsumerCreationFailed++;
|
|
5613
|
+
rtcStats.sendEvent("VegaConsumerCreationFailed", { producerId: options.producerId, error });
|
|
5614
|
+
throw error;
|
|
5615
|
+
}
|
|
5575
5616
|
consumer.pause();
|
|
5576
5617
|
consumer.appData.localPaused = true;
|
|
5577
5618
|
consumer.appData.spatialLayer = 2;
|