@observertc/observer-js 1.0.1-c2558cc.0 → 1.0.1-c9e7581.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/lib/ObservedCall.d.ts.map +1 -1
- package/lib/ObservedCall.js +13 -1
- package/lib/ObservedClient.d.ts +1 -0
- package/lib/ObservedClient.d.ts.map +1 -1
- package/lib/ObservedClient.js +75 -8
- package/lib/ObservedPeerConnection.d.ts +3 -0
- package/lib/ObservedPeerConnection.d.ts.map +1 -1
- package/lib/ObservedPeerConnection.js +3 -0
- package/lib/index.d.ts +1 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/schema/ClientEventTypes.d.ts +147 -79
- package/lib/schema/ClientEventTypes.d.ts.map +1 -1
- package/lib/schema/ClientEventTypes.js +5 -2
- package/package.json +1 -1
- package/src/ObservedCall.ts +12 -1
- package/src/ObservedClient.ts +77 -8
- package/src/ObservedPeerConnection.ts +4 -0
- package/src/index.ts +1 -1
- package/src/schema/ClientEventTypes.ts +187 -83
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ObservedCall.d.ts","sourceRoot":"","sources":["../src/ObservedCall.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ObservedCall.d.ts","sourceRoot":"","sources":["../src/ObservedCall.ts"],"names":[],"mappings":"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"}
|
package/lib/ObservedCall.js
CHANGED
|
@@ -104,7 +104,19 @@ class ObservedCall extends events_1.EventEmitter {
|
|
|
104
104
|
this.update(); // last update before closing
|
|
105
105
|
this.closed = true;
|
|
106
106
|
this.updater?.close();
|
|
107
|
-
|
|
107
|
+
let minSampleTimestamps;
|
|
108
|
+
let maxSampleTimestamps;
|
|
109
|
+
for (const client of this.observedClients.values()) {
|
|
110
|
+
client.close();
|
|
111
|
+
if (client.joinedAt)
|
|
112
|
+
minSampleTimestamps = Math.min(minSampleTimestamps ?? client.joinedAt, client.joinedAt);
|
|
113
|
+
if (client.leftAt)
|
|
114
|
+
maxSampleTimestamps = Math.max(maxSampleTimestamps ?? client.leftAt, client.leftAt);
|
|
115
|
+
}
|
|
116
|
+
if (this.startedAt === undefined)
|
|
117
|
+
this.startedAt = minSampleTimestamps;
|
|
118
|
+
if (this.endedAt === undefined)
|
|
119
|
+
this.endedAt = maxSampleTimestamps;
|
|
108
120
|
this.closedAt = Date.now();
|
|
109
121
|
this.emit('close');
|
|
110
122
|
}
|
package/lib/ObservedClient.d.ts
CHANGED
|
@@ -49,6 +49,7 @@ export declare class ObservedClient<AppData extends Record<string, unknown> = Re
|
|
|
49
49
|
joinedAt?: number;
|
|
50
50
|
leftAt?: number;
|
|
51
51
|
closedAt?: number;
|
|
52
|
+
lastSampleTimestamp?: number;
|
|
52
53
|
operationSystem?: MetaData.OperationSystem;
|
|
53
54
|
engine?: MetaData.Engine;
|
|
54
55
|
platform?: MetaData.Platform;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ObservedClient.d.ts","sourceRoot":"","sources":["../src/ObservedClient.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAGlE,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,YAAY,EAAwB,WAAW,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACpI,OAAO,KAAK,QAAQ,MAAM,0BAA0B,CAAC;AAErD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAIlD,MAAM,MAAM,sBAAsB,CAAC,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI;IACvG,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IAClC,MAAM,EAAE;QACP;YACC,MAAM,EAAE,YAAY,CAAC;YACrB,eAAe,EAAE,MAAM,CAAC;SACxB;KACD,CAAC;IACF,KAAK,EAAE,EAAE,CAAC;IACV,MAAM,EAAE,EAAE,CAAC;IACX,KAAK,EAAE,CAAC,WAAW,CAAC,CAAC;IACrB,QAAQ,EAAE,CAAC,cAAc,CAAC,CAAC;IAC3B,QAAQ,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAC9B,IAAI,EAAE,EAAE,CAAC;IACT,SAAS,EAAE,CAAC,OAAO,CAAC,CAAC;IACrB,cAAc,EAAE,CAAC,MAAM,CAAC,CAAC;IACzB,cAAc,EAAE,CAAC,aAAa,CAAC,CAAC;IAChC,WAAW,EAAE,CAAC,WAAW,CAAC,CAAC;IAE3B,iBAAiB,EAAE,CAAC,sBAAsB,CAAC,CAAC;CAC5C,CAAC;AAEF,MAAM,CAAC,OAAO,WAAW,cAAc;IACtC,EAAE,CAAC,CAAC,SAAS,MAAM,oBAAoB,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,oBAAoB,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,IAAI,CAAC;IAC/G,GAAG,CAAC,CAAC,SAAS,MAAM,oBAAoB,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,oBAAoB,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,IAAI,CAAC;IAChH,IAAI,CAAC,CAAC,SAAS,MAAM,oBAAoB,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,oBAAoB,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,IAAI,CAAC;IACjH,IAAI,CAAC,CAAC,SAAS,MAAM,oBAAoB,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC;CAChG;AAED,qBAAa,cAAc,CAAC,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAE,SAAQ,YAAY;
|
|
1
|
+
{"version":3,"file":"ObservedClient.d.ts","sourceRoot":"","sources":["../src/ObservedClient.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAGlE,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,YAAY,EAAwB,WAAW,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACpI,OAAO,KAAK,QAAQ,MAAM,0BAA0B,CAAC;AAErD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAIlD,MAAM,MAAM,sBAAsB,CAAC,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI;IACvG,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IAClC,MAAM,EAAE;QACP;YACC,MAAM,EAAE,YAAY,CAAC;YACrB,eAAe,EAAE,MAAM,CAAC;SACxB;KACD,CAAC;IACF,KAAK,EAAE,EAAE,CAAC;IACV,MAAM,EAAE,EAAE,CAAC;IACX,KAAK,EAAE,CAAC,WAAW,CAAC,CAAC;IACrB,QAAQ,EAAE,CAAC,cAAc,CAAC,CAAC;IAC3B,QAAQ,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAC9B,IAAI,EAAE,EAAE,CAAC;IACT,SAAS,EAAE,CAAC,OAAO,CAAC,CAAC;IACrB,cAAc,EAAE,CAAC,MAAM,CAAC,CAAC;IACzB,cAAc,EAAE,CAAC,aAAa,CAAC,CAAC;IAChC,WAAW,EAAE,CAAC,WAAW,CAAC,CAAC;IAE3B,iBAAiB,EAAE,CAAC,sBAAsB,CAAC,CAAC;CAC5C,CAAC;AAEF,MAAM,CAAC,OAAO,WAAW,cAAc;IACtC,EAAE,CAAC,CAAC,SAAS,MAAM,oBAAoB,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,oBAAoB,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,IAAI,CAAC;IAC/G,GAAG,CAAC,CAAC,SAAS,MAAM,oBAAoB,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,oBAAoB,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,IAAI,CAAC;IAChH,IAAI,CAAC,CAAC,SAAS,MAAM,oBAAoB,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,oBAAoB,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,IAAI,CAAC;IACjH,IAAI,CAAC,CAAC,SAAS,MAAM,oBAAoB,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC;CAChG;AAED,qBAAa,cAAc,CAAC,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAE,SAAQ,YAAY;aA+FpC,IAAI,EAAE,YAAY;IA9FhG,SAAgB,SAAS,EAAE,SAAS,CAAC;IAErC,SAAgB,QAAQ,EAAE,MAAM,CAAC;IACjC,SAAgB,uBAAuB,sCAA6C;IACpF,SAAgB,eAAe,EAAE,eAAe,CAG9C;IAEK,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEtC,OAAO,SAAc;IACrB,eAAe,SAAK;IACpB,MAAM,UAAS;IAEf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAE7B,eAAe,CAAC,EAAE,QAAQ,CAAC,eAAe,CAAC;IAC3C,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC;IAC7B,OAAO,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC;IAC3B,gBAAgB,EAAE,MAAM,EAAE,CAAM;IAEhC,SAAS,UAAS;IAClB,QAAQ,UAAS;IACjB,wBAAwB,SAAK;IAC7B,wBAAwB,SAAK;IAE7B,uBAAuB,SAAK;IAC5B,2BAA2B,SAAK;IAChC,wBAAwB,SAAK;IAC7B,yBAAyB,SAAK;IAC9B,6BAA6B,SAAK;IAClC,4BAA4B,SAAK;IACjC,gCAAgC,SAAK;IACrC,uBAAuB,SAAK;IAC5B,uBAAuB,SAAK;IAC5B,mBAAmB,SAAK;IACxB,mBAAmB,SAAK;IACxB,cAAc,SAAK;IACnB,kBAAkB,SAAK;IAEvB,uBAAuB,SAAK;IAC5B,uBAAuB,SAAK;IAC5B,mBAAmB,SAAK;IACxB,mBAAmB,SAAK;IACxB,yBAAyB,SAAK;IAC9B,6BAA6B,SAAK;IAClC,4BAA4B,SAAK;IACjC,gCAAgC,SAAK;IACrC,uBAAuB,SAAK;IAC5B,2BAA2B,SAAK;IAChC,wBAAwB,SAAK;IAC7B,uBAAuB,SAAK;IAC5B,2BAA2B,SAAK;IAChC,wBAAwB,SAAK;IAC7B,yBAAyB,SAAK;IAC9B,yBAAyB,SAAK;IAC9B,6BAA6B,SAAK;IAElC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,mBAAmB,SAAK;IACxB,mBAAmB,SAAK;IACxB,qBAAqB,SAAK;IAC1B,qBAAqB,SAAK;IAE1B,yBAAyB,SAAK;IAC9B,oBAAoB,SAAK;IACzB,0BAA0B,SAAK;IAC/B,sBAAsB,SAAK;IAC3B,oBAAoB,SAAK;IAEzB,wBAAwB,SAAK;IAC7B,yBAAyB,SAAK;IAC9B,yBAAyB,SAAK;IAC9B,6BAA6B,SAAK;IAClC,mBAAmB,SAAK;IAExB,aAAa,SAAK;IAClB,yBAAyB,SAAK;IAC9B,mBAAmB,SAAK;IAE/B,SAAgB,YAAY,EAAE,QAAQ,CAAC,eAAe,EAAE,CAAM;IACvD,MAAM,EAAE,WAAW,EAAE,CAAM;IAElC,OAAO,CAAC,WAAW,CAAkH;gBAElH,QAAQ,EAAE,sBAAsB,CAAC,OAAO,CAAC,EAAkB,IAAI,EAAE,YAAY;IAUhG,IAAW,uBAAuB,WAEjC;IAED,IAAW,KAAK,uBAEf;IAEM,KAAK;IAiBL,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI;IA6KzC,OAAO,CAAC,mBAAmB;IAoPpB,cAAc,CAAC,QAAQ,EAAE,cAAc;IAQvC,WAAW,CAAC,KAAK,EAAE,WAAW;IAQ9B,WAAW,CAAC,KAAK,EAAE,WAAW;IAQ9B,mBAAmB,CAAC,IAAI,EAAE,aAAa;IAQvC,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO;IAS5C,WAAW,CAAC,QAAQ,EAAE,cAAc;IAyBpC,QAAQ,CAAC,KAAK,EAAE,WAAW;IAO3B,iBAAiB,CAAC,KAAK,EAAE,aAAa;IAK7C,OAAO,CAAC,qBAAqB;IA0B7B,OAAO,CAAC,gBAAgB;CAwFxB"}
|
package/lib/ObservedClient.js
CHANGED
|
@@ -26,6 +26,7 @@ class ObservedClient extends events_1.EventEmitter {
|
|
|
26
26
|
joinedAt;
|
|
27
27
|
leftAt;
|
|
28
28
|
closedAt;
|
|
29
|
+
lastSampleTimestamp;
|
|
29
30
|
// the timestamp of the CLIENT_JOINED event
|
|
30
31
|
operationSystem;
|
|
31
32
|
engine;
|
|
@@ -108,6 +109,12 @@ class ObservedClient extends events_1.EventEmitter {
|
|
|
108
109
|
return;
|
|
109
110
|
this.closed = true;
|
|
110
111
|
Array.from(this.observedPeerConnections.values()).forEach((peerConnection) => peerConnection.close());
|
|
112
|
+
if (!this.leftAt) {
|
|
113
|
+
this.leftAt = this.lastSampleTimestamp;
|
|
114
|
+
if (this.leftAt) {
|
|
115
|
+
this.emit('left');
|
|
116
|
+
}
|
|
117
|
+
}
|
|
111
118
|
this.closedAt = Date.now();
|
|
112
119
|
this.emit('close');
|
|
113
120
|
}
|
|
@@ -248,6 +255,7 @@ class ObservedClient extends events_1.EventEmitter {
|
|
|
248
255
|
this.currentAvgRttInMs = 0 < numberOfRttMeasurements ? sumOfRtts / numberOfRttMeasurements : undefined;
|
|
249
256
|
this.calculatedScore.value = sample.score;
|
|
250
257
|
this.detectors.update();
|
|
258
|
+
this.lastSampleTimestamp = sample.timestamp;
|
|
251
259
|
// emit update
|
|
252
260
|
this.emit('update', {
|
|
253
261
|
sample,
|
|
@@ -278,6 +286,7 @@ class ObservedClient extends events_1.EventEmitter {
|
|
|
278
286
|
logger.warn(`Client ${this.clientId} joinedAt timestamp was updated to ${event.timestamp}. the joined event will not be emitted.`);
|
|
279
287
|
}
|
|
280
288
|
}
|
|
289
|
+
logger.debug('Client %s joined at %o', this.clientId, event);
|
|
281
290
|
break;
|
|
282
291
|
}
|
|
283
292
|
case ClientEventTypes_1.ClientEventTypes.CLIENT_LEFT: {
|
|
@@ -290,6 +299,7 @@ class ObservedClient extends events_1.EventEmitter {
|
|
|
290
299
|
logger.warn(`Client ${this.clientId} leftAt timestamp was already set`);
|
|
291
300
|
}
|
|
292
301
|
}
|
|
302
|
+
logger.debug('Client %s left at %o', this.clientId, event);
|
|
293
303
|
break;
|
|
294
304
|
}
|
|
295
305
|
case ClientEventTypes_1.ClientEventTypes.PEER_CONNECTION_OPENED: {
|
|
@@ -303,7 +313,7 @@ class ObservedClient extends events_1.EventEmitter {
|
|
|
303
313
|
postBuffer.push(event);
|
|
304
314
|
}
|
|
305
315
|
else {
|
|
306
|
-
logger.warn('Received PEER_CONNECTION_OPENED event without a corresponding observedPeerConnection', event);
|
|
316
|
+
logger.warn('Received PEER_CONNECTION_OPENED event without a corresponding observedPeerConnection: %o', event);
|
|
307
317
|
}
|
|
308
318
|
}
|
|
309
319
|
break;
|
|
@@ -319,7 +329,7 @@ class ObservedClient extends events_1.EventEmitter {
|
|
|
319
329
|
postBuffer.push(event);
|
|
320
330
|
}
|
|
321
331
|
else {
|
|
322
|
-
logger.warn('Received PEER_CONNECTION_CLOSED event without a corresponding observedPeerConnection', event);
|
|
332
|
+
logger.warn('Received PEER_CONNECTION_CLOSED event without a corresponding observedPeerConnection: %o', event);
|
|
323
333
|
}
|
|
324
334
|
}
|
|
325
335
|
break;
|
|
@@ -336,7 +346,7 @@ class ObservedClient extends events_1.EventEmitter {
|
|
|
336
346
|
postBuffer.push(event);
|
|
337
347
|
}
|
|
338
348
|
else {
|
|
339
|
-
logger.warn('Received MEDIA_TRACK_ADDED event without a corresponding observedPeerConnection or observedTrack', event);
|
|
349
|
+
logger.warn('Received MEDIA_TRACK_ADDED event without a corresponding observedPeerConnection or observedTrack: %o', event);
|
|
340
350
|
}
|
|
341
351
|
}
|
|
342
352
|
break;
|
|
@@ -353,7 +363,7 @@ class ObservedClient extends events_1.EventEmitter {
|
|
|
353
363
|
postBuffer.push(event);
|
|
354
364
|
}
|
|
355
365
|
else {
|
|
356
|
-
logger.warn('Received MEDIA_TRACK_REMOVED event without a corresponding observedPeerConnection or observedTrack', event);
|
|
366
|
+
logger.warn('Received MEDIA_TRACK_REMOVED event without a corresponding observedPeerConnection or observedTrack: %o', event);
|
|
357
367
|
}
|
|
358
368
|
}
|
|
359
369
|
break;
|
|
@@ -370,7 +380,7 @@ class ObservedClient extends events_1.EventEmitter {
|
|
|
370
380
|
postBuffer.push(event);
|
|
371
381
|
}
|
|
372
382
|
else {
|
|
373
|
-
logger.warn('Received DATA_CHANNEL_OPENED event without a corresponding observedPeerConnection or observedDataChannel', event);
|
|
383
|
+
logger.warn('Received DATA_CHANNEL_OPENED event without a corresponding observedPeerConnection or observedDataChannel: %o', event);
|
|
374
384
|
}
|
|
375
385
|
}
|
|
376
386
|
break;
|
|
@@ -387,7 +397,7 @@ class ObservedClient extends events_1.EventEmitter {
|
|
|
387
397
|
postBuffer.push(event);
|
|
388
398
|
}
|
|
389
399
|
else {
|
|
390
|
-
logger.warn('Received DATA_CHANNEL_CLOSE event without a corresponding observedPeerConnection or observedDataChannel', event);
|
|
400
|
+
logger.warn('Received DATA_CHANNEL_CLOSE event without a corresponding observedPeerConnection or observedDataChannel: %o', event);
|
|
391
401
|
}
|
|
392
402
|
}
|
|
393
403
|
break;
|
|
@@ -412,7 +422,7 @@ class ObservedClient extends events_1.EventEmitter {
|
|
|
412
422
|
postBuffer.push(event);
|
|
413
423
|
}
|
|
414
424
|
else {
|
|
415
|
-
logger.warn('Received MEDIA_TRACK_MUTED event without a corresponding observedPeerConnection or observedTrack', event);
|
|
425
|
+
logger.warn('Received MEDIA_TRACK_MUTED event without a corresponding observedPeerConnection or observedTrack: %o', event);
|
|
416
426
|
}
|
|
417
427
|
}
|
|
418
428
|
break;
|
|
@@ -437,7 +447,64 @@ class ObservedClient extends events_1.EventEmitter {
|
|
|
437
447
|
postBuffer.push(event);
|
|
438
448
|
}
|
|
439
449
|
else {
|
|
440
|
-
logger.warn('Received MEDIA_TRACK_UNMUTED event without a corresponding observedPeerConnection or observedTrack', event);
|
|
450
|
+
logger.warn('Received MEDIA_TRACK_UNMUTED event without a corresponding observedPeerConnection or observedTrack: %o', event);
|
|
451
|
+
}
|
|
452
|
+
}
|
|
453
|
+
break;
|
|
454
|
+
}
|
|
455
|
+
case ClientEventTypes_1.ClientEventTypes.ICE_CONNECTION_STATE_CHANGED: {
|
|
456
|
+
const payload = (0, utils_1.parseJsonAs)(event.payload);
|
|
457
|
+
if (payload?.peerConnectionId && typeof payload.peerConnectionId === 'string' && payload?.iceConnectionState && typeof payload.iceConnectionState === 'string') {
|
|
458
|
+
const observedPeerConnection = this.observedPeerConnections.get(payload.peerConnectionId);
|
|
459
|
+
if (observedPeerConnection) {
|
|
460
|
+
observedPeerConnection.iceConnectionState = payload.iceConnectionState;
|
|
461
|
+
observedPeerConnection.emit('iceconnectionstatechange', {
|
|
462
|
+
state: payload.iceConnectionState,
|
|
463
|
+
});
|
|
464
|
+
}
|
|
465
|
+
else if (postBuffer) {
|
|
466
|
+
postBuffer.push(event);
|
|
467
|
+
}
|
|
468
|
+
else {
|
|
469
|
+
logger.warn('Received ICE_CONNECTION_STATE_CHANGED event without a corresponding observedPeerConnection: %o', event);
|
|
470
|
+
}
|
|
471
|
+
}
|
|
472
|
+
break;
|
|
473
|
+
}
|
|
474
|
+
case ClientEventTypes_1.ClientEventTypes.ICE_GATHERING_STATE_CHANGED: {
|
|
475
|
+
const payload = (0, utils_1.parseJsonAs)(event.payload);
|
|
476
|
+
if (payload?.peerConnectionId && typeof payload.peerConnectionId === 'string' && payload?.iceGatheringState && typeof payload.iceGatheringState === 'string') {
|
|
477
|
+
const observedPeerConnection = this.observedPeerConnections.get(payload.peerConnectionId);
|
|
478
|
+
if (observedPeerConnection) {
|
|
479
|
+
observedPeerConnection.iceGatheringState = payload.iceGatheringState;
|
|
480
|
+
observedPeerConnection.emit('icegatheringstatechange', {
|
|
481
|
+
state: payload.iceGatheringState,
|
|
482
|
+
});
|
|
483
|
+
}
|
|
484
|
+
else if (postBuffer) {
|
|
485
|
+
postBuffer.push(event);
|
|
486
|
+
}
|
|
487
|
+
else {
|
|
488
|
+
logger.warn('Received ICE_GATHERING_STATE_CHANGED event without a corresponding observedPeerConnection: %o', event);
|
|
489
|
+
}
|
|
490
|
+
}
|
|
491
|
+
break;
|
|
492
|
+
}
|
|
493
|
+
case ClientEventTypes_1.ClientEventTypes.PEER_CONNECTION_STATE_CHANGED: {
|
|
494
|
+
const payload = (0, utils_1.parseJsonAs)(event.payload);
|
|
495
|
+
if (payload?.peerConnectionId && typeof payload.peerConnectionId === 'string' && payload?.peerConnectionState && typeof payload.peerConnectionState === 'string') {
|
|
496
|
+
const observedPeerConnection = this.observedPeerConnections.get(payload.peerConnectionId);
|
|
497
|
+
if (observedPeerConnection) {
|
|
498
|
+
observedPeerConnection.connectionState = payload.peerConnectionState;
|
|
499
|
+
observedPeerConnection.emit('connectionstatechange', {
|
|
500
|
+
state: payload.peerConnectionState,
|
|
501
|
+
});
|
|
502
|
+
}
|
|
503
|
+
else if (postBuffer) {
|
|
504
|
+
postBuffer.push(event);
|
|
505
|
+
}
|
|
506
|
+
else {
|
|
507
|
+
logger.warn('Received PEER_CONNECTION_STATE_CHANGED event without a corresponding observedPeerConnection: %o', event);
|
|
441
508
|
}
|
|
442
509
|
}
|
|
443
510
|
break;
|
|
@@ -104,6 +104,9 @@ export declare class ObservedPeerConnection extends EventEmitter {
|
|
|
104
104
|
openedAt?: number;
|
|
105
105
|
closedAt?: number;
|
|
106
106
|
updated: number;
|
|
107
|
+
connectionState?: string;
|
|
108
|
+
iceConnectionState?: string;
|
|
109
|
+
iceGatheringState?: string;
|
|
107
110
|
availableIncomingBitrate: number;
|
|
108
111
|
availableOutgoingBitrate: number;
|
|
109
112
|
totalInboundPacketsLost: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ObservedPeerConnection.d.ts","sourceRoot":"","sources":["../src/ObservedPeerConnection.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ObservedPeerConnection.d.ts","sourceRoot":"","sources":["../src/ObservedPeerConnection.ts"],"names":[],"mappings":"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"}
|
|
@@ -35,6 +35,9 @@ class ObservedPeerConnection extends events_1.EventEmitter {
|
|
|
35
35
|
// timestamp of the PEER_CONNECTION_CLOSED event
|
|
36
36
|
closedAt;
|
|
37
37
|
updated = Date.now();
|
|
38
|
+
connectionState;
|
|
39
|
+
iceConnectionState;
|
|
40
|
+
iceGatheringState;
|
|
38
41
|
availableIncomingBitrate = 0;
|
|
39
42
|
availableOutgoingBitrate = 0;
|
|
40
43
|
totalInboundPacketsLost = 0;
|
package/lib/index.d.ts
CHANGED
|
@@ -20,7 +20,7 @@ export { ObservedIceTransport } from './ObservedIceTransport';
|
|
|
20
20
|
export { ObservedPeerConnectionTransport } from './ObservedPeerConnectionTransport';
|
|
21
21
|
export { ClientEventTypes } from './schema/ClientEventTypes';
|
|
22
22
|
export { ClientMetaTypes } from './schema/ClientMetaTypes';
|
|
23
|
-
export { ClientSample, ClientIssue } from './schema/ClientSample';
|
|
23
|
+
export { ClientSample, ClientIssue, ClientEvent, ClientMetaData } from './schema/ClientSample';
|
|
24
24
|
export { ScoreCalculator } from './scores/ScoreCalculator';
|
|
25
25
|
export { ObservedClientEventMonitor } from './ObservedClientEventMonitor';
|
|
26
26
|
export { ObserverEventMonitor } from './ObserverEventMonitor';
|
package/lib/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAC;AACpF,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAC;AACpF,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC/F,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC"}
|
|
@@ -1,62 +1,3 @@
|
|
|
1
|
-
interface DoubleRange {
|
|
2
|
-
max?: number;
|
|
3
|
-
min?: number;
|
|
4
|
-
}
|
|
5
|
-
interface ULongRange {
|
|
6
|
-
max?: number;
|
|
7
|
-
min?: number;
|
|
8
|
-
}
|
|
9
|
-
interface MediaTrackConstraints {
|
|
10
|
-
aspectRatio?: DoubleRange;
|
|
11
|
-
autoGainControl?: boolean[];
|
|
12
|
-
backgroundBlur?: boolean[];
|
|
13
|
-
channelCount?: ULongRange;
|
|
14
|
-
deviceId?: string;
|
|
15
|
-
displaySurface?: string;
|
|
16
|
-
echoCancellation?: boolean[];
|
|
17
|
-
facingMode?: string[];
|
|
18
|
-
frameRate?: DoubleRange;
|
|
19
|
-
groupId?: string;
|
|
20
|
-
height?: ULongRange;
|
|
21
|
-
noiseSuppression?: boolean[];
|
|
22
|
-
sampleRate?: ULongRange;
|
|
23
|
-
sampleSize?: ULongRange;
|
|
24
|
-
width?: ULongRange;
|
|
25
|
-
}
|
|
26
|
-
interface MediaTrackCapabilities {
|
|
27
|
-
aspectRatio?: DoubleRange;
|
|
28
|
-
autoGainControl?: boolean[];
|
|
29
|
-
backgroundBlur?: boolean[];
|
|
30
|
-
channelCount?: ULongRange;
|
|
31
|
-
deviceId?: string;
|
|
32
|
-
displaySurface?: string;
|
|
33
|
-
echoCancellation?: boolean[];
|
|
34
|
-
facingMode?: string[];
|
|
35
|
-
frameRate?: DoubleRange;
|
|
36
|
-
groupId?: string;
|
|
37
|
-
height?: ULongRange;
|
|
38
|
-
noiseSuppression?: boolean[];
|
|
39
|
-
sampleRate?: ULongRange;
|
|
40
|
-
sampleSize?: ULongRange;
|
|
41
|
-
width?: ULongRange;
|
|
42
|
-
}
|
|
43
|
-
interface MediaTrackSettings {
|
|
44
|
-
aspectRatio?: number;
|
|
45
|
-
autoGainControl?: boolean;
|
|
46
|
-
backgroundBlur?: boolean;
|
|
47
|
-
channelCount?: number;
|
|
48
|
-
deviceId?: string;
|
|
49
|
-
displaySurface?: string;
|
|
50
|
-
echoCancellation?: boolean;
|
|
51
|
-
facingMode?: string;
|
|
52
|
-
frameRate?: number;
|
|
53
|
-
groupId?: string;
|
|
54
|
-
height?: number;
|
|
55
|
-
noiseSuppression?: boolean;
|
|
56
|
-
sampleRate?: number;
|
|
57
|
-
sampleSize?: number;
|
|
58
|
-
width?: number;
|
|
59
|
-
}
|
|
60
1
|
export declare enum ClientEventTypes {
|
|
61
2
|
CLIENT_JOINED = "CLIENT_JOINED",
|
|
62
3
|
CLIENT_LEFT = "CLIENT_LEFT",
|
|
@@ -75,33 +16,39 @@ export declare enum ClientEventTypes {
|
|
|
75
16
|
DATA_CHANNEL_ERROR = "DATA_CHANNEL_ERROR",
|
|
76
17
|
NEGOTIATION_NEEDED = "NEGOTIATION_NEEDED",
|
|
77
18
|
SIGNALING_STATE_CHANGE = "SIGNALING_STATE_CHANGE",
|
|
78
|
-
ICE_GATHERING_STATE_CHANGE = "ICE_GATHERING_STATE_CHANGE",
|
|
79
|
-
ICE_CONNECTION_STATE_CHANGE = "ICE_CONNECTION_STATE_CHANGE",
|
|
80
19
|
ICE_CANDIDATE = "ICE_CANDIDATE",
|
|
20
|
+
ICE_CANDIDATE_ERROR = "ICE_CANDIDATE_ERROR",
|
|
81
21
|
PRODUCER_ADDED = "PRODUCER_ADDED",
|
|
82
22
|
PRODUCER_REMOVED = "PRODUCER_REMOVED",
|
|
83
23
|
PRODUCER_PAUSED = "PRODUCER_PAUSED",
|
|
84
24
|
PRODUCER_RESUMED = "PRODUCER_RESUMED",
|
|
85
25
|
CONSUMER_ADDED = "CONSUMER_ADDED",
|
|
86
26
|
CONSUMER_REMOVED = "CONSUMER_REMOVED",
|
|
27
|
+
CONSUMER_PAUSED = "CONSUMER_PAUSED",
|
|
28
|
+
CONSUMER_RESUMED = "CONSUMER_RESUMED",
|
|
87
29
|
DATA_PRODUCER_CREATED = "DATA_PRODUCER_CREATED",
|
|
88
30
|
DATA_PRODUCER_CLOSED = "DATA_PRODUCER_CLOSED",
|
|
89
31
|
DATA_CONSUMER_CREATED = "DATA_CONSUMER_CREATED",
|
|
90
32
|
DATA_CONSUMER_CLOSED = "DATA_CONSUMER_CLOSED"
|
|
91
33
|
}
|
|
34
|
+
export interface ClientJoinedEventPayload extends Record<string, unknown> {
|
|
35
|
+
}
|
|
36
|
+
export interface ClientLeftEventPayload extends Record<string, unknown> {
|
|
37
|
+
}
|
|
92
38
|
export interface PeerConnectionOpenedEventPayload extends Record<string, unknown> {
|
|
93
39
|
peerConnectionId: string;
|
|
94
|
-
iceConnectionState
|
|
95
|
-
iceGatheringState
|
|
96
|
-
signalingState
|
|
40
|
+
iceConnectionState?: string;
|
|
41
|
+
iceGatheringState?: string;
|
|
42
|
+
signalingState?: string;
|
|
97
43
|
}
|
|
98
44
|
export interface PeerConnectionClosedEventPayload extends Record<string, unknown> {
|
|
99
45
|
peerConnectionId: string;
|
|
100
|
-
iceConnectionState
|
|
101
|
-
iceGatheringState
|
|
102
|
-
signalingState
|
|
46
|
+
iceConnectionState?: string;
|
|
47
|
+
iceGatheringState?: string;
|
|
48
|
+
signalingState?: string;
|
|
103
49
|
}
|
|
104
|
-
export interface
|
|
50
|
+
export interface MediaTrackAddedEventPayload extends Record<string, unknown> {
|
|
51
|
+
peerConnectionId: string;
|
|
105
52
|
trackId: string;
|
|
106
53
|
kind: 'audio' | 'video';
|
|
107
54
|
label?: string;
|
|
@@ -109,8 +56,12 @@ export interface MediaTrackMutedEventPayload extends Record<string, unknown> {
|
|
|
109
56
|
enabled: boolean;
|
|
110
57
|
readyState: string;
|
|
111
58
|
contentHint?: string;
|
|
59
|
+
constraints: MediaTrackConstraints;
|
|
60
|
+
capabilities: MediaTrackCapabilities;
|
|
61
|
+
settings: MediaTrackSettings;
|
|
112
62
|
}
|
|
113
|
-
export interface
|
|
63
|
+
export interface MediaTrackRemovedEventPayload extends Record<string, unknown> {
|
|
64
|
+
peerConnectionId: string;
|
|
114
65
|
trackId: string;
|
|
115
66
|
kind: 'audio' | 'video';
|
|
116
67
|
label?: string;
|
|
@@ -119,7 +70,8 @@ export interface MediaTrackUnmutedEventPayload extends Record<string, unknown> {
|
|
|
119
70
|
readyState: string;
|
|
120
71
|
contentHint?: string;
|
|
121
72
|
}
|
|
122
|
-
export interface
|
|
73
|
+
export interface MediaTrackMutedEventPayload extends Record<string, unknown> {
|
|
74
|
+
peerConnectionId: string;
|
|
123
75
|
trackId: string;
|
|
124
76
|
kind: 'audio' | 'video';
|
|
125
77
|
label?: string;
|
|
@@ -127,11 +79,9 @@ export interface MediaTrackAddedEventPayload extends Record<string, unknown> {
|
|
|
127
79
|
enabled: boolean;
|
|
128
80
|
readyState: string;
|
|
129
81
|
contentHint?: string;
|
|
130
|
-
constraints: MediaTrackConstraints;
|
|
131
|
-
capabilities: MediaTrackCapabilities;
|
|
132
|
-
settings: MediaTrackSettings;
|
|
133
82
|
}
|
|
134
|
-
export interface
|
|
83
|
+
export interface MediaTrackUnmutedEventPayload extends Record<string, unknown> {
|
|
84
|
+
peerConnectionId: string;
|
|
135
85
|
trackId: string;
|
|
136
86
|
kind: 'audio' | 'video';
|
|
137
87
|
label?: string;
|
|
@@ -140,21 +90,139 @@ export interface MediaTrackRemovedEventPayload extends Record<string, unknown> {
|
|
|
140
90
|
readyState: string;
|
|
141
91
|
contentHint?: string;
|
|
142
92
|
}
|
|
93
|
+
export interface IceGatheringStateChangedEventPayload extends Record<string, unknown> {
|
|
94
|
+
peerConnectionId: string;
|
|
95
|
+
iceGatheringState: string;
|
|
96
|
+
}
|
|
97
|
+
export interface PeerConnectionStateChangedEventPayload extends Record<string, unknown> {
|
|
98
|
+
peerConnectionId: string;
|
|
99
|
+
connectionState: string;
|
|
100
|
+
}
|
|
101
|
+
export interface IceConnectionStateChangedEventPayload extends Record<string, unknown> {
|
|
102
|
+
peerConnectionId: string;
|
|
103
|
+
iceConnectionState: string;
|
|
104
|
+
}
|
|
143
105
|
export interface DataChannelErrorEventPayload extends Record<string, unknown> {
|
|
144
106
|
label: string;
|
|
107
|
+
peerConnectionId: string;
|
|
145
108
|
readyState: string;
|
|
146
|
-
dataChannelId: string;
|
|
147
|
-
error: string;
|
|
109
|
+
dataChannelId: string | number | null;
|
|
110
|
+
error: string | null;
|
|
148
111
|
}
|
|
149
112
|
export interface DataChannelOpenEventPayload extends Record<string, unknown> {
|
|
113
|
+
peerConnectionId: string;
|
|
150
114
|
label: string;
|
|
151
115
|
readyState: string;
|
|
152
|
-
dataChannelId: string;
|
|
116
|
+
dataChannelId: string | number | null;
|
|
153
117
|
}
|
|
154
118
|
export interface DataChannelClosedEventPayload extends Record<string, unknown> {
|
|
119
|
+
peerConnectionId: string;
|
|
155
120
|
label: string;
|
|
156
121
|
readyState: string;
|
|
157
|
-
dataChannelId: string;
|
|
122
|
+
dataChannelId: string | number | null;
|
|
123
|
+
}
|
|
124
|
+
export interface NegotiationNeededEventPayload extends Record<string, unknown> {
|
|
125
|
+
peerConnectionId: string;
|
|
126
|
+
}
|
|
127
|
+
export interface IceCandidateEventPayload extends Record<string, unknown> {
|
|
128
|
+
peerConnectionId: string;
|
|
129
|
+
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/address) */
|
|
130
|
+
address?: string | null;
|
|
131
|
+
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/candidate) */
|
|
132
|
+
candidate?: string;
|
|
133
|
+
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/component) */
|
|
134
|
+
component?: RTCIceComponent | null;
|
|
135
|
+
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/foundation) */
|
|
136
|
+
foundation?: string | null;
|
|
137
|
+
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/port) */
|
|
138
|
+
port?: number | null;
|
|
139
|
+
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/priority) */
|
|
140
|
+
priority?: number | null;
|
|
141
|
+
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/protocol) */
|
|
142
|
+
protocol?: RTCIceProtocol | null;
|
|
143
|
+
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/relatedAddress) */
|
|
144
|
+
relatedAddress?: string | null;
|
|
145
|
+
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/relatedPort) */
|
|
146
|
+
relatedPort?: number | null;
|
|
147
|
+
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/sdpMLineIndex) */
|
|
148
|
+
sdpMLineIndex?: number | null;
|
|
149
|
+
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/sdpMid) */
|
|
150
|
+
sdpMid?: string | null;
|
|
151
|
+
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/tcpType) */
|
|
152
|
+
tcpType?: RTCIceTcpCandidateType | null;
|
|
153
|
+
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/type) */
|
|
154
|
+
type?: RTCIceCandidateType | null;
|
|
155
|
+
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/usernameFragment) */
|
|
156
|
+
usernameFragment?: string | null;
|
|
157
|
+
}
|
|
158
|
+
export interface IceCandidateErrorEventPayload extends Record<string, unknown> {
|
|
159
|
+
peerConnectionId: string;
|
|
160
|
+
errorCode?: number;
|
|
161
|
+
errorText?: string;
|
|
162
|
+
address?: string | null;
|
|
163
|
+
port?: number | null;
|
|
164
|
+
url?: string | null;
|
|
165
|
+
}
|
|
166
|
+
export interface SignalingStateChangedEventPayload extends Record<string, unknown> {
|
|
167
|
+
peerConnectionId: string;
|
|
168
|
+
signalingState: string;
|
|
169
|
+
}
|
|
170
|
+
export interface ProducerAddedEventPayload extends Record<string, unknown> {
|
|
171
|
+
peerConnectionId: string;
|
|
172
|
+
producerId: string;
|
|
173
|
+
}
|
|
174
|
+
export interface ProducerRemovedEventPayload extends Record<string, unknown> {
|
|
175
|
+
peerConnectionId: string;
|
|
176
|
+
producerId: string;
|
|
177
|
+
}
|
|
178
|
+
export interface ProducerPausedEventPayload extends Record<string, unknown> {
|
|
179
|
+
peerConnectionId: string;
|
|
180
|
+
producerId: string;
|
|
181
|
+
}
|
|
182
|
+
export interface ProducerResumedEventPayload extends Record<string, unknown> {
|
|
183
|
+
peerConnectionId: string;
|
|
184
|
+
producerId: string;
|
|
185
|
+
}
|
|
186
|
+
export interface ConsumerAddedEventPayload extends Record<string, unknown> {
|
|
187
|
+
peerConnectionId: string;
|
|
188
|
+
producerId: string;
|
|
189
|
+
consumerId: string;
|
|
190
|
+
trackId: string;
|
|
191
|
+
}
|
|
192
|
+
export interface ConsumerRemovedEventPayload extends Record<string, unknown> {
|
|
193
|
+
peerConnectionId: string;
|
|
194
|
+
producerId: string;
|
|
195
|
+
consumerId: string;
|
|
196
|
+
trackId: string;
|
|
197
|
+
}
|
|
198
|
+
export interface ConsumerPausedEventPayload extends Record<string, unknown> {
|
|
199
|
+
peerConnectionId: string;
|
|
200
|
+
producerId: string;
|
|
201
|
+
consumerId: string;
|
|
202
|
+
trackId: string;
|
|
203
|
+
}
|
|
204
|
+
export interface ConsumerResumedEventPayload extends Record<string, unknown> {
|
|
205
|
+
peerConnectionId: string;
|
|
206
|
+
producerId: string;
|
|
207
|
+
consumerId: string;
|
|
208
|
+
trackId: string;
|
|
209
|
+
}
|
|
210
|
+
export interface DataProducerCreatedEventPayload extends Record<string, unknown> {
|
|
211
|
+
peerConnectionId: string;
|
|
212
|
+
dataProducerId: string;
|
|
213
|
+
}
|
|
214
|
+
export interface DataProducerClosedEventPayload extends Record<string, unknown> {
|
|
215
|
+
peerConnectionId: string;
|
|
216
|
+
dataProducerId: string;
|
|
217
|
+
}
|
|
218
|
+
export interface DataConsumerCreatedEventPayload extends Record<string, unknown> {
|
|
219
|
+
peerConnectionId: string;
|
|
220
|
+
dataProducerId: string;
|
|
221
|
+
dataConsumerId: string;
|
|
222
|
+
}
|
|
223
|
+
export interface DataConsumerClosedEventPayload extends Record<string, unknown> {
|
|
224
|
+
peerConnectionId: string;
|
|
225
|
+
dataProducerId: string;
|
|
226
|
+
dataConsumerId: string;
|
|
158
227
|
}
|
|
159
|
-
export {};
|
|
160
228
|
//# sourceMappingURL=ClientEventTypes.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClientEventTypes.d.ts","sourceRoot":"","sources":["../../src/schema/ClientEventTypes.ts"],"names":[],"mappings":"AAEA,
|
|
1
|
+
{"version":3,"file":"ClientEventTypes.d.ts","sourceRoot":"","sources":["../../src/schema/ClientEventTypes.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,9 +21,10 @@ var ClientEventTypes;
|
|
|
21
21
|
ClientEventTypes["DATA_CHANNEL_ERROR"] = "DATA_CHANNEL_ERROR";
|
|
22
22
|
ClientEventTypes["NEGOTIATION_NEEDED"] = "NEGOTIATION_NEEDED";
|
|
23
23
|
ClientEventTypes["SIGNALING_STATE_CHANGE"] = "SIGNALING_STATE_CHANGE";
|
|
24
|
-
|
|
25
|
-
|
|
24
|
+
// ICE_GATHERING_STATE_CHANGE = 'ICE_GATHERING_STATE_CHANGE',
|
|
25
|
+
// ICE_CONNECTION_STATE_CHANGE = 'ICE_CONNECTION_STATE_CHANGE',
|
|
26
26
|
ClientEventTypes["ICE_CANDIDATE"] = "ICE_CANDIDATE";
|
|
27
|
+
ClientEventTypes["ICE_CANDIDATE_ERROR"] = "ICE_CANDIDATE_ERROR";
|
|
27
28
|
// mediasoup events
|
|
28
29
|
ClientEventTypes["PRODUCER_ADDED"] = "PRODUCER_ADDED";
|
|
29
30
|
ClientEventTypes["PRODUCER_REMOVED"] = "PRODUCER_REMOVED";
|
|
@@ -31,6 +32,8 @@ var ClientEventTypes;
|
|
|
31
32
|
ClientEventTypes["PRODUCER_RESUMED"] = "PRODUCER_RESUMED";
|
|
32
33
|
ClientEventTypes["CONSUMER_ADDED"] = "CONSUMER_ADDED";
|
|
33
34
|
ClientEventTypes["CONSUMER_REMOVED"] = "CONSUMER_REMOVED";
|
|
35
|
+
ClientEventTypes["CONSUMER_PAUSED"] = "CONSUMER_PAUSED";
|
|
36
|
+
ClientEventTypes["CONSUMER_RESUMED"] = "CONSUMER_RESUMED";
|
|
34
37
|
ClientEventTypes["DATA_PRODUCER_CREATED"] = "DATA_PRODUCER_CREATED";
|
|
35
38
|
ClientEventTypes["DATA_PRODUCER_CLOSED"] = "DATA_PRODUCER_CLOSED";
|
|
36
39
|
ClientEventTypes["DATA_CONSUMER_CREATED"] = "DATA_CONSUMER_CREATED";
|
package/package.json
CHANGED
package/src/ObservedCall.ts
CHANGED
|
@@ -157,7 +157,18 @@ export class ObservedCall<AppData extends Record<string, unknown> = Record<strin
|
|
|
157
157
|
|
|
158
158
|
this.updater?.close();
|
|
159
159
|
|
|
160
|
-
|
|
160
|
+
let minSampleTimestamps: number | undefined;
|
|
161
|
+
let maxSampleTimestamps: number | undefined;
|
|
162
|
+
|
|
163
|
+
for (const client of this.observedClients.values()) {
|
|
164
|
+
client.close();
|
|
165
|
+
|
|
166
|
+
if (client.joinedAt) minSampleTimestamps = Math.min(minSampleTimestamps ?? client.joinedAt, client.joinedAt);
|
|
167
|
+
if (client.leftAt) maxSampleTimestamps = Math.max(maxSampleTimestamps ?? client.leftAt, client.leftAt);
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
if (this.startedAt === undefined) this.startedAt = minSampleTimestamps;
|
|
171
|
+
if (this.endedAt === undefined) this.endedAt = maxSampleTimestamps;
|
|
161
172
|
|
|
162
173
|
this.closedAt = Date.now();
|
|
163
174
|
this.emit('close');
|
package/src/ObservedClient.ts
CHANGED
|
@@ -66,6 +66,7 @@ export class ObservedClient<AppData extends Record<string, unknown> = Record<str
|
|
|
66
66
|
public joinedAt?: number;
|
|
67
67
|
public leftAt?: number;
|
|
68
68
|
public closedAt?: number;
|
|
69
|
+
public lastSampleTimestamp?: number;
|
|
69
70
|
// the timestamp of the CLIENT_JOINED event
|
|
70
71
|
public operationSystem?: MetaData.OperationSystem;
|
|
71
72
|
public engine?: MetaData.Engine;
|
|
@@ -163,7 +164,13 @@ export class ObservedClient<AppData extends Record<string, unknown> = Record<str
|
|
|
163
164
|
this.closed = true;
|
|
164
165
|
|
|
165
166
|
Array.from(this.observedPeerConnections.values()).forEach((peerConnection) => peerConnection.close());
|
|
167
|
+
if (!this.leftAt) {
|
|
168
|
+
this.leftAt = this.lastSampleTimestamp;
|
|
166
169
|
|
|
170
|
+
if (this.leftAt) {
|
|
171
|
+
this.emit('left');
|
|
172
|
+
}
|
|
173
|
+
}
|
|
167
174
|
this.closedAt = Date.now();
|
|
168
175
|
|
|
169
176
|
this.emit('close');
|
|
@@ -327,6 +334,7 @@ export class ObservedClient<AppData extends Record<string, unknown> = Record<str
|
|
|
327
334
|
this.calculatedScore.value = sample.score;
|
|
328
335
|
this.detectors.update();
|
|
329
336
|
|
|
337
|
+
this.lastSampleTimestamp = sample.timestamp;
|
|
330
338
|
// emit update
|
|
331
339
|
this.emit('update', {
|
|
332
340
|
sample,
|
|
@@ -357,6 +365,7 @@ export class ObservedClient<AppData extends Record<string, unknown> = Record<str
|
|
|
357
365
|
logger.warn(`Client ${this.clientId} joinedAt timestamp was updated to ${event.timestamp}. the joined event will not be emitted.`);
|
|
358
366
|
}
|
|
359
367
|
}
|
|
368
|
+
logger.debug('Client %s joined at %o', this.clientId, event);
|
|
360
369
|
break;
|
|
361
370
|
}
|
|
362
371
|
case ClientEventTypes.CLIENT_LEFT: {
|
|
@@ -367,7 +376,9 @@ export class ObservedClient<AppData extends Record<string, unknown> = Record<str
|
|
|
367
376
|
} else {
|
|
368
377
|
logger.warn(`Client ${this.clientId} leftAt timestamp was already set`);
|
|
369
378
|
}
|
|
379
|
+
|
|
370
380
|
}
|
|
381
|
+
logger.debug('Client %s left at %o', this.clientId, event);
|
|
371
382
|
break;
|
|
372
383
|
}
|
|
373
384
|
case ClientEventTypes.PEER_CONNECTION_OPENED: {
|
|
@@ -381,7 +392,7 @@ export class ObservedClient<AppData extends Record<string, unknown> = Record<str
|
|
|
381
392
|
} else if (postBuffer) {
|
|
382
393
|
postBuffer.push(event);
|
|
383
394
|
} else {
|
|
384
|
-
logger.warn('Received PEER_CONNECTION_OPENED event without a corresponding observedPeerConnection', event);
|
|
395
|
+
logger.warn('Received PEER_CONNECTION_OPENED event without a corresponding observedPeerConnection: %o', event);
|
|
385
396
|
}
|
|
386
397
|
|
|
387
398
|
}
|
|
@@ -398,7 +409,7 @@ export class ObservedClient<AppData extends Record<string, unknown> = Record<str
|
|
|
398
409
|
} else if (postBuffer) {
|
|
399
410
|
postBuffer.push(event);
|
|
400
411
|
} else {
|
|
401
|
-
logger.warn('Received PEER_CONNECTION_CLOSED event without a corresponding observedPeerConnection', event);
|
|
412
|
+
logger.warn('Received PEER_CONNECTION_CLOSED event without a corresponding observedPeerConnection: %o', event);
|
|
402
413
|
}
|
|
403
414
|
}
|
|
404
415
|
break;
|
|
@@ -415,7 +426,7 @@ export class ObservedClient<AppData extends Record<string, unknown> = Record<str
|
|
|
415
426
|
} else if (postBuffer) {
|
|
416
427
|
postBuffer.push(event);
|
|
417
428
|
} else {
|
|
418
|
-
logger.warn('Received MEDIA_TRACK_ADDED event without a corresponding observedPeerConnection or observedTrack', event);
|
|
429
|
+
logger.warn('Received MEDIA_TRACK_ADDED event without a corresponding observedPeerConnection or observedTrack: %o', event);
|
|
419
430
|
}
|
|
420
431
|
}
|
|
421
432
|
break;
|
|
@@ -432,7 +443,7 @@ export class ObservedClient<AppData extends Record<string, unknown> = Record<str
|
|
|
432
443
|
} else if (postBuffer) {
|
|
433
444
|
postBuffer.push(event);
|
|
434
445
|
} else {
|
|
435
|
-
logger.warn('Received MEDIA_TRACK_REMOVED event without a corresponding observedPeerConnection or observedTrack', event);
|
|
446
|
+
logger.warn('Received MEDIA_TRACK_REMOVED event without a corresponding observedPeerConnection or observedTrack: %o', event);
|
|
436
447
|
}
|
|
437
448
|
}
|
|
438
449
|
break;
|
|
@@ -449,7 +460,7 @@ export class ObservedClient<AppData extends Record<string, unknown> = Record<str
|
|
|
449
460
|
} else if (postBuffer) {
|
|
450
461
|
postBuffer.push(event);
|
|
451
462
|
} else {
|
|
452
|
-
logger.warn('Received DATA_CHANNEL_OPENED event without a corresponding observedPeerConnection or observedDataChannel', event);
|
|
463
|
+
logger.warn('Received DATA_CHANNEL_OPENED event without a corresponding observedPeerConnection or observedDataChannel: %o', event);
|
|
453
464
|
}
|
|
454
465
|
}
|
|
455
466
|
break;
|
|
@@ -466,7 +477,7 @@ export class ObservedClient<AppData extends Record<string, unknown> = Record<str
|
|
|
466
477
|
} else if (postBuffer) {
|
|
467
478
|
postBuffer.push(event);
|
|
468
479
|
} else {
|
|
469
|
-
logger.warn('Received DATA_CHANNEL_CLOSE event without a corresponding observedPeerConnection or observedDataChannel', event);
|
|
480
|
+
logger.warn('Received DATA_CHANNEL_CLOSE event without a corresponding observedPeerConnection or observedDataChannel: %o', event);
|
|
470
481
|
}
|
|
471
482
|
}
|
|
472
483
|
break;
|
|
@@ -490,7 +501,7 @@ export class ObservedClient<AppData extends Record<string, unknown> = Record<str
|
|
|
490
501
|
} else if (postBuffer) {
|
|
491
502
|
postBuffer.push(event);
|
|
492
503
|
} else {
|
|
493
|
-
logger.warn('Received MEDIA_TRACK_MUTED event without a corresponding observedPeerConnection or observedTrack', event);
|
|
504
|
+
logger.warn('Received MEDIA_TRACK_MUTED event without a corresponding observedPeerConnection or observedTrack: %o', event);
|
|
494
505
|
}
|
|
495
506
|
}
|
|
496
507
|
|
|
@@ -515,12 +526,70 @@ export class ObservedClient<AppData extends Record<string, unknown> = Record<str
|
|
|
515
526
|
} else if (postBuffer) {
|
|
516
527
|
postBuffer.push(event);
|
|
517
528
|
} else {
|
|
518
|
-
logger.warn('Received MEDIA_TRACK_UNMUTED event without a corresponding observedPeerConnection or observedTrack', event);
|
|
529
|
+
logger.warn('Received MEDIA_TRACK_UNMUTED event without a corresponding observedPeerConnection or observedTrack: %o', event);
|
|
530
|
+
}
|
|
531
|
+
}
|
|
532
|
+
break;
|
|
533
|
+
}
|
|
534
|
+
case ClientEventTypes.ICE_CONNECTION_STATE_CHANGED: {
|
|
535
|
+
const payload = parseJsonAs<Record<string, unknown>>(event.payload);
|
|
536
|
+
|
|
537
|
+
if (payload?.peerConnectionId && typeof payload.peerConnectionId === 'string' && payload?.iceConnectionState && typeof payload.iceConnectionState === 'string') {
|
|
538
|
+
const observedPeerConnection = this.observedPeerConnections.get(payload.peerConnectionId);
|
|
539
|
+
|
|
540
|
+
if (observedPeerConnection) {
|
|
541
|
+
observedPeerConnection.iceConnectionState = payload.iceConnectionState;
|
|
542
|
+
observedPeerConnection.emit('iceconnectionstatechange', {
|
|
543
|
+
state: payload.iceConnectionState,
|
|
544
|
+
});
|
|
545
|
+
} else if (postBuffer) {
|
|
546
|
+
postBuffer.push(event);
|
|
547
|
+
} else {
|
|
548
|
+
logger.warn('Received ICE_CONNECTION_STATE_CHANGED event without a corresponding observedPeerConnection: %o', event);
|
|
549
|
+
}
|
|
550
|
+
}
|
|
551
|
+
break;
|
|
552
|
+
}
|
|
553
|
+
case ClientEventTypes.ICE_GATHERING_STATE_CHANGED: {
|
|
554
|
+
const payload = parseJsonAs<Record<string, unknown>>(event.payload);
|
|
555
|
+
|
|
556
|
+
if (payload?.peerConnectionId && typeof payload.peerConnectionId === 'string' && payload?.iceGatheringState && typeof payload.iceGatheringState === 'string') {
|
|
557
|
+
const observedPeerConnection = this.observedPeerConnections.get(payload.peerConnectionId);
|
|
558
|
+
|
|
559
|
+
if (observedPeerConnection) {
|
|
560
|
+
observedPeerConnection.iceGatheringState = payload.iceGatheringState;
|
|
561
|
+
observedPeerConnection.emit('icegatheringstatechange', {
|
|
562
|
+
state: payload.iceGatheringState,
|
|
563
|
+
});
|
|
564
|
+
} else if (postBuffer) {
|
|
565
|
+
postBuffer.push(event);
|
|
566
|
+
} else {
|
|
567
|
+
logger.warn('Received ICE_GATHERING_STATE_CHANGED event without a corresponding observedPeerConnection: %o', event);
|
|
568
|
+
}
|
|
569
|
+
}
|
|
570
|
+
break;
|
|
571
|
+
}
|
|
572
|
+
case ClientEventTypes.PEER_CONNECTION_STATE_CHANGED: {
|
|
573
|
+
const payload = parseJsonAs<Record<string, unknown>>(event.payload);
|
|
574
|
+
|
|
575
|
+
if (payload?.peerConnectionId && typeof payload.peerConnectionId === 'string' && payload?.peerConnectionState && typeof payload.peerConnectionState === 'string') {
|
|
576
|
+
const observedPeerConnection = this.observedPeerConnections.get(payload.peerConnectionId);
|
|
577
|
+
|
|
578
|
+
if (observedPeerConnection) {
|
|
579
|
+
observedPeerConnection.connectionState = payload.peerConnectionState;
|
|
580
|
+
observedPeerConnection.emit('connectionstatechange', {
|
|
581
|
+
state: payload.peerConnectionState,
|
|
582
|
+
});
|
|
583
|
+
} else if (postBuffer) {
|
|
584
|
+
postBuffer.push(event);
|
|
585
|
+
} else {
|
|
586
|
+
logger.warn('Received PEER_CONNECTION_STATE_CHANGED event without a corresponding observedPeerConnection: %o', event);
|
|
519
587
|
}
|
|
520
588
|
}
|
|
521
589
|
break;
|
|
522
590
|
}
|
|
523
591
|
}
|
|
592
|
+
|
|
524
593
|
this.emit('clientEvent', event);
|
|
525
594
|
}
|
|
526
595
|
|
|
@@ -128,6 +128,10 @@ export class ObservedPeerConnection extends EventEmitter {
|
|
|
128
128
|
public closedAt?: number;
|
|
129
129
|
public updated = Date.now();
|
|
130
130
|
|
|
131
|
+
public connectionState?: string;
|
|
132
|
+
public iceConnectionState?: string;
|
|
133
|
+
public iceGatheringState?: string;
|
|
134
|
+
|
|
131
135
|
public availableIncomingBitrate = 0;
|
|
132
136
|
public availableOutgoingBitrate = 0;
|
|
133
137
|
public totalInboundPacketsLost = 0;
|
package/src/index.ts
CHANGED
|
@@ -21,7 +21,7 @@ export { ObservedIceTransport } from './ObservedIceTransport';
|
|
|
21
21
|
export { ObservedPeerConnectionTransport } from './ObservedPeerConnectionTransport';
|
|
22
22
|
export { ClientEventTypes } from './schema/ClientEventTypes';
|
|
23
23
|
export { ClientMetaTypes } from './schema/ClientMetaTypes';
|
|
24
|
-
export { ClientSample, ClientIssue } from './schema/ClientSample';
|
|
24
|
+
export { ClientSample, ClientIssue, ClientEvent, ClientMetaData } from './schema/ClientSample';
|
|
25
25
|
export { ScoreCalculator } from './scores/ScoreCalculator';
|
|
26
26
|
export { ObservedClientEventMonitor } from './ObservedClientEventMonitor';
|
|
27
27
|
export { ObserverEventMonitor } from './ObserverEventMonitor';
|
|
@@ -1,69 +1,5 @@
|
|
|
1
1
|
/* eslint-disable no-shadow */
|
|
2
2
|
|
|
3
|
-
interface DoubleRange {
|
|
4
|
-
max?: number;
|
|
5
|
-
min?: number;
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
interface ULongRange {
|
|
9
|
-
max?: number;
|
|
10
|
-
min?: number;
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
interface MediaTrackConstraints {
|
|
14
|
-
aspectRatio?: DoubleRange;
|
|
15
|
-
autoGainControl?: boolean[];
|
|
16
|
-
backgroundBlur?: boolean[];
|
|
17
|
-
channelCount?: ULongRange;
|
|
18
|
-
deviceId?: string;
|
|
19
|
-
displaySurface?: string;
|
|
20
|
-
echoCancellation?: boolean[];
|
|
21
|
-
facingMode?: string[];
|
|
22
|
-
frameRate?: DoubleRange;
|
|
23
|
-
groupId?: string;
|
|
24
|
-
height?: ULongRange;
|
|
25
|
-
noiseSuppression?: boolean[];
|
|
26
|
-
sampleRate?: ULongRange;
|
|
27
|
-
sampleSize?: ULongRange;
|
|
28
|
-
width?: ULongRange;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
interface MediaTrackCapabilities {
|
|
32
|
-
aspectRatio?: DoubleRange;
|
|
33
|
-
autoGainControl?: boolean[];
|
|
34
|
-
backgroundBlur?: boolean[];
|
|
35
|
-
channelCount?: ULongRange;
|
|
36
|
-
deviceId?: string;
|
|
37
|
-
displaySurface?: string;
|
|
38
|
-
echoCancellation?: boolean[];
|
|
39
|
-
facingMode?: string[];
|
|
40
|
-
frameRate?: DoubleRange;
|
|
41
|
-
groupId?: string;
|
|
42
|
-
height?: ULongRange;
|
|
43
|
-
noiseSuppression?: boolean[];
|
|
44
|
-
sampleRate?: ULongRange;
|
|
45
|
-
sampleSize?: ULongRange;
|
|
46
|
-
width?: ULongRange;
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
interface MediaTrackSettings {
|
|
50
|
-
aspectRatio?: number;
|
|
51
|
-
autoGainControl?: boolean;
|
|
52
|
-
backgroundBlur?: boolean;
|
|
53
|
-
channelCount?: number;
|
|
54
|
-
deviceId?: string;
|
|
55
|
-
displaySurface?: string;
|
|
56
|
-
echoCancellation?: boolean;
|
|
57
|
-
facingMode?: string;
|
|
58
|
-
frameRate?: number;
|
|
59
|
-
groupId?: string;
|
|
60
|
-
height?: number;
|
|
61
|
-
noiseSuppression?: boolean;
|
|
62
|
-
sampleRate?: number;
|
|
63
|
-
sampleSize?: number;
|
|
64
|
-
width?: number;
|
|
65
|
-
}
|
|
66
|
-
|
|
67
3
|
export enum ClientEventTypes {
|
|
68
4
|
CLIENT_JOINED = 'CLIENT_JOINED',
|
|
69
5
|
CLIENT_LEFT = 'CLIENT_LEFT',
|
|
@@ -82,9 +18,10 @@ export enum ClientEventTypes {
|
|
|
82
18
|
DATA_CHANNEL_ERROR = 'DATA_CHANNEL_ERROR',
|
|
83
19
|
NEGOTIATION_NEEDED = 'NEGOTIATION_NEEDED',
|
|
84
20
|
SIGNALING_STATE_CHANGE = 'SIGNALING_STATE_CHANGE',
|
|
85
|
-
ICE_GATHERING_STATE_CHANGE = 'ICE_GATHERING_STATE_CHANGE',
|
|
86
|
-
ICE_CONNECTION_STATE_CHANGE = 'ICE_CONNECTION_STATE_CHANGE',
|
|
21
|
+
// ICE_GATHERING_STATE_CHANGE = 'ICE_GATHERING_STATE_CHANGE',
|
|
22
|
+
// ICE_CONNECTION_STATE_CHANGE = 'ICE_CONNECTION_STATE_CHANGE',
|
|
87
23
|
ICE_CANDIDATE = 'ICE_CANDIDATE',
|
|
24
|
+
ICE_CANDIDATE_ERROR = 'ICE_CANDIDATE_ERROR',
|
|
88
25
|
|
|
89
26
|
// mediasoup events
|
|
90
27
|
PRODUCER_ADDED = 'PRODUCER_ADDED',
|
|
@@ -93,27 +30,39 @@ export enum ClientEventTypes {
|
|
|
93
30
|
PRODUCER_RESUMED = 'PRODUCER_RESUMED',
|
|
94
31
|
CONSUMER_ADDED = 'CONSUMER_ADDED',
|
|
95
32
|
CONSUMER_REMOVED = 'CONSUMER_REMOVED',
|
|
33
|
+
CONSUMER_PAUSED = 'CONSUMER_PAUSED',
|
|
34
|
+
CONSUMER_RESUMED = 'CONSUMER_RESUMED',
|
|
96
35
|
DATA_PRODUCER_CREATED = 'DATA_PRODUCER_CREATED',
|
|
97
36
|
DATA_PRODUCER_CLOSED = 'DATA_PRODUCER_CLOSED',
|
|
98
37
|
DATA_CONSUMER_CREATED = 'DATA_CONSUMER_CREATED',
|
|
99
38
|
DATA_CONSUMER_CLOSED = 'DATA_CONSUMER_CLOSED',
|
|
100
39
|
}
|
|
101
40
|
|
|
41
|
+
// eslint-disable-next-line @typescript-eslint/no-empty-interface
|
|
42
|
+
export interface ClientJoinedEventPayload extends Record<string, unknown> {
|
|
43
|
+
// empty
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
// eslint-disable-next-line @typescript-eslint/no-empty-interface
|
|
47
|
+
export interface ClientLeftEventPayload extends Record<string, unknown> {
|
|
48
|
+
}
|
|
49
|
+
|
|
102
50
|
export interface PeerConnectionOpenedEventPayload extends Record<string, unknown> {
|
|
103
51
|
peerConnectionId: string;
|
|
104
|
-
iceConnectionState
|
|
105
|
-
iceGatheringState
|
|
106
|
-
signalingState
|
|
52
|
+
iceConnectionState?: string;
|
|
53
|
+
iceGatheringState?: string;
|
|
54
|
+
signalingState?: string;
|
|
107
55
|
}
|
|
108
56
|
|
|
109
57
|
export interface PeerConnectionClosedEventPayload extends Record<string, unknown> {
|
|
110
58
|
peerConnectionId: string;
|
|
111
|
-
iceConnectionState
|
|
112
|
-
iceGatheringState
|
|
113
|
-
signalingState
|
|
59
|
+
iceConnectionState?: string;
|
|
60
|
+
iceGatheringState?: string;
|
|
61
|
+
signalingState?: string;
|
|
114
62
|
}
|
|
115
63
|
|
|
116
|
-
export interface
|
|
64
|
+
export interface MediaTrackAddedEventPayload extends Record<string, unknown> {
|
|
65
|
+
peerConnectionId: string;
|
|
117
66
|
trackId: string;
|
|
118
67
|
kind: 'audio' | 'video';
|
|
119
68
|
label?: string;
|
|
@@ -121,9 +70,13 @@ export interface MediaTrackMutedEventPayload extends Record<string, unknown> {
|
|
|
121
70
|
enabled: boolean;
|
|
122
71
|
readyState: string;
|
|
123
72
|
contentHint?: string;
|
|
73
|
+
constraints: MediaTrackConstraints,
|
|
74
|
+
capabilities: MediaTrackCapabilities,
|
|
75
|
+
settings: MediaTrackSettings,
|
|
124
76
|
}
|
|
125
77
|
|
|
126
|
-
export interface
|
|
78
|
+
export interface MediaTrackRemovedEventPayload extends Record<string, unknown> {
|
|
79
|
+
peerConnectionId: string;
|
|
127
80
|
trackId: string;
|
|
128
81
|
kind: 'audio' | 'video';
|
|
129
82
|
label?: string;
|
|
@@ -133,7 +86,8 @@ export interface MediaTrackUnmutedEventPayload extends Record<string, unknown> {
|
|
|
133
86
|
contentHint?: string;
|
|
134
87
|
}
|
|
135
88
|
|
|
136
|
-
export interface
|
|
89
|
+
export interface MediaTrackMutedEventPayload extends Record<string, unknown> {
|
|
90
|
+
peerConnectionId: string;
|
|
137
91
|
trackId: string;
|
|
138
92
|
kind: 'audio' | 'video';
|
|
139
93
|
label?: string;
|
|
@@ -141,12 +95,10 @@ export interface MediaTrackAddedEventPayload extends Record<string, unknown> {
|
|
|
141
95
|
enabled: boolean;
|
|
142
96
|
readyState: string;
|
|
143
97
|
contentHint?: string;
|
|
144
|
-
constraints: MediaTrackConstraints,
|
|
145
|
-
capabilities: MediaTrackCapabilities,
|
|
146
|
-
settings: MediaTrackSettings,
|
|
147
98
|
}
|
|
148
99
|
|
|
149
|
-
export interface
|
|
100
|
+
export interface MediaTrackUnmutedEventPayload extends Record<string, unknown> {
|
|
101
|
+
peerConnectionId: string;
|
|
150
102
|
trackId: string;
|
|
151
103
|
kind: 'audio' | 'video';
|
|
152
104
|
label?: string;
|
|
@@ -156,21 +108,173 @@ export interface MediaTrackRemovedEventPayload extends Record<string, unknown> {
|
|
|
156
108
|
contentHint?: string;
|
|
157
109
|
}
|
|
158
110
|
|
|
111
|
+
export interface IceGatheringStateChangedEventPayload extends Record<string, unknown> {
|
|
112
|
+
peerConnectionId: string;
|
|
113
|
+
iceGatheringState: string;
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
export interface PeerConnectionStateChangedEventPayload extends Record<string, unknown> {
|
|
117
|
+
peerConnectionId: string;
|
|
118
|
+
connectionState: string;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
export interface IceConnectionStateChangedEventPayload extends Record<string, unknown> {
|
|
122
|
+
peerConnectionId: string;
|
|
123
|
+
iceConnectionState: string;
|
|
124
|
+
}
|
|
125
|
+
|
|
159
126
|
export interface DataChannelErrorEventPayload extends Record<string, unknown> {
|
|
160
127
|
label: string;
|
|
128
|
+
peerConnectionId: string;
|
|
161
129
|
readyState: string;
|
|
162
|
-
dataChannelId: string,
|
|
163
|
-
error: string,
|
|
130
|
+
dataChannelId: string | number | null,
|
|
131
|
+
error: string | null,
|
|
164
132
|
}
|
|
165
133
|
|
|
166
134
|
export interface DataChannelOpenEventPayload extends Record<string, unknown> {
|
|
135
|
+
peerConnectionId: string;
|
|
167
136
|
label: string;
|
|
168
137
|
readyState: string;
|
|
169
|
-
dataChannelId: string,
|
|
138
|
+
dataChannelId: string | number | null,
|
|
170
139
|
}
|
|
171
140
|
|
|
172
141
|
export interface DataChannelClosedEventPayload extends Record<string, unknown> {
|
|
142
|
+
peerConnectionId: string;
|
|
173
143
|
label: string;
|
|
174
144
|
readyState: string;
|
|
175
|
-
dataChannelId: string,
|
|
145
|
+
dataChannelId: string | number | null,
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
export interface NegotiationNeededEventPayload extends Record<string, unknown> {
|
|
149
|
+
peerConnectionId: string;
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
export interface IceCandidateEventPayload extends Record<string, unknown> {
|
|
153
|
+
peerConnectionId: string;
|
|
154
|
+
|
|
155
|
+
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/address) */
|
|
156
|
+
address?: string | null;
|
|
157
|
+
|
|
158
|
+
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/candidate) */
|
|
159
|
+
candidate?: string;
|
|
160
|
+
|
|
161
|
+
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/component) */
|
|
162
|
+
component?: RTCIceComponent | null;
|
|
163
|
+
|
|
164
|
+
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/foundation) */
|
|
165
|
+
foundation?: string | null;
|
|
166
|
+
|
|
167
|
+
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/port) */
|
|
168
|
+
port?: number | null;
|
|
169
|
+
|
|
170
|
+
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/priority) */
|
|
171
|
+
priority?: number | null;
|
|
172
|
+
|
|
173
|
+
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/protocol) */
|
|
174
|
+
protocol?: RTCIceProtocol | null;
|
|
175
|
+
|
|
176
|
+
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/relatedAddress) */
|
|
177
|
+
relatedAddress?: string | null;
|
|
178
|
+
|
|
179
|
+
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/relatedPort) */
|
|
180
|
+
relatedPort?: number | null;
|
|
181
|
+
|
|
182
|
+
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/sdpMLineIndex) */
|
|
183
|
+
sdpMLineIndex?: number | null;
|
|
184
|
+
|
|
185
|
+
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/sdpMid) */
|
|
186
|
+
sdpMid?: string | null;
|
|
187
|
+
|
|
188
|
+
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/tcpType) */
|
|
189
|
+
tcpType?: RTCIceTcpCandidateType | null;
|
|
190
|
+
|
|
191
|
+
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/type) */
|
|
192
|
+
type?: RTCIceCandidateType | null;
|
|
193
|
+
|
|
194
|
+
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/usernameFragment) */
|
|
195
|
+
usernameFragment?: string | null;
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
export interface IceCandidateErrorEventPayload extends Record<string, unknown> {
|
|
199
|
+
peerConnectionId: string;
|
|
200
|
+
errorCode?: number;
|
|
201
|
+
errorText?: string;
|
|
202
|
+
address?: string | null;
|
|
203
|
+
port?: number | null;
|
|
204
|
+
url?: string | null;
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
export interface SignalingStateChangedEventPayload extends Record<string, unknown> {
|
|
208
|
+
peerConnectionId: string;
|
|
209
|
+
signalingState: string;
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
export interface ProducerAddedEventPayload extends Record<string, unknown> {
|
|
213
|
+
peerConnectionId: string;
|
|
214
|
+
producerId: string;
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
export interface ProducerRemovedEventPayload extends Record<string, unknown> {
|
|
218
|
+
peerConnectionId: string;
|
|
219
|
+
producerId: string;
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
export interface ProducerPausedEventPayload extends Record<string, unknown> {
|
|
223
|
+
peerConnectionId: string;
|
|
224
|
+
producerId: string;
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
export interface ProducerResumedEventPayload extends Record<string, unknown> {
|
|
228
|
+
peerConnectionId: string;
|
|
229
|
+
producerId: string;
|
|
176
230
|
}
|
|
231
|
+
|
|
232
|
+
export interface ConsumerAddedEventPayload extends Record<string, unknown> {
|
|
233
|
+
peerConnectionId: string;
|
|
234
|
+
producerId: string;
|
|
235
|
+
consumerId: string;
|
|
236
|
+
trackId: string;
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
export interface ConsumerRemovedEventPayload extends Record<string, unknown> {
|
|
240
|
+
peerConnectionId: string;
|
|
241
|
+
producerId: string;
|
|
242
|
+
consumerId: string;
|
|
243
|
+
trackId: string;
|
|
244
|
+
}
|
|
245
|
+
|
|
246
|
+
export interface ConsumerPausedEventPayload extends Record<string, unknown> {
|
|
247
|
+
peerConnectionId: string;
|
|
248
|
+
producerId: string;
|
|
249
|
+
consumerId: string;
|
|
250
|
+
trackId: string;
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
export interface ConsumerResumedEventPayload extends Record<string, unknown> {
|
|
254
|
+
peerConnectionId: string;
|
|
255
|
+
producerId: string;
|
|
256
|
+
consumerId: string;
|
|
257
|
+
trackId: string;
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
export interface DataProducerCreatedEventPayload extends Record<string, unknown> {
|
|
261
|
+
peerConnectionId: string;
|
|
262
|
+
dataProducerId: string;
|
|
263
|
+
}
|
|
264
|
+
|
|
265
|
+
export interface DataProducerClosedEventPayload extends Record<string, unknown> {
|
|
266
|
+
peerConnectionId: string;
|
|
267
|
+
dataProducerId: string;
|
|
268
|
+
}
|
|
269
|
+
|
|
270
|
+
export interface DataConsumerCreatedEventPayload extends Record<string, unknown> {
|
|
271
|
+
peerConnectionId: string;
|
|
272
|
+
dataProducerId: string;
|
|
273
|
+
dataConsumerId: string;
|
|
274
|
+
}
|
|
275
|
+
|
|
276
|
+
export interface DataConsumerClosedEventPayload extends Record<string, unknown> {
|
|
277
|
+
peerConnectionId: string;
|
|
278
|
+
dataProducerId: string;
|
|
279
|
+
dataConsumerId: string;
|
|
280
|
+
}
|