@livekit/rtc-node 0.10.3 → 0.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +54 -2
- package/build.rs +1 -1
- package/dist/audio_frame.d.ts +1 -1
- package/dist/audio_frame.d.ts.map +1 -1
- package/dist/audio_frame.js +4 -4
- package/dist/audio_frame.js.map +1 -1
- package/dist/audio_resampler.d.ts.map +1 -1
- package/dist/audio_resampler.js +8 -7
- package/dist/audio_resampler.js.map +1 -1
- package/dist/audio_source.d.ts.map +1 -1
- package/dist/audio_source.js +8 -4
- package/dist/audio_source.js.map +1 -1
- package/dist/audio_stream.d.ts +1 -1
- package/dist/audio_stream.d.ts.map +1 -1
- package/dist/audio_stream.js +4 -3
- package/dist/audio_stream.js.map +1 -1
- package/dist/e2ee.d.ts.map +1 -1
- package/dist/e2ee.js +25 -25
- package/dist/e2ee.js.map +1 -1
- package/dist/ffi_client.d.ts +3 -3
- package/dist/ffi_client.d.ts.map +1 -1
- package/dist/ffi_client.js +9 -7
- package/dist/ffi_client.js.map +1 -1
- package/dist/index.d.ts +29 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +34 -4
- package/dist/index.js.map +1 -1
- package/dist/napi/native.d.ts +1 -0
- package/dist/participant.d.ts +52 -6
- package/dist/participant.d.ts.map +1 -1
- package/dist/participant.js +155 -32
- package/dist/participant.js.map +1 -1
- package/dist/proto/audio_frame_pb.d.ts +451 -526
- package/dist/proto/audio_frame_pb.d.ts.map +1 -1
- package/dist/proto/audio_frame_pb.js +200 -1179
- package/dist/proto/audio_frame_pb.js.map +1 -1
- package/dist/proto/e2ee_pb.d.ts +264 -333
- package/dist/proto/e2ee_pb.d.ts.map +1 -1
- package/dist/proto/e2ee_pb.js +136 -810
- package/dist/proto/e2ee_pb.js.map +1 -1
- package/dist/proto/ffi_pb.d.ts +175 -129
- package/dist/proto/ffi_pb.d.ts.map +1 -1
- package/dist/proto/ffi_pb.js +58 -395
- package/dist/proto/ffi_pb.js.map +1 -1
- package/dist/proto/handle_pb.d.ts +14 -13
- package/dist/proto/handle_pb.d.ts.map +1 -1
- package/dist/proto/handle_pb.js +8 -39
- package/dist/proto/handle_pb.js.map +1 -1
- package/dist/proto/participant_pb.d.ts +54 -52
- package/dist/proto/participant_pb.d.ts.map +1 -1
- package/dist/proto/participant_pb.js +18 -90
- package/dist/proto/participant_pb.js.map +1 -1
- package/dist/proto/room_pb.d.ts +1042 -1187
- package/dist/proto/room_pb.d.ts.map +1 -1
- package/dist/proto/room_pb.js +470 -2938
- package/dist/proto/room_pb.js.map +1 -1
- package/dist/proto/rpc_pb.d.ts +235 -0
- package/dist/proto/rpc_pb.d.ts.map +1 -0
- package/dist/proto/rpc_pb.js +74 -0
- package/dist/proto/rpc_pb.js.map +1 -0
- package/dist/proto/stats_pb.d.ts +738 -800
- package/dist/proto/stats_pb.d.ts.map +1 -1
- package/dist/proto/stats_pb.js +218 -1960
- package/dist/proto/stats_pb.js.map +1 -1
- package/dist/proto/track_pb.d.ts +225 -258
- package/dist/proto/track_pb.d.ts.map +1 -1
- package/dist/proto/track_pb.js +98 -591
- package/dist/proto/track_pb.js.map +1 -1
- package/dist/proto/video_frame_pb.d.ts +357 -390
- package/dist/proto/video_frame_pb.d.ts.map +1 -1
- package/dist/proto/video_frame_pb.js +137 -790
- package/dist/proto/video_frame_pb.js.map +1 -1
- package/dist/room.d.ts +21 -7
- package/dist/room.d.ts.map +1 -1
- package/dist/room.js +134 -54
- package/dist/room.js.map +1 -1
- package/dist/rpc.d.ts +78 -0
- package/dist/rpc.d.ts.map +1 -0
- package/dist/rpc.js +69 -0
- package/dist/rpc.js.map +1 -0
- package/dist/track.d.ts.map +1 -1
- package/dist/track.js +7 -3
- package/dist/track.js.map +1 -1
- package/dist/track_publication.d.ts.map +1 -1
- package/dist/track_publication.js +3 -2
- package/dist/track_publication.js.map +1 -1
- package/dist/version.d.ts +2 -0
- package/dist/version.d.ts.map +1 -0
- package/dist/version.js +2 -0
- package/dist/version.js.map +1 -0
- package/dist/video_frame.d.ts +2 -2
- package/dist/video_frame.d.ts.map +1 -1
- package/dist/video_frame.js +47 -25
- package/dist/video_frame.js.map +1 -1
- package/dist/video_source.d.ts.map +1 -1
- package/dist/video_source.js +4 -3
- package/dist/video_source.js.map +1 -1
- package/dist/video_stream.d.ts +1 -1
- package/dist/video_stream.d.ts.map +1 -1
- package/dist/video_stream.js +7 -3
- package/dist/video_stream.js.map +1 -1
- package/package.json +13 -10
- package/src/audio_frame.ts +6 -6
- package/src/audio_resampler.ts +10 -9
- package/src/audio_source.ts +9 -8
- package/src/audio_stream.ts +7 -6
- package/src/e2ee.ts +34 -34
- package/src/ffi_client.ts +23 -10
- package/src/index.ts +61 -2
- package/src/napi/native.d.ts +1 -0
- package/src/nodejs.rs +6 -3
- package/src/participant.ts +219 -55
- package/src/proto/audio_frame_pb.ts +562 -1279
- package/src/proto/e2ee_pb.ts +365 -886
- package/src/proto/ffi_pb.ts +206 -405
- package/src/proto/handle_pb.ts +21 -35
- package/src/proto/participant_pb.ts +71 -112
- package/src/proto/room_pb.ts +1284 -2995
- package/src/proto/rpc_pb.ts +310 -0
- package/src/proto/stats_pb.ts +1028 -1947
- package/src/proto/track_pb.ts +287 -621
- package/src/proto/video_frame_pb.ts +445 -905
- package/src/room.ts +181 -75
- package/src/rpc.ts +121 -0
- package/src/track.ts +8 -7
- package/src/track_publication.ts +5 -4
- package/src/version.ts +1 -0
- package/src/video_frame.ts +54 -27
- package/src/video_source.ts +7 -6
- package/src/video_stream.ts +7 -6
- package/dist/utils.d.ts +0 -7
- package/dist/utils.d.ts.map +0 -1
- package/dist/utils.js +0 -48
- package/dist/utils.js.map +0 -1
- package/src/utils.test.ts +0 -47
- package/src/utils.ts +0 -44
package/dist/index.d.ts
CHANGED
|
@@ -1,3 +1,8 @@
|
|
|
1
|
+
import type { MessageInitShape } from '@bufbuild/protobuf';
|
|
2
|
+
import type { AudioEncoding, TrackPublishOptionsSchema, VideoEncoding } from './proto/room_pb.js';
|
|
3
|
+
import { IceServerSchema, type IceServer as IceServerType, type TrackPublishOptions as TrackPublishOptionsType } from './proto/room_pb.js';
|
|
4
|
+
import { TrackSource } from './proto/track_pb.js';
|
|
5
|
+
import { VideoCodec } from './proto/video_frame_pb.js';
|
|
1
6
|
export { Room, RoomEvent, ConnectError, RoomOptions, RtcConfiguration } from './room.js';
|
|
2
7
|
export { Participant, RemoteParticipant, LocalParticipant } from './participant.js';
|
|
3
8
|
export { Track, LocalTrack, RemoteTrack, VideoTrack, LocalAudioTrack, LocalVideoTrack, RemoteAudioTrack, RemoteVideoTrack, AudioTrack, } from './track.js';
|
|
@@ -11,11 +16,34 @@ export { VideoSource } from './video_source.js';
|
|
|
11
16
|
export { TrackPublication, RemoteTrackPublication, LocalTrackPublication, } from './track_publication.js';
|
|
12
17
|
export { Transcription, TranscriptionSegment } from './transcription.js';
|
|
13
18
|
export { E2EEManager, E2EEOptions, KeyProviderOptions, KeyProvider, FrameCryptor } from './e2ee.js';
|
|
14
|
-
export { ConnectionQuality,
|
|
19
|
+
export { ConnectionQuality, IceTransportType, DataPacketKind, ContinualGatheringPolicy, ConnectionState, } from './proto/room_pb.js';
|
|
20
|
+
export { RpcError, type RpcInvocationData, type PerformRpcParams } from './rpc.js';
|
|
15
21
|
export { EncryptionType, EncryptionState } from './proto/e2ee_pb.js';
|
|
16
22
|
export { StreamState, TrackKind, TrackSource } from './proto/track_pb.js';
|
|
17
23
|
export { VideoBufferType, VideoRotation, VideoCodec } from './proto/video_frame_pb.js';
|
|
18
24
|
export { ParticipantKind } from './proto/participant_pb.js';
|
|
19
25
|
export { dispose } from './ffi_client.js';
|
|
20
26
|
export type { ChatMessage } from './types.js';
|
|
27
|
+
type IceServerInit = MessageInitShape<typeof IceServerSchema> & {
|
|
28
|
+
urls: string[];
|
|
29
|
+
};
|
|
30
|
+
export declare class IceServer implements IceServerType {
|
|
31
|
+
$typeName: "livekit.proto.IceServer";
|
|
32
|
+
urls: string[];
|
|
33
|
+
username: string;
|
|
34
|
+
password: string;
|
|
35
|
+
constructor(init: IceServerInit);
|
|
36
|
+
}
|
|
37
|
+
export declare class TrackPublishOptions implements TrackPublishOptionsType {
|
|
38
|
+
$typeName: "livekit.proto.TrackPublishOptions";
|
|
39
|
+
videoCodec: VideoCodec;
|
|
40
|
+
videoEncoding?: VideoEncoding | undefined;
|
|
41
|
+
audioEncoding?: AudioEncoding | undefined;
|
|
42
|
+
dtx: boolean;
|
|
43
|
+
simulcast: boolean;
|
|
44
|
+
source: TrackSource;
|
|
45
|
+
stream: string;
|
|
46
|
+
red: boolean;
|
|
47
|
+
constructor(init?: MessageInitShape<typeof TrackPublishOptionsSchema>);
|
|
48
|
+
}
|
|
21
49
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { create } from '@bufbuild/protobuf';
|
|
2
|
+
import { AudioEncodingSchema, IceServerSchema, VideoEncodingSchema, } from './proto/room_pb.js';
|
|
3
|
+
import { TrackSource } from './proto/track_pb.js';
|
|
4
|
+
import { VideoCodec } from './proto/video_frame_pb.js';
|
|
4
5
|
export { Room, RoomEvent, ConnectError } from './room.js';
|
|
5
6
|
export { Participant, RemoteParticipant, LocalParticipant } from './participant.js';
|
|
6
7
|
export { Track, LocalAudioTrack, LocalVideoTrack, RemoteAudioTrack, RemoteVideoTrack, } from './track.js';
|
|
@@ -13,10 +14,39 @@ export { AudioSource } from './audio_source.js';
|
|
|
13
14
|
export { VideoSource } from './video_source.js';
|
|
14
15
|
export { TrackPublication, RemoteTrackPublication, LocalTrackPublication, } from './track_publication.js';
|
|
15
16
|
export { E2EEManager, KeyProvider, FrameCryptor } from './e2ee.js';
|
|
16
|
-
export { ConnectionQuality,
|
|
17
|
+
export { ConnectionQuality, IceTransportType, DataPacketKind, ContinualGatheringPolicy, ConnectionState, } from './proto/room_pb.js';
|
|
18
|
+
export { RpcError } from './rpc.js';
|
|
17
19
|
export { EncryptionType, EncryptionState } from './proto/e2ee_pb.js';
|
|
18
20
|
export { StreamState, TrackKind, TrackSource } from './proto/track_pb.js';
|
|
19
21
|
export { VideoBufferType, VideoRotation, VideoCodec } from './proto/video_frame_pb.js';
|
|
20
22
|
export { ParticipantKind } from './proto/participant_pb.js';
|
|
21
23
|
export { dispose } from './ffi_client.js';
|
|
24
|
+
export class IceServer {
|
|
25
|
+
constructor(init) {
|
|
26
|
+
this.$typeName = 'livekit.proto.IceServer';
|
|
27
|
+
const { urls, username, password } = init;
|
|
28
|
+
this.urls = urls;
|
|
29
|
+
this.username = username ?? '';
|
|
30
|
+
this.password = password ?? '';
|
|
31
|
+
create(IceServerSchema, init);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
export class TrackPublishOptions {
|
|
35
|
+
constructor(init = {}) {
|
|
36
|
+
this.$typeName = 'livekit.proto.TrackPublishOptions';
|
|
37
|
+
const { videoCodec, videoEncoding, audioEncoding, dtx, simulcast, source, stream, red } = init;
|
|
38
|
+
this.videoCodec = videoCodec ?? VideoCodec.VP8;
|
|
39
|
+
if (videoEncoding) {
|
|
40
|
+
this.videoEncoding = create(VideoEncodingSchema, videoEncoding);
|
|
41
|
+
}
|
|
42
|
+
if (audioEncoding) {
|
|
43
|
+
this.audioEncoding = create(AudioEncodingSchema, audioEncoding);
|
|
44
|
+
}
|
|
45
|
+
this.dtx = dtx ?? false;
|
|
46
|
+
this.simulcast = simulcast ?? false;
|
|
47
|
+
this.source = source ?? TrackSource.SOURCE_UNKNOWN;
|
|
48
|
+
this.stream = stream ?? '';
|
|
49
|
+
this.red = red ?? false;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
22
52
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/napi/native.d.ts
CHANGED
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
export declare function livekitInitialize(
|
|
7
7
|
callback: (data: Uint8Array) => void,
|
|
8
8
|
captureLogs: boolean,
|
|
9
|
+
sdkVersion: string,
|
|
9
10
|
): void;
|
|
10
11
|
export declare function livekitFfiRequest(data: Uint8Array): Uint8Array;
|
|
11
12
|
export declare function livekitRetrievePtr(handle: Uint8Array): bigint;
|
package/dist/participant.d.ts
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { FfiHandle } from './ffi_client.js';
|
|
2
2
|
import type { OwnedParticipant, ParticipantInfo, ParticipantKind } from './proto/participant_pb.js';
|
|
3
|
-
import { TrackPublishOptions } from './proto/room_pb.js';
|
|
3
|
+
import type { TrackPublishOptions } from './proto/room_pb.js';
|
|
4
|
+
import { type PerformRpcParams, type RpcInvocationData } from './rpc.js';
|
|
4
5
|
import type { LocalTrack } from './track.js';
|
|
5
6
|
import type { RemoteTrackPublication, TrackPublication } from './track_publication.js';
|
|
6
7
|
import { LocalTrackPublication } from './track_publication.js';
|
|
7
8
|
import type { Transcription } from './transcription.js';
|
|
8
|
-
import { ChatMessage } from './types.js';
|
|
9
|
+
import type { ChatMessage } from './types.js';
|
|
9
10
|
export declare abstract class Participant {
|
|
10
11
|
/** @internal */
|
|
11
12
|
info: ParticipantInfo;
|
|
@@ -36,15 +37,12 @@ export type DataPublishOptions = {
|
|
|
36
37
|
topic?: string;
|
|
37
38
|
};
|
|
38
39
|
export declare class LocalParticipant extends Participant {
|
|
40
|
+
private rpcHandlers;
|
|
39
41
|
trackPublications: Map<string, LocalTrackPublication>;
|
|
40
42
|
publishData(data: Uint8Array, options: DataPublishOptions): Promise<void>;
|
|
41
43
|
publishDtmf(code: number, digit: string): Promise<void>;
|
|
42
44
|
publishTranscription(transcription: Transcription): Promise<void>;
|
|
43
45
|
updateMetadata(metadata: string): Promise<void>;
|
|
44
|
-
/**
|
|
45
|
-
*
|
|
46
|
-
*/
|
|
47
|
-
sendChatMessage(text: string, destinationIdentities?: Array<string>, senderIdentity?: string): Promise<ChatMessage>;
|
|
48
46
|
/**
|
|
49
47
|
* Sends a chat message to participants in the room
|
|
50
48
|
*
|
|
@@ -53,11 +51,59 @@ export declare class LocalParticipant extends Participant {
|
|
|
53
51
|
* @param senderIdentity - An optional identity of the sender. If omitted, the default sender identity is used.
|
|
54
52
|
*
|
|
55
53
|
*/
|
|
54
|
+
sendChatMessage(text: string, destinationIdentities?: Array<string>, senderIdentity?: string): Promise<ChatMessage>;
|
|
55
|
+
/**
|
|
56
|
+
* @experimental
|
|
57
|
+
*/
|
|
56
58
|
editChatMessage(editText: string, originalMessage: ChatMessage, destinationIdentities?: Array<string>, senderIdentity?: string): Promise<ChatMessage>;
|
|
57
59
|
updateName(name: string): Promise<void>;
|
|
58
60
|
setAttributes(attributes: Record<string, string>): Promise<void>;
|
|
59
61
|
publishTrack(track: LocalTrack, options: TrackPublishOptions): Promise<LocalTrackPublication>;
|
|
60
62
|
unpublishTrack(trackSid: string): Promise<void>;
|
|
63
|
+
/**
|
|
64
|
+
* Initiate an RPC call to a remote participant.
|
|
65
|
+
* @param params - Parameters for initiating the RPC call, see {@link PerformRpcParams}
|
|
66
|
+
* @returns A promise that resolves with the response payload or rejects with an error.
|
|
67
|
+
* @throws Error on failure. Details in `message`.
|
|
68
|
+
*/
|
|
69
|
+
performRpc({ destinationIdentity, method, payload, responseTimeout, }: PerformRpcParams): Promise<string>;
|
|
70
|
+
/**
|
|
71
|
+
* Establishes the participant as a receiver for calls of the specified RPC method.
|
|
72
|
+
* Will overwrite any existing callback for the same method.
|
|
73
|
+
*
|
|
74
|
+
* @param method - The name of the indicated RPC method
|
|
75
|
+
* @param handler - Will be invoked when an RPC request for this method is received
|
|
76
|
+
* @returns A promise that resolves when the method is successfully registered
|
|
77
|
+
*
|
|
78
|
+
* @example
|
|
79
|
+
* ```typescript
|
|
80
|
+
* room.localParticipant?.registerRpcMethod(
|
|
81
|
+
* 'greet',
|
|
82
|
+
* async (data: RpcInvocationData) => {
|
|
83
|
+
* console.log(`Received greeting from ${data.callerIdentity}: ${data.payload}`);
|
|
84
|
+
* return `Hello, ${data.callerIdentity}!`;
|
|
85
|
+
* }
|
|
86
|
+
* );
|
|
87
|
+
* ```
|
|
88
|
+
*
|
|
89
|
+
* See {@link RpcInvocationData} for more details on invocation params.
|
|
90
|
+
*
|
|
91
|
+
* The handler should return a Promise that resolves to a string.
|
|
92
|
+
* If unable to respond within `responseTimeout`, the request will result in an error on the caller's side.
|
|
93
|
+
*
|
|
94
|
+
* You may throw errors of type `RpcError` with a string `message` in the handler,
|
|
95
|
+
* and they will be received on the caller's side with the message intact.
|
|
96
|
+
* Other errors thrown in your handler will not be transmitted as-is, and will instead arrive to the caller as `1500` ("Application Error").
|
|
97
|
+
*/
|
|
98
|
+
registerRpcMethod(method: string, handler: (data: RpcInvocationData) => Promise<string>): void;
|
|
99
|
+
/**
|
|
100
|
+
* Unregisters a previously registered RPC method.
|
|
101
|
+
*
|
|
102
|
+
* @param method - The name of the RPC method to unregister
|
|
103
|
+
*/
|
|
104
|
+
unregisterRpcMethod(method: string): void;
|
|
105
|
+
/** @internal */
|
|
106
|
+
handleRpcMethodInvocation(invocationId: bigint, method: string, requestId: string, callerIdentity: string, payload: string, responseTimeout: number): Promise<void>;
|
|
61
107
|
}
|
|
62
108
|
export declare class RemoteParticipant extends Participant {
|
|
63
109
|
trackPublications: Map<string, RemoteTrackPublication>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"participant.d.ts","sourceRoot":"","sources":["../src/participant.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"participant.d.ts","sourceRoot":"","sources":["../src/participant.ts"],"names":[],"mappings":"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"}
|
package/dist/participant.js
CHANGED
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
// SPDX-FileCopyrightText: 2024 LiveKit, Inc.
|
|
2
2
|
//
|
|
3
3
|
// SPDX-License-Identifier: Apache-2.0
|
|
4
|
+
import { create } from '@bufbuild/protobuf';
|
|
4
5
|
import { FfiClient, FfiHandle } from './ffi_client.js';
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
6
|
+
import { ChatMessageSchema, EditChatMessageRequestSchema, PublishDataRequestSchema, PublishSipDtmfRequestSchema, PublishTrackRequestSchema, PublishTranscriptionRequestSchema, SendChatMessageRequestSchema, SetLocalAttributesRequestSchema, SetLocalMetadataRequestSchema, SetLocalNameRequestSchema, UnpublishTrackRequestSchema, } from './proto/room_pb.js';
|
|
7
|
+
import { TranscriptionSegmentSchema } from './proto/room_pb.js';
|
|
8
|
+
import { PerformRpcRequestSchema, RegisterRpcMethodRequestSchema, RpcMethodInvocationResponseRequestSchema, UnregisterRpcMethodRequestSchema, } from './proto/rpc_pb.js';
|
|
9
|
+
import { RpcError } from './rpc.js';
|
|
7
10
|
import { LocalTrackPublication } from './track_publication.js';
|
|
8
11
|
export class Participant {
|
|
9
12
|
constructor(owned_info) {
|
|
@@ -33,10 +36,11 @@ export class Participant {
|
|
|
33
36
|
export class LocalParticipant extends Participant {
|
|
34
37
|
constructor() {
|
|
35
38
|
super(...arguments);
|
|
39
|
+
this.rpcHandlers = new Map();
|
|
36
40
|
this.trackPublications = new Map();
|
|
37
41
|
}
|
|
38
42
|
async publishData(data, options) {
|
|
39
|
-
const req =
|
|
43
|
+
const req = create(PublishDataRequestSchema, {
|
|
40
44
|
localParticipantHandle: this.ffi_handle.handle,
|
|
41
45
|
dataPtr: FfiClient.instance.retrievePtr(data),
|
|
42
46
|
dataLen: BigInt(data.byteLength),
|
|
@@ -55,7 +59,7 @@ export class LocalParticipant extends Participant {
|
|
|
55
59
|
}
|
|
56
60
|
}
|
|
57
61
|
async publishDtmf(code, digit) {
|
|
58
|
-
const req =
|
|
62
|
+
const req = create(PublishSipDtmfRequestSchema, {
|
|
59
63
|
localParticipantHandle: this.ffi_handle.handle,
|
|
60
64
|
code,
|
|
61
65
|
digit,
|
|
@@ -71,10 +75,10 @@ export class LocalParticipant extends Participant {
|
|
|
71
75
|
}
|
|
72
76
|
}
|
|
73
77
|
async publishTranscription(transcription) {
|
|
74
|
-
const req =
|
|
78
|
+
const req = create(PublishTranscriptionRequestSchema, {
|
|
75
79
|
localParticipantHandle: this.ffi_handle.handle,
|
|
76
80
|
participantIdentity: transcription.participantIdentity,
|
|
77
|
-
segments: transcription.segments.map((s) =>
|
|
81
|
+
segments: transcription.segments.map((s) => create(TranscriptionSegmentSchema, {
|
|
78
82
|
id: s.id,
|
|
79
83
|
text: s.text,
|
|
80
84
|
startTime: s.startTime,
|
|
@@ -95,7 +99,7 @@ export class LocalParticipant extends Participant {
|
|
|
95
99
|
}
|
|
96
100
|
}
|
|
97
101
|
async updateMetadata(metadata) {
|
|
98
|
-
const req =
|
|
102
|
+
const req = create(SetLocalMetadataRequestSchema, {
|
|
99
103
|
localParticipantHandle: this.ffi_handle.handle,
|
|
100
104
|
metadata: metadata,
|
|
101
105
|
});
|
|
@@ -107,10 +111,15 @@ export class LocalParticipant extends Participant {
|
|
|
107
111
|
});
|
|
108
112
|
}
|
|
109
113
|
/**
|
|
114
|
+
* Sends a chat message to participants in the room
|
|
115
|
+
*
|
|
116
|
+
* @param text - The text content of the chat message.
|
|
117
|
+
* @param destinationIdentities - An optional array of recipient identities to whom the message will be sent. If omitted, the message is broadcast to all participants.
|
|
118
|
+
* @param senderIdentity - An optional identity of the sender. If omitted, the default sender identity is used.
|
|
110
119
|
*
|
|
111
120
|
*/
|
|
112
121
|
async sendChatMessage(text, destinationIdentities, senderIdentity) {
|
|
113
|
-
const req =
|
|
122
|
+
const req = create(SendChatMessageRequestSchema, {
|
|
114
123
|
localParticipantHandle: this.ffi_handle.handle,
|
|
115
124
|
message: text,
|
|
116
125
|
destinationIdentities,
|
|
@@ -122,28 +131,25 @@ export class LocalParticipant extends Participant {
|
|
|
122
131
|
const cb = await FfiClient.instance.waitFor((ev) => {
|
|
123
132
|
return ev.message.case == 'chatMessage' && ev.message.value.asyncId == res.asyncId;
|
|
124
133
|
});
|
|
125
|
-
if (cb.
|
|
126
|
-
throw new Error(cb.
|
|
134
|
+
if (cb.message.case !== 'chatMessage') {
|
|
135
|
+
throw new Error(cb.message.value ?? 'Unknown Error');
|
|
127
136
|
}
|
|
128
|
-
const { id, timestamp, editTimestamp, message } = cb.
|
|
137
|
+
const { id, timestamp, editTimestamp, message } = cb.message.value;
|
|
129
138
|
return { id, timestamp: Number(timestamp), editTimestamp: Number(editTimestamp), message };
|
|
130
139
|
}
|
|
131
140
|
/**
|
|
132
|
-
*
|
|
133
|
-
*
|
|
134
|
-
* @param text - The text content of the chat message.
|
|
135
|
-
* @param destinationIdentities - An optional array of recipient identities to whom the message will be sent. If omitted, the message is broadcast to all participants.
|
|
136
|
-
* @param senderIdentity - An optional identity of the sender. If omitted, the default sender identity is used.
|
|
137
|
-
*
|
|
141
|
+
* @experimental
|
|
138
142
|
*/
|
|
139
143
|
async editChatMessage(editText, originalMessage, destinationIdentities, senderIdentity) {
|
|
140
|
-
const req =
|
|
144
|
+
const req = create(EditChatMessageRequestSchema, {
|
|
141
145
|
localParticipantHandle: this.ffi_handle.handle,
|
|
142
146
|
editText,
|
|
143
|
-
originalMessage:
|
|
147
|
+
originalMessage: create(ChatMessageSchema, {
|
|
144
148
|
...originalMessage,
|
|
145
149
|
timestamp: BigInt(originalMessage.timestamp),
|
|
146
|
-
editTimestamp:
|
|
150
|
+
editTimestamp: originalMessage.editTimestamp
|
|
151
|
+
? BigInt(originalMessage.editTimestamp)
|
|
152
|
+
: undefined,
|
|
147
153
|
}),
|
|
148
154
|
destinationIdentities,
|
|
149
155
|
senderIdentity,
|
|
@@ -154,14 +160,14 @@ export class LocalParticipant extends Participant {
|
|
|
154
160
|
const cb = await FfiClient.instance.waitFor((ev) => {
|
|
155
161
|
return ev.message.case == 'chatMessage' && ev.message.value.asyncId == res.asyncId;
|
|
156
162
|
});
|
|
157
|
-
if (cb.
|
|
158
|
-
throw new Error(cb.
|
|
163
|
+
if (cb.message.case !== 'chatMessage') {
|
|
164
|
+
throw new Error(cb.message.value ?? 'Unknown Error');
|
|
159
165
|
}
|
|
160
|
-
const { id, timestamp, editTimestamp, message } = cb.
|
|
166
|
+
const { id, timestamp, editTimestamp, message } = cb.message.value;
|
|
161
167
|
return { id, timestamp: Number(timestamp), editTimestamp: Number(editTimestamp), message };
|
|
162
168
|
}
|
|
163
169
|
async updateName(name) {
|
|
164
|
-
const req =
|
|
170
|
+
const req = create(SetLocalNameRequestSchema, {
|
|
165
171
|
localParticipantHandle: this.ffi_handle.handle,
|
|
166
172
|
name: name,
|
|
167
173
|
});
|
|
@@ -173,9 +179,11 @@ export class LocalParticipant extends Participant {
|
|
|
173
179
|
});
|
|
174
180
|
}
|
|
175
181
|
async setAttributes(attributes) {
|
|
176
|
-
const req =
|
|
182
|
+
const req = create(SetLocalAttributesRequestSchema, {
|
|
177
183
|
localParticipantHandle: this.ffi_handle.handle,
|
|
178
|
-
attributes: attributes,
|
|
184
|
+
attributes: Array.from(Object.entries(attributes)).map(([key, value]) => {
|
|
185
|
+
return { key, value };
|
|
186
|
+
}),
|
|
179
187
|
});
|
|
180
188
|
const res = FfiClient.instance.request({
|
|
181
189
|
message: { case: 'setLocalAttributes', value: req },
|
|
@@ -185,7 +193,7 @@ export class LocalParticipant extends Participant {
|
|
|
185
193
|
});
|
|
186
194
|
}
|
|
187
195
|
async publishTrack(track, options) {
|
|
188
|
-
const req =
|
|
196
|
+
const req = create(PublishTrackRequestSchema, {
|
|
189
197
|
localParticipantHandle: this.ffi_handle.handle,
|
|
190
198
|
trackHandle: track.ffi_handle.handle,
|
|
191
199
|
options: options,
|
|
@@ -196,16 +204,16 @@ export class LocalParticipant extends Participant {
|
|
|
196
204
|
const cb = await FfiClient.instance.waitFor((ev) => {
|
|
197
205
|
return ev.message.case == 'publishTrack' && ev.message.value.asyncId == res.asyncId;
|
|
198
206
|
});
|
|
199
|
-
if (cb.
|
|
200
|
-
throw new Error(cb.
|
|
207
|
+
if (cb.message.case !== 'publication') {
|
|
208
|
+
throw new Error(cb.message.value ?? 'Unknown Error');
|
|
201
209
|
}
|
|
202
|
-
const track_publication = new LocalTrackPublication(cb.
|
|
210
|
+
const track_publication = new LocalTrackPublication(cb.message.value);
|
|
203
211
|
track_publication.track = track;
|
|
204
212
|
this.trackPublications.set(track_publication.sid, track_publication);
|
|
205
213
|
return track_publication;
|
|
206
214
|
}
|
|
207
215
|
async unpublishTrack(trackSid) {
|
|
208
|
-
const req =
|
|
216
|
+
const req = create(UnpublishTrackRequestSchema, {
|
|
209
217
|
localParticipantHandle: this.ffi_handle.handle,
|
|
210
218
|
trackSid: trackSid,
|
|
211
219
|
});
|
|
@@ -219,9 +227,124 @@ export class LocalParticipant extends Participant {
|
|
|
219
227
|
throw new Error(cb.error);
|
|
220
228
|
}
|
|
221
229
|
const pub = this.trackPublications.get(trackSid);
|
|
222
|
-
pub
|
|
230
|
+
if (pub) {
|
|
231
|
+
pub.track = undefined;
|
|
232
|
+
}
|
|
223
233
|
this.trackPublications.delete(trackSid);
|
|
224
234
|
}
|
|
235
|
+
/**
|
|
236
|
+
* Initiate an RPC call to a remote participant.
|
|
237
|
+
* @param params - Parameters for initiating the RPC call, see {@link PerformRpcParams}
|
|
238
|
+
* @returns A promise that resolves with the response payload or rejects with an error.
|
|
239
|
+
* @throws Error on failure. Details in `message`.
|
|
240
|
+
*/
|
|
241
|
+
async performRpc({ destinationIdentity, method, payload, responseTimeout, }) {
|
|
242
|
+
const req = create(PerformRpcRequestSchema, {
|
|
243
|
+
localParticipantHandle: this.ffi_handle.handle,
|
|
244
|
+
destinationIdentity,
|
|
245
|
+
method,
|
|
246
|
+
payload,
|
|
247
|
+
responseTimeoutMs: responseTimeout,
|
|
248
|
+
});
|
|
249
|
+
const res = FfiClient.instance.request({
|
|
250
|
+
message: { case: 'performRpc', value: req },
|
|
251
|
+
});
|
|
252
|
+
const cb = await FfiClient.instance.waitFor((ev) => {
|
|
253
|
+
return ev.message.case === 'performRpc' && ev.message.value.asyncId === res.asyncId;
|
|
254
|
+
});
|
|
255
|
+
if (cb.error) {
|
|
256
|
+
throw RpcError.fromProto(cb.error);
|
|
257
|
+
}
|
|
258
|
+
return cb.payload;
|
|
259
|
+
}
|
|
260
|
+
/**
|
|
261
|
+
* Establishes the participant as a receiver for calls of the specified RPC method.
|
|
262
|
+
* Will overwrite any existing callback for the same method.
|
|
263
|
+
*
|
|
264
|
+
* @param method - The name of the indicated RPC method
|
|
265
|
+
* @param handler - Will be invoked when an RPC request for this method is received
|
|
266
|
+
* @returns A promise that resolves when the method is successfully registered
|
|
267
|
+
*
|
|
268
|
+
* @example
|
|
269
|
+
* ```typescript
|
|
270
|
+
* room.localParticipant?.registerRpcMethod(
|
|
271
|
+
* 'greet',
|
|
272
|
+
* async (data: RpcInvocationData) => {
|
|
273
|
+
* console.log(`Received greeting from ${data.callerIdentity}: ${data.payload}`);
|
|
274
|
+
* return `Hello, ${data.callerIdentity}!`;
|
|
275
|
+
* }
|
|
276
|
+
* );
|
|
277
|
+
* ```
|
|
278
|
+
*
|
|
279
|
+
* See {@link RpcInvocationData} for more details on invocation params.
|
|
280
|
+
*
|
|
281
|
+
* The handler should return a Promise that resolves to a string.
|
|
282
|
+
* If unable to respond within `responseTimeout`, the request will result in an error on the caller's side.
|
|
283
|
+
*
|
|
284
|
+
* You may throw errors of type `RpcError` with a string `message` in the handler,
|
|
285
|
+
* and they will be received on the caller's side with the message intact.
|
|
286
|
+
* Other errors thrown in your handler will not be transmitted as-is, and will instead arrive to the caller as `1500` ("Application Error").
|
|
287
|
+
*/
|
|
288
|
+
registerRpcMethod(method, handler) {
|
|
289
|
+
this.rpcHandlers.set(method, handler);
|
|
290
|
+
const req = create(RegisterRpcMethodRequestSchema, {
|
|
291
|
+
localParticipantHandle: this.ffi_handle.handle,
|
|
292
|
+
method,
|
|
293
|
+
});
|
|
294
|
+
FfiClient.instance.request({
|
|
295
|
+
message: { case: 'registerRpcMethod', value: req },
|
|
296
|
+
});
|
|
297
|
+
}
|
|
298
|
+
/**
|
|
299
|
+
* Unregisters a previously registered RPC method.
|
|
300
|
+
*
|
|
301
|
+
* @param method - The name of the RPC method to unregister
|
|
302
|
+
*/
|
|
303
|
+
unregisterRpcMethod(method) {
|
|
304
|
+
this.rpcHandlers.delete(method);
|
|
305
|
+
const req = create(UnregisterRpcMethodRequestSchema, {
|
|
306
|
+
localParticipantHandle: this.ffi_handle.handle,
|
|
307
|
+
method,
|
|
308
|
+
});
|
|
309
|
+
FfiClient.instance.request({
|
|
310
|
+
message: { case: 'unregisterRpcMethod', value: req },
|
|
311
|
+
});
|
|
312
|
+
}
|
|
313
|
+
/** @internal */
|
|
314
|
+
async handleRpcMethodInvocation(invocationId, method, requestId, callerIdentity, payload, responseTimeout) {
|
|
315
|
+
let responseError = null;
|
|
316
|
+
let responsePayload = null;
|
|
317
|
+
const handler = this.rpcHandlers.get(method);
|
|
318
|
+
if (!handler) {
|
|
319
|
+
responseError = RpcError.builtIn('UNSUPPORTED_METHOD');
|
|
320
|
+
}
|
|
321
|
+
else {
|
|
322
|
+
try {
|
|
323
|
+
responsePayload = await handler({ requestId, callerIdentity, payload, responseTimeout });
|
|
324
|
+
}
|
|
325
|
+
catch (error) {
|
|
326
|
+
if (error instanceof RpcError) {
|
|
327
|
+
responseError = error;
|
|
328
|
+
}
|
|
329
|
+
else {
|
|
330
|
+
console.warn(`Uncaught error returned by RPC handler for ${method}. Returning APPLICATION_ERROR instead.`, error);
|
|
331
|
+
responseError = RpcError.builtIn('APPLICATION_ERROR');
|
|
332
|
+
}
|
|
333
|
+
}
|
|
334
|
+
}
|
|
335
|
+
const req = create(RpcMethodInvocationResponseRequestSchema, {
|
|
336
|
+
localParticipantHandle: this.ffi_handle.handle,
|
|
337
|
+
invocationId,
|
|
338
|
+
error: responseError ? responseError.toProto() : undefined,
|
|
339
|
+
payload: responsePayload ?? undefined,
|
|
340
|
+
});
|
|
341
|
+
const res = FfiClient.instance.request({
|
|
342
|
+
message: { case: 'rpcMethodInvocationResponse', value: req },
|
|
343
|
+
});
|
|
344
|
+
if (res.error) {
|
|
345
|
+
console.warn(`error sending rpc method invocation response: ${res.error}`);
|
|
346
|
+
}
|
|
347
|
+
}
|
|
225
348
|
}
|
|
226
349
|
export class RemoteParticipant extends Participant {
|
|
227
350
|
constructor(owned_info) {
|
package/dist/participant.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"participant.js","sourceRoot":"","sources":["../src/participant.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"participant.js","sourceRoot":"","sources":["../src/participant.ts"],"names":[],"mappings":"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"}
|