livekit-client 2.17.3 → 2.18.1
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/dist/livekit-client.e2ee.worker.js +1 -1
- package/dist/livekit-client.e2ee.worker.js.map +1 -1
- package/dist/livekit-client.e2ee.worker.mjs +8 -7
- package/dist/livekit-client.e2ee.worker.mjs.map +1 -1
- package/dist/livekit-client.esm.mjs +7823 -5772
- 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/src/api/SignalClient.d.ts +12 -4
- package/dist/src/api/SignalClient.d.ts.map +1 -1
- package/dist/src/e2ee/constants.d.ts.map +1 -1
- package/dist/src/e2ee/types.d.ts +6 -0
- package/dist/src/e2ee/types.d.ts.map +1 -1
- package/dist/src/e2ee/utils.d.ts +2 -1
- package/dist/src/e2ee/utils.d.ts.map +1 -1
- package/dist/src/e2ee/worker/DataCryptor.d.ts.map +1 -1
- package/dist/src/e2ee/worker/FrameCryptor.d.ts.map +1 -1
- package/dist/src/index.d.ts +5 -4
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/room/PCTransport.d.ts +5 -0
- package/dist/src/room/PCTransport.d.ts.map +1 -1
- package/dist/src/room/PCTransportManager.d.ts +1 -1
- package/dist/src/room/PCTransportManager.d.ts.map +1 -1
- package/dist/src/room/RTCEngine.d.ts +27 -9
- package/dist/src/room/RTCEngine.d.ts.map +1 -1
- package/dist/src/room/Room.d.ts +13 -3
- package/dist/src/room/Room.d.ts.map +1 -1
- package/dist/src/room/data-stream/outgoing/OutgoingDataStreamManager.d.ts.map +1 -1
- package/dist/src/room/data-track/LocalDataTrack.d.ts +48 -0
- package/dist/src/room/data-track/LocalDataTrack.d.ts.map +1 -0
- package/dist/src/room/data-track/RemoteDataTrack.d.ts +46 -0
- package/dist/src/room/data-track/RemoteDataTrack.d.ts.map +1 -0
- package/dist/src/room/data-track/depacketizer.d.ts +6 -6
- package/dist/src/room/data-track/depacketizer.d.ts.map +1 -1
- package/dist/src/room/data-track/frame.d.ts +14 -0
- package/dist/src/room/data-track/frame.d.ts.map +1 -1
- package/dist/src/room/data-track/handle.d.ts +2 -2
- package/dist/src/room/data-track/handle.d.ts.map +1 -1
- package/dist/src/room/data-track/incoming/IncomingDataTrackManager.d.ts +104 -0
- package/dist/src/room/data-track/incoming/IncomingDataTrackManager.d.ts.map +1 -0
- package/dist/src/room/data-track/incoming/errors.d.ts +24 -0
- package/dist/src/room/data-track/incoming/errors.d.ts.map +1 -0
- package/dist/src/room/data-track/incoming/pipeline.d.ts +38 -0
- package/dist/src/room/data-track/incoming/pipeline.d.ts.map +1 -0
- package/dist/src/room/data-track/incoming/types.d.ts +20 -0
- package/dist/src/room/data-track/incoming/types.d.ts.map +1 -0
- package/dist/src/room/data-track/outgoing/OutgoingDataTrackManager.d.ts +63 -28
- package/dist/src/room/data-track/outgoing/OutgoingDataTrackManager.d.ts.map +1 -1
- package/dist/src/room/data-track/outgoing/errors.d.ts +20 -10
- package/dist/src/room/data-track/outgoing/errors.d.ts.map +1 -1
- package/dist/src/room/data-track/outgoing/pipeline.d.ts +9 -8
- package/dist/src/room/data-track/outgoing/pipeline.d.ts.map +1 -1
- package/dist/src/room/data-track/outgoing/types.d.ts +16 -7
- package/dist/src/room/data-track/outgoing/types.d.ts.map +1 -1
- package/dist/src/room/data-track/packet/errors.d.ts +2 -4
- package/dist/src/room/data-track/packet/errors.d.ts.map +1 -1
- package/dist/src/room/data-track/packet/extensions.d.ts +4 -4
- package/dist/src/room/data-track/packet/extensions.d.ts.map +1 -1
- package/dist/src/room/data-track/packet/index.d.ts +5 -5
- package/dist/src/room/data-track/packet/index.d.ts.map +1 -1
- package/dist/src/room/data-track/packet/serializable.d.ts +4 -4
- package/dist/src/room/data-track/packet/serializable.d.ts.map +1 -1
- package/dist/src/room/data-track/packetizer.d.ts +6 -6
- package/dist/src/room/data-track/packetizer.d.ts.map +1 -1
- package/dist/src/room/data-track/track-interfaces.d.ts +23 -0
- package/dist/src/room/data-track/track-interfaces.d.ts.map +1 -0
- package/dist/src/room/data-track/types.d.ts +15 -0
- package/dist/src/room/data-track/types.d.ts.map +1 -0
- package/dist/src/room/events.d.ts +24 -3
- package/dist/src/room/events.d.ts.map +1 -1
- package/dist/src/room/participant/LocalParticipant.d.ts +11 -1
- package/dist/src/room/participant/LocalParticipant.d.ts.map +1 -1
- package/dist/src/room/participant/RemoteParticipant.d.ts +14 -1
- package/dist/src/room/participant/RemoteParticipant.d.ts.map +1 -1
- package/dist/src/room/token-source/TokenSource.d.ts +1 -1
- package/dist/src/room/token-source/TokenSource.d.ts.map +1 -1
- package/dist/src/room/token-source/types.d.ts +1 -0
- package/dist/src/room/token-source/types.d.ts.map +1 -1
- package/dist/src/room/utils.d.ts +2 -1
- package/dist/src/room/utils.d.ts.map +1 -1
- package/dist/src/utils/abort-signal-polyfill.d.ts +13 -0
- package/dist/src/utils/abort-signal-polyfill.d.ts.map +1 -0
- package/dist/src/utils/deferrable-map.d.ts +32 -0
- package/dist/src/utils/deferrable-map.d.ts.map +1 -0
- package/dist/src/utils/subscribeToEvents.d.ts +3 -0
- package/dist/src/utils/subscribeToEvents.d.ts.map +1 -1
- package/dist/ts4.2/api/SignalClient.d.ts +12 -4
- package/dist/ts4.2/e2ee/types.d.ts +6 -0
- package/dist/ts4.2/e2ee/utils.d.ts +2 -1
- package/dist/ts4.2/index.d.ts +5 -4
- package/dist/ts4.2/room/PCTransport.d.ts +5 -0
- package/dist/ts4.2/room/PCTransportManager.d.ts +1 -1
- package/dist/ts4.2/room/RTCEngine.d.ts +27 -9
- package/dist/ts4.2/room/Room.d.ts +13 -3
- package/dist/ts4.2/room/data-track/LocalDataTrack.d.ts +48 -0
- package/dist/ts4.2/room/data-track/RemoteDataTrack.d.ts +46 -0
- package/dist/ts4.2/room/data-track/depacketizer.d.ts +6 -6
- package/dist/ts4.2/room/data-track/frame.d.ts +14 -0
- package/dist/ts4.2/room/data-track/handle.d.ts +2 -2
- package/dist/ts4.2/room/data-track/incoming/IncomingDataTrackManager.d.ts +110 -0
- package/dist/ts4.2/room/data-track/incoming/errors.d.ts +24 -0
- package/dist/ts4.2/room/data-track/incoming/pipeline.d.ts +38 -0
- package/dist/ts4.2/room/data-track/incoming/types.d.ts +20 -0
- package/dist/ts4.2/room/data-track/outgoing/OutgoingDataTrackManager.d.ts +63 -29
- package/dist/ts4.2/room/data-track/outgoing/errors.d.ts +20 -10
- package/dist/ts4.2/room/data-track/outgoing/pipeline.d.ts +9 -8
- package/dist/ts4.2/room/data-track/outgoing/types.d.ts +16 -7
- package/dist/ts4.2/room/data-track/packet/errors.d.ts +2 -4
- package/dist/ts4.2/room/data-track/packet/extensions.d.ts +4 -4
- package/dist/ts4.2/room/data-track/packet/index.d.ts +5 -6
- package/dist/ts4.2/room/data-track/packet/serializable.d.ts +4 -4
- package/dist/ts4.2/room/data-track/packetizer.d.ts +6 -6
- package/dist/ts4.2/room/data-track/track-interfaces.d.ts +23 -0
- package/dist/ts4.2/room/data-track/types.d.ts +15 -0
- package/dist/ts4.2/room/events.d.ts +24 -3
- package/dist/ts4.2/room/participant/LocalParticipant.d.ts +11 -1
- package/dist/ts4.2/room/participant/RemoteParticipant.d.ts +14 -1
- package/dist/ts4.2/room/token-source/TokenSource.d.ts +1 -1
- package/dist/ts4.2/room/token-source/types.d.ts +1 -0
- package/dist/ts4.2/room/utils.d.ts +2 -1
- package/dist/ts4.2/utils/abort-signal-polyfill.d.ts +13 -0
- package/dist/ts4.2/utils/deferrable-map.d.ts +32 -0
- package/dist/ts4.2/utils/subscribeToEvents.d.ts +3 -0
- package/package.json +4 -2
- package/src/api/SignalClient.test.ts +9 -4
- package/src/api/SignalClient.ts +116 -9
- package/src/e2ee/constants.ts +1 -0
- package/src/e2ee/types.ts +6 -0
- package/src/e2ee/utils.ts +4 -3
- package/src/e2ee/worker/DataCryptor.ts +1 -4
- package/src/e2ee/worker/FrameCryptor.ts +1 -4
- package/src/e2ee/worker/ParticipantKeyHandler.ts +1 -1
- package/src/index.ts +6 -4
- package/src/room/PCTransport.ts +41 -1
- package/src/room/PCTransportManager.ts +1 -1
- package/src/room/RTCEngine.ts +274 -112
- package/src/room/Room.ts +152 -15
- package/src/room/data-stream/outgoing/OutgoingDataStreamManager.ts +9 -9
- package/src/room/data-track/LocalDataTrack.ts +126 -0
- package/src/room/data-track/RemoteDataTrack.ts +80 -0
- package/src/room/data-track/depacketizer.ts +23 -26
- package/src/room/data-track/frame.ts +28 -2
- package/src/room/data-track/handle.ts +2 -8
- package/src/room/data-track/incoming/IncomingDataTrackManager.test.ts +555 -0
- package/src/room/data-track/incoming/IncomingDataTrackManager.ts +589 -0
- package/src/room/data-track/incoming/errors.ts +57 -0
- package/src/room/data-track/incoming/pipeline.ts +121 -0
- package/src/room/data-track/incoming/types.ts +22 -0
- package/src/room/data-track/outgoing/OutgoingDataTrackManager.test.ts +240 -27
- package/src/room/data-track/outgoing/OutgoingDataTrackManager.ts +165 -84
- package/src/room/data-track/outgoing/errors.ts +40 -11
- package/src/room/data-track/outgoing/pipeline.ts +25 -23
- package/src/room/data-track/outgoing/types.ts +14 -6
- package/src/room/data-track/packet/errors.ts +2 -14
- package/src/room/data-track/packet/extensions.ts +21 -26
- package/src/room/data-track/packet/index.test.ts +22 -33
- package/src/room/data-track/packet/index.ts +4 -6
- package/src/room/data-track/packet/serializable.ts +4 -4
- package/src/room/data-track/packetizer.test.ts +2 -2
- package/src/room/data-track/packetizer.ts +7 -10
- package/src/room/data-track/track-interfaces.ts +53 -0
- package/src/room/data-track/types.ts +31 -0
- package/src/room/events.ts +26 -1
- package/src/room/participant/LocalParticipant.ts +57 -6
- package/src/room/participant/RemoteParticipant.ts +26 -1
- package/src/room/token-source/TokenSource.ts +8 -2
- package/src/room/token-source/types.ts +4 -0
- package/src/room/utils.ts +5 -1
- package/src/utils/abort-signal-polyfill.ts +63 -0
- package/src/utils/deferrable-map.ts +109 -0
- package/src/utils/subscribeToEvents.ts +18 -1
- package/dist/src/room/data-track/e2ee.d.ts +0 -12
- package/dist/src/room/data-track/e2ee.d.ts.map +0 -1
- package/dist/src/room/data-track/track.d.ts +0 -30
- package/dist/src/room/data-track/track.d.ts.map +0 -1
- package/dist/src/utils/throws.d.ts +0 -36
- package/dist/src/utils/throws.d.ts.map +0 -1
- package/dist/ts4.2/room/data-track/e2ee.d.ts +0 -12
- package/dist/ts4.2/room/data-track/track.d.ts +0 -30
- package/dist/ts4.2/utils/throws.d.ts +0 -39
- package/src/room/data-track/e2ee.ts +0 -14
- package/src/room/data-track/track.ts +0 -50
- package/src/utils/throws.ts +0 -42
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import type Participant from '../participant/Participant';
|
|
2
|
+
import { type DataTrackFrame } from './frame';
|
|
3
|
+
import type IncomingDataTrackManager from './incoming/IncomingDataTrackManager';
|
|
4
|
+
import { type IDataTrack, type IRemoteTrack } from './track-interfaces';
|
|
5
|
+
import { type DataTrackInfo } from './types';
|
|
6
|
+
type RemoteDataTrackOptions = {
|
|
7
|
+
publisherIdentity: Participant['identity'];
|
|
8
|
+
};
|
|
9
|
+
export type DataTrackSubscribeOptions = {
|
|
10
|
+
signal?: AbortSignal;
|
|
11
|
+
/** The number of {@link DataTrackFrame}s to hold in the ReadableStream before disgarding extra
|
|
12
|
+
* frames. Defaults to 16, but this may not be good enough for especially high frequency data. */
|
|
13
|
+
bufferSize?: number;
|
|
14
|
+
};
|
|
15
|
+
export default class RemoteDataTrack implements IRemoteTrack, IDataTrack {
|
|
16
|
+
readonly trackSymbol: symbol;
|
|
17
|
+
readonly isLocal = false;
|
|
18
|
+
readonly typeSymbol: symbol;
|
|
19
|
+
info: DataTrackInfo;
|
|
20
|
+
publisherIdentity: Participant['identity'];
|
|
21
|
+
protected manager: IncomingDataTrackManager;
|
|
22
|
+
/** @internal */
|
|
23
|
+
constructor(info: DataTrackInfo, manager: IncomingDataTrackManager, options: RemoteDataTrackOptions);
|
|
24
|
+
/** Subscribes to the data track to receive frames.
|
|
25
|
+
*
|
|
26
|
+
* # Returns
|
|
27
|
+
*
|
|
28
|
+
* A stream that yields {@link DataTrackFrame}s as they arrive.
|
|
29
|
+
*
|
|
30
|
+
* # Multiple Subscriptions
|
|
31
|
+
*
|
|
32
|
+
* An application may call `subscribe` more than once to process frames in
|
|
33
|
+
* multiple places. For example, one async task might plot values on a graph
|
|
34
|
+
* while another writes them to a file.
|
|
35
|
+
*
|
|
36
|
+
* Internally, only the first call to `subscribe` communicates with the SFU and
|
|
37
|
+
* allocates the resources required to receive frames. Additional subscriptions
|
|
38
|
+
* reuse the same underlying pipeline and do not trigger additional signaling.
|
|
39
|
+
*
|
|
40
|
+
* Note that newly created subscriptions only receive frames published after
|
|
41
|
+
* the initial subscription is established.
|
|
42
|
+
*/
|
|
43
|
+
subscribe(options?: DataTrackSubscribeOptions): ReadableStream<DataTrackFrame>;
|
|
44
|
+
}
|
|
45
|
+
export {};
|
|
46
|
+
//# sourceMappingURL=RemoteDataTrack.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RemoteDataTrack.d.ts","sourceRoot":"","sources":["../../../../src/room/data-track/RemoteDataTrack.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,WAAW,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,SAAS,CAAC;AAC9C,OAAO,KAAK,wBAAwB,MAAM,qCAAqC,CAAC;AAChF,OAAO,EAEL,KAAK,UAAU,EACf,KAAK,YAAY,EAElB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,SAAS,CAAC;AAE7C,KAAK,sBAAsB,GAAG;IAC5B,iBAAiB,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC;CAC5C,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,MAAM,CAAC,EAAE,WAAW,CAAC;IAErB;qGACiG;IACjG,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,CAAC,OAAO,OAAO,eAAgB,YAAW,YAAY,EAAE,UAAU;IACtE,QAAQ,CAAC,WAAW,SAAe;IAEnC,QAAQ,CAAC,OAAO,SAAS;IAEzB,QAAQ,CAAC,UAAU,SAAmB;IAEtC,IAAI,EAAE,aAAa,CAAC;IAEpB,iBAAiB,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC;IAE3C,SAAS,CAAC,OAAO,EAAE,wBAAwB,CAAC;IAE5C,gBAAgB;gBAEd,IAAI,EAAE,aAAa,EACnB,OAAO,EAAE,wBAAwB,EACjC,OAAO,EAAE,sBAAsB;IAOjC;;;;;;;;;;;;;;;;;;OAkBG;IACH,SAAS,CAAC,OAAO,CAAC,EAAE,yBAAyB,GAAG,cAAc,CAAC,cAAc,CAAC;CAa/E"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { type Throws } from '
|
|
1
|
+
import { type Throws } from '@livekit/throws-transformer/throws';
|
|
2
2
|
import { LivekitReasonedError } from '../errors';
|
|
3
|
-
import { type
|
|
3
|
+
import { type DataTrackFrameInternal } from './frame';
|
|
4
4
|
import { DataTrackPacket } from './packet';
|
|
5
5
|
/** An error indicating a frame was dropped. */
|
|
6
|
-
export declare class DataTrackDepacketizerDropError<Reason extends DataTrackDepacketizerDropReason> extends LivekitReasonedError<Reason> {
|
|
6
|
+
export declare class DataTrackDepacketizerDropError<Reason extends DataTrackDepacketizerDropReason = DataTrackDepacketizerDropReason> extends LivekitReasonedError<Reason> {
|
|
7
7
|
readonly name = "DataTrackDepacketizerDropError";
|
|
8
8
|
reason: Reason;
|
|
9
9
|
reasonName: string;
|
|
@@ -11,7 +11,7 @@ export declare class DataTrackDepacketizerDropError<Reason extends DataTrackDepa
|
|
|
11
11
|
constructor(message: string, reason: Reason, frameNumber: number, options?: {
|
|
12
12
|
cause?: unknown;
|
|
13
13
|
});
|
|
14
|
-
static interrupted(frameNumber: number): DataTrackDepacketizerDropError<DataTrackDepacketizerDropReason.Interrupted>;
|
|
14
|
+
static interrupted(frameNumber: number, newFrameNumber: number): DataTrackDepacketizerDropError<DataTrackDepacketizerDropReason.Interrupted>;
|
|
15
15
|
static unknownFrame(frameNumber: number): DataTrackDepacketizerDropError<DataTrackDepacketizerDropReason.UnknownFrame>;
|
|
16
16
|
static bufferFull(frameNumber: number): DataTrackDepacketizerDropError<DataTrackDepacketizerDropReason.BufferFull>;
|
|
17
17
|
static incomplete(frameNumber: number, receivedPackets: number, expectedPackets: number): DataTrackDepacketizerDropError<DataTrackDepacketizerDropReason.Incomplete>;
|
|
@@ -35,9 +35,9 @@ export default class DataTrackDepacketizer {
|
|
|
35
35
|
/** Should be repeatedly called with received {@link DataTrackPacket}s - intermediate calls
|
|
36
36
|
* aggregate the packet's state internally, and return null.
|
|
37
37
|
*
|
|
38
|
-
* Once this method is called with the final packet to form a frame, a new {@link
|
|
38
|
+
* Once this method is called with the final packet to form a frame, a new {@link DataTrackFrameInternal}
|
|
39
39
|
* is returned.*/
|
|
40
|
-
push(packet: DataTrackPacket, options?: PushOptions): Throws<
|
|
40
|
+
push(packet: DataTrackPacket, options?: PushOptions): Throws<DataTrackFrameInternal | null, DataTrackDepacketizerDropError>;
|
|
41
41
|
reset(): void;
|
|
42
42
|
private frameFromSingle;
|
|
43
43
|
/** Begin assembling a new packet. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"depacketizer.d.ts","sourceRoot":"","sources":["../../../../src/room/data-track/depacketizer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"depacketizer.d.ts","sourceRoot":"","sources":["../../../../src/room/data-track/depacketizer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAEjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,SAAS,CAAC;AACtD,OAAO,EAAE,eAAe,EAAe,MAAM,UAAU,CAAC;AAiBxD,+CAA+C;AAC/C,qBAAa,8BAA8B,CACzC,MAAM,SAAS,+BAA+B,GAAG,+BAA+B,CAChF,SAAQ,oBAAoB,CAAC,MAAM,CAAC;IACpC,QAAQ,CAAC,IAAI,oCAAoC;IAEjD,MAAM,EAAE,MAAM,CAAC;IAEf,UAAU,EAAE,MAAM,CAAC;IAEnB,WAAW,EAAE,MAAM,CAAC;gBAER,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE;IAO/F,MAAM,CAAC,WAAW,CAAC,WAAW,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM;IAQ9D,MAAM,CAAC,YAAY,CAAC,WAAW,EAAE,MAAM;IAQvC,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,MAAM;IAQrC,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM;CAOxF;AAED,sCAAsC;AACtC,oBAAY,+BAA+B;IACzC,WAAW,IAAI;IACf,YAAY,IAAI;IAChB,UAAU,IAAI;IACd,UAAU,IAAI;CACf;AAED,KAAK,WAAW,GAAG;IACjB;kDAC8C;IAC9C,oBAAoB,EAAE,OAAO,CAAC;CAC/B,CAAC;AAEF,MAAM,CAAC,OAAO,OAAO,qBAAqB;IACxC,qEAAqE;IACrE,MAAM,CAAC,kBAAkB,SAAO;IAEhC,OAAO,CAAC,OAAO,CAA6B;IAE5C;;;;qBAIiB;IACjB,IAAI,CACF,MAAM,EAAE,eAAe,EACvB,OAAO,CAAC,EAAE,WAAW,GACpB,MAAM,CAAC,sBAAsB,GAAG,IAAI,EAAE,8BAA8B,CAAC;IAYxE,KAAK;IAIL,OAAO,CAAC,eAAe;IAiCvB,qCAAqC;IACrC,OAAO,CAAC,YAAY;IAuCpB,0CAA0C;IAC1C,OAAO,CAAC,aAAa;IAiDrB,4CAA4C;IAC5C,OAAO,CAAC,QAAQ;CAqDjB"}
|
|
@@ -1,7 +1,21 @@
|
|
|
1
1
|
import { DataTrackExtensions } from './packet/extensions';
|
|
2
2
|
/** A pair of payload bytes and packet extensions which can be fed into a {@link DataTrackPacketizer}. */
|
|
3
3
|
export type DataTrackFrame = {
|
|
4
|
+
payload: Uint8Array;
|
|
5
|
+
userTimestamp?: bigint;
|
|
6
|
+
};
|
|
7
|
+
/** An internal representation o data track frame which contains all SFU metadata. */
|
|
8
|
+
export type DataTrackFrameInternal = {
|
|
4
9
|
payload: Uint8Array;
|
|
5
10
|
extensions: DataTrackExtensions;
|
|
6
11
|
};
|
|
12
|
+
export declare const DataTrackFrameInternal: {
|
|
13
|
+
from(frame: DataTrackFrame): {
|
|
14
|
+
payload: Uint8Array<ArrayBufferLike>;
|
|
15
|
+
extensions: DataTrackExtensions;
|
|
16
|
+
};
|
|
17
|
+
/** Converts from a DataTrackFrameInternal -> DataTrackFrame. Some internal information is
|
|
18
|
+
* discarded like e2ee encrption extension data. */
|
|
19
|
+
lossyIntoFrame(frame: DataTrackFrameInternal): DataTrackFrame;
|
|
20
|
+
};
|
|
7
21
|
//# sourceMappingURL=frame.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frame.d.ts","sourceRoot":"","sources":["../../../../src/room/data-track/frame.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,
|
|
1
|
+
{"version":3,"file":"frame.d.ts","sourceRoot":"","sources":["../../../../src/room/data-track/frame.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAmC,MAAM,qBAAqB,CAAC;AAE3F,yGAAyG;AACzG,MAAM,MAAM,cAAc,GAAG;IAC3B,OAAO,EAAE,UAAU,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,qFAAqF;AACrF,MAAM,MAAM,sBAAsB,GAAG;IACnC,OAAO,EAAE,UAAU,CAAC;IACpB,UAAU,EAAE,mBAAmB,CAAC;CACjC,CAAC;AAEF,eAAO,MAAM,sBAAsB;gBACrB,cAAc;;;;IAU1B;uDACmD;0BAC7B,sBAAsB,GAAG,cAAc;CAM9D,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type Throws } from '
|
|
1
|
+
import { type Throws } from '@livekit/throws-transformer/throws';
|
|
2
2
|
import { LivekitReasonedError } from '../errors';
|
|
3
3
|
export declare enum DataTrackHandleErrorReason {
|
|
4
4
|
Reserved = 0,
|
|
@@ -15,7 +15,7 @@ export declare class DataTrackHandleError<Reason extends DataTrackHandleErrorRea
|
|
|
15
15
|
}
|
|
16
16
|
export type DataTrackHandle = number;
|
|
17
17
|
export declare const DataTrackHandle: {
|
|
18
|
-
fromNumber(raw: number): Throws<DataTrackHandle, DataTrackHandleError
|
|
18
|
+
fromNumber(raw: number): Throws<DataTrackHandle, DataTrackHandleError>;
|
|
19
19
|
};
|
|
20
20
|
/** Manage allocating new handles which don't conflict over the lifetime of the client. */
|
|
21
21
|
export declare class DataTrackHandleAllocator {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handle.d.ts","sourceRoot":"","sources":["../../../../src/room/data-track/handle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"handle.d.ts","sourceRoot":"","sources":["../../../../src/room/data-track/handle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,oCAAoC,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAGjD,oBAAY,0BAA0B;IACpC,QAAQ,IAAI;IACZ,QAAQ,IAAI;CACb;AAED,qBAAa,oBAAoB,CAC/B,MAAM,SAAS,0BAA0B,GAAG,0BAA0B,CACtE,SAAQ,oBAAoB,CAAC,0BAA0B,CAAC;IACxD,QAAQ,CAAC,IAAI,0BAA0B;IAEvC,MAAM,EAAE,MAAM,CAAC;IAEf,UAAU,EAAE,MAAM,CAAC;gBAEP,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAM3C,QAAQ,CAAC,CAAC,SAAS,0BAA0B,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,IAAI,oBAAoB,CAAC,CAAC,CAAC;IAI1F,MAAM,CAAC,QAAQ;IAOf,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM;CAM9B;AAED,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC;AACrC,eAAO,MAAM,eAAe;oBACV,MAAM,GAAG,MAAM,CAAC,eAAe,EAAE,oBAAoB,CAAC;CASvE,CAAC;AAEF,0FAA0F;AAC1F,qBAAa,wBAAwB;IACnC,KAAK,SAAK;IAEV,sFAAsF;IACtF,GAAG,IAAI,eAAe,GAAG,IAAI;CAO9B"}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import type { Throws } from '@livekit/throws-transformer/throws';
|
|
2
|
+
import type TypedEmitter from 'typed-emitter';
|
|
3
|
+
import type { BaseE2EEManager } from '../../../e2ee/E2eeManager';
|
|
4
|
+
import type Participant from '../../participant/Participant';
|
|
5
|
+
import type RemoteParticipant from '../../participant/RemoteParticipant';
|
|
6
|
+
import { DataTrackDepacketizerDropError } from '../depacketizer';
|
|
7
|
+
import { type DataTrackFrame } from '../frame';
|
|
8
|
+
import { DataTrackHandle } from '../handle';
|
|
9
|
+
import { type DataTrackInfo, type DataTrackSid } from '../types';
|
|
10
|
+
import { DataTrackSubscribeError } from './errors';
|
|
11
|
+
import { type EventSfuUpdateSubscription, type EventTrackAvailable, type EventTrackUnavailable } from './types';
|
|
12
|
+
export type DataTrackIncomingManagerCallbacks = {
|
|
13
|
+
/** Request sent to the SFU to update the subscription for a data track. */
|
|
14
|
+
sfuUpdateSubscription: (event: EventSfuUpdateSubscription) => void;
|
|
15
|
+
/** A track has been published by a remote participant and is available to be
|
|
16
|
+
* subscribed to. */
|
|
17
|
+
trackPublished: (event: EventTrackAvailable) => void;
|
|
18
|
+
/** A track has been unpublished by a remote participant and can no longer be subscribed to. */
|
|
19
|
+
trackUnpublished: (event: EventTrackUnavailable) => void;
|
|
20
|
+
};
|
|
21
|
+
type IncomingDataTrackManagerOptions = {
|
|
22
|
+
/** Provider to use for decrypting incoming frame payloads.
|
|
23
|
+
* If none, remote tracks using end-to-end encryption will not be available
|
|
24
|
+
* for subscription.
|
|
25
|
+
*/
|
|
26
|
+
e2eeManager?: BaseE2EEManager;
|
|
27
|
+
};
|
|
28
|
+
declare const IncomingDataTrackManager_base: new () => TypedEmitter<DataTrackIncomingManagerCallbacks>;
|
|
29
|
+
export default class IncomingDataTrackManager extends IncomingDataTrackManager_base {
|
|
30
|
+
private e2eeManager;
|
|
31
|
+
/** Mapping between track SID and descriptor. */
|
|
32
|
+
private descriptors;
|
|
33
|
+
/** Mapping between subscriber handle and track SID.
|
|
34
|
+
*
|
|
35
|
+
* This is an index that allows track descriptors to be looked up
|
|
36
|
+
* by subscriber handle in O(1) time, to make routing incoming packets
|
|
37
|
+
* a (hot code path) faster.
|
|
38
|
+
*/
|
|
39
|
+
private subscriptionHandles;
|
|
40
|
+
constructor(options?: IncomingDataTrackManagerOptions);
|
|
41
|
+
/** @internal */
|
|
42
|
+
updateE2eeManager(e2eeManager: BaseE2EEManager | null): void;
|
|
43
|
+
/** Allocates a ReadableStream which emits when a new {@link DataTrackFrame} is received from the
|
|
44
|
+
* SFU. The SFU subscription is initiated lazily when the stream is created.
|
|
45
|
+
*
|
|
46
|
+
* @returns A tuple of the ReadableStream and a Promise that resolves once the SFU subscription
|
|
47
|
+
* is fully established / the stream is ready to receive frames.
|
|
48
|
+
*
|
|
49
|
+
* @internal
|
|
50
|
+
**/
|
|
51
|
+
openSubscriptionStream(sid: DataTrackSid, signal?: AbortSignal, bufferSize?: number): [ReadableStream<DataTrackFrame>, Promise<Throws<void, DataTrackSubscribeError>>];
|
|
52
|
+
/** Client requested to subscribe to a data track.
|
|
53
|
+
*
|
|
54
|
+
* This is sent when the user calls {@link RemoteDataTrack.subscribe}.
|
|
55
|
+
*
|
|
56
|
+
* Only the first request to subscribe to a given track incurs meaningful overhead; subsequent
|
|
57
|
+
* requests simply attach an additional receiver to the broadcast channel, allowing them to consume
|
|
58
|
+
* frames from the existing subscription pipeline.
|
|
59
|
+
*/
|
|
60
|
+
subscribeRequest(sid: DataTrackSid, signal?: AbortSignal): Promise<Throws<void, DataTrackSubscribeError>>;
|
|
61
|
+
/**
|
|
62
|
+
* Get information about all currently subscribed tracks.
|
|
63
|
+
* @internal */
|
|
64
|
+
querySubscribed(): Promise<[info: DataTrackInfo, identity: string][]>;
|
|
65
|
+
/** Client requested to unsubscribe from a data track. */
|
|
66
|
+
unSubscribeRequest(sid: DataTrackSid): void;
|
|
67
|
+
/** SFU notification that track publications have changed.
|
|
68
|
+
*
|
|
69
|
+
* This event is produced from both {@link JoinResponse} and {@link ParticipantUpdate}
|
|
70
|
+
* to provide a complete view of remote participants' track publications:
|
|
71
|
+
*
|
|
72
|
+
* - From a `JoinResponse`, it captures the initial set of tracks published when a participant joins.
|
|
73
|
+
* - From a `ParticipantUpdate`, it captures subsequent changes (i.e., new tracks being
|
|
74
|
+
* published and existing tracks unpublished).
|
|
75
|
+
*/
|
|
76
|
+
receiveSfuPublicationUpdates(updates: Map<Participant['identity'], Array<DataTrackInfo>>): Promise<void>;
|
|
77
|
+
/**
|
|
78
|
+
* Get information about all currently remotely published tracks which could be subscribed to.
|
|
79
|
+
* @internal */
|
|
80
|
+
queryPublications(): Promise<DataTrackInfo[]>;
|
|
81
|
+
handleTrackPublished(publisherIdentity: Participant['identity'], info: DataTrackInfo): Promise<void>;
|
|
82
|
+
handleTrackUnpublished(sid: DataTrackSid): void;
|
|
83
|
+
/** SFU notification that handles have been assigned for requested subscriptions. */
|
|
84
|
+
receivedSfuSubscriberHandles(
|
|
85
|
+
/** Mapping between track handles attached to incoming packets to the
|
|
86
|
+
* track SIDs they belong to. */
|
|
87
|
+
mapping: Map<DataTrackHandle, DataTrackSid>): void;
|
|
88
|
+
private registerSubscriberHandle;
|
|
89
|
+
/** Packet has been received over the transport. */
|
|
90
|
+
packetReceived(bytes: Uint8Array): Promise<Throws<void, DataTrackDepacketizerDropError>>;
|
|
91
|
+
/** Resend all subscription updates.
|
|
92
|
+
*
|
|
93
|
+
* This must be sent after a full reconnect to ensure the SFU knows which
|
|
94
|
+
* tracks are subscribed to locally.
|
|
95
|
+
*/
|
|
96
|
+
resendSubscriptionUpdates(): void;
|
|
97
|
+
/** Called when a remote participant is disconnected so that any pending data tracks can be
|
|
98
|
+
* cancelled. */
|
|
99
|
+
handleRemoteParticipantDisconnected(remoteParticipantIdentity: RemoteParticipant['identity']): void;
|
|
100
|
+
/** Shutdown the manager, ending any subscriptions. */
|
|
101
|
+
shutdown(): void;
|
|
102
|
+
}
|
|
103
|
+
export {};
|
|
104
|
+
//# sourceMappingURL=IncomingDataTrackManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IncomingDataTrackManager.d.ts","sourceRoot":"","sources":["../../../../../src/room/data-track/incoming/IncomingDataTrackManager.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AACjE,OAAO,KAAK,YAAY,MAAM,eAAe,CAAC;AAC9C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAGjE,OAAO,KAAK,WAAW,MAAM,+BAA+B,CAAC;AAC7D,OAAO,KAAK,iBAAiB,MAAM,qCAAqC,CAAC;AAGzE,OAAO,EAAE,8BAA8B,EAAE,MAAM,iBAAiB,CAAC;AACjE,OAAO,EAAE,KAAK,cAAc,EAA0B,MAAM,UAAU,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAE5C,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,YAAY,EAAE,MAAM,UAAU,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAEnD,OAAO,EACL,KAAK,0BAA0B,EAC/B,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAC3B,MAAM,SAAS,CAAC;AAIjB,MAAM,MAAM,iCAAiC,GAAG;IAC9C,2EAA2E;IAC3E,qBAAqB,EAAE,CAAC,KAAK,EAAE,0BAA0B,KAAK,IAAI,CAAC;IAEnE;wBACoB;IACpB,cAAc,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAErD,+FAA+F;IAC/F,gBAAgB,EAAE,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,CAAC;CAC1D,CAAC;AA8BF,KAAK,+BAA+B,GAAG;IACrC;;;OAGG;IACH,WAAW,CAAC,EAAE,eAAe,CAAC;CAC/B,CAAC;6CASqE,UAAU,YAAY,CAAC,iCAAiC,CAAC;AAAhI,MAAM,CAAC,OAAO,OAAO,wBAAyB,SAAQ,6BAA2E;IAC/H,OAAO,CAAC,WAAW,CAAyB;IAE5C,gDAAgD;IAChD,OAAO,CAAC,WAAW,CAA0D;IAE7E;;;;;OAKG;IACH,OAAO,CAAC,mBAAmB,CAA4C;gBAE3D,OAAO,CAAC,EAAE,+BAA+B;IAKrD,gBAAgB;IAChB,iBAAiB,CAAC,WAAW,EAAE,eAAe,GAAG,IAAI;IAWrD;;;;;;;QAOI;IACJ,sBAAsB,CACpB,GAAG,EAAE,YAAY,EACjB,MAAM,CAAC,EAAE,WAAW,EACpB,UAAU,SAAsC,GAC/C,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,uBAAuB,CAAC,CAAC,CAAC;IAoEnF;;;;;;;OAOG;IACG,gBAAgB,CACpB,GAAG,EAAE,YAAY,EACjB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,uBAAuB,CAAC,CAAC;IA+GjD;;mBAEe;IACT,eAAe;IAiBrB,yDAAyD;IACzD,kBAAkB,CAAC,GAAG,EAAE,YAAY;IA4BpC;;;;;;;;OAQG;IACG,4BAA4B,CAAC,OAAO,EAAE,GAAG,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;IAkC9F;;mBAEe;IACT,iBAAiB;IAIjB,oBAAoB,CAAC,iBAAiB,EAAE,WAAW,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,aAAa;IAgB1F,sBAAsB,CAAC,GAAG,EAAE,YAAY;IAexC,oFAAoF;IACpF,4BAA4B;IAC1B;oCACgC;IAChC,OAAO,EAAE,GAAG,CAAC,eAAe,EAAE,YAAY,CAAC;IAO7C,OAAO,CAAC,wBAAwB;IAuChC,mDAAmD;IAC7C,cAAc,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,8BAA8B,CAAC,CAAC;IA6C9F;;;;OAIG;IACH,yBAAyB;IASzB;oBACgB;IAChB,mCAAmC,CAAC,yBAAyB,EAAE,iBAAiB,CAAC,UAAU,CAAC;IAkB5F,sDAAsD;IACtD,QAAQ;CAaT"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { LivekitReasonedError } from '../../errors';
|
|
2
|
+
export declare enum DataTrackSubscribeErrorReason {
|
|
3
|
+
/** The track has been unpublished and is no longer available */
|
|
4
|
+
Unpublished = 0,
|
|
5
|
+
/** Request to subscribe to data track timed-out */
|
|
6
|
+
Timeout = 1,
|
|
7
|
+
/** Cannot subscribe to data track when disconnected */
|
|
8
|
+
Disconnected = 2,
|
|
9
|
+
/** Subscription to data track cancelled by caller */
|
|
10
|
+
Cancelled = 4
|
|
11
|
+
}
|
|
12
|
+
export declare class DataTrackSubscribeError<Reason extends DataTrackSubscribeErrorReason = DataTrackSubscribeErrorReason> extends LivekitReasonedError<Reason> {
|
|
13
|
+
readonly name = "DataTrackSubscribeError";
|
|
14
|
+
reason: Reason;
|
|
15
|
+
reasonName: string;
|
|
16
|
+
constructor(message: string, reason: Reason, options?: {
|
|
17
|
+
cause?: unknown;
|
|
18
|
+
});
|
|
19
|
+
static unpublished(): DataTrackSubscribeError<DataTrackSubscribeErrorReason.Unpublished>;
|
|
20
|
+
static timeout(): DataTrackSubscribeError<DataTrackSubscribeErrorReason.Timeout>;
|
|
21
|
+
static disconnected(): DataTrackSubscribeError<DataTrackSubscribeErrorReason.Disconnected>;
|
|
22
|
+
static cancelled(): DataTrackSubscribeError<DataTrackSubscribeErrorReason.Cancelled>;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../../src/room/data-track/incoming/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAEpD,oBAAY,6BAA6B;IACvC,gEAAgE;IAChE,WAAW,IAAI;IACf,mDAAmD;IACnD,OAAO,IAAI;IACX,uDAAuD;IACvD,YAAY,IAAI;IAChB,qDAAqD;IACrD,SAAS,IAAI;CACd;AAED,qBAAa,uBAAuB,CAClC,MAAM,SAAS,6BAA6B,GAAG,6BAA6B,CAC5E,SAAQ,oBAAoB,CAAC,MAAM,CAAC;IACpC,QAAQ,CAAC,IAAI,6BAA6B;IAE1C,MAAM,EAAE,MAAM,CAAC;IAEf,UAAU,EAAE,MAAM,CAAC;gBAEP,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE;IAM1E,MAAM,CAAC,WAAW;IAOlB,MAAM,CAAC,OAAO;IAOd,MAAM,CAAC,YAAY;IAQnB,MAAM,CAAC,SAAS;CAMjB"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import type { Throws } from '@livekit/throws-transformer/throws';
|
|
2
|
+
import type { BaseE2EEManager } from '../../../e2ee/E2eeManager';
|
|
3
|
+
import { DataTrackDepacketizerDropError } from '../depacketizer';
|
|
4
|
+
import type { DataTrackFrameInternal } from '../frame';
|
|
5
|
+
import { DataTrackPacket } from '../packet';
|
|
6
|
+
import { type DataTrackInfo } from '../types';
|
|
7
|
+
/**
|
|
8
|
+
* Options for creating a {@link IncomingDataTrackPipeline}.
|
|
9
|
+
*/
|
|
10
|
+
type Options = {
|
|
11
|
+
info: DataTrackInfo;
|
|
12
|
+
publisherIdentity: string;
|
|
13
|
+
e2eeManager: BaseE2EEManager | null;
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* Pipeline for an individual data track subscription.
|
|
17
|
+
*/
|
|
18
|
+
export default class IncomingDataTrackPipeline {
|
|
19
|
+
private publisherIdentity;
|
|
20
|
+
private e2eeManager;
|
|
21
|
+
private depacketizer;
|
|
22
|
+
/**
|
|
23
|
+
* Creates a new pipeline with the given options.
|
|
24
|
+
*/
|
|
25
|
+
constructor(options: Options);
|
|
26
|
+
updateE2eeManager(e2eeManager: BaseE2EEManager | null): void;
|
|
27
|
+
processPacket(packet: DataTrackPacket): Promise<Throws<DataTrackFrameInternal | null, DataTrackDepacketizerDropError>>;
|
|
28
|
+
/**
|
|
29
|
+
* Depacketize the given frame, log if a drop occurs.
|
|
30
|
+
*/
|
|
31
|
+
private depacketize;
|
|
32
|
+
/**
|
|
33
|
+
* Decrypt the frame's payload if E2EE is enabled for this track.
|
|
34
|
+
*/
|
|
35
|
+
private decryptIfNeeded;
|
|
36
|
+
}
|
|
37
|
+
export {};
|
|
38
|
+
//# sourceMappingURL=pipeline.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pipeline.d.ts","sourceRoot":"","sources":["../../../../../src/room/data-track/incoming/pipeline.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AACjE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAEjE,OAA8B,EAAE,8BAA8B,EAAE,MAAM,iBAAiB,CAAC;AACxF,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,UAAU,CAAC;AAI9C;;GAEG;AACH,KAAK,OAAO,GAAG;IACb,IAAI,EAAE,aAAa,CAAC;IACpB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,WAAW,EAAE,eAAe,GAAG,IAAI,CAAC;CACrC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,yBAAyB;IAC5C,OAAO,CAAC,iBAAiB,CAAS;IAElC,OAAO,CAAC,WAAW,CAAyB;IAE5C,OAAO,CAAC,YAAY,CAAwB;IAE5C;;OAEG;gBACS,OAAO,EAAE,OAAO;IAgB5B,iBAAiB,CAAC,WAAW,EAAE,eAAe,GAAG,IAAI;IAI/C,aAAa,CACjB,MAAM,EAAE,eAAe,GACtB,OAAO,CAAC,MAAM,CAAC,sBAAsB,GAAG,IAAI,EAAE,8BAA8B,CAAC,CAAC;IAcjF;;OAEG;IACH,OAAO,CAAC,WAAW;IAenB;;OAEG;YACW,eAAe;CA+B9B"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type Participant from '../../participant/Participant';
|
|
2
|
+
import type RemoteDataTrack from '../RemoteDataTrack';
|
|
3
|
+
import { type DataTrackSid } from '../types';
|
|
4
|
+
/** Request sent to the SFU to update the subscription for a data track. */
|
|
5
|
+
export type EventSfuUpdateSubscription = {
|
|
6
|
+
/** Identifier of the affected track. */
|
|
7
|
+
sid: DataTrackSid;
|
|
8
|
+
/** Whether to subscribe or unsubscribe. */
|
|
9
|
+
subscribe: boolean;
|
|
10
|
+
};
|
|
11
|
+
/** A track has been published by a remote participant and is available to be subscribed to. */
|
|
12
|
+
export type EventTrackAvailable = {
|
|
13
|
+
track: RemoteDataTrack;
|
|
14
|
+
};
|
|
15
|
+
/** A track has been unpublished by a remote participant and can no longer be subscribed to. */
|
|
16
|
+
export type EventTrackUnavailable = {
|
|
17
|
+
sid: DataTrackSid;
|
|
18
|
+
publisherIdentity: Participant['identity'];
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/room/data-track/incoming/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,WAAW,MAAM,+BAA+B,CAAC;AAC7D,OAAO,KAAK,eAAe,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,UAAU,CAAC;AAE7C,2EAA2E;AAC3E,MAAM,MAAM,0BAA0B,GAAG;IACvC,wCAAwC;IACxC,GAAG,EAAE,YAAY,CAAC;IAClB,2CAA2C;IAC3C,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,+FAA+F;AAC/F,MAAM,MAAM,mBAAmB,GAAG;IAChC,KAAK,EAAE,eAAe,CAAC;CACxB,CAAC;AAEF,+FAA+F;AAC/F,MAAM,MAAM,qBAAqB,GAAG;IAClC,GAAG,EAAE,YAAY,CAAC;IAClB,iBAAiB,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC;CAC5C,CAAC"}
|
|
@@ -1,19 +1,22 @@
|
|
|
1
|
+
import type { Throws } from '@livekit/throws-transformer/throws';
|
|
1
2
|
import type TypedEmitter from 'typed-emitter';
|
|
2
|
-
import type {
|
|
3
|
+
import type { BaseE2EEManager } from '../../../e2ee/E2eeManager';
|
|
3
4
|
import { Future } from '../../utils';
|
|
4
|
-
import {
|
|
5
|
+
import type { DataTrackFrameInternal } from '../frame';
|
|
5
6
|
import { DataTrackHandle } from '../handle';
|
|
6
|
-
import { type DataTrackInfo
|
|
7
|
-
import { DataTrackPublishError,
|
|
7
|
+
import { type DataTrackInfo } from '../types';
|
|
8
|
+
import { DataTrackPublishError, DataTrackPushFrameError, DataTrackPushFrameErrorReason } from './errors';
|
|
8
9
|
import DataTrackOutgoingPipeline from './pipeline';
|
|
9
|
-
import { type DataTrackOptions, type
|
|
10
|
+
import { type DataTrackOptions, type EventPacketAvailable, type EventSfuPublishRequest, type EventSfuUnpublishRequest, type EventTrackPublished, type EventTrackUnpublished, type SfuPublishResponseResult } from './types';
|
|
10
11
|
export type PendingDescriptor = {
|
|
11
12
|
type: 'pending';
|
|
12
|
-
|
|
13
|
+
/** Resolves when the descriptor is fully published. */
|
|
14
|
+
completionFuture: Future<void, DataTrackPublishError>;
|
|
13
15
|
};
|
|
14
16
|
export type ActiveDescriptor = {
|
|
15
17
|
type: 'active';
|
|
16
18
|
info: DataTrackInfo;
|
|
19
|
+
publishState: 'published' | 'republishing' | 'unpublished';
|
|
17
20
|
pipeline: DataTrackOutgoingPipeline;
|
|
18
21
|
/** Resolves when the descriptor is unpublished. */
|
|
19
22
|
unpublishingFuture: Future<void, never>;
|
|
@@ -21,55 +24,87 @@ export type ActiveDescriptor = {
|
|
|
21
24
|
export type Descriptor = PendingDescriptor | ActiveDescriptor;
|
|
22
25
|
export declare const Descriptor: {
|
|
23
26
|
pending(): PendingDescriptor;
|
|
24
|
-
active(info: DataTrackInfo,
|
|
27
|
+
active(info: DataTrackInfo, e2eeManager: BaseE2EEManager | null): ActiveDescriptor;
|
|
25
28
|
};
|
|
26
29
|
export type DataTrackOutgoingManagerCallbacks = {
|
|
27
30
|
/** Request sent to the SFU to publish a track. */
|
|
28
|
-
sfuPublishRequest: (event:
|
|
31
|
+
sfuPublishRequest: (event: EventSfuPublishRequest) => void;
|
|
29
32
|
/** Request sent to the SFU to unpublish a track. */
|
|
30
|
-
sfuUnpublishRequest: (event:
|
|
31
|
-
/**
|
|
32
|
-
|
|
33
|
+
sfuUnpublishRequest: (event: EventSfuUnpublishRequest) => void;
|
|
34
|
+
/** A serialized packet is ready to be sent over the transport. */
|
|
35
|
+
packetAvailable: (event: EventPacketAvailable) => void;
|
|
36
|
+
/** A new {@link LocalDataTrack} has been published */
|
|
37
|
+
trackPublished: (event: EventTrackPublished) => void;
|
|
38
|
+
/** A {@link LocalDataTrack} has been unpublished */
|
|
39
|
+
trackUnpublished: (event: EventTrackUnpublished) => void;
|
|
33
40
|
};
|
|
34
|
-
type
|
|
41
|
+
type OutgoingDataTrackManagerOptions = {
|
|
35
42
|
/**
|
|
36
43
|
* Provider to use for encrypting outgoing frame payloads.
|
|
37
44
|
*
|
|
38
|
-
* If
|
|
45
|
+
* If null, end-to-end encryption will be disabled for all published tracks.
|
|
39
46
|
*/
|
|
40
|
-
|
|
47
|
+
e2eeManager?: BaseE2EEManager;
|
|
41
48
|
};
|
|
42
49
|
declare const OutgoingDataTrackManager_base: new () => TypedEmitter<DataTrackOutgoingManagerCallbacks>;
|
|
43
50
|
export default class OutgoingDataTrackManager extends OutgoingDataTrackManager_base {
|
|
44
|
-
private
|
|
51
|
+
private e2eeManager;
|
|
45
52
|
private handleAllocator;
|
|
46
53
|
private descriptors;
|
|
47
|
-
constructor(options?:
|
|
54
|
+
constructor(options?: OutgoingDataTrackManagerOptions);
|
|
48
55
|
static withDescriptors(descriptors: Map<DataTrackHandle, Descriptor>): OutgoingDataTrackManager;
|
|
56
|
+
/** @internal */
|
|
57
|
+
updateE2eeManager(e2eeManager: BaseE2EEManager | null): void;
|
|
49
58
|
/**
|
|
50
59
|
* Used by attached {@link LocalDataTrack} instances to query their associated descriptor info.
|
|
51
60
|
* @internal
|
|
52
61
|
*/
|
|
53
62
|
getDescriptor(handle: DataTrackHandle): Descriptor | null;
|
|
54
|
-
createLocalDataTrack(handle: DataTrackHandle): LocalDataTrack | null;
|
|
55
63
|
/** Used by attached {@link LocalDataTrack} instances to broadcast data track packets to other
|
|
56
64
|
* subscribers.
|
|
57
65
|
* @internal
|
|
58
66
|
*/
|
|
59
|
-
tryProcessAndSend(handle: DataTrackHandle,
|
|
60
|
-
/**
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
+
tryProcessAndSend(handle: DataTrackHandle, frame: DataTrackFrameInternal): Promise<Throws<void, DataTrackPushFrameError<DataTrackPushFrameErrorReason.Dropped> | DataTrackPushFrameError<DataTrackPushFrameErrorReason.TrackUnpublished>>>;
|
|
68
|
+
/**
|
|
69
|
+
* Client requested to publish a track.
|
|
70
|
+
*
|
|
71
|
+
* If the LiveKit server is too old and doesn't support data tracks, a
|
|
72
|
+
* {@link DataTrackPublishError#timeout} will be thrown.
|
|
73
|
+
*
|
|
74
|
+
* @internal
|
|
75
|
+
**/
|
|
76
|
+
publishRequest(options: DataTrackOptions, signal?: AbortSignal): Promise<Throws<DataTrackHandle, DataTrackPublishError>>;
|
|
77
|
+
/**
|
|
78
|
+
* Get information about all currently published tracks.
|
|
79
|
+
* @internal
|
|
80
|
+
**/
|
|
81
|
+
queryPublished(): DataTrackInfo[];
|
|
82
|
+
/**
|
|
83
|
+
* Client request to unpublish a track.
|
|
84
|
+
* @internal
|
|
85
|
+
**/
|
|
67
86
|
unpublishRequest(handle: DataTrackHandle): Promise<void>;
|
|
68
|
-
/**
|
|
87
|
+
/**
|
|
88
|
+
* SFU responded to a request to publish a data track.
|
|
89
|
+
* @internal
|
|
90
|
+
**/
|
|
69
91
|
receivedSfuPublishResponse(handle: DataTrackHandle, result: SfuPublishResponseResult): void;
|
|
70
|
-
/**
|
|
92
|
+
/**
|
|
93
|
+
* SFU notification that a track has been unpublished.
|
|
94
|
+
* @internal
|
|
95
|
+
**/
|
|
71
96
|
receivedSfuUnpublishResponse(handle: DataTrackHandle): void;
|
|
72
|
-
/**
|
|
97
|
+
/** Republish all tracks.
|
|
98
|
+
*
|
|
99
|
+
* This must be sent after a full reconnect in order for existing publications
|
|
100
|
+
* to be recognized by the SFU. Each republished track will be assigned a new SID.
|
|
101
|
+
* @internal
|
|
102
|
+
*/
|
|
103
|
+
sfuWillRepublishTracks(): void;
|
|
104
|
+
/**
|
|
105
|
+
* Shuts down the manager and all associated tracks.
|
|
106
|
+
* @internal
|
|
107
|
+
**/
|
|
73
108
|
shutdown(): Promise<void>;
|
|
74
109
|
}
|
|
75
110
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OutgoingDataTrackManager.d.ts","sourceRoot":"","sources":["../../../../../src/room/data-track/outgoing/OutgoingDataTrackManager.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,YAAY,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"OutgoingDataTrackManager.d.ts","sourceRoot":"","sources":["../../../../../src/room/data-track/outgoing/OutgoingDataTrackManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { LivekitReasonedError } from '../../errors';
|
|
2
|
-
import { DataTrackPacketizerError
|
|
2
|
+
import { DataTrackPacketizerError } from '../packetizer';
|
|
3
3
|
export declare enum DataTrackPublishErrorReason {
|
|
4
4
|
/**
|
|
5
5
|
* Local participant does not have permission to publish data tracks.
|
|
@@ -15,19 +15,29 @@ export declare enum DataTrackPublishErrorReason {
|
|
|
15
15
|
LimitReached = 3,
|
|
16
16
|
/** Cannot publish data track when the room is disconnected. */
|
|
17
17
|
Disconnected = 4,
|
|
18
|
-
Cancelled = 5
|
|
18
|
+
Cancelled = 5,
|
|
19
|
+
/** The name requested is not able to be used when creating the data track. */
|
|
20
|
+
InvalidName = 6,
|
|
21
|
+
/** There was an error publishing, but it was not something that could be sorted into a known
|
|
22
|
+
* category. */
|
|
23
|
+
Unknown = 7
|
|
19
24
|
}
|
|
20
|
-
export declare class DataTrackPublishError<Reason extends DataTrackPublishErrorReason> extends LivekitReasonedError<Reason> {
|
|
25
|
+
export declare class DataTrackPublishError<Reason extends DataTrackPublishErrorReason = DataTrackPublishErrorReason> extends LivekitReasonedError<Reason> {
|
|
21
26
|
readonly name = "DataTrackPublishError";
|
|
22
27
|
reason: Reason;
|
|
23
28
|
reasonName: string;
|
|
29
|
+
/** Underling message from the SFU, if one was provided */
|
|
30
|
+
rawMessage?: string;
|
|
24
31
|
constructor(message: string, reason: Reason, options?: {
|
|
32
|
+
rawMessage?: string;
|
|
25
33
|
cause?: unknown;
|
|
26
34
|
});
|
|
27
|
-
static notAllowed(): DataTrackPublishError<DataTrackPublishErrorReason.NotAllowed>;
|
|
28
|
-
static duplicateName(): DataTrackPublishError<DataTrackPublishErrorReason.DuplicateName>;
|
|
35
|
+
static notAllowed(rawMessage?: string): DataTrackPublishError<DataTrackPublishErrorReason.NotAllowed>;
|
|
36
|
+
static duplicateName(rawMessage?: string): DataTrackPublishError<DataTrackPublishErrorReason.DuplicateName>;
|
|
37
|
+
static invalidName(rawMessage?: string): DataTrackPublishError<DataTrackPublishErrorReason.InvalidName>;
|
|
29
38
|
static timeout(): DataTrackPublishError<DataTrackPublishErrorReason.Timeout>;
|
|
30
|
-
static limitReached(): DataTrackPublishError<DataTrackPublishErrorReason.LimitReached>;
|
|
39
|
+
static limitReached(rawMessage?: string): DataTrackPublishError<DataTrackPublishErrorReason.LimitReached>;
|
|
40
|
+
static unknown(reason: number, message: string): DataTrackPublishError<DataTrackPublishErrorReason.Unknown>;
|
|
31
41
|
static disconnected(): DataTrackPublishError<DataTrackPublishErrorReason.Disconnected>;
|
|
32
42
|
static cancelled(): DataTrackPublishError<DataTrackPublishErrorReason.Cancelled>;
|
|
33
43
|
}
|
|
@@ -37,7 +47,7 @@ export declare enum DataTrackPushFrameErrorReason {
|
|
|
37
47
|
/** Frame was dropped. */
|
|
38
48
|
Dropped = 1
|
|
39
49
|
}
|
|
40
|
-
export declare class DataTrackPushFrameError<Reason extends DataTrackPushFrameErrorReason> extends LivekitReasonedError<Reason> {
|
|
50
|
+
export declare class DataTrackPushFrameError<Reason extends DataTrackPushFrameErrorReason = DataTrackPushFrameErrorReason> extends LivekitReasonedError<Reason> {
|
|
41
51
|
readonly name = "DataTrackPushFrameError";
|
|
42
52
|
reason: Reason;
|
|
43
53
|
reasonName: string;
|
|
@@ -45,20 +55,20 @@ export declare class DataTrackPushFrameError<Reason extends DataTrackPushFrameEr
|
|
|
45
55
|
cause?: unknown;
|
|
46
56
|
});
|
|
47
57
|
static trackUnpublished(): DataTrackPushFrameError<DataTrackPushFrameErrorReason.TrackUnpublished>;
|
|
48
|
-
static dropped(cause
|
|
58
|
+
static dropped(cause?: unknown): DataTrackPushFrameError<DataTrackPushFrameErrorReason.Dropped>;
|
|
49
59
|
}
|
|
50
60
|
export declare enum DataTrackOutgoingPipelineErrorReason {
|
|
51
61
|
Packetizer = 0,
|
|
52
62
|
Encryption = 1
|
|
53
63
|
}
|
|
54
|
-
export declare class DataTrackOutgoingPipelineError<Reason extends DataTrackOutgoingPipelineErrorReason> extends LivekitReasonedError<Reason> {
|
|
64
|
+
export declare class DataTrackOutgoingPipelineError<Reason extends DataTrackOutgoingPipelineErrorReason = DataTrackOutgoingPipelineErrorReason> extends LivekitReasonedError<Reason> {
|
|
55
65
|
readonly name = "DataTrackOutgoingPipelineError";
|
|
56
66
|
reason: Reason;
|
|
57
67
|
reasonName: string;
|
|
58
68
|
constructor(message: string, reason: Reason, options?: {
|
|
59
69
|
cause?: unknown;
|
|
60
70
|
});
|
|
61
|
-
static packetizer(cause: DataTrackPacketizerError
|
|
71
|
+
static packetizer(cause: DataTrackPacketizerError): DataTrackOutgoingPipelineError<DataTrackOutgoingPipelineErrorReason.Packetizer>;
|
|
62
72
|
static encryption(cause: unknown): DataTrackOutgoingPipelineError<DataTrackOutgoingPipelineErrorReason.Encryption>;
|
|
63
73
|
}
|
|
64
74
|
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../../src/room/data-track/outgoing/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,wBAAwB,EAAE,
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../../src/room/data-track/outgoing/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AAEzD,oBAAY,2BAA2B;IACrC;;;;OAIG;IACH,UAAU,IAAI;IAEd,gFAAgF;IAChF,aAAa,IAAI;IAEjB,0DAA0D;IAC1D,OAAO,IAAI;IAEX,2EAA2E;IAC3E,YAAY,IAAI;IAEhB,+DAA+D;IAC/D,YAAY,IAAI;IAGhB,SAAS,IAAI;IAEb,8EAA8E;IAC9E,WAAW,IAAI;IAEf;mBACe;IACf,OAAO,IAAI;CACZ;AAED,qBAAa,qBAAqB,CAChC,MAAM,SAAS,2BAA2B,GAAG,2BAA2B,CACxE,SAAQ,oBAAoB,CAAC,MAAM,CAAC;IACpC,QAAQ,CAAC,IAAI,2BAA2B;IAExC,MAAM,EAAE,MAAM,CAAC;IAEf,UAAU,EAAE,MAAM,CAAC;IAEnB,0DAA0D;IAC1D,UAAU,CAAC,EAAE,MAAM,CAAC;gBAER,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE;IAO/F,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,MAAM;IAQrC,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,MAAM;IAQxC,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,MAAM;IAQtC,MAAM,CAAC,OAAO;IAOd,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,MAAM;IAQvC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;IAO9C,MAAM,CAAC,YAAY;IAKnB,MAAM,CAAC,SAAS;CAMjB;AAED,oBAAY,6BAA6B;IACvC,oCAAoC;IACpC,gBAAgB,IAAI;IACpB,yBAAyB;IAGzB,OAAO,IAAI;CACZ;AAED,qBAAa,uBAAuB,CAClC,MAAM,SAAS,6BAA6B,GAAG,6BAA6B,CAC5E,SAAQ,oBAAoB,CAAC,MAAM,CAAC;IACpC,QAAQ,CAAC,IAAI,6BAA6B;IAE1C,MAAM,EAAE,MAAM,CAAC;IAEf,UAAU,EAAE,MAAM,CAAC;gBAEP,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE;IAM1E,MAAM,CAAC,gBAAgB;IAOvB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,OAAO;CAK/B;AAED,oBAAY,oCAAoC;IAC9C,UAAU,IAAI;IACd,UAAU,IAAI;CACf;AAED,qBAAa,8BAA8B,CACzC,MAAM,SAAS,oCAAoC,GAAG,oCAAoC,CAC1F,SAAQ,oBAAoB,CAAC,MAAM,CAAC;IACpC,QAAQ,CAAC,IAAI,oCAAoC;IAEjD,MAAM,EAAE,MAAM,CAAC;IAEf,UAAU,EAAE,MAAM,CAAC;gBAEP,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE;IAM1E,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,wBAAwB;IAQjD,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,OAAO;CAOjC"}
|