livekit-client 0.12.2 → 0.13.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.
Files changed (81) hide show
  1. package/.eslintrc.js +1 -0
  2. package/.github/workflows/publish.yaml +1 -3
  3. package/dist/api/SignalClient.d.ts +3 -1
  4. package/dist/api/SignalClient.js +8 -0
  5. package/dist/api/SignalClient.js.map +1 -1
  6. package/dist/connect.d.ts +23 -0
  7. package/dist/connect.js +93 -0
  8. package/dist/connect.js.map +1 -0
  9. package/dist/index.d.ts +2 -1
  10. package/dist/index.js +2 -1
  11. package/dist/index.js.map +1 -1
  12. package/dist/options.d.ts +5 -3
  13. package/dist/options.js.map +1 -1
  14. package/dist/proto/livekit_models.d.ts +15 -0
  15. package/dist/proto/livekit_models.js +129 -1
  16. package/dist/proto/livekit_models.js.map +1 -1
  17. package/dist/proto/livekit_rtc.d.ts +16 -1
  18. package/dist/proto/livekit_rtc.js +116 -1
  19. package/dist/proto/livekit_rtc.js.map +1 -1
  20. package/dist/room/DeviceManager.d.ts +10 -0
  21. package/dist/room/DeviceManager.js +77 -0
  22. package/dist/room/DeviceManager.js.map +1 -0
  23. package/dist/room/RTCEngine.d.ts +1 -1
  24. package/dist/room/RTCEngine.js +8 -7
  25. package/dist/room/RTCEngine.js.map +1 -1
  26. package/dist/room/Room.d.ts +45 -2
  27. package/dist/room/Room.js +108 -2
  28. package/dist/room/Room.js.map +1 -1
  29. package/dist/room/defaults.d.ts +3 -0
  30. package/dist/room/defaults.js +13 -0
  31. package/dist/room/defaults.js.map +1 -0
  32. package/dist/room/events.d.ts +23 -2
  33. package/dist/room/events.js +22 -1
  34. package/dist/room/events.js.map +1 -1
  35. package/dist/room/participant/LocalParticipant.d.ts +28 -0
  36. package/dist/room/participant/LocalParticipant.js +127 -13
  37. package/dist/room/participant/LocalParticipant.js.map +1 -1
  38. package/dist/room/participant/Participant.d.ts +14 -0
  39. package/dist/room/participant/Participant.js +39 -0
  40. package/dist/room/participant/Participant.js.map +1 -1
  41. package/dist/room/participant/RemoteParticipant.d.ts +2 -0
  42. package/dist/room/participant/RemoteParticipant.js +14 -0
  43. package/dist/room/participant/RemoteParticipant.js.map +1 -1
  44. package/dist/room/track/LocalAudioTrack.d.ts +3 -0
  45. package/dist/room/track/LocalAudioTrack.js +37 -0
  46. package/dist/room/track/LocalAudioTrack.js.map +1 -1
  47. package/dist/room/track/LocalTrack.d.ts +6 -2
  48. package/dist/room/track/LocalTrack.js +34 -5
  49. package/dist/room/track/LocalTrack.js.map +1 -1
  50. package/dist/room/track/LocalTrackPublication.d.ts +6 -3
  51. package/dist/room/track/LocalTrackPublication.js +21 -2
  52. package/dist/room/track/LocalTrackPublication.js.map +1 -1
  53. package/dist/room/track/LocalVideoTrack.d.ts +3 -2
  54. package/dist/room/track/LocalVideoTrack.js +34 -5
  55. package/dist/room/track/LocalVideoTrack.js.map +1 -1
  56. package/dist/room/track/RemoteAudioTrack.d.ts +2 -0
  57. package/dist/room/track/RemoteAudioTrack.js +8 -0
  58. package/dist/room/track/RemoteAudioTrack.js.map +1 -1
  59. package/dist/room/track/RemoteVideoTrack.d.ts +1 -0
  60. package/dist/room/track/RemoteVideoTrack.js +6 -1
  61. package/dist/room/track/RemoteVideoTrack.js.map +1 -1
  62. package/dist/room/track/Track.d.ts +14 -2
  63. package/dist/room/track/Track.js +42 -0
  64. package/dist/room/track/Track.js.map +1 -1
  65. package/dist/room/track/TrackPublication.d.ts +1 -0
  66. package/dist/room/track/TrackPublication.js +2 -0
  67. package/dist/room/track/TrackPublication.js.map +1 -1
  68. package/dist/room/track/create.d.ts +23 -0
  69. package/dist/{livekit.js → room/track/create.js} +72 -109
  70. package/dist/room/track/create.js.map +1 -0
  71. package/dist/room/track/options.d.ts +42 -17
  72. package/dist/room/track/options.js +11 -6
  73. package/dist/room/track/options.js.map +1 -1
  74. package/dist/version.d.ts +2 -2
  75. package/dist/version.js +2 -2
  76. package/example/index.html +51 -20
  77. package/example/sample.ts +195 -79
  78. package/example/webpack.config.js +8 -2
  79. package/package.json +2 -2
  80. package/dist/livekit.d.ts +0 -44
  81. package/dist/livekit.js.map +0 -1
package/dist/room/Room.js CHANGED
@@ -35,6 +35,8 @@ exports.RoomState = void 0;
35
35
  const events_1 = require("events");
36
36
  const loglevel_1 = __importDefault(require("loglevel"));
37
37
  const livekit_models_1 = require("../proto/livekit_models");
38
+ const defaults_1 = require("./defaults");
39
+ const DeviceManager_1 = __importDefault(require("./DeviceManager"));
38
40
  const errors_1 = require("./errors");
39
41
  const events_2 = require("./events");
40
42
  const LocalParticipant_1 = __importDefault(require("./participant/LocalParticipant"));
@@ -66,6 +68,8 @@ class Room extends events_1.EventEmitter {
66
68
  * a [[RoomEvent.ActiveSpeakersChanged]] event is fired
67
69
  */
68
70
  this.activeSpeakers = [];
71
+ /** room metadata */
72
+ this.metadata = undefined;
69
73
  this.audioEnabled = true;
70
74
  /** @internal */
71
75
  this.connect = (url, token, opts) => __awaiter(this, void 0, void 0, function* () {
@@ -116,6 +120,7 @@ class Room extends events_1.EventEmitter {
116
120
  clearTimeout(connectTimeout);
117
121
  // also hook unload event
118
122
  window.addEventListener('beforeunload', this.disconnect);
123
+ navigator.mediaDevices.addEventListener('devicechange', this.handleDeviceChange);
119
124
  resolve(this);
120
125
  });
121
126
  });
@@ -212,6 +217,23 @@ class Room extends events_1.EventEmitter {
212
217
  this.audioEnabled = false;
213
218
  this.emit(events_2.RoomEvent.AudioPlaybackStatusChanged, false);
214
219
  };
220
+ this.handleDeviceChange = () => __awaiter(this, void 0, void 0, function* () {
221
+ // ensure default devices still exist, if not, clear them out
222
+ const mananger = DeviceManager_1.default.getInstance();
223
+ const devices = yield navigator.mediaDevices.enumerateDevices();
224
+ DeviceManager_1.default.mediaDeviceKinds.forEach((kind) => __awaiter(this, void 0, void 0, function* () {
225
+ const deviceId = mananger.getDefaultDevice(kind);
226
+ const device = devices.find((d) => d.deviceId === deviceId && d.kind === kind);
227
+ if (!device) {
228
+ mananger.setDefaultDevice(kind, undefined);
229
+ }
230
+ }));
231
+ this.emit(events_2.RoomEvent.MediaDevicesChanged);
232
+ });
233
+ this.handleRoomUpdate = (r) => {
234
+ this.metadata = r.metadata;
235
+ this.emit(events_2.RoomEvent.RoomMetadataChanged, r.metadata);
236
+ };
215
237
  this.participants = new Map();
216
238
  this.engine = new RTCEngine_1.default(client, config);
217
239
  this.acquireAudioContext();
@@ -224,6 +246,7 @@ class Room extends events_1.EventEmitter {
224
246
  this.engine.on(events_2.EngineEvent.ParticipantUpdate, (participants) => {
225
247
  this.handleParticipantUpdates(participants);
226
248
  });
249
+ this.engine.on(events_2.EngineEvent.RoomUpdate, this.handleRoomUpdate);
227
250
  this.engine.on(events_2.EngineEvent.ActiveSpeakersUpdate, this.handleActiveSpeakersUpdate);
228
251
  this.engine.on(events_2.EngineEvent.SpeakersChanged, this.handleSpeakersChanged);
229
252
  this.engine.on(events_2.EngineEvent.DataPacketReceived, this.handleDataPacket);
@@ -236,6 +259,43 @@ class Room extends events_1.EventEmitter {
236
259
  this.emit(events_2.RoomEvent.Reconnected);
237
260
  });
238
261
  }
262
+ /**
263
+ * getLocalDevices abstracts navigator.mediaDevices.enumerateDevices.
264
+ * In particular, it handles Chrome's unique behavior of creating `default`
265
+ * devices. When encountered, it'll be removed from the list of devices.
266
+ * The actual default device will be placed at top.
267
+ * @param kind
268
+ * @returns a list of available local devices
269
+ */
270
+ static getLocalDevices(kind) {
271
+ return DeviceManager_1.default.getInstance().getDevices(kind);
272
+ }
273
+ /**
274
+ * Sets the default device to use for the MediaDeviceKind. Subsequent tracks
275
+ * created will be using the specified device.
276
+ *
277
+ * @param kind
278
+ * @param deviceId set to undefined to clear the default
279
+ * @returns
280
+ */
281
+ static setDefaultDevice(kind, deviceId) {
282
+ return DeviceManager_1.default.getInstance().setDefaultDevice(kind, deviceId);
283
+ }
284
+ /**
285
+ * @returns the default device set by the user. If no device is explicitly set, returns undefined
286
+ */
287
+ static getDefaultDevice(kind) {
288
+ return DeviceManager_1.default.getInstance().getDefaultDevice(kind);
289
+ }
290
+ /**
291
+ * Set default publish options
292
+ */
293
+ set defaultTrackOptions(opts) {
294
+ defaults_1.setTrackDefaults(opts);
295
+ }
296
+ get defaultTrackOptions() {
297
+ return defaults_1.getTrackDefaults();
298
+ }
239
299
  /**
240
300
  * Browsers have different policies regarding audio playback. Most requiring
241
301
  * some form of user interaction (click/tap/etc).
@@ -272,6 +332,50 @@ class Room extends events_1.EventEmitter {
272
332
  get canPlaybackAudio() {
273
333
  return this.audioEnabled;
274
334
  }
335
+ /**
336
+ * Switches all active device used in this room to the given device.
337
+ *
338
+ * Note: setting AudioOutput is not supported on some browsers. See [setSinkId](https://developer.mozilla.org/en-US/docs/Web/API/HTMLMediaElement/setSinkId#browser_compatibility)
339
+ *
340
+ * @param kind use `videoinput` for camera track,
341
+ * `audioinput` for microphone track,
342
+ * `audiooutput` to set speaker for all incoming audio tracks
343
+ * @param deviceId
344
+ */
345
+ switchActiveDevice(kind, deviceId) {
346
+ return __awaiter(this, void 0, void 0, function* () {
347
+ if (kind === 'audioinput') {
348
+ const tracks = Array
349
+ .from(this.localParticipant.audioTracks.values())
350
+ .filter((track) => track.source === Track_1.Track.Source.Microphone);
351
+ yield Promise.all(tracks.map((t) => { var _a; return (_a = t.audioTrack) === null || _a === void 0 ? void 0 : _a.setDeviceId(deviceId); }));
352
+ }
353
+ else if (kind === 'videoinput') {
354
+ const tracks = Array
355
+ .from(this.localParticipant.videoTracks.values())
356
+ .filter((track) => track.source === Track_1.Track.Source.Camera);
357
+ yield Promise.all(tracks.map((t) => { var _a; return (_a = t.videoTrack) === null || _a === void 0 ? void 0 : _a.setDeviceId(deviceId); }));
358
+ }
359
+ else if (kind === 'audiooutput') {
360
+ const elements = [];
361
+ this.participants.forEach((p) => {
362
+ p.audioTracks.forEach((t) => {
363
+ if (t.isSubscribed && t.track) {
364
+ t.track.attachedElements.forEach((e) => {
365
+ elements.push(e);
366
+ });
367
+ }
368
+ });
369
+ });
370
+ yield Promise.all(elements.map((e) => __awaiter(this, void 0, void 0, function* () {
371
+ if ('setSinkId' in e) {
372
+ /* @ts-ignore */
373
+ yield e.setSinkId(deviceId);
374
+ }
375
+ })));
376
+ }
377
+ });
378
+ }
275
379
  onTrackAdded(mediaTrack, stream, receiver) {
276
380
  const parts = utils_1.unpackStreamId(stream.id);
277
381
  const participantId = parts[0];
@@ -292,8 +396,8 @@ class Room extends events_1.EventEmitter {
292
396
  });
293
397
  this.localParticipant.tracks.forEach((pub) => {
294
398
  var _a, _b;
295
- (_a = pub.track) === null || _a === void 0 ? void 0 : _a.stop();
296
- (_b = pub.track) === null || _b === void 0 ? void 0 : _b.detach();
399
+ (_a = pub.track) === null || _a === void 0 ? void 0 : _a.detach();
400
+ (_b = pub.track) === null || _b === void 0 ? void 0 : _b.stop();
297
401
  });
298
402
  this.participants.clear();
299
403
  this.activeSpeakers = [];
@@ -302,6 +406,7 @@ class Room extends events_1.EventEmitter {
302
406
  this.audioContext = undefined;
303
407
  }
304
408
  window.removeEventListener('beforeunload', this.disconnect);
409
+ navigator.mediaDevices.removeEventListener('devicechange', this.handleDeviceChange);
305
410
  this.emit(events_2.RoomEvent.Disconnected);
306
411
  this.state = RoomState.Disconnected;
307
412
  }
@@ -395,6 +500,7 @@ class Room extends events_1.EventEmitter {
395
500
  this.emit(events_2.RoomEvent.TrackUnmuted, pub, participant);
396
501
  });
397
502
  participant.on(events_2.ParticipantEvent.MetadataChanged, (metadata, p) => {
503
+ this.emit(events_2.RoomEvent.ParticipantMetadataChanged, metadata, p);
398
504
  this.emit(events_2.RoomEvent.MetadataChanged, metadata, p);
399
505
  });
400
506
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Room.js","sourceRoot":"","sources":["../../src/room/Room.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Room.js","sourceRoot":"","sources":["../../src/room/Room.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { TrackPublishDefaults } from './track/options';
2
+ export declare function getTrackDefaults(): TrackPublishDefaults;
3
+ export declare function setTrackDefaults(defaults: TrackPublishDefaults): void;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.setTrackDefaults = exports.getTrackDefaults = void 0;
4
+ let trackDefaults = {};
5
+ function getTrackDefaults() {
6
+ return trackDefaults;
7
+ }
8
+ exports.getTrackDefaults = getTrackDefaults;
9
+ function setTrackDefaults(defaults) {
10
+ trackDefaults = defaults;
11
+ }
12
+ exports.setTrackDefaults = setTrackDefaults;
13
+ //# sourceMappingURL=defaults.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../src/room/defaults.ts"],"names":[],"mappings":";;;AAEA,IAAI,aAAa,GAAyB,EAAE,CAAC;AAE7C,SAAgB,gBAAgB;IAC9B,OAAO,aAAa,CAAC;AACvB,CAAC;AAFD,4CAEC;AAED,SAAgB,gBAAgB,CAAC,QAA8B;IAC7D,aAAa,GAAG,QAAQ,CAAC;AAC3B,CAAC;AAFD,4CAEC"}
@@ -22,6 +22,10 @@ export declare enum RoomEvent {
22
22
  * when an unrecoverable connection issue had occured
23
23
  */
24
24
  Disconnected = "disconnected",
25
+ /**
26
+ * When input or output devices on the machine have changed.
27
+ */
28
+ MediaDevicesChanged = "mediaDevicesChanged",
25
29
  /**
26
30
  * When a [[RemoteParticipant]] joins *after* the local
27
31
  * participant. It will not emit events for participants that are already
@@ -89,6 +93,11 @@ export declare enum RoomEvent {
89
93
  * args: (Array<[[Participant]]>)
90
94
  */
91
95
  ActiveSpeakersChanged = "activeSpeakersChanged",
96
+ /**
97
+ * @deprecated Use ParticipantMetadataChanged instead
98
+ * @internal
99
+ */
100
+ MetadataChanged = "metadataChanged",
92
101
  /**
93
102
  * Participant metadata is a simple way for app-specific state to be pushed to
94
103
  * all users.
@@ -96,8 +105,18 @@ export declare enum RoomEvent {
96
105
  * state, *all* participants in the room will fire this event.
97
106
  *
98
107
  * args: (prevMetadata: string, [[Participant]])
108
+ *
99
109
  */
100
- MetadataChanged = "metadataChanged",
110
+ ParticipantMetadataChanged = "participantMetaDataChanged",
111
+ /**
112
+ * Room metadata is a simple way for app-specific state to be pushed to
113
+ * all users.
114
+ * When RoomService.UpdateRoomMetadata is called to change a room's state,
115
+ * *all* participants in the room will fire this event.
116
+ *
117
+ * args: (string)
118
+ */
119
+ RoomMetadataChanged = "roomMetadataChanged",
101
120
  /**
102
121
  * Data received from another participant.
103
122
  * Data packets provides the ability to use LiveKit to send/receive arbitrary payloads.
@@ -117,6 +136,7 @@ export declare enum ParticipantEvent {
117
136
  TrackMuted = "trackMuted",
118
137
  TrackUnmuted = "trackUnmuted",
119
138
  MetadataChanged = "metadataChanged",
139
+ ParticipantMetadataChanged = "participantMetadataChanged",
120
140
  DataReceived = "dataReceived",
121
141
  IsSpeakingChanged = "isSpeakingChanged"
122
142
  }
@@ -131,7 +151,8 @@ export declare enum EngineEvent {
131
151
  ActiveSpeakersUpdate = "activeSpeakersUpdate",
132
152
  SpeakersChanged = "speakersChanged",
133
153
  DataPacketReceived = "dataPacketReceived",
134
- RemoteMuteChanged = "remoteMuteChanged"
154
+ RemoteMuteChanged = "remoteMuteChanged",
155
+ RoomUpdate = "roomUpdate"
135
156
  }
136
157
  export declare enum TrackEvent {
137
158
  Message = "message",
@@ -26,6 +26,10 @@ var RoomEvent;
26
26
  * when an unrecoverable connection issue had occured
27
27
  */
28
28
  RoomEvent["Disconnected"] = "disconnected";
29
+ /**
30
+ * When input or output devices on the machine have changed.
31
+ */
32
+ RoomEvent["MediaDevicesChanged"] = "mediaDevicesChanged";
29
33
  /**
30
34
  * When a [[RemoteParticipant]] joins *after* the local
31
35
  * participant. It will not emit events for participants that are already
@@ -93,6 +97,11 @@ var RoomEvent;
93
97
  * args: (Array<[[Participant]]>)
94
98
  */
95
99
  RoomEvent["ActiveSpeakersChanged"] = "activeSpeakersChanged";
100
+ /**
101
+ * @deprecated Use ParticipantMetadataChanged instead
102
+ * @internal
103
+ */
104
+ RoomEvent["MetadataChanged"] = "metadataChanged";
96
105
  /**
97
106
  * Participant metadata is a simple way for app-specific state to be pushed to
98
107
  * all users.
@@ -100,8 +109,18 @@ var RoomEvent;
100
109
  * state, *all* participants in the room will fire this event.
101
110
  *
102
111
  * args: (prevMetadata: string, [[Participant]])
112
+ *
103
113
  */
104
- RoomEvent["MetadataChanged"] = "metadataChanged";
114
+ RoomEvent["ParticipantMetadataChanged"] = "participantMetaDataChanged";
115
+ /**
116
+ * Room metadata is a simple way for app-specific state to be pushed to
117
+ * all users.
118
+ * When RoomService.UpdateRoomMetadata is called to change a room's state,
119
+ * *all* participants in the room will fire this event.
120
+ *
121
+ * args: (string)
122
+ */
123
+ RoomEvent["RoomMetadataChanged"] = "roomMetadataChanged";
105
124
  /**
106
125
  * Data received from another participant.
107
126
  * Data packets provides the ability to use LiveKit to send/receive arbitrary payloads.
@@ -122,6 +141,7 @@ var ParticipantEvent;
122
141
  ParticipantEvent["TrackMuted"] = "trackMuted";
123
142
  ParticipantEvent["TrackUnmuted"] = "trackUnmuted";
124
143
  ParticipantEvent["MetadataChanged"] = "metadataChanged";
144
+ ParticipantEvent["ParticipantMetadataChanged"] = "participantMetadataChanged";
125
145
  ParticipantEvent["DataReceived"] = "dataReceived";
126
146
  ParticipantEvent["IsSpeakingChanged"] = "isSpeakingChanged";
127
147
  })(ParticipantEvent = exports.ParticipantEvent || (exports.ParticipantEvent = {}));
@@ -138,6 +158,7 @@ var EngineEvent;
138
158
  EngineEvent["SpeakersChanged"] = "speakersChanged";
139
159
  EngineEvent["DataPacketReceived"] = "dataPacketReceived";
140
160
  EngineEvent["RemoteMuteChanged"] = "remoteMuteChanged";
161
+ EngineEvent["RoomUpdate"] = "roomUpdate";
141
162
  })(EngineEvent = exports.EngineEvent || (exports.EngineEvent = {}));
142
163
  var TrackEvent;
143
164
  (function (TrackEvent) {
@@ -1 +1 @@
1
- {"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/room/events.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;GAQG;AACH,IAAY,SAmHX;AAnHD,WAAY,SAAS;IACnB;;;OAGG;IACH,0CAA6B,CAAA;IAE7B;;OAEG;IACH,wCAA2B,CAAA;IAE3B;;;OAGG;IACH,0CAA6B,CAAA;IAE7B;;;;;;OAMG;IACH,0DAA6C,CAAA;IAE7C;;;;;OAKG;IACH,gEAAmD,CAAA;IAEnD;;;;;OAKG;IACH,8CAAiC,CAAA;IAEjC;;;;;OAKG;IACH,gDAAmC,CAAA;IAEnC;;;;OAIG;IACH,gEAAmD,CAAA;IAEnD;;;;OAIG;IACH,kDAAqC,CAAA;IAErC;;;;;OAKG;IACH,oDAAuC,CAAA;IAEvC;;;;OAIG;IACH,sCAAyB,CAAA;IAEzB;;;;OAIG;IACH,0CAA6B,CAAA;IAE7B;;;;;OAKG;IACH,4DAA+C,CAAA;IAE/C;;;;;;;OAOG;IACH,gDAAmC,CAAA;IAEnC;;;;;;OAMG;IACH,0CAA6B,CAAA;IAE7B,gEAAmD,CAAA;AACrD,CAAC,EAnHW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAmHpB;AAED,IAAY,gBAWX;AAXD,WAAY,gBAAgB;IAC1B,qDAAiC,CAAA;IACjC,uDAAmC,CAAA;IACnC,uEAAmD,CAAA;IACnD,yDAAqC,CAAA;IACrC,2DAAuC,CAAA;IACvC,6CAAyB,CAAA;IACzB,iDAA6B,CAAA;IAC7B,uDAAmC,CAAA;IACnC,iDAA6B,CAAA;IAC7B,2DAAuC,CAAA;AACzC,CAAC,EAXW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAW3B;AAED,gBAAgB;AAChB,IAAY,WAWX;AAXD,WAAY,WAAW;IACrB,sCAAuB,CAAA;IACvB,4CAA6B,CAAA;IAC7B,4CAA6B,CAAA;IAC7B,0CAA2B,CAAA;IAC3B,sDAAuC,CAAA;IACvC,kDAAmC,CAAA;IACnC,4DAA6C,CAAA;IAC7C,kDAAmC,CAAA;IACnC,wDAAyC,CAAA;IACzC,sDAAuC,CAAA;AACzC,CAAC,EAXW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAWtB;AAED,IAAY,UAYX;AAZD,WAAY,UAAU;IACpB,iCAAmB,CAAA;IACnB,6BAAe,CAAA;IACf,iCAAmB,CAAA;IACnB,gBAAgB;IAChB,+CAAiC,CAAA;IACjC,gBAAgB;IAChB,uDAAyC,CAAA;IACzC,gBAAgB;IAChB,2DAA6C,CAAA;IAC7C,gBAAgB;IAChB,yDAA2C,CAAA;AAC7C,CAAC,EAZW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAYrB"}
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/room/events.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;GAQG;AACH,IAAY,SAyIX;AAzID,WAAY,SAAS;IACnB;;;OAGG;IACH,0CAA6B,CAAA;IAE7B;;OAEG;IACH,wCAA2B,CAAA;IAE3B;;;OAGG;IACH,0CAA6B,CAAA;IAE7B;;OAEG;IACH,wDAA2C,CAAA;IAE3C;;;;;;OAMG;IACH,0DAA6C,CAAA;IAE7C;;;;;OAKG;IACH,gEAAmD,CAAA;IAEnD;;;;;OAKG;IACH,8CAAiC,CAAA;IAEjC;;;;;OAKG;IACH,gDAAmC,CAAA;IAEnC;;;;OAIG;IACH,gEAAmD,CAAA;IAEnD;;;;OAIG;IACH,kDAAqC,CAAA;IAErC;;;;;OAKG;IACH,oDAAuC,CAAA;IAEvC;;;;OAIG;IACH,sCAAyB,CAAA;IAEzB;;;;OAIG;IACH,0CAA6B,CAAA;IAE7B;;;;;OAKG;IACH,4DAA+C,CAAA;IAE/C;;;OAGG;IACH,gDAAmC,CAAA;IAEnC;;;;;;;;OAQG;IACH,sEAAyD,CAAA;IAEzD;;;;;;;OAOG;IACH,wDAA2C,CAAA;IAE3C;;;;;;OAMG;IACH,0CAA6B,CAAA;IAE7B,gEAAmD,CAAA;AACrD,CAAC,EAzIW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAyIpB;AAED,IAAY,gBAYX;AAZD,WAAY,gBAAgB;IAC1B,qDAAiC,CAAA;IACjC,uDAAmC,CAAA;IACnC,uEAAmD,CAAA;IACnD,yDAAqC,CAAA;IACrC,2DAAuC,CAAA;IACvC,6CAAyB,CAAA;IACzB,iDAA6B,CAAA;IAC7B,uDAAmC,CAAA;IACnC,6EAAyD,CAAA;IACzD,iDAA6B,CAAA;IAC7B,2DAAuC,CAAA;AACzC,CAAC,EAZW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAY3B;AAED,gBAAgB;AAChB,IAAY,WAYX;AAZD,WAAY,WAAW;IACrB,sCAAuB,CAAA;IACvB,4CAA6B,CAAA;IAC7B,4CAA6B,CAAA;IAC7B,0CAA2B,CAAA;IAC3B,sDAAuC,CAAA;IACvC,kDAAmC,CAAA;IACnC,4DAA6C,CAAA;IAC7C,kDAAmC,CAAA;IACnC,wDAAyC,CAAA;IACzC,sDAAuC,CAAA;IACvC,wCAAyB,CAAA;AAC3B,CAAC,EAZW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAYtB;AAED,IAAY,UAYX;AAZD,WAAY,UAAU;IACpB,iCAAmB,CAAA;IACnB,6BAAe,CAAA;IACf,iCAAmB,CAAA;IACnB,gBAAgB;IAChB,+CAAiC,CAAA;IACjC,gBAAgB;IAChB,uDAAyC,CAAA;IACzC,gBAAgB;IAChB,2DAA6C,CAAA;IAC7C,gBAAgB;IAChB,yDAA2C,CAAA;AAC7C,CAAC,EAZW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAYrB"}
@@ -3,6 +3,7 @@ import RTCEngine from '../RTCEngine';
3
3
  import LocalTrack from '../track/LocalTrack';
4
4
  import LocalTrackPublication from '../track/LocalTrackPublication';
5
5
  import { TrackPublishOptions } from '../track/options';
6
+ import { Track } from '../track/Track';
6
7
  import Participant from './Participant';
7
8
  import RemoteParticipant from './RemoteParticipant';
8
9
  export default class LocalParticipant extends Participant {
@@ -13,6 +14,32 @@ export default class LocalParticipant extends Participant {
13
14
  tracks: Map<string, LocalTrackPublication>;
14
15
  /** @internal */
15
16
  constructor(sid: string, identity: string, engine: RTCEngine);
17
+ getTrack(source: Track.Source): LocalTrackPublication | undefined;
18
+ getTrackByName(name: string): LocalTrackPublication | undefined;
19
+ /**
20
+ * Enable or disable a participant's camera track.
21
+ *
22
+ * If a track has already published, it'll mute or unmute the track.
23
+ */
24
+ setCameraEnabled(enabled: boolean): Promise<void>;
25
+ get isCameraEnabled(): boolean;
26
+ /**
27
+ * Enable or disable a participant's microphone track.
28
+ *
29
+ * If a track has already published, it'll mute or unmute the track.
30
+ */
31
+ setMicrophoneEnabled(enabled: boolean): Promise<void>;
32
+ get isMicrophoneEnabled(): boolean;
33
+ /**
34
+ * Start or stop sharing a participant's screen
35
+ */
36
+ setScreenShareEnabled(enabled: boolean): Promise<void>;
37
+ get isScreenShareEnabled(): boolean;
38
+ /**
39
+ * Enable or disable publishing for a track by source. This serves as a simple
40
+ * way to manage the common tracks (camera, mic, or screen share)
41
+ */
42
+ private setTrackEnabled;
16
43
  /**
17
44
  * Publish a new track to the room
18
45
  * @param track
@@ -43,6 +70,7 @@ export default class LocalParticipant extends Participant {
43
70
  private computeVideoEncodings;
44
71
  private presets169;
45
72
  private presets43;
73
+ private presetsScreenShare;
46
74
  private determineAppropriateEncoding;
47
75
  private presetsForResolution;
48
76
  }