livekit-client 1.9.1 → 1.9.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (106) hide show
  1. package/dist/livekit-client.esm.mjs +3338 -3037
  2. package/dist/livekit-client.esm.mjs.map +1 -1
  3. package/dist/livekit-client.umd.js +1 -1
  4. package/dist/livekit-client.umd.js.map +1 -1
  5. package/dist/src/api/SignalClient.d.ts +98 -97
  6. package/dist/src/api/SignalClient.d.ts.map +1 -1
  7. package/dist/src/connectionHelper/ConnectionCheck.d.ts +25 -24
  8. package/dist/src/connectionHelper/ConnectionCheck.d.ts.map +1 -1
  9. package/dist/src/connectionHelper/checks/Checker.d.ts +58 -58
  10. package/dist/src/connectionHelper/checks/publishAudio.d.ts +5 -5
  11. package/dist/src/connectionHelper/checks/publishVideo.d.ts +5 -5
  12. package/dist/src/connectionHelper/checks/reconnect.d.ts +5 -5
  13. package/dist/src/connectionHelper/checks/turn.d.ts +5 -5
  14. package/dist/src/connectionHelper/checks/webrtc.d.ts +5 -5
  15. package/dist/src/connectionHelper/checks/websocket.d.ts +5 -5
  16. package/dist/src/index.d.ts +34 -31
  17. package/dist/src/index.d.ts.map +1 -1
  18. package/dist/src/logger.d.ts +25 -25
  19. package/dist/src/options.d.ts +98 -98
  20. package/dist/src/proto/google/protobuf/timestamp.d.ts +145 -145
  21. package/dist/src/proto/livekit_models.d.ts +2300 -2300
  22. package/dist/src/proto/livekit_rtc.d.ts +14032 -14032
  23. package/dist/src/room/DefaultReconnectPolicy.d.ts +7 -7
  24. package/dist/src/room/DeviceManager.d.ts +8 -8
  25. package/dist/src/room/PCTransport.d.ts +37 -37
  26. package/dist/src/room/PCTransport.d.ts.map +1 -1
  27. package/dist/src/room/RTCEngine.d.ts +126 -120
  28. package/dist/src/room/RTCEngine.d.ts.map +1 -1
  29. package/dist/src/room/ReconnectPolicy.d.ts +23 -23
  30. package/dist/src/room/RegionUrlProvider.d.ts +13 -13
  31. package/dist/src/room/Room.d.ts +232 -229
  32. package/dist/src/room/Room.d.ts.map +1 -1
  33. package/dist/src/room/defaults.d.ts +7 -7
  34. package/dist/src/room/defaults.d.ts.map +1 -1
  35. package/dist/src/room/errors.d.ts +42 -42
  36. package/dist/src/room/events.d.ts +455 -455
  37. package/dist/src/room/participant/LocalParticipant.d.ts +170 -170
  38. package/dist/src/room/participant/LocalParticipant.d.ts.map +1 -1
  39. package/dist/src/room/participant/Participant.d.ts +93 -93
  40. package/dist/src/room/participant/ParticipantTrackPermission.d.ts +25 -25
  41. package/dist/src/room/participant/RemoteParticipant.d.ts +52 -51
  42. package/dist/src/room/participant/RemoteParticipant.d.ts.map +1 -1
  43. package/dist/src/room/participant/publishUtils.d.ts +19 -18
  44. package/dist/src/room/participant/publishUtils.d.ts.map +1 -1
  45. package/dist/src/room/stats.d.ts +66 -66
  46. package/dist/src/room/timers.d.ts +12 -12
  47. package/dist/src/room/track/LocalAudioTrack.d.ts +24 -24
  48. package/dist/src/room/track/LocalAudioTrack.d.ts.map +1 -1
  49. package/dist/src/room/track/LocalTrack.d.ts +43 -43
  50. package/dist/src/room/track/LocalTrackPublication.d.ts +37 -37
  51. package/dist/src/room/track/LocalVideoTrack.d.ts +53 -53
  52. package/dist/src/room/track/LocalVideoTrack.d.ts.map +1 -1
  53. package/dist/src/room/track/RemoteAudioTrack.d.ts +52 -52
  54. package/dist/src/room/track/RemoteAudioTrack.d.ts.map +1 -1
  55. package/dist/src/room/track/RemoteTrack.d.ts +14 -14
  56. package/dist/src/room/track/RemoteTrackPublication.d.ts +60 -60
  57. package/dist/src/room/track/RemoteVideoTrack.d.ts +52 -52
  58. package/dist/src/room/track/RemoteVideoTrack.d.ts.map +1 -1
  59. package/dist/src/room/track/Track.d.ts +124 -124
  60. package/dist/src/room/track/TrackPublication.d.ts +67 -67
  61. package/dist/src/room/track/create.d.ts +23 -23
  62. package/dist/src/room/track/create.d.ts.map +1 -1
  63. package/dist/src/room/track/options.d.ts +255 -247
  64. package/dist/src/room/track/options.d.ts.map +1 -1
  65. package/dist/src/room/track/types.d.ts +22 -22
  66. package/dist/src/room/track/utils.d.ts +13 -13
  67. package/dist/src/room/types.d.ts +25 -25
  68. package/dist/src/room/utils.d.ts +86 -85
  69. package/dist/src/room/utils.d.ts.map +1 -1
  70. package/dist/src/test/MockMediaStreamTrack.d.ts +25 -25
  71. package/dist/src/test/mocks.d.ts +10 -10
  72. package/dist/src/version.d.ts +2 -2
  73. package/dist/ts4.2/src/api/SignalClient.d.ts +1 -0
  74. package/dist/ts4.2/src/connectionHelper/ConnectionCheck.d.ts +2 -1
  75. package/dist/ts4.2/src/index.d.ts +8 -6
  76. package/dist/ts4.2/src/room/PCTransport.d.ts +1 -1
  77. package/dist/ts4.2/src/room/RTCEngine.d.ts +7 -1
  78. package/dist/ts4.2/src/room/Room.d.ts +3 -0
  79. package/dist/ts4.2/src/room/defaults.d.ts +1 -1
  80. package/dist/ts4.2/src/room/participant/LocalParticipant.d.ts +4 -4
  81. package/dist/ts4.2/src/room/participant/RemoteParticipant.d.ts +2 -1
  82. package/dist/ts4.2/src/room/participant/publishUtils.d.ts +2 -1
  83. package/dist/ts4.2/src/room/track/LocalAudioTrack.d.ts +1 -1
  84. package/dist/ts4.2/src/room/track/LocalVideoTrack.d.ts +1 -1
  85. package/dist/ts4.2/src/room/track/RemoteAudioTrack.d.ts +1 -1
  86. package/dist/ts4.2/src/room/track/create.d.ts +1 -1
  87. package/dist/ts4.2/src/room/track/options.d.ts +10 -2
  88. package/dist/ts4.2/src/room/utils.d.ts +1 -0
  89. package/package.json +12 -12
  90. package/src/api/SignalClient.ts +19 -16
  91. package/src/connectionHelper/ConnectionCheck.ts +2 -1
  92. package/src/index.ts +13 -8
  93. package/src/room/PCTransport.ts +9 -5
  94. package/src/room/RTCEngine.ts +44 -4
  95. package/src/room/Room.ts +87 -42
  96. package/src/room/defaults.ts +6 -4
  97. package/src/room/participant/LocalParticipant.ts +10 -9
  98. package/src/room/participant/RemoteParticipant.ts +2 -1
  99. package/src/room/participant/publishUtils.ts +7 -5
  100. package/src/room/track/LocalAudioTrack.ts +2 -1
  101. package/src/room/track/LocalVideoTrack.ts +3 -2
  102. package/src/room/track/RemoteAudioTrack.ts +2 -1
  103. package/src/room/track/RemoteVideoTrack.ts +4 -8
  104. package/src/room/track/create.ts +2 -2
  105. package/src/room/track/options.ts +23 -7
  106. package/src/room/utils.ts +15 -2
@@ -1,171 +1,171 @@
1
- import 'webrtc-adapter';
2
- import type { InternalRoomOptions } from '../../options';
3
- import { DataPacket_Kind, ParticipantInfo } from '../../proto/livekit_models';
4
- import { DataChannelInfo, TrackPublishedResponse } from '../../proto/livekit_rtc';
5
- import type RTCEngine from '../RTCEngine';
6
- import LocalTrack from '../track/LocalTrack';
7
- import LocalTrackPublication from '../track/LocalTrackPublication';
8
- import { Track } from '../track/Track';
9
- import { AudioCaptureOptions, BackupVideoCodec, CreateLocalTracksOptions, ScreenShareCaptureOptions, TrackPublishOptions, VideoCaptureOptions } from '../track/options';
10
- import type { DataPublishOptions } from '../types';
11
- import Participant from './Participant';
12
- import { ParticipantTrackPermission } from './ParticipantTrackPermission';
13
- import RemoteParticipant from './RemoteParticipant';
14
- export default class LocalParticipant extends Participant {
15
- audioTracks: Map<string, LocalTrackPublication>;
16
- videoTracks: Map<string, LocalTrackPublication>;
17
- /** map of track sid => all published tracks */
18
- tracks: Map<string, LocalTrackPublication>;
19
- /** @internal */
20
- engine: RTCEngine;
21
- private pendingPublishing;
22
- private pendingPublishPromises;
23
- private cameraError;
24
- private microphoneError;
25
- private participantTrackPermissions;
26
- private allParticipantsAllowedToSubscribe;
27
- private roomOptions;
28
- private reconnectFuture?;
29
- /** @internal */
30
- constructor(sid: string, identity: string, engine: RTCEngine, options: InternalRoomOptions);
31
- get lastCameraError(): Error | undefined;
32
- get lastMicrophoneError(): Error | undefined;
33
- getTrack(source: Track.Source): LocalTrackPublication | undefined;
34
- getTrackByName(name: string): LocalTrackPublication | undefined;
35
- /**
36
- * @internal
37
- */
38
- setupEngine(engine: RTCEngine): void;
39
- private handleReconnecting;
40
- private handleReconnected;
41
- private handleDisconnected;
42
- /**
43
- * Sets and updates the metadata of the local participant.
44
- * Note: this requires `CanUpdateOwnMetadata` permission encoded in the token.
45
- * @param metadata
46
- */
47
- setMetadata(metadata: string): void;
48
- /**
49
- * Sets and updates the name of the local participant.
50
- * Note: this requires `CanUpdateOwnMetadata` permission encoded in the token.
51
- * @param metadata
52
- */
53
- setName(name: string): void;
54
- /**
55
- * Enable or disable a participant's camera track.
56
- *
57
- * If a track has already published, it'll mute or unmute the track.
58
- * Resolves with a `LocalTrackPublication` instance if successful and `undefined` otherwise
59
- */
60
- setCameraEnabled(enabled: boolean, options?: VideoCaptureOptions, publishOptions?: TrackPublishOptions): Promise<LocalTrackPublication | undefined>;
61
- /**
62
- * Enable or disable a participant's microphone track.
63
- *
64
- * If a track has already published, it'll mute or unmute the track.
65
- * Resolves with a `LocalTrackPublication` instance if successful and `undefined` otherwise
66
- */
67
- setMicrophoneEnabled(enabled: boolean, options?: AudioCaptureOptions, publishOptions?: TrackPublishOptions): Promise<LocalTrackPublication | undefined>;
68
- /**
69
- * Start or stop sharing a participant's screen
70
- * Resolves with a `LocalTrackPublication` instance if successful and `undefined` otherwise
71
- */
72
- setScreenShareEnabled(enabled: boolean, options?: ScreenShareCaptureOptions, publishOptions?: TrackPublishOptions): Promise<LocalTrackPublication | undefined>;
73
- /**
74
- * Enable or disable publishing for a track by source. This serves as a simple
75
- * way to manage the common tracks (camera, mic, or screen share).
76
- * Resolves with LocalTrackPublication if successful and void otherwise
77
- */
78
- private setTrackEnabled;
79
- /**
80
- * Publish both camera and microphone at the same time. This is useful for
81
- * displaying a single Permission Dialog box to the end user.
82
- */
83
- enableCameraAndMicrophone(): Promise<void>;
84
- /**
85
- * Create local camera and/or microphone tracks
86
- * @param options
87
- * @returns
88
- */
89
- createTracks(options?: CreateLocalTracksOptions): Promise<LocalTrack[]>;
90
- /**
91
- * Creates a screen capture tracks with getDisplayMedia().
92
- * A LocalVideoTrack is always created and returned.
93
- * If { audio: true }, and the browser supports audio capture, a LocalAudioTrack is also created.
94
- */
95
- createScreenTracks(options?: ScreenShareCaptureOptions): Promise<Array<LocalTrack>>;
96
- /**
97
- * Publish a new track to the room
98
- * @param track
99
- * @param options
100
- */
101
- publishTrack(track: LocalTrack | MediaStreamTrack, options?: TrackPublishOptions): Promise<LocalTrackPublication>;
102
- private publish;
103
- get isLocal(): boolean;
104
- /** @internal
105
- * publish additional codec to existing track
106
- */
107
- publishAdditionalCodecForTrack(track: LocalTrack | MediaStreamTrack, videoCodec: BackupVideoCodec, options?: TrackPublishOptions): Promise<void>;
108
- unpublishTrack(track: LocalTrack | MediaStreamTrack, stopOnUnpublish?: boolean): Promise<LocalTrackPublication | undefined>;
109
- unpublishTracks(tracks: LocalTrack[] | MediaStreamTrack[]): Promise<LocalTrackPublication[]>;
110
- republishAllTracks(options?: TrackPublishOptions): Promise<void>;
111
- /**
112
- * Publish a new data payload to the room. Data will be forwarded to each
113
- * participant in the room if the destination field in publishOptions is empty
114
- *
115
- * @param data Uint8Array of the payload. To send string data, use TextEncoder.encode
116
- * @param kind whether to send this as reliable or lossy.
117
- * For data that you need delivery guarantee (such as chat messages), use Reliable.
118
- * For data that should arrive as quickly as possible, but you are ok with dropped
119
- * packets, use Lossy.
120
- * @param publishOptions optionally specify a `topic` and `destination`
121
- */
122
- publishData(data: Uint8Array, kind: DataPacket_Kind, publishOptions?: DataPublishOptions): Promise<void>;
123
- /**
124
- * Publish a new data payload to the room. Data will be forwarded to each
125
- * participant in the room if the destination argument is empty
126
- *
127
- * @param data Uint8Array of the payload. To send string data, use TextEncoder.encode
128
- * @param kind whether to send this as reliable or lossy.
129
- * For data that you need delivery guarantee (such as chat messages), use Reliable.
130
- * For data that should arrive as quickly as possible, but you are ok with dropped
131
- * packets, use Lossy.
132
- * @param destination the participants who will receive the message
133
- */
134
- publishData(data: Uint8Array, kind: DataPacket_Kind, destination?: RemoteParticipant[] | string[]): Promise<void>;
135
- /**
136
- * Control who can subscribe to LocalParticipant's published tracks.
137
- *
138
- * By default, all participants can subscribe. This allows fine-grained control over
139
- * who is able to subscribe at a participant and track level.
140
- *
141
- * Note: if access is given at a track-level (i.e. both [allParticipantsAllowed] and
142
- * [ParticipantTrackPermission.allTracksAllowed] are false), any newer published tracks
143
- * will not grant permissions to any participants and will require a subsequent
144
- * permissions update to allow subscription.
145
- *
146
- * @param allParticipantsAllowed Allows all participants to subscribe all tracks.
147
- * Takes precedence over [[participantTrackPermissions]] if set to true.
148
- * By default this is set to true.
149
- * @param participantTrackPermissions Full list of individual permissions per
150
- * participant/track. Any omitted participants will not receive any permissions.
151
- */
152
- setTrackSubscriptionPermissions(allParticipantsAllowed: boolean, participantTrackPermissions?: ParticipantTrackPermission[]): void;
153
- /** @internal */
154
- updateInfo(info: ParticipantInfo): boolean;
155
- private updateTrackSubscriptionPermissions;
156
- /** @internal */
157
- private onTrackUnmuted;
158
- /** @internal */
159
- private onTrackMuted;
160
- private onTrackUpstreamPaused;
161
- private onTrackUpstreamResumed;
162
- private handleSubscribedQualityUpdate;
163
- private handleLocalTrackUnpublished;
164
- private handleTrackEnded;
165
- private getPublicationForTrack;
166
- /** @internal */
167
- publishedTracksInfo(): TrackPublishedResponse[];
168
- /** @internal */
169
- dataChannelsInfo(): DataChannelInfo[];
170
- }
1
+ import 'webrtc-adapter';
2
+ import type { InternalRoomOptions } from '../../options';
3
+ import { DataPacket_Kind, ParticipantInfo } from '../../proto/livekit_models';
4
+ import { DataChannelInfo, TrackPublishedResponse } from '../../proto/livekit_rtc';
5
+ import type RTCEngine from '../RTCEngine';
6
+ import LocalTrack from '../track/LocalTrack';
7
+ import LocalTrackPublication from '../track/LocalTrackPublication';
8
+ import { Track } from '../track/Track';
9
+ import type { AudioCaptureOptions, BackupVideoCodec, CreateLocalTracksOptions, ScreenShareCaptureOptions, TrackPublishOptions, VideoCaptureOptions } from '../track/options';
10
+ import type { DataPublishOptions } from '../types';
11
+ import Participant from './Participant';
12
+ import type { ParticipantTrackPermission } from './ParticipantTrackPermission';
13
+ import RemoteParticipant from './RemoteParticipant';
14
+ export default class LocalParticipant extends Participant {
15
+ audioTracks: Map<string, LocalTrackPublication>;
16
+ videoTracks: Map<string, LocalTrackPublication>;
17
+ /** map of track sid => all published tracks */
18
+ tracks: Map<string, LocalTrackPublication>;
19
+ /** @internal */
20
+ engine: RTCEngine;
21
+ private pendingPublishing;
22
+ private pendingPublishPromises;
23
+ private cameraError;
24
+ private microphoneError;
25
+ private participantTrackPermissions;
26
+ private allParticipantsAllowedToSubscribe;
27
+ private roomOptions;
28
+ private reconnectFuture?;
29
+ /** @internal */
30
+ constructor(sid: string, identity: string, engine: RTCEngine, options: InternalRoomOptions);
31
+ get lastCameraError(): Error | undefined;
32
+ get lastMicrophoneError(): Error | undefined;
33
+ getTrack(source: Track.Source): LocalTrackPublication | undefined;
34
+ getTrackByName(name: string): LocalTrackPublication | undefined;
35
+ /**
36
+ * @internal
37
+ */
38
+ setupEngine(engine: RTCEngine): void;
39
+ private handleReconnecting;
40
+ private handleReconnected;
41
+ private handleDisconnected;
42
+ /**
43
+ * Sets and updates the metadata of the local participant.
44
+ * Note: this requires `canUpdateOwnMetadata` permission encoded in the token.
45
+ * @param metadata
46
+ */
47
+ setMetadata(metadata: string): void;
48
+ /**
49
+ * Sets and updates the name of the local participant.
50
+ * Note: this requires `canUpdateOwnMetadata` permission encoded in the token.
51
+ * @param metadata
52
+ */
53
+ setName(name: string): void;
54
+ /**
55
+ * Enable or disable a participant's camera track.
56
+ *
57
+ * If a track has already published, it'll mute or unmute the track.
58
+ * Resolves with a `LocalTrackPublication` instance if successful and `undefined` otherwise
59
+ */
60
+ setCameraEnabled(enabled: boolean, options?: VideoCaptureOptions, publishOptions?: TrackPublishOptions): Promise<LocalTrackPublication | undefined>;
61
+ /**
62
+ * Enable or disable a participant's microphone track.
63
+ *
64
+ * If a track has already published, it'll mute or unmute the track.
65
+ * Resolves with a `LocalTrackPublication` instance if successful and `undefined` otherwise
66
+ */
67
+ setMicrophoneEnabled(enabled: boolean, options?: AudioCaptureOptions, publishOptions?: TrackPublishOptions): Promise<LocalTrackPublication | undefined>;
68
+ /**
69
+ * Start or stop sharing a participant's screen
70
+ * Resolves with a `LocalTrackPublication` instance if successful and `undefined` otherwise
71
+ */
72
+ setScreenShareEnabled(enabled: boolean, options?: ScreenShareCaptureOptions, publishOptions?: TrackPublishOptions): Promise<LocalTrackPublication | undefined>;
73
+ /**
74
+ * Enable or disable publishing for a track by source. This serves as a simple
75
+ * way to manage the common tracks (camera, mic, or screen share).
76
+ * Resolves with LocalTrackPublication if successful and void otherwise
77
+ */
78
+ private setTrackEnabled;
79
+ /**
80
+ * Publish both camera and microphone at the same time. This is useful for
81
+ * displaying a single Permission Dialog box to the end user.
82
+ */
83
+ enableCameraAndMicrophone(): Promise<void>;
84
+ /**
85
+ * Create local camera and/or microphone tracks
86
+ * @param options
87
+ * @returns
88
+ */
89
+ createTracks(options?: CreateLocalTracksOptions): Promise<LocalTrack[]>;
90
+ /**
91
+ * Creates a screen capture tracks with getDisplayMedia().
92
+ * A LocalVideoTrack is always created and returned.
93
+ * If { audio: true }, and the browser supports audio capture, a LocalAudioTrack is also created.
94
+ */
95
+ createScreenTracks(options?: ScreenShareCaptureOptions): Promise<Array<LocalTrack>>;
96
+ /**
97
+ * Publish a new track to the room
98
+ * @param track
99
+ * @param options
100
+ */
101
+ publishTrack(track: LocalTrack | MediaStreamTrack, options?: TrackPublishOptions): Promise<LocalTrackPublication>;
102
+ private publish;
103
+ get isLocal(): boolean;
104
+ /** @internal
105
+ * publish additional codec to existing track
106
+ */
107
+ publishAdditionalCodecForTrack(track: LocalTrack | MediaStreamTrack, videoCodec: BackupVideoCodec, options?: TrackPublishOptions): Promise<void>;
108
+ unpublishTrack(track: LocalTrack | MediaStreamTrack, stopOnUnpublish?: boolean): Promise<LocalTrackPublication | undefined>;
109
+ unpublishTracks(tracks: LocalTrack[] | MediaStreamTrack[]): Promise<LocalTrackPublication[]>;
110
+ republishAllTracks(options?: TrackPublishOptions): Promise<void>;
111
+ /**
112
+ * Publish a new data payload to the room. Data will be forwarded to each
113
+ * participant in the room if the destination field in publishOptions is empty
114
+ *
115
+ * @param data Uint8Array of the payload. To send string data, use TextEncoder.encode
116
+ * @param kind whether to send this as reliable or lossy.
117
+ * For data that you need delivery guarantee (such as chat messages), use Reliable.
118
+ * For data that should arrive as quickly as possible, but you are ok with dropped
119
+ * packets, use Lossy.
120
+ * @param publishOptions optionally specify a `topic` and `destination`
121
+ */
122
+ publishData(data: Uint8Array, kind: DataPacket_Kind, publishOptions?: DataPublishOptions): Promise<void>;
123
+ /**
124
+ * Publish a new data payload to the room. Data will be forwarded to each
125
+ * participant in the room if the destination argument is empty
126
+ *
127
+ * @param data Uint8Array of the payload. To send string data, use TextEncoder.encode
128
+ * @param kind whether to send this as reliable or lossy.
129
+ * For data that you need delivery guarantee (such as chat messages), use Reliable.
130
+ * For data that should arrive as quickly as possible, but you are ok with dropped
131
+ * packets, use Lossy.
132
+ * @param destination the participants who will receive the message
133
+ */
134
+ publishData(data: Uint8Array, kind: DataPacket_Kind, destination?: RemoteParticipant[] | string[]): Promise<void>;
135
+ /**
136
+ * Control who can subscribe to LocalParticipant's published tracks.
137
+ *
138
+ * By default, all participants can subscribe. This allows fine-grained control over
139
+ * who is able to subscribe at a participant and track level.
140
+ *
141
+ * Note: if access is given at a track-level (i.e. both [allParticipantsAllowed] and
142
+ * [ParticipantTrackPermission.allTracksAllowed] are false), any newer published tracks
143
+ * will not grant permissions to any participants and will require a subsequent
144
+ * permissions update to allow subscription.
145
+ *
146
+ * @param allParticipantsAllowed Allows all participants to subscribe all tracks.
147
+ * Takes precedence over [[participantTrackPermissions]] if set to true.
148
+ * By default this is set to true.
149
+ * @param participantTrackPermissions Full list of individual permissions per
150
+ * participant/track. Any omitted participants will not receive any permissions.
151
+ */
152
+ setTrackSubscriptionPermissions(allParticipantsAllowed: boolean, participantTrackPermissions?: ParticipantTrackPermission[]): void;
153
+ /** @internal */
154
+ updateInfo(info: ParticipantInfo): boolean;
155
+ private updateTrackSubscriptionPermissions;
156
+ /** @internal */
157
+ private onTrackUnmuted;
158
+ /** @internal */
159
+ private onTrackMuted;
160
+ private onTrackUpstreamPaused;
161
+ private onTrackUpstreamResumed;
162
+ private handleSubscribedQualityUpdate;
163
+ private handleLocalTrackUnpublished;
164
+ private handleTrackEnded;
165
+ private getPublicationForTrack;
166
+ /** @internal */
167
+ publishedTracksInfo(): TrackPublishedResponse[];
168
+ /** @internal */
169
+ dataChannelsInfo(): DataChannelInfo[];
170
+ }
171
171
  //# sourceMappingURL=LocalParticipant.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"LocalParticipant.d.ts","sourceRoot":"","sources":["../../../../src/room/participant/LocalParticipant.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LocalParticipant.d.ts","sourceRoot":"","sources":["../../../../src/room/participant/LocalParticipant.ts"],"names":[],"mappings":"AAAA,OAAO,gBAAgB,CAAC;AAExB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAc,eAAe,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC1F,OAAO,EAEL,eAAe,EAGf,sBAAsB,EAEvB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,SAAS,MAAM,cAAc,CAAC;AAI1C,OAAO,UAAU,MAAM,qBAAqB,CAAC;AAC7C,OAAO,qBAAqB,MAAM,gCAAgC,CAAC;AAEnE,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAEvC,OAAO,KAAK,EACV,mBAAmB,EACnB,gBAAgB,EAChB,wBAAwB,EACxB,yBAAyB,EACzB,mBAAmB,EACnB,mBAAmB,EACpB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAEnD,OAAO,WAAW,MAAM,eAAe,CAAC;AAExC,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC/E,OAAO,iBAAiB,MAAM,qBAAqB,CAAC;AAOpD,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,WAAW;IACvD,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IAEhD,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IAEhD,+CAA+C;IAC/C,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IAE3C,gBAAgB;IAChB,MAAM,EAAE,SAAS,CAAC;IAElB,OAAO,CAAC,iBAAiB,CAA2B;IAEpD,OAAO,CAAC,sBAAsB,CAAyD;IAEvF,OAAO,CAAC,WAAW,CAAoB;IAEvC,OAAO,CAAC,eAAe,CAAoB;IAE3C,OAAO,CAAC,2BAA2B,CAAyC;IAE5E,OAAO,CAAC,iCAAiC,CAAiB;IAG1D,OAAO,CAAC,WAAW,CAAsB;IAEzC,OAAO,CAAC,eAAe,CAAC,CAAe;IAEvC,gBAAgB;gBACJ,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,mBAAmB;IAU1F,IAAI,eAAe,IAAI,KAAK,GAAG,SAAS,CAEvC;IAED,IAAI,mBAAmB,IAAI,KAAK,GAAG,SAAS,CAE3C;IAED,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,qBAAqB,GAAG,SAAS;IAOjE,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,qBAAqB,GAAG,SAAS;IAO/D;;OAEG;IACH,WAAW,CAAC,MAAM,EAAE,SAAS;IA2B7B,OAAO,CAAC,kBAAkB,CAIxB;IAEF,OAAO,CAAC,iBAAiB,CAIvB;IAEF,OAAO,CAAC,kBAAkB,CAGxB;IAEF;;;;OAIG;IACH,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAKnC;;;;OAIG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAK3B;;;;;OAKG;IACH,gBAAgB,CACd,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE,mBAAmB,EAC7B,cAAc,CAAC,EAAE,mBAAmB,GACnC,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC;IAI7C;;;;;OAKG;IACH,oBAAoB,CAClB,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE,mBAAmB,EAC7B,cAAc,CAAC,EAAE,mBAAmB,GACnC,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC;IAI7C;;;OAGG;IACH,qBAAqB,CACnB,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE,yBAAyB,EACnC,cAAc,CAAC,EAAE,mBAAmB,GACnC,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC;IAI7C;;;;OAIG;YACW,eAAe;IA2F7B;;;OAGG;IACG,yBAAyB;IAwB/B;;;;OAIG;IACG,YAAY,CAAC,OAAO,CAAC,EAAE,wBAAwB,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAqD7E;;;;OAIG;IACG,kBAAkB,CAAC,OAAO,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAsDzF;;;;OAIG;IACG,YAAY,CAChB,KAAK,EAAE,UAAU,GAAG,gBAAgB,EACpC,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,qBAAqB,CAAC;YAgFnB,OAAO;IA+LrB,IAAa,OAAO,IAAI,OAAO,CAE9B;IAED;;OAEG;IACG,8BAA8B,CAClC,KAAK,EAAE,UAAU,GAAG,gBAAgB,EACpC,UAAU,EAAE,gBAAgB,EAC5B,OAAO,CAAC,EAAE,mBAAmB;IAiEzB,cAAc,CAClB,KAAK,EAAE,UAAU,GAAG,gBAAgB,EACpC,eAAe,CAAC,EAAE,OAAO,GACxB,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC;IA8EvC,eAAe,CACnB,MAAM,EAAE,UAAU,EAAE,GAAG,gBAAgB,EAAE,GACxC,OAAO,CAAC,qBAAqB,EAAE,CAAC;IAO7B,kBAAkB,CAAC,OAAO,CAAC,EAAE,mBAAmB;IAoBtD;;;;;;;;;;OAUG;IACG,WAAW,CACf,IAAI,EAAE,UAAU,EAChB,IAAI,EAAE,eAAe,EACrB,cAAc,CAAC,EAAE,kBAAkB,GAClC,OAAO,CAAC,IAAI,CAAC;IAChB;;;;;;;;;;OAUG;IACG,WAAW,CACf,IAAI,EAAE,UAAU,EAChB,IAAI,EAAE,eAAe,EACrB,WAAW,CAAC,EAAE,iBAAiB,EAAE,GAAG,MAAM,EAAE,GAC3C,OAAO,CAAC,IAAI,CAAC;IAwChB;;;;;;;;;;;;;;;;OAgBG;IACH,+BAA+B,CAC7B,sBAAsB,EAAE,OAAO,EAC/B,2BAA2B,GAAE,0BAA0B,EAAO;IAShE,gBAAgB;IAChB,UAAU,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO;IA8B1C,OAAO,CAAC,kCAAkC,CASxC;IAEF,gBAAgB;IAChB,OAAO,CAAC,cAAc,CAEpB;IAGF,gBAAgB;IAChB,OAAO,CAAC,YAAY,CAWlB;IAEF,OAAO,CAAC,qBAAqB,CAG3B;IAEF,OAAO,CAAC,sBAAsB,CAG5B;IAEF,OAAO,CAAC,6BAA6B,CA0BnC;IAEF,OAAO,CAAC,2BAA2B,CAUjC;IAEF,OAAO,CAAC,gBAAgB,CA+CtB;IAEF,OAAO,CAAC,sBAAsB;IAwB9B,gBAAgB;IAChB,mBAAmB,IAAI,sBAAsB,EAAE;IAa/C,gBAAgB;IAChB,gBAAgB,IAAI,eAAe,EAAE;CAoBtC"}
@@ -1,94 +1,94 @@
1
- import type TypedEmitter from 'typed-emitter';
2
- import { DataPacket_Kind, ParticipantInfo, ParticipantPermission, ConnectionQuality as ProtoQuality } from '../../proto/livekit_models';
3
- import type LocalTrackPublication from '../track/LocalTrackPublication';
4
- import type RemoteTrack from '../track/RemoteTrack';
5
- import type RemoteTrackPublication from '../track/RemoteTrackPublication';
6
- import { Track } from '../track/Track';
7
- import type { TrackPublication } from '../track/TrackPublication';
8
- export declare enum ConnectionQuality {
9
- Excellent = "excellent",
10
- Good = "good",
11
- Poor = "poor",
12
- Unknown = "unknown"
13
- }
14
- declare const Participant_base: new () => TypedEmitter<ParticipantEventCallbacks>;
15
- export default class Participant extends Participant_base {
16
- protected participantInfo?: ParticipantInfo;
17
- audioTracks: Map<string, TrackPublication>;
18
- videoTracks: Map<string, TrackPublication>;
19
- /** map of track sid => all published tracks */
20
- tracks: Map<string, TrackPublication>;
21
- /** audio level between 0-1.0, 1 being loudest, 0 being softest */
22
- audioLevel: number;
23
- /** if participant is currently speaking */
24
- isSpeaking: boolean;
25
- /** server assigned unique id */
26
- sid: string;
27
- /** client assigned identity, encoded in JWT token */
28
- identity: string;
29
- /** client assigned display name, encoded in JWT token */
30
- name?: string;
31
- /** client metadata, opaque to livekit */
32
- metadata?: string;
33
- lastSpokeAt?: Date | undefined;
34
- permissions?: ParticipantPermission;
35
- private _connectionQuality;
36
- /** @internal */
37
- constructor(sid: string, identity: string, name?: string, metadata?: string);
38
- getTracks(): TrackPublication[];
39
- /**
40
- * Finds the first track that matches the source filter, for example, getting
41
- * the user's camera track with getTrackBySource(Track.Source.Camera).
42
- * @param source
43
- * @returns
44
- */
45
- getTrack(source: Track.Source): TrackPublication | undefined;
46
- /**
47
- * Finds the first track that matches the track's name.
48
- * @param name
49
- * @returns
50
- */
51
- getTrackByName(name: string): TrackPublication | undefined;
52
- get connectionQuality(): ConnectionQuality;
53
- get isCameraEnabled(): boolean;
54
- get isMicrophoneEnabled(): boolean;
55
- get isScreenShareEnabled(): boolean;
56
- get isLocal(): boolean;
57
- /** when participant joined the room */
58
- get joinedAt(): Date | undefined;
59
- /** @internal */
60
- updateInfo(info: ParticipantInfo): boolean;
61
- /** @internal */
62
- setMetadata(md: string): void;
63
- protected setName(name: string): void;
64
- /** @internal */
65
- setPermissions(permissions: ParticipantPermission): boolean;
66
- /** @internal */
67
- setIsSpeaking(speaking: boolean): void;
68
- /** @internal */
69
- setConnectionQuality(q: ProtoQuality): void;
70
- protected addTrackPublication(publication: TrackPublication): void;
71
- }
72
- export type ParticipantEventCallbacks = {
73
- trackPublished: (publication: RemoteTrackPublication) => void;
74
- trackSubscribed: (track: RemoteTrack, publication: RemoteTrackPublication) => void;
75
- trackSubscriptionFailed: (trackSid: string) => void;
76
- trackUnpublished: (publication: RemoteTrackPublication) => void;
77
- trackUnsubscribed: (track: RemoteTrack, publication: RemoteTrackPublication) => void;
78
- trackMuted: (publication: TrackPublication) => void;
79
- trackUnmuted: (publication: TrackPublication) => void;
80
- localTrackPublished: (publication: LocalTrackPublication) => void;
81
- localTrackUnpublished: (publication: LocalTrackPublication) => void;
82
- participantMetadataChanged: (prevMetadata: string | undefined, participant?: any) => void;
83
- participantNameChanged: (name: string) => void;
84
- dataReceived: (payload: Uint8Array, kind: DataPacket_Kind) => void;
85
- isSpeakingChanged: (speaking: boolean) => void;
86
- connectionQualityChanged: (connectionQuality: ConnectionQuality) => void;
87
- trackStreamStateChanged: (publication: RemoteTrackPublication, streamState: Track.StreamState) => void;
88
- trackSubscriptionPermissionChanged: (publication: RemoteTrackPublication, status: TrackPublication.PermissionStatus) => void;
89
- mediaDevicesError: (error: Error) => void;
90
- participantPermissionsChanged: (prevPermissions?: ParticipantPermission) => void;
91
- trackSubscriptionStatusChanged: (publication: RemoteTrackPublication, status: TrackPublication.SubscriptionStatus) => void;
92
- };
93
- export {};
1
+ import type TypedEmitter from 'typed-emitter';
2
+ import { DataPacket_Kind, ParticipantInfo, ParticipantPermission, ConnectionQuality as ProtoQuality } from '../../proto/livekit_models';
3
+ import type LocalTrackPublication from '../track/LocalTrackPublication';
4
+ import type RemoteTrack from '../track/RemoteTrack';
5
+ import type RemoteTrackPublication from '../track/RemoteTrackPublication';
6
+ import { Track } from '../track/Track';
7
+ import type { TrackPublication } from '../track/TrackPublication';
8
+ export declare enum ConnectionQuality {
9
+ Excellent = "excellent",
10
+ Good = "good",
11
+ Poor = "poor",
12
+ Unknown = "unknown"
13
+ }
14
+ declare const Participant_base: new () => TypedEmitter<ParticipantEventCallbacks>;
15
+ export default class Participant extends Participant_base {
16
+ protected participantInfo?: ParticipantInfo;
17
+ audioTracks: Map<string, TrackPublication>;
18
+ videoTracks: Map<string, TrackPublication>;
19
+ /** map of track sid => all published tracks */
20
+ tracks: Map<string, TrackPublication>;
21
+ /** audio level between 0-1.0, 1 being loudest, 0 being softest */
22
+ audioLevel: number;
23
+ /** if participant is currently speaking */
24
+ isSpeaking: boolean;
25
+ /** server assigned unique id */
26
+ sid: string;
27
+ /** client assigned identity, encoded in JWT token */
28
+ identity: string;
29
+ /** client assigned display name, encoded in JWT token */
30
+ name?: string;
31
+ /** client metadata, opaque to livekit */
32
+ metadata?: string;
33
+ lastSpokeAt?: Date | undefined;
34
+ permissions?: ParticipantPermission;
35
+ private _connectionQuality;
36
+ /** @internal */
37
+ constructor(sid: string, identity: string, name?: string, metadata?: string);
38
+ getTracks(): TrackPublication[];
39
+ /**
40
+ * Finds the first track that matches the source filter, for example, getting
41
+ * the user's camera track with getTrackBySource(Track.Source.Camera).
42
+ * @param source
43
+ * @returns
44
+ */
45
+ getTrack(source: Track.Source): TrackPublication | undefined;
46
+ /**
47
+ * Finds the first track that matches the track's name.
48
+ * @param name
49
+ * @returns
50
+ */
51
+ getTrackByName(name: string): TrackPublication | undefined;
52
+ get connectionQuality(): ConnectionQuality;
53
+ get isCameraEnabled(): boolean;
54
+ get isMicrophoneEnabled(): boolean;
55
+ get isScreenShareEnabled(): boolean;
56
+ get isLocal(): boolean;
57
+ /** when participant joined the room */
58
+ get joinedAt(): Date | undefined;
59
+ /** @internal */
60
+ updateInfo(info: ParticipantInfo): boolean;
61
+ /** @internal */
62
+ setMetadata(md: string): void;
63
+ protected setName(name: string): void;
64
+ /** @internal */
65
+ setPermissions(permissions: ParticipantPermission): boolean;
66
+ /** @internal */
67
+ setIsSpeaking(speaking: boolean): void;
68
+ /** @internal */
69
+ setConnectionQuality(q: ProtoQuality): void;
70
+ protected addTrackPublication(publication: TrackPublication): void;
71
+ }
72
+ export type ParticipantEventCallbacks = {
73
+ trackPublished: (publication: RemoteTrackPublication) => void;
74
+ trackSubscribed: (track: RemoteTrack, publication: RemoteTrackPublication) => void;
75
+ trackSubscriptionFailed: (trackSid: string) => void;
76
+ trackUnpublished: (publication: RemoteTrackPublication) => void;
77
+ trackUnsubscribed: (track: RemoteTrack, publication: RemoteTrackPublication) => void;
78
+ trackMuted: (publication: TrackPublication) => void;
79
+ trackUnmuted: (publication: TrackPublication) => void;
80
+ localTrackPublished: (publication: LocalTrackPublication) => void;
81
+ localTrackUnpublished: (publication: LocalTrackPublication) => void;
82
+ participantMetadataChanged: (prevMetadata: string | undefined, participant?: any) => void;
83
+ participantNameChanged: (name: string) => void;
84
+ dataReceived: (payload: Uint8Array, kind: DataPacket_Kind) => void;
85
+ isSpeakingChanged: (speaking: boolean) => void;
86
+ connectionQualityChanged: (connectionQuality: ConnectionQuality) => void;
87
+ trackStreamStateChanged: (publication: RemoteTrackPublication, streamState: Track.StreamState) => void;
88
+ trackSubscriptionPermissionChanged: (publication: RemoteTrackPublication, status: TrackPublication.PermissionStatus) => void;
89
+ mediaDevicesError: (error: Error) => void;
90
+ participantPermissionsChanged: (prevPermissions?: ParticipantPermission) => void;
91
+ trackSubscriptionStatusChanged: (publication: RemoteTrackPublication, status: TrackPublication.SubscriptionStatus) => void;
92
+ };
93
+ export {};
94
94
  //# sourceMappingURL=Participant.d.ts.map
@@ -1,26 +1,26 @@
1
- import type { TrackPermission } from '../../proto/livekit_rtc';
2
- export interface ParticipantTrackPermission {
3
- /**
4
- * The participant identity this permission applies to.
5
- * You can either provide this or `participantSid`
6
- */
7
- participantIdentity?: string;
8
- /**
9
- * The participant server id this permission applies to.
10
- * You can either provide this or `participantIdentity`
11
- */
12
- participantSid?: string;
13
- /**
14
- * Grant permission to all all tracks. Takes precedence over allowedTrackSids.
15
- * false if unset.
16
- */
17
- allowAll?: boolean;
18
- /**
19
- * The list of track ids that the target participant can subscribe to.
20
- * When unset, it'll allow all tracks to be subscribed by the participant.
21
- * When empty, this participant is disallowed from subscribing to any tracks.
22
- */
23
- allowedTrackSids?: string[];
24
- }
25
- export declare function trackPermissionToProto(perms: ParticipantTrackPermission): TrackPermission;
1
+ import type { TrackPermission } from '../../proto/livekit_rtc';
2
+ export interface ParticipantTrackPermission {
3
+ /**
4
+ * The participant identity this permission applies to.
5
+ * You can either provide this or `participantSid`
6
+ */
7
+ participantIdentity?: string;
8
+ /**
9
+ * The participant server id this permission applies to.
10
+ * You can either provide this or `participantIdentity`
11
+ */
12
+ participantSid?: string;
13
+ /**
14
+ * Grant permission to all all tracks. Takes precedence over allowedTrackSids.
15
+ * false if unset.
16
+ */
17
+ allowAll?: boolean;
18
+ /**
19
+ * The list of track ids that the target participant can subscribe to.
20
+ * When unset, it'll allow all tracks to be subscribed by the participant.
21
+ * When empty, this participant is disallowed from subscribing to any tracks.
22
+ */
23
+ allowedTrackSids?: string[];
24
+ }
25
+ export declare function trackPermissionToProto(perms: ParticipantTrackPermission): TrackPermission;
26
26
  //# sourceMappingURL=ParticipantTrackPermission.d.ts.map