livekit-client 0.18.4-RC6 → 0.18.4
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/README.md +2 -5
- package/dist/api/RequestQueue.d.ts +13 -12
- package/dist/api/RequestQueue.d.ts.map +1 -0
- package/dist/api/SignalClient.d.ts +67 -66
- package/dist/api/SignalClient.d.ts.map +1 -0
- package/dist/connect.d.ts +24 -23
- package/dist/connect.d.ts.map +1 -0
- package/dist/index.d.ts +27 -26
- package/dist/index.d.ts.map +1 -0
- package/dist/livekit-client.esm.mjs +546 -486
- package/dist/livekit-client.esm.mjs.map +1 -1
- package/dist/livekit-client.umd.js +1 -1
- package/dist/livekit-client.umd.js.map +1 -1
- package/dist/logger.d.ts +26 -25
- package/dist/logger.d.ts.map +1 -0
- package/dist/options.d.ts +128 -127
- package/dist/options.d.ts.map +1 -0
- package/dist/proto/google/protobuf/timestamp.d.ts +133 -132
- package/dist/proto/google/protobuf/timestamp.d.ts.map +1 -0
- package/dist/proto/livekit_models.d.ts +876 -868
- package/dist/proto/livekit_models.d.ts.map +1 -0
- package/dist/proto/livekit_rtc.d.ts +3904 -3859
- package/dist/proto/livekit_rtc.d.ts.map +1 -0
- package/dist/room/DeviceManager.d.ts +8 -7
- package/dist/room/DeviceManager.d.ts.map +1 -0
- package/dist/room/PCTransport.d.ts +16 -15
- package/dist/room/PCTransport.d.ts.map +1 -0
- package/dist/room/RTCEngine.d.ts +67 -66
- package/dist/room/RTCEngine.d.ts.map +1 -0
- package/dist/room/Room.d.ts +166 -165
- package/dist/room/Room.d.ts.map +1 -0
- package/dist/room/errors.d.ts +29 -28
- package/dist/room/errors.d.ts.map +1 -0
- package/dist/room/events.d.ts +391 -390
- package/dist/room/events.d.ts.map +1 -0
- package/dist/room/participant/LocalParticipant.d.ts +126 -125
- package/dist/room/participant/LocalParticipant.d.ts.map +1 -0
- package/dist/room/participant/Participant.d.ts +94 -93
- package/dist/room/participant/Participant.d.ts.map +1 -0
- package/dist/room/participant/ParticipantTrackPermission.d.ts +26 -19
- package/dist/room/participant/ParticipantTrackPermission.d.ts.map +1 -0
- package/dist/room/participant/RemoteParticipant.d.ts +40 -39
- package/dist/room/participant/RemoteParticipant.d.ts.map +1 -0
- package/dist/room/participant/publishUtils.d.ts +18 -17
- package/dist/room/participant/publishUtils.d.ts.map +1 -0
- package/dist/room/stats.d.ts +66 -65
- package/dist/room/stats.d.ts.map +1 -0
- package/dist/room/track/LocalAudioTrack.d.ts +20 -19
- package/dist/room/track/LocalAudioTrack.d.ts.map +1 -0
- package/dist/room/track/LocalTrack.d.ts +28 -27
- package/dist/room/track/LocalTrack.d.ts.map +1 -0
- package/dist/room/track/LocalTrackPublication.d.ts +38 -37
- package/dist/room/track/LocalTrackPublication.d.ts.map +1 -0
- package/dist/room/track/LocalVideoTrack.d.ts +31 -30
- package/dist/room/track/LocalVideoTrack.d.ts.map +1 -0
- package/dist/room/track/RemoteAudioTrack.d.ts +20 -19
- package/dist/room/track/RemoteAudioTrack.d.ts.map +1 -0
- package/dist/room/track/RemoteTrack.d.ts +16 -15
- package/dist/room/track/RemoteTrack.d.ts.map +1 -0
- package/dist/room/track/RemoteTrackPublication.d.ts +51 -50
- package/dist/room/track/RemoteTrackPublication.d.ts.map +1 -0
- package/dist/room/track/RemoteVideoTrack.d.ts +28 -27
- package/dist/room/track/RemoteVideoTrack.d.ts.map +1 -0
- package/dist/room/track/Track.d.ts +101 -100
- package/dist/room/track/Track.d.ts.map +1 -0
- package/dist/room/track/TrackPublication.d.ts +50 -49
- package/dist/room/track/TrackPublication.d.ts.map +1 -0
- package/dist/room/track/create.d.ts +24 -23
- package/dist/room/track/create.d.ts.map +1 -0
- package/dist/room/track/defaults.d.ts +5 -4
- package/dist/room/track/defaults.d.ts.map +1 -0
- package/dist/room/track/options.d.ts +223 -222
- package/dist/room/track/options.d.ts.map +1 -0
- package/dist/room/track/types.d.ts +19 -18
- package/dist/room/track/types.d.ts.map +1 -0
- package/dist/room/track/utils.d.ts +14 -13
- package/dist/room/track/utils.d.ts.map +1 -0
- package/dist/room/utils.d.ts +17 -15
- package/dist/room/utils.d.ts.map +1 -0
- package/dist/test/mocks.d.ts +12 -11
- package/dist/test/mocks.d.ts.map +1 -0
- package/dist/version.d.ts +3 -2
- package/dist/version.d.ts.map +1 -0
- package/package.json +4 -5
- package/src/api/RequestQueue.ts +53 -0
- package/src/api/SignalClient.ts +497 -0
- package/src/connect.ts +98 -0
- package/src/index.ts +49 -0
- package/src/logger.ts +56 -0
- package/src/options.ts +156 -0
- package/src/proto/google/protobuf/timestamp.ts +216 -0
- package/src/proto/livekit_models.ts +2456 -0
- package/src/proto/livekit_rtc.ts +2859 -0
- package/src/room/DeviceManager.ts +80 -0
- package/src/room/PCTransport.ts +88 -0
- package/src/room/RTCEngine.ts +695 -0
- package/src/room/Room.ts +970 -0
- package/src/room/errors.ts +65 -0
- package/src/room/events.ts +438 -0
- package/src/room/participant/LocalParticipant.ts +755 -0
- package/src/room/participant/Participant.ts +287 -0
- package/src/room/participant/ParticipantTrackPermission.ts +42 -0
- package/src/room/participant/RemoteParticipant.ts +263 -0
- package/src/room/participant/publishUtils.test.ts +144 -0
- package/src/room/participant/publishUtils.ts +229 -0
- package/src/room/stats.ts +134 -0
- package/src/room/track/LocalAudioTrack.ts +134 -0
- package/src/room/track/LocalTrack.ts +229 -0
- package/src/room/track/LocalTrackPublication.ts +87 -0
- package/src/room/track/LocalVideoTrack.test.ts +72 -0
- package/src/room/track/LocalVideoTrack.ts +295 -0
- package/src/room/track/RemoteAudioTrack.ts +86 -0
- package/src/room/track/RemoteTrack.ts +62 -0
- package/src/room/track/RemoteTrackPublication.ts +207 -0
- package/src/room/track/RemoteVideoTrack.ts +240 -0
- package/src/room/track/Track.ts +358 -0
- package/src/room/track/TrackPublication.ts +120 -0
- package/src/room/track/create.ts +122 -0
- package/src/room/track/defaults.ts +27 -0
- package/src/room/track/options.ts +281 -0
- package/src/room/track/types.ts +20 -0
- package/src/room/track/utils.test.ts +110 -0
- package/src/room/track/utils.ts +113 -0
- package/src/room/utils.ts +115 -0
- package/src/test/mocks.ts +17 -0
- package/src/version.ts +2 -0
- package/CHANGELOG.md +0 -5
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/room/events.ts"],"names":[],"mappings":"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"}
|
@@ -1,125 +1,126 @@
|
|
1
|
-
import { RoomOptions } from '../../options';
|
2
|
-
import { DataPacket_Kind, ParticipantPermission } from '../../proto/livekit_models';
|
3
|
-
import { DataChannelInfo, TrackPublishedResponse } from '../../proto/livekit_rtc';
|
4
|
-
import RTCEngine from '../RTCEngine';
|
5
|
-
import LocalTrack from '../track/LocalTrack';
|
6
|
-
import LocalTrackPublication from '../track/LocalTrackPublication';
|
7
|
-
import { CreateLocalTracksOptions, ScreenShareCaptureOptions, TrackPublishOptions } from '../track/options';
|
8
|
-
import { Track } from '../track/Track';
|
9
|
-
import Participant from './Participant';
|
10
|
-
import { ParticipantTrackPermission } from './ParticipantTrackPermission';
|
11
|
-
import RemoteParticipant from './RemoteParticipant';
|
12
|
-
export default class LocalParticipant extends Participant {
|
13
|
-
audioTracks: Map<string, LocalTrackPublication>;
|
14
|
-
videoTracks: Map<string, LocalTrackPublication>;
|
15
|
-
/** map of track sid => all published tracks */
|
16
|
-
tracks: Map<string, LocalTrackPublication>;
|
17
|
-
private pendingPublishing;
|
18
|
-
private cameraError;
|
19
|
-
private microphoneError;
|
20
|
-
private engine;
|
21
|
-
private roomOptions?;
|
22
|
-
/** @internal */
|
23
|
-
constructor(sid: string, identity: string, engine: RTCEngine, options: RoomOptions);
|
24
|
-
get lastCameraError(): Error | undefined;
|
25
|
-
get lastMicrophoneError(): Error | undefined;
|
26
|
-
getTrack(source: Track.Source): LocalTrackPublication | undefined;
|
27
|
-
getTrackByName(name: string): LocalTrackPublication | undefined;
|
28
|
-
/**
|
29
|
-
* Enable or disable a participant's camera track.
|
30
|
-
*
|
31
|
-
* If a track has already published, it'll mute or unmute the track.
|
32
|
-
* Resolves with a `LocalTrackPublication` instance if successful and `undefined` otherwise
|
33
|
-
*/
|
34
|
-
setCameraEnabled(enabled: boolean): Promise<LocalTrackPublication | undefined>;
|
35
|
-
/**
|
36
|
-
* Enable or disable a participant's microphone track.
|
37
|
-
*
|
38
|
-
* If a track has already published, it'll mute or unmute the track.
|
39
|
-
* Resolves with a `LocalTrackPublication` instance if successful and `undefined` otherwise
|
40
|
-
*/
|
41
|
-
setMicrophoneEnabled(enabled: boolean): Promise<LocalTrackPublication | undefined>;
|
42
|
-
/**
|
43
|
-
* Start or stop sharing a participant's screen
|
44
|
-
* Resolves with a `LocalTrackPublication` instance if successful and `undefined` otherwise
|
45
|
-
*/
|
46
|
-
setScreenShareEnabled(enabled: boolean): Promise<LocalTrackPublication | undefined>;
|
47
|
-
/** @internal */
|
48
|
-
setPermissions(permissions: ParticipantPermission): boolean;
|
49
|
-
/**
|
50
|
-
* Enable or disable publishing for a track by source. This serves as a simple
|
51
|
-
* way to manage the common tracks (camera, mic, or screen share).
|
52
|
-
* Resolves with LocalTrackPublication if successful and void otherwise
|
53
|
-
*/
|
54
|
-
private setTrackEnabled;
|
55
|
-
/**
|
56
|
-
* Publish both camera and microphone at the same time. This is useful for
|
57
|
-
* displaying a single Permission Dialog box to the end user.
|
58
|
-
*/
|
59
|
-
enableCameraAndMicrophone(): Promise<void>;
|
60
|
-
/**
|
61
|
-
* Create local camera and/or microphone tracks
|
62
|
-
* @param options
|
63
|
-
* @returns
|
64
|
-
*/
|
65
|
-
createTracks(options?: CreateLocalTracksOptions): Promise<LocalTrack[]>;
|
66
|
-
/**
|
67
|
-
* Creates a screen capture tracks with getDisplayMedia().
|
68
|
-
* A LocalVideoTrack is always created and returned.
|
69
|
-
* If { audio: true }, and the browser supports audio capture, a LocalAudioTrack is also created.
|
70
|
-
*/
|
71
|
-
createScreenTracks(options?: ScreenShareCaptureOptions): Promise<Array<LocalTrack>>;
|
72
|
-
/**
|
73
|
-
* Publish a new track to the room
|
74
|
-
* @param track
|
75
|
-
* @param options
|
76
|
-
*/
|
77
|
-
publishTrack(track: LocalTrack | MediaStreamTrack, options?: TrackPublishOptions): Promise<LocalTrackPublication>;
|
78
|
-
unpublishTrack(track: LocalTrack | MediaStreamTrack, stopOnUnpublish?: boolean): LocalTrackPublication | undefined;
|
79
|
-
unpublishTracks(tracks: LocalTrack[] | MediaStreamTrack[]): LocalTrackPublication[];
|
80
|
-
/**
|
81
|
-
* Publish a new data payload to the room. Data will be forwarded to each
|
82
|
-
* participant in the room if the destination argument is empty
|
83
|
-
*
|
84
|
-
* @param data Uint8Array of the payload. To send string data, use TextEncoder.encode
|
85
|
-
* @param kind whether to send this as reliable or lossy.
|
86
|
-
* For data that you need delivery guarantee (such as chat messages), use Reliable.
|
87
|
-
* For data that should arrive as quickly as possible, but you are ok with dropped
|
88
|
-
* packets, use Lossy.
|
89
|
-
* @param destination the participants who will receive the message
|
90
|
-
*/
|
91
|
-
publishData(data: Uint8Array, kind: DataPacket_Kind, destination?: RemoteParticipant[] | string[]): Promise<void>;
|
92
|
-
/**
|
93
|
-
* Control who can subscribe to LocalParticipant's published tracks.
|
94
|
-
*
|
95
|
-
* By default, all participants can subscribe. This allows fine-grained control over
|
96
|
-
* who is able to subscribe at a participant and track level.
|
97
|
-
*
|
98
|
-
* Note: if access is given at a track-level (i.e. both [allParticipantsAllowed] and
|
99
|
-
* [ParticipantTrackPermission.allTracksAllowed] are false), any newer published tracks
|
100
|
-
* will not grant permissions to any participants and will require a subsequent
|
101
|
-
* permissions update to allow subscription.
|
102
|
-
*
|
103
|
-
* @param allParticipantsAllowed Allows all participants to subscribe all tracks.
|
104
|
-
* Takes precedence over [[participantTrackPermissions]] if set to true.
|
105
|
-
* By default this is set to true.
|
106
|
-
* @param participantTrackPermissions Full list of individual permissions per
|
107
|
-
* participant/track. Any omitted participants will not receive any permissions.
|
108
|
-
*/
|
109
|
-
setTrackSubscriptionPermissions(allParticipantsAllowed: boolean, participantTrackPermissions?: ParticipantTrackPermission[]): void;
|
110
|
-
/** @internal */
|
111
|
-
private onTrackUnmuted;
|
112
|
-
/** @internal */
|
113
|
-
private onTrackMuted;
|
114
|
-
private onTrackUpstreamPaused;
|
115
|
-
private onTrackUpstreamResumed;
|
116
|
-
private handleSubscribedQualityUpdate;
|
117
|
-
private handleLocalTrackUnpublished;
|
118
|
-
private onTrackUnpublish;
|
119
|
-
private getPublicationForTrack;
|
120
|
-
private setPreferredCodec;
|
121
|
-
/** @internal */
|
122
|
-
publishedTracksInfo(): TrackPublishedResponse[];
|
123
|
-
/** @internal */
|
124
|
-
dataChannelsInfo(): DataChannelInfo[];
|
125
|
-
}
|
1
|
+
import { RoomOptions } from '../../options';
|
2
|
+
import { DataPacket_Kind, ParticipantPermission } from '../../proto/livekit_models';
|
3
|
+
import { DataChannelInfo, TrackPublishedResponse } from '../../proto/livekit_rtc';
|
4
|
+
import RTCEngine from '../RTCEngine';
|
5
|
+
import LocalTrack from '../track/LocalTrack';
|
6
|
+
import LocalTrackPublication from '../track/LocalTrackPublication';
|
7
|
+
import { CreateLocalTracksOptions, ScreenShareCaptureOptions, TrackPublishOptions } from '../track/options';
|
8
|
+
import { Track } from '../track/Track';
|
9
|
+
import Participant from './Participant';
|
10
|
+
import { ParticipantTrackPermission } from './ParticipantTrackPermission';
|
11
|
+
import RemoteParticipant from './RemoteParticipant';
|
12
|
+
export default class LocalParticipant extends Participant {
|
13
|
+
audioTracks: Map<string, LocalTrackPublication>;
|
14
|
+
videoTracks: Map<string, LocalTrackPublication>;
|
15
|
+
/** map of track sid => all published tracks */
|
16
|
+
tracks: Map<string, LocalTrackPublication>;
|
17
|
+
private pendingPublishing;
|
18
|
+
private cameraError;
|
19
|
+
private microphoneError;
|
20
|
+
private engine;
|
21
|
+
private roomOptions?;
|
22
|
+
/** @internal */
|
23
|
+
constructor(sid: string, identity: string, engine: RTCEngine, options: RoomOptions);
|
24
|
+
get lastCameraError(): Error | undefined;
|
25
|
+
get lastMicrophoneError(): Error | undefined;
|
26
|
+
getTrack(source: Track.Source): LocalTrackPublication | undefined;
|
27
|
+
getTrackByName(name: string): LocalTrackPublication | undefined;
|
28
|
+
/**
|
29
|
+
* Enable or disable a participant's camera track.
|
30
|
+
*
|
31
|
+
* If a track has already published, it'll mute or unmute the track.
|
32
|
+
* Resolves with a `LocalTrackPublication` instance if successful and `undefined` otherwise
|
33
|
+
*/
|
34
|
+
setCameraEnabled(enabled: boolean): Promise<LocalTrackPublication | undefined>;
|
35
|
+
/**
|
36
|
+
* Enable or disable a participant's microphone track.
|
37
|
+
*
|
38
|
+
* If a track has already published, it'll mute or unmute the track.
|
39
|
+
* Resolves with a `LocalTrackPublication` instance if successful and `undefined` otherwise
|
40
|
+
*/
|
41
|
+
setMicrophoneEnabled(enabled: boolean): Promise<LocalTrackPublication | undefined>;
|
42
|
+
/**
|
43
|
+
* Start or stop sharing a participant's screen
|
44
|
+
* Resolves with a `LocalTrackPublication` instance if successful and `undefined` otherwise
|
45
|
+
*/
|
46
|
+
setScreenShareEnabled(enabled: boolean): Promise<LocalTrackPublication | undefined>;
|
47
|
+
/** @internal */
|
48
|
+
setPermissions(permissions: ParticipantPermission): boolean;
|
49
|
+
/**
|
50
|
+
* Enable or disable publishing for a track by source. This serves as a simple
|
51
|
+
* way to manage the common tracks (camera, mic, or screen share).
|
52
|
+
* Resolves with LocalTrackPublication if successful and void otherwise
|
53
|
+
*/
|
54
|
+
private setTrackEnabled;
|
55
|
+
/**
|
56
|
+
* Publish both camera and microphone at the same time. This is useful for
|
57
|
+
* displaying a single Permission Dialog box to the end user.
|
58
|
+
*/
|
59
|
+
enableCameraAndMicrophone(): Promise<void>;
|
60
|
+
/**
|
61
|
+
* Create local camera and/or microphone tracks
|
62
|
+
* @param options
|
63
|
+
* @returns
|
64
|
+
*/
|
65
|
+
createTracks(options?: CreateLocalTracksOptions): Promise<LocalTrack[]>;
|
66
|
+
/**
|
67
|
+
* Creates a screen capture tracks with getDisplayMedia().
|
68
|
+
* A LocalVideoTrack is always created and returned.
|
69
|
+
* If { audio: true }, and the browser supports audio capture, a LocalAudioTrack is also created.
|
70
|
+
*/
|
71
|
+
createScreenTracks(options?: ScreenShareCaptureOptions): Promise<Array<LocalTrack>>;
|
72
|
+
/**
|
73
|
+
* Publish a new track to the room
|
74
|
+
* @param track
|
75
|
+
* @param options
|
76
|
+
*/
|
77
|
+
publishTrack(track: LocalTrack | MediaStreamTrack, options?: TrackPublishOptions): Promise<LocalTrackPublication>;
|
78
|
+
unpublishTrack(track: LocalTrack | MediaStreamTrack, stopOnUnpublish?: boolean): LocalTrackPublication | undefined;
|
79
|
+
unpublishTracks(tracks: LocalTrack[] | MediaStreamTrack[]): LocalTrackPublication[];
|
80
|
+
/**
|
81
|
+
* Publish a new data payload to the room. Data will be forwarded to each
|
82
|
+
* participant in the room if the destination argument is empty
|
83
|
+
*
|
84
|
+
* @param data Uint8Array of the payload. To send string data, use TextEncoder.encode
|
85
|
+
* @param kind whether to send this as reliable or lossy.
|
86
|
+
* For data that you need delivery guarantee (such as chat messages), use Reliable.
|
87
|
+
* For data that should arrive as quickly as possible, but you are ok with dropped
|
88
|
+
* packets, use Lossy.
|
89
|
+
* @param destination the participants who will receive the message
|
90
|
+
*/
|
91
|
+
publishData(data: Uint8Array, kind: DataPacket_Kind, destination?: RemoteParticipant[] | string[]): Promise<void>;
|
92
|
+
/**
|
93
|
+
* Control who can subscribe to LocalParticipant's published tracks.
|
94
|
+
*
|
95
|
+
* By default, all participants can subscribe. This allows fine-grained control over
|
96
|
+
* who is able to subscribe at a participant and track level.
|
97
|
+
*
|
98
|
+
* Note: if access is given at a track-level (i.e. both [allParticipantsAllowed] and
|
99
|
+
* [ParticipantTrackPermission.allTracksAllowed] are false), any newer published tracks
|
100
|
+
* will not grant permissions to any participants and will require a subsequent
|
101
|
+
* permissions update to allow subscription.
|
102
|
+
*
|
103
|
+
* @param allParticipantsAllowed Allows all participants to subscribe all tracks.
|
104
|
+
* Takes precedence over [[participantTrackPermissions]] if set to true.
|
105
|
+
* By default this is set to true.
|
106
|
+
* @param participantTrackPermissions Full list of individual permissions per
|
107
|
+
* participant/track. Any omitted participants will not receive any permissions.
|
108
|
+
*/
|
109
|
+
setTrackSubscriptionPermissions(allParticipantsAllowed: boolean, participantTrackPermissions?: ParticipantTrackPermission[]): void;
|
110
|
+
/** @internal */
|
111
|
+
private onTrackUnmuted;
|
112
|
+
/** @internal */
|
113
|
+
private onTrackMuted;
|
114
|
+
private onTrackUpstreamPaused;
|
115
|
+
private onTrackUpstreamResumed;
|
116
|
+
private handleSubscribedQualityUpdate;
|
117
|
+
private handleLocalTrackUnpublished;
|
118
|
+
private onTrackUnpublish;
|
119
|
+
private getPublicationForTrack;
|
120
|
+
private setPreferredCodec;
|
121
|
+
/** @internal */
|
122
|
+
publishedTracksInfo(): TrackPublishedResponse[];
|
123
|
+
/** @internal */
|
124
|
+
dataChannelsInfo(): DataChannelInfo[];
|
125
|
+
}
|
126
|
+
//# sourceMappingURL=LocalParticipant.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"LocalParticipant.d.ts","sourceRoot":"","sources":["../../../src/room/participant/LocalParticipant.ts"],"names":[],"mappings":"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"}
|
@@ -1,93 +1,94 @@
|
|
1
|
-
import type TypedEmitter from 'typed-emitter';
|
2
|
-
import { ConnectionQuality as ProtoQuality, DataPacket_Kind, ParticipantInfo, ParticipantPermission } from '../../proto/livekit_models';
|
3
|
-
import LocalTrackPublication from '../track/LocalTrackPublication';
|
4
|
-
import RemoteTrackPublication from '../track/RemoteTrackPublication';
|
5
|
-
import { Track } from '../track/Track';
|
6
|
-
import { TrackPublication } from '../track/TrackPublication';
|
7
|
-
import { RemoteTrack } from '../track/types';
|
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);
|
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
|
-
/** when participant joined the room */
|
57
|
-
get joinedAt(): Date | undefined;
|
58
|
-
/** @internal */
|
59
|
-
updateInfo(info: ParticipantInfo): void;
|
60
|
-
/** @internal */
|
61
|
-
setMetadata(md: string): void;
|
62
|
-
/** @internal */
|
63
|
-
setPermissions(permissions: ParticipantPermission): boolean;
|
64
|
-
/** @internal */
|
65
|
-
setIsSpeaking(speaking: boolean): void;
|
66
|
-
/** @internal */
|
67
|
-
setConnectionQuality(q: ProtoQuality): void;
|
68
|
-
protected addTrackPublication(publication: TrackPublication): void;
|
69
|
-
}
|
70
|
-
export declare type ParticipantEventCallbacks = {
|
71
|
-
trackPublished: (publication: RemoteTrackPublication) => void;
|
72
|
-
trackSubscribed: (track: RemoteTrack, publication: RemoteTrackPublication) => void;
|
73
|
-
trackSubscriptionFailed: (trackSid: string) => void;
|
74
|
-
trackUnpublished: (publication: RemoteTrackPublication) => void;
|
75
|
-
trackUnsubscribed: (track: RemoteTrack, publication: RemoteTrackPublication) => void;
|
76
|
-
trackMuted: (publication: TrackPublication) => void;
|
77
|
-
trackUnmuted: (publication: TrackPublication) => void;
|
78
|
-
localTrackPublished: (publication: LocalTrackPublication) => void;
|
79
|
-
localTrackUnpublished: (publication: LocalTrackPublication) => void;
|
80
|
-
/**
|
81
|
-
* @deprecated use [[participantMetadataChanged]] instead
|
82
|
-
*/
|
83
|
-
metadataChanged: (prevMetadata: string | undefined, participant?: any) => void;
|
84
|
-
participantMetadataChanged: (prevMetadata: string | undefined, participant?: any) => void;
|
85
|
-
dataReceived: (payload: Uint8Array, kind: DataPacket_Kind) => void;
|
86
|
-
isSpeakingChanged: (speaking: boolean) => void;
|
87
|
-
connectionQualityChanged: (connectionQuality: ConnectionQuality) => void;
|
88
|
-
trackStreamStateChanged: (publication: RemoteTrackPublication, streamState: Track.StreamState) => void;
|
89
|
-
trackSubscriptionPermissionChanged: (publication: RemoteTrackPublication, status: TrackPublication.SubscriptionStatus) => void;
|
90
|
-
mediaDevicesError: (error: Error) => void;
|
91
|
-
participantPermissionsChanged: (prevPermissions: ParticipantPermission) => void;
|
92
|
-
};
|
93
|
-
export {};
|
1
|
+
import type TypedEmitter from 'typed-emitter';
|
2
|
+
import { ConnectionQuality as ProtoQuality, DataPacket_Kind, ParticipantInfo, ParticipantPermission } from '../../proto/livekit_models';
|
3
|
+
import LocalTrackPublication from '../track/LocalTrackPublication';
|
4
|
+
import RemoteTrackPublication from '../track/RemoteTrackPublication';
|
5
|
+
import { Track } from '../track/Track';
|
6
|
+
import { TrackPublication } from '../track/TrackPublication';
|
7
|
+
import { RemoteTrack } from '../track/types';
|
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);
|
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
|
+
/** when participant joined the room */
|
57
|
+
get joinedAt(): Date | undefined;
|
58
|
+
/** @internal */
|
59
|
+
updateInfo(info: ParticipantInfo): void;
|
60
|
+
/** @internal */
|
61
|
+
setMetadata(md: string): void;
|
62
|
+
/** @internal */
|
63
|
+
setPermissions(permissions: ParticipantPermission): boolean;
|
64
|
+
/** @internal */
|
65
|
+
setIsSpeaking(speaking: boolean): void;
|
66
|
+
/** @internal */
|
67
|
+
setConnectionQuality(q: ProtoQuality): void;
|
68
|
+
protected addTrackPublication(publication: TrackPublication): void;
|
69
|
+
}
|
70
|
+
export declare type ParticipantEventCallbacks = {
|
71
|
+
trackPublished: (publication: RemoteTrackPublication) => void;
|
72
|
+
trackSubscribed: (track: RemoteTrack, publication: RemoteTrackPublication) => void;
|
73
|
+
trackSubscriptionFailed: (trackSid: string) => void;
|
74
|
+
trackUnpublished: (publication: RemoteTrackPublication) => void;
|
75
|
+
trackUnsubscribed: (track: RemoteTrack, publication: RemoteTrackPublication) => void;
|
76
|
+
trackMuted: (publication: TrackPublication) => void;
|
77
|
+
trackUnmuted: (publication: TrackPublication) => void;
|
78
|
+
localTrackPublished: (publication: LocalTrackPublication) => void;
|
79
|
+
localTrackUnpublished: (publication: LocalTrackPublication) => void;
|
80
|
+
/**
|
81
|
+
* @deprecated use [[participantMetadataChanged]] instead
|
82
|
+
*/
|
83
|
+
metadataChanged: (prevMetadata: string | undefined, participant?: any) => void;
|
84
|
+
participantMetadataChanged: (prevMetadata: string | undefined, participant?: any) => void;
|
85
|
+
dataReceived: (payload: Uint8Array, kind: DataPacket_Kind) => void;
|
86
|
+
isSpeakingChanged: (speaking: boolean) => void;
|
87
|
+
connectionQualityChanged: (connectionQuality: ConnectionQuality) => void;
|
88
|
+
trackStreamStateChanged: (publication: RemoteTrackPublication, streamState: Track.StreamState) => void;
|
89
|
+
trackSubscriptionPermissionChanged: (publication: RemoteTrackPublication, status: TrackPublication.SubscriptionStatus) => void;
|
90
|
+
mediaDevicesError: (error: Error) => void;
|
91
|
+
participantPermissionsChanged: (prevPermissions: ParticipantPermission) => void;
|
92
|
+
};
|
93
|
+
export {};
|
94
|
+
//# sourceMappingURL=Participant.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"Participant.d.ts","sourceRoot":"","sources":["../../../src/room/participant/Participant.ts"],"names":[],"mappings":"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"}
|
@@ -1,19 +1,26 @@
|
|
1
|
-
import { TrackPermission } from '../../proto/livekit_rtc';
|
2
|
-
export interface ParticipantTrackPermission {
|
3
|
-
/**
|
4
|
-
* The participant
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
*
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
*
|
15
|
-
*
|
16
|
-
*/
|
17
|
-
|
18
|
-
|
19
|
-
|
1
|
+
import { 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
|
+
//# sourceMappingURL=ParticipantTrackPermission.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"ParticipantTrackPermission.d.ts","sourceRoot":"","sources":["../../../src/room/participant/ParticipantTrackPermission.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE1D,MAAM,WAAW,0BAA0B;IACzC;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAE7B;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC7B;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,0BAA0B,GAAG,eAAe,CAYzF"}
|
@@ -1,39 +1,40 @@
|
|
1
|
-
import { SignalClient } from '../../api/SignalClient';
|
2
|
-
import { ParticipantInfo } from '../../proto/livekit_models';
|
3
|
-
import RemoteTrackPublication from '../track/RemoteTrackPublication';
|
4
|
-
import { Track } from '../track/Track';
|
5
|
-
import { AdaptiveStreamSettings } from '../track/types';
|
6
|
-
import Participant, { ParticipantEventCallbacks } from './Participant';
|
7
|
-
export default class RemoteParticipant extends Participant {
|
8
|
-
audioTracks: Map<string, RemoteTrackPublication>;
|
9
|
-
videoTracks: Map<string, RemoteTrackPublication>;
|
10
|
-
tracks: Map<string, RemoteTrackPublication>;
|
11
|
-
signalClient: SignalClient;
|
12
|
-
/** @internal */
|
13
|
-
static fromParticipantInfo(signalClient: SignalClient, pi: ParticipantInfo): RemoteParticipant;
|
14
|
-
/** @internal */
|
15
|
-
constructor(signalClient: SignalClient, id: string, name?: string);
|
16
|
-
protected addTrackPublication(publication: RemoteTrackPublication): void;
|
17
|
-
getTrack(source: Track.Source): RemoteTrackPublication | undefined;
|
18
|
-
getTrackByName(name: string): RemoteTrackPublication | undefined;
|
19
|
-
/**
|
20
|
-
* sets the volume on the participant's microphone track if it exists.
|
21
|
-
*/
|
22
|
-
setVolume(volume: number): void;
|
23
|
-
/**
|
24
|
-
* gets the volume on the participant's microphone track
|
25
|
-
* returns undefined if no microphone track exists
|
26
|
-
*/
|
27
|
-
getVolume(): number | undefined;
|
28
|
-
/** @internal */
|
29
|
-
addSubscribedMediaTrack(mediaTrack: MediaStreamTrack, sid: Track.SID, mediaStream: MediaStream, receiver?: RTCRtpReceiver, adaptiveStreamSettings?: AdaptiveStreamSettings, triesLeft?: number): RemoteTrackPublication | undefined;
|
30
|
-
/** @internal */
|
31
|
-
get hasMetadata(): boolean;
|
32
|
-
getTrackPublication(sid: Track.SID): RemoteTrackPublication | undefined;
|
33
|
-
/** @internal */
|
34
|
-
updateInfo(info: ParticipantInfo): void;
|
35
|
-
/** @internal */
|
36
|
-
unpublishTrack(sid: Track.SID, sendUnpublish?: boolean): void;
|
37
|
-
/** @internal */
|
38
|
-
emit<E extends keyof ParticipantEventCallbacks>(event: E, ...args: Parameters<ParticipantEventCallbacks[E]>): boolean;
|
39
|
-
}
|
1
|
+
import { SignalClient } from '../../api/SignalClient';
|
2
|
+
import { ParticipantInfo } from '../../proto/livekit_models';
|
3
|
+
import RemoteTrackPublication from '../track/RemoteTrackPublication';
|
4
|
+
import { Track } from '../track/Track';
|
5
|
+
import { AdaptiveStreamSettings } from '../track/types';
|
6
|
+
import Participant, { ParticipantEventCallbacks } from './Participant';
|
7
|
+
export default class RemoteParticipant extends Participant {
|
8
|
+
audioTracks: Map<string, RemoteTrackPublication>;
|
9
|
+
videoTracks: Map<string, RemoteTrackPublication>;
|
10
|
+
tracks: Map<string, RemoteTrackPublication>;
|
11
|
+
signalClient: SignalClient;
|
12
|
+
/** @internal */
|
13
|
+
static fromParticipantInfo(signalClient: SignalClient, pi: ParticipantInfo): RemoteParticipant;
|
14
|
+
/** @internal */
|
15
|
+
constructor(signalClient: SignalClient, id: string, name?: string);
|
16
|
+
protected addTrackPublication(publication: RemoteTrackPublication): void;
|
17
|
+
getTrack(source: Track.Source): RemoteTrackPublication | undefined;
|
18
|
+
getTrackByName(name: string): RemoteTrackPublication | undefined;
|
19
|
+
/**
|
20
|
+
* sets the volume on the participant's microphone track if it exists.
|
21
|
+
*/
|
22
|
+
setVolume(volume: number): void;
|
23
|
+
/**
|
24
|
+
* gets the volume on the participant's microphone track
|
25
|
+
* returns undefined if no microphone track exists
|
26
|
+
*/
|
27
|
+
getVolume(): number | undefined;
|
28
|
+
/** @internal */
|
29
|
+
addSubscribedMediaTrack(mediaTrack: MediaStreamTrack, sid: Track.SID, mediaStream: MediaStream, receiver?: RTCRtpReceiver, adaptiveStreamSettings?: AdaptiveStreamSettings, triesLeft?: number): RemoteTrackPublication | undefined;
|
30
|
+
/** @internal */
|
31
|
+
get hasMetadata(): boolean;
|
32
|
+
getTrackPublication(sid: Track.SID): RemoteTrackPublication | undefined;
|
33
|
+
/** @internal */
|
34
|
+
updateInfo(info: ParticipantInfo): void;
|
35
|
+
/** @internal */
|
36
|
+
unpublishTrack(sid: Track.SID, sendUnpublish?: boolean): void;
|
37
|
+
/** @internal */
|
38
|
+
emit<E extends keyof ParticipantEventCallbacks>(event: E, ...args: Parameters<ParticipantEventCallbacks[E]>): boolean;
|
39
|
+
}
|
40
|
+
//# sourceMappingURL=RemoteParticipant.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"RemoteParticipant.d.ts","sourceRoot":"","sources":["../../../src/room/participant/RemoteParticipant.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEtD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAI7D,OAAO,sBAAsB,MAAM,iCAAiC,CAAC;AAErE,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,sBAAsB,EAAe,MAAM,gBAAgB,CAAC;AACrE,OAAO,WAAW,EAAE,EAAE,yBAAyB,EAAE,MAAM,eAAe,CAAC;AAEvE,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,WAAW;IACxD,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC;IAEjD,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC;IAEjD,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC;IAE5C,YAAY,EAAE,YAAY,CAAC;IAE3B,gBAAgB;IAChB,MAAM,CAAC,mBAAmB,CAAC,YAAY,EAAE,YAAY,EAAE,EAAE,EAAE,eAAe,GAAG,iBAAiB;IAM9F,gBAAgB;gBACJ,YAAY,EAAE,YAAY,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM;IAQjE,SAAS,CAAC,mBAAmB,CAAC,WAAW,EAAE,sBAAsB;IAkBjE,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,sBAAsB,GAAG,SAAS;IAOlE,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,sBAAsB,GAAG,SAAS;IAOhE;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM;IAOxB;;;OAGG;IACH,SAAS;IAOT,gBAAgB;IAChB,uBAAuB,CACrB,UAAU,EAAE,gBAAgB,EAC5B,GAAG,EAAE,KAAK,CAAC,GAAG,EACd,WAAW,EAAE,WAAW,EACxB,QAAQ,CAAC,EAAE,cAAc,EACzB,sBAAsB,CAAC,EAAE,sBAAsB,EAC/C,SAAS,CAAC,EAAE,MAAM;IAgEpB,gBAAgB;IAChB,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED,mBAAmB,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,GAAG,sBAAsB,GAAG,SAAS;IAIvE,gBAAgB;IAChB,UAAU,CAAC,IAAI,EAAE,eAAe;IA8ChC,gBAAgB;IAChB,cAAc,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,aAAa,CAAC,EAAE,OAAO;IAoCtD,gBAAgB;IAChB,IAAI,CAAC,CAAC,SAAS,MAAM,yBAAyB,EAC5C,KAAK,EAAE,CAAC,EACR,GAAG,IAAI,EAAE,UAAU,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC,GAChD,OAAO;CAIX"}
|