@observertc/observer-js 0.30.6-beta → 0.40.0-beta

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.
Files changed (55) hide show
  1. package/lib/ObservedCall.d.ts +6 -13
  2. package/lib/ObservedCall.d.ts.map +1 -1
  3. package/lib/ObservedCall.js +24 -104
  4. package/lib/ObservedClient.d.ts +16 -27
  5. package/lib/ObservedClient.d.ts.map +1 -1
  6. package/lib/ObservedClient.js +360 -523
  7. package/lib/ObservedInboundTrack.d.ts +3 -8
  8. package/lib/ObservedInboundTrack.d.ts.map +1 -1
  9. package/lib/ObservedInboundTrack.js +74 -154
  10. package/lib/ObservedOutboundTrack.d.ts +9 -8
  11. package/lib/ObservedOutboundTrack.d.ts.map +1 -1
  12. package/lib/ObservedOutboundTrack.js +76 -130
  13. package/lib/ObservedPeerConnection.d.ts +17 -15
  14. package/lib/ObservedPeerConnection.d.ts.map +1 -1
  15. package/lib/ObservedPeerConnection.js +64 -173
  16. package/lib/ObservedSfu.d.ts +5 -7
  17. package/lib/ObservedSfu.d.ts.map +1 -1
  18. package/lib/ObservedSfu.js +10 -74
  19. package/lib/Observer.d.ts +5 -6
  20. package/lib/Observer.d.ts.map +1 -1
  21. package/lib/Observer.js +28 -31
  22. package/lib/common/types.d.ts +0 -55
  23. package/lib/common/types.d.ts.map +1 -1
  24. package/lib/index.d.ts +5 -7
  25. package/lib/index.d.ts.map +1 -1
  26. package/package.json +1 -1
  27. package/src/ObservedCall.ts +27 -87
  28. package/src/ObservedClient.ts +425 -582
  29. package/src/ObservedInboundTrack.ts +14 -65
  30. package/src/ObservedOutboundTrack.ts +32 -53
  31. package/src/ObservedPeerConnection.ts +55 -117
  32. package/src/ObservedSfu.ts +11 -46
  33. package/src/Observer.ts +11 -16
  34. package/src/common/types.ts +0 -69
  35. package/src/index.ts +5 -7
  36. package/lib/models/Models.d.ts +0 -642
  37. package/lib/models/Models.d.ts.map +0 -1
  38. package/lib/models/Models.js +0 -481
  39. package/lib/models/samples_pb.d.ts +0 -2452
  40. package/lib/models/samples_pb.d.ts.map +0 -1
  41. package/lib/models/samples_pb.js +0 -1495
  42. package/lib/storages/ObserverStorage.d.ts +0 -87
  43. package/lib/storages/ObserverStorage.d.ts.map +0 -1
  44. package/lib/storages/ObserverStorage.js +0 -2
  45. package/lib/storages/SimpleStorage.d.ts +0 -19
  46. package/lib/storages/SimpleStorage.d.ts.map +0 -1
  47. package/lib/storages/SimpleStorage.js +0 -106
  48. package/lib/storages/StorageProvider.d.ts +0 -16
  49. package/lib/storages/StorageProvider.d.ts.map +0 -1
  50. package/lib/storages/StorageProvider.js +0 -29
  51. package/src/models/Models.ts +0 -1103
  52. package/src/models/samples_pb.ts +0 -4061
  53. package/src/storages/ObserverStorage.ts +0 -99
  54. package/src/storages/SimpleStorage.ts +0 -120
  55. package/src/storages/StorageProvider.ts +0 -42
@@ -1,66 +1,13 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
26
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
27
- return new (P || (P = Promise))(function (resolve, reject) {
28
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
29
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
30
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
31
- step((generator = generator.apply(thisArg, _arguments || [])).next());
32
- });
33
- };
34
2
  Object.defineProperty(exports, "__esModule", { value: true });
35
3
  exports.ObservedOutboundTrack = void 0;
36
4
  const events_1 = require("events");
37
- const Models = __importStar(require("./models/Models"));
38
- const SingleExecutor_1 = require("./common/SingleExecutor");
39
5
  class ObservedOutboundTrack extends events_1.EventEmitter {
40
- static create(config, peerConnection, storageProvider) {
41
- return __awaiter(this, void 0, void 0, function* () {
42
- const model = new Models.OutboundTrack({
43
- serviceId: peerConnection.client.serviceId,
44
- roomId: peerConnection.client.roomId,
45
- callId: peerConnection.client.callId,
46
- clientId: peerConnection.client.clientId,
47
- mediaUnitId: peerConnection.client.mediaUnitId,
48
- peerConnectionId: peerConnection.peerConnectionId,
49
- trackId: config.trackId,
50
- kind: config.kind,
51
- sfuStreamId: config.sfuStreamId,
52
- });
53
- const alreadyInserted = yield storageProvider.outboundTrackStorage.insert(config.trackId, model);
54
- if (alreadyInserted)
55
- throw new Error(`OutboundAudioTrack with id ${config.trackId} already exists`);
56
- return new ObservedOutboundTrack(model, peerConnection, storageProvider);
57
- });
58
- }
59
- constructor(_model, peerConnection, _storageProvider) {
6
+ constructor(_model, peerConnection) {
60
7
  super();
61
8
  this._model = _model;
62
9
  this.peerConnection = peerConnection;
63
- this._storageProvider = _storageProvider;
10
+ this.created = Date.now();
64
11
  this.bitrate = 0;
65
12
  this.totalLostPackets = 0;
66
13
  this.totalSentPackets = 0;
@@ -71,19 +18,33 @@ class ObservedOutboundTrack extends events_1.EventEmitter {
71
18
  this.deltaSentBytes = 0;
72
19
  this.deltaSentFrames = 0;
73
20
  this.deltaEncodedFrames = 0;
74
- this.created = Date.now();
75
21
  this._stats = new Map();
76
- this._execute = (0, SingleExecutor_1.createSingleExecutor)();
77
22
  this._closed = false;
78
23
  this._updated = Date.now();
79
24
  this._remoteInboundTracks = new Map();
80
25
  }
26
+ get serviceId() {
27
+ return this.peerConnection.serviceId;
28
+ }
29
+ get roomId() {
30
+ return this.peerConnection.roomId;
31
+ }
32
+ get callId() {
33
+ return this.peerConnection.callId;
34
+ }
35
+ get clientId() {
36
+ return this.peerConnection.clientId;
37
+ }
38
+ get mediaUnitId() {
39
+ return this.peerConnection.mediaUnitId;
40
+ }
41
+ get peerConnectionId() {
42
+ return this.peerConnection.peerConnectionId;
43
+ }
81
44
  get kind() {
82
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
83
45
  return this._model.kind;
84
46
  }
85
47
  get trackId() {
86
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
87
48
  return this._model.trackId;
88
49
  }
89
50
  get sfuStreamId() {
@@ -111,9 +72,7 @@ class ObservedOutboundTrack extends events_1.EventEmitter {
111
72
  if (this._closed)
112
73
  return;
113
74
  this._closed = true;
114
- this._execute(() => this._storageProvider.inboundTrackStorage.remove(this.trackId))
115
- .catch(() => void 0)
116
- .finally(() => this.emit('close'));
75
+ this.emit('close');
117
76
  }
118
77
  resetMetrics() {
119
78
  this.bitrate = 0;
@@ -126,69 +85,63 @@ class ObservedOutboundTrack extends events_1.EventEmitter {
126
85
  }
127
86
  update(sample, timestamp) {
128
87
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
129
- return __awaiter(this, void 0, void 0, function* () {
130
- if (this._closed)
131
- return;
132
- let executeSave = false;
133
- const report = Object.assign(Object.assign({ serviceId: this.peerConnection.client.serviceId, roomId: this.peerConnection.client.call.roomId, callId: this.peerConnection.client.call.callId, clientId: this.peerConnection.client.clientId, userId: this.peerConnection.client.userId, mediaUnitId: this.peerConnection.client.mediaUnitId, peerConnectionId: this.peerConnection.peerConnectionId }, sample), { timestamp, sampleSeq: -1 });
134
- if (this.kind === 'audio')
135
- this.reports.addOutboundAudioTrackReport(report);
136
- else if (this.kind === 'video')
137
- this.reports.addOutboundVideoTrackReport(report);
138
- const elapsedTimeInMs = Math.max(1, timestamp - this._updated);
139
- const lastStat = this._stats.get(sample.ssrc);
140
- const rttInMs = sample.roundTripTime ? sample.roundTripTime * 1000 : undefined;
141
- const bitrate = (((_a = sample.bytesSent) !== null && _a !== void 0 ? _a : 0) - ((_b = lastStat === null || lastStat === void 0 ? void 0 : lastStat.bytesSent) !== null && _b !== void 0 ? _b : 0)) * 8 / (elapsedTimeInMs / 1000);
142
- const deltaLostPackets = ((_c = sample.packetsLost) !== null && _c !== void 0 ? _c : 0) - ((_d = lastStat === null || lastStat === void 0 ? void 0 : lastStat.packetsLost) !== null && _d !== void 0 ? _d : 0);
143
- const deltaSentPackets = ((_e = sample.packetsSent) !== null && _e !== void 0 ? _e : 0) - ((_f = lastStat === null || lastStat === void 0 ? void 0 : lastStat.packetsSent) !== null && _f !== void 0 ? _f : 0);
144
- const deltaSentBytes = ((_g = sample.bytesSent) !== null && _g !== void 0 ? _g : 0) - ((_h = lastStat === null || lastStat === void 0 ? void 0 : lastStat.bytesSent) !== null && _h !== void 0 ? _h : 0);
145
- let deltaEncodedFrames;
146
- let deltaSentFrames;
147
- if (this.kind === 'video') {
148
- const videoSample = sample;
149
- const lastVideoStats = lastStat;
150
- deltaEncodedFrames = ((_j = videoSample.framesEncoded) !== null && _j !== void 0 ? _j : 0) - ((_k = lastVideoStats === null || lastVideoStats === void 0 ? void 0 : lastVideoStats.framesEncoded) !== null && _k !== void 0 ? _k : 0);
151
- deltaSentFrames = ((_l = videoSample.framesSent) !== null && _l !== void 0 ? _l : 0) - ((_m = lastVideoStats === null || lastVideoStats === void 0 ? void 0 : lastVideoStats.framesSent) !== null && _m !== void 0 ? _m : 0);
152
- }
153
- const stats = Object.assign(Object.assign({}, sample), { rttInMs,
154
- bitrate, ssrc: sample.ssrc, deltaLostPackets,
155
- deltaSentPackets,
156
- deltaSentBytes,
157
- deltaEncodedFrames,
158
- deltaSentFrames });
159
- this._stats.set(sample.ssrc, stats);
160
- this.bitrate = [...this._stats.values()].reduce((acc, stat) => acc + stat.bitrate, 0);
161
- this.rttInMs = [...this._stats.values()].reduce((acc, stat) => { var _a; return acc + ((_a = stat.rttInMs) !== null && _a !== void 0 ? _a : 0); }, 0) / (this._stats.size || 1);
162
- this.totalLostPackets = [...this._stats.values()].reduce((acc, stat) => { var _a; return acc + ((_a = stat.packetsLost) !== null && _a !== void 0 ? _a : 0); }, 0);
163
- this.totalSentPackets = [...this._stats.values()].reduce((acc, stat) => { var _a; return acc + ((_a = stat.packetsSent) !== null && _a !== void 0 ? _a : 0); }, 0);
164
- this.totalSentBytes = [...this._stats.values()].reduce((acc, stat) => { var _a; return acc + ((_a = stat.bytesSent) !== null && _a !== void 0 ? _a : 0); }, 0);
165
- this.deltaEncodedFrames = [...this._stats.values()].reduce((acc, stat) => { var _a; return acc + ((_a = stat.deltaEncodedFrames) !== null && _a !== void 0 ? _a : 0); }, 0);
166
- this.deltaSentFrames = [...this._stats.values()].reduce((acc, stat) => { var _a; return acc + ((_a = stat.deltaSentFrames) !== null && _a !== void 0 ? _a : 0); }, 0);
167
- this.deltaLostPackets = [...this._stats.values()].reduce((acc, stat) => acc + stat.deltaLostPackets, 0);
168
- this.deltaSentPackets = [...this._stats.values()].reduce((acc, stat) => acc + stat.deltaSentPackets, 0);
169
- this.deltaSentBytes = [...this._stats.values()].reduce((acc, stat) => acc + stat.deltaSentBytes, 0);
170
- // setting up sfu connection as it is not always available at the first sample
171
- if (sample.sfuStreamId && !this._model.sfuStreamId) {
172
- this._model.sfuStreamId = sample.sfuStreamId;
173
- this.once('close', () => {
174
- if (!this._model.sfuStreamId)
175
- return;
176
- if (this.kind === 'audio')
177
- this.peerConnection.client.call.sfuStreamIdToOutboundAudioTrack.delete(this._model.sfuStreamId);
178
- else if (this.kind === 'video')
179
- this.peerConnection.client.call.sfuStreamIdToOutboundVideoTrack.delete(this._model.sfuStreamId);
180
- });
88
+ if (this._closed)
89
+ return;
90
+ const report = Object.assign(Object.assign({ serviceId: this.peerConnection.client.serviceId, roomId: this.peerConnection.client.call.roomId, callId: this.peerConnection.client.call.callId, clientId: this.peerConnection.client.clientId, userId: this.peerConnection.client.userId, mediaUnitId: this.peerConnection.client.mediaUnitId, peerConnectionId: this.peerConnection.peerConnectionId }, sample), { timestamp, sampleSeq: -1 });
91
+ if (this.kind === 'audio')
92
+ this.reports.addOutboundAudioTrackReport(report);
93
+ else if (this.kind === 'video')
94
+ this.reports.addOutboundVideoTrackReport(report);
95
+ const elapsedTimeInMs = Math.max(1, timestamp - this._updated);
96
+ const lastStat = this._stats.get(sample.ssrc);
97
+ const rttInMs = sample.roundTripTime ? sample.roundTripTime * 1000 : undefined;
98
+ const bitrate = (((_a = sample.bytesSent) !== null && _a !== void 0 ? _a : 0) - ((_b = lastStat === null || lastStat === void 0 ? void 0 : lastStat.bytesSent) !== null && _b !== void 0 ? _b : 0)) * 8 / (elapsedTimeInMs / 1000);
99
+ const deltaLostPackets = ((_c = sample.packetsLost) !== null && _c !== void 0 ? _c : 0) - ((_d = lastStat === null || lastStat === void 0 ? void 0 : lastStat.packetsLost) !== null && _d !== void 0 ? _d : 0);
100
+ const deltaSentPackets = ((_e = sample.packetsSent) !== null && _e !== void 0 ? _e : 0) - ((_f = lastStat === null || lastStat === void 0 ? void 0 : lastStat.packetsSent) !== null && _f !== void 0 ? _f : 0);
101
+ const deltaSentBytes = ((_g = sample.bytesSent) !== null && _g !== void 0 ? _g : 0) - ((_h = lastStat === null || lastStat === void 0 ? void 0 : lastStat.bytesSent) !== null && _h !== void 0 ? _h : 0);
102
+ let deltaEncodedFrames;
103
+ let deltaSentFrames;
104
+ if (this.kind === 'video') {
105
+ const videoSample = sample;
106
+ const lastVideoStats = lastStat;
107
+ deltaEncodedFrames = ((_j = videoSample.framesEncoded) !== null && _j !== void 0 ? _j : 0) - ((_k = lastVideoStats === null || lastVideoStats === void 0 ? void 0 : lastVideoStats.framesEncoded) !== null && _k !== void 0 ? _k : 0);
108
+ deltaSentFrames = ((_l = videoSample.framesSent) !== null && _l !== void 0 ? _l : 0) - ((_m = lastVideoStats === null || lastVideoStats === void 0 ? void 0 : lastVideoStats.framesSent) !== null && _m !== void 0 ? _m : 0);
109
+ }
110
+ const stats = Object.assign(Object.assign({}, sample), { rttInMs,
111
+ bitrate, ssrc: sample.ssrc, deltaLostPackets,
112
+ deltaSentPackets,
113
+ deltaSentBytes,
114
+ deltaEncodedFrames,
115
+ deltaSentFrames });
116
+ this._stats.set(sample.ssrc, stats);
117
+ this.bitrate = [...this._stats.values()].reduce((acc, stat) => acc + stat.bitrate, 0);
118
+ this.rttInMs = [...this._stats.values()].reduce((acc, stat) => { var _a; return acc + ((_a = stat.rttInMs) !== null && _a !== void 0 ? _a : 0); }, 0) / (this._stats.size || 1);
119
+ this.totalLostPackets = [...this._stats.values()].reduce((acc, stat) => { var _a; return acc + ((_a = stat.packetsLost) !== null && _a !== void 0 ? _a : 0); }, 0);
120
+ this.totalSentPackets = [...this._stats.values()].reduce((acc, stat) => { var _a; return acc + ((_a = stat.packetsSent) !== null && _a !== void 0 ? _a : 0); }, 0);
121
+ this.totalSentBytes = [...this._stats.values()].reduce((acc, stat) => { var _a; return acc + ((_a = stat.bytesSent) !== null && _a !== void 0 ? _a : 0); }, 0);
122
+ this.deltaEncodedFrames = [...this._stats.values()].reduce((acc, stat) => { var _a; return acc + ((_a = stat.deltaEncodedFrames) !== null && _a !== void 0 ? _a : 0); }, 0);
123
+ this.deltaSentFrames = [...this._stats.values()].reduce((acc, stat) => { var _a; return acc + ((_a = stat.deltaSentFrames) !== null && _a !== void 0 ? _a : 0); }, 0);
124
+ this.deltaLostPackets = [...this._stats.values()].reduce((acc, stat) => acc + stat.deltaLostPackets, 0);
125
+ this.deltaSentPackets = [...this._stats.values()].reduce((acc, stat) => acc + stat.deltaSentPackets, 0);
126
+ this.deltaSentBytes = [...this._stats.values()].reduce((acc, stat) => acc + stat.deltaSentBytes, 0);
127
+ // setting up sfu connection as it is not always available at the first sample
128
+ if (sample.sfuStreamId && !this._model.sfuStreamId) {
129
+ this._model.sfuStreamId = sample.sfuStreamId;
130
+ this.once('close', () => {
131
+ if (!this._model.sfuStreamId)
132
+ return;
181
133
  if (this.kind === 'audio')
182
- this.peerConnection.client.call.sfuStreamIdToOutboundAudioTrack.set(this._model.sfuStreamId, this);
134
+ this.peerConnection.client.call.sfuStreamIdToOutboundAudioTrack.delete(this._model.sfuStreamId);
183
135
  else if (this.kind === 'video')
184
- this.peerConnection.client.call.sfuStreamIdToOutboundVideoTrack.set(this._model.sfuStreamId, this);
185
- executeSave = true;
186
- }
187
- if (executeSave)
188
- yield this._save();
189
- this._updated = timestamp;
190
- this.emit('update');
191
- });
136
+ this.peerConnection.client.call.sfuStreamIdToOutboundVideoTrack.delete(this._model.sfuStreamId);
137
+ });
138
+ if (this.kind === 'audio')
139
+ this.peerConnection.client.call.sfuStreamIdToOutboundAudioTrack.set(this._model.sfuStreamId, this);
140
+ else if (this.kind === 'video')
141
+ this.peerConnection.client.call.sfuStreamIdToOutboundVideoTrack.set(this._model.sfuStreamId, this);
142
+ }
143
+ this._updated = timestamp;
144
+ this.emit('update');
192
145
  }
193
146
  connectInboundTrack(track) {
194
147
  if (this._closed)
@@ -199,12 +152,5 @@ class ObservedOutboundTrack extends events_1.EventEmitter {
199
152
  });
200
153
  this._remoteInboundTracks.set(track.trackId, track);
201
154
  }
202
- _save() {
203
- return __awaiter(this, void 0, void 0, function* () {
204
- if (this._closed)
205
- throw new Error(`OutboundTrack ${this.trackId} is closed`);
206
- return this._storageProvider.outboundTrackStorage.set(this.trackId, this._model);
207
- });
208
- }
209
155
  }
210
156
  exports.ObservedOutboundTrack = ObservedOutboundTrack;
@@ -1,10 +1,9 @@
1
1
  /// <reference types="node" />
2
2
  import { EventEmitter } from 'events';
3
- import { StorageProvider } from './storages/StorageProvider';
4
3
  import { PeerConnectionTransport } from '@observertc/sample-schemas-js';
5
4
  import { ObservedClient } from './ObservedClient';
6
- import { ObservedInboundTrack, ObservedInboundTrackConfig } from './ObservedInboundTrack';
7
- import { ObservedOutboundTrack, ObservedOutboundTrackConfig } from './ObservedOutboundTrack';
5
+ import { ObservedInboundTrack, ObservedInboundTrackModel } from './ObservedInboundTrack';
6
+ import { ObservedOutboundTrack, ObservedOutboundTrackModel } from './ObservedOutboundTrack';
8
7
  import { ObservedICE } from './ObservedICE';
9
8
  export type ObservedPeerConnectionEvents = {
10
9
  update: [];
@@ -14,8 +13,9 @@ export type ObservedPeerConnectionEvents = {
14
13
  newoutboundaudiotrack: [ObservedOutboundTrack<'audio'>];
15
14
  newoutboundvideotrack: [ObservedOutboundTrack<'video'>];
16
15
  };
17
- export type ObservedPeerConnectionConfig = {
16
+ export type ObservedPeerConnectionModel = {
18
17
  peerConnectionId: string;
18
+ label?: string;
19
19
  };
20
20
  export type ObservedPeerConnectionStats = Omit<PeerConnectionTransport, 'transportId' | 'label'>;
21
21
  export declare interface ObservedPeerConnection {
@@ -27,9 +27,7 @@ export declare interface ObservedPeerConnection {
27
27
  export declare class ObservedPeerConnection extends EventEmitter {
28
28
  private readonly _model;
29
29
  readonly client: ObservedClient;
30
- private readonly _storageProvider;
31
- static create(config: ObservedPeerConnectionConfig, client: ObservedClient, storageProvider: StorageProvider): Promise<ObservedPeerConnection>;
32
- created: number;
30
+ readonly created: number;
33
31
  totalInboundPacketsLost: number;
34
32
  totalInboundPacketsReceived: number;
35
33
  totalOutboundPacketsSent: number;
@@ -69,9 +67,14 @@ export declare class ObservedPeerConnection extends EventEmitter {
69
67
  private readonly _inboundVideoTracks;
70
68
  private readonly _outboundAudioTracks;
71
69
  private readonly _outboundVideoTracks;
72
- private readonly _execute;
73
- private constructor();
70
+ constructor(_model: ObservedPeerConnectionModel, client: ObservedClient);
71
+ get serviceId(): string;
72
+ get roomId(): string;
73
+ get callId(): string;
74
+ get clientId(): string;
75
+ get mediaUnitId(): string;
74
76
  get label(): string | undefined;
77
+ set label(value: string | undefined);
75
78
  get usingTURN(): boolean;
76
79
  get availableOutgoingBitrate(): number | undefined;
77
80
  get availableIncomingBitrate(): number | undefined;
@@ -89,11 +92,10 @@ export declare class ObservedPeerConnection extends EventEmitter {
89
92
  getTrack(trackId: string): ObservedInboundTrack<'audio'> | ObservedInboundTrack<'video'> | ObservedOutboundTrack<'audio'> | ObservedOutboundTrack<'video'> | undefined;
90
93
  resetMetrics(): void;
91
94
  updateMetrics(): void;
92
- update(sample: PeerConnectionTransport, timestamp: number): Promise<void>;
93
- createInboundAudioTrack(config: Omit<ObservedInboundTrackConfig<'audio'>, 'kind'>): Promise<ObservedInboundTrack<'audio'>>;
94
- createInboundVideoTrack(config: Omit<ObservedInboundTrackConfig<'video'>, 'kind'>): Promise<ObservedInboundTrack<'video'>>;
95
- createOutboundAudioTrack(config: Omit<ObservedOutboundTrackConfig<'audio'>, 'kind'>): Promise<ObservedOutboundTrack<'audio'>>;
96
- createOutboundVideoTrack(config: Omit<ObservedOutboundTrackConfig<'video'>, 'kind'>): Promise<ObservedOutboundTrack<'video'>>;
97
- private _save;
95
+ update(sample: PeerConnectionTransport, timestamp: number): void;
96
+ createInboundAudioTrack(config: Omit<ObservedInboundTrackModel<'audio'>, 'kind'>): ObservedInboundTrack<'audio'>;
97
+ createInboundVideoTrack(config: Omit<ObservedInboundTrackModel<'video'>, 'kind'>): ObservedInboundTrack<'video'>;
98
+ createOutboundAudioTrack(config: Omit<ObservedOutboundTrackModel<'audio'>, 'kind'>): ObservedOutboundTrack<'audio'>;
99
+ createOutboundVideoTrack(config: Omit<ObservedOutboundTrackModel<'video'>, 'kind'>): ObservedOutboundTrack<'video'>;
98
100
  }
99
101
  //# sourceMappingURL=ObservedPeerConnection.d.ts.map
@@ -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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"}