quickvo-sdk-js 1.3.2 → 1.4.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/dist/enums/eventName.d.ts +6 -1
- package/dist/enums/iceState.d.ts +16 -0
- package/dist/enums/notifyName.d.ts +7 -2
- package/dist/index.js +20149 -17903
- package/dist/index.umd.cjs +4 -4
- package/dist/protos/compiled.d.ts +1047 -327
- package/dist/room/CallsWebSocket.d.ts +13 -2
- package/dist/room/P2P.d.ts +142 -9
- package/dist/room/PrResolves.d.ts +9 -0
- package/dist/room/RoomBase.d.ts +8 -0
- package/dist/room/RoomCalls.d.ts +27 -1
- package/dist/room/RoomMedias.d.ts +1 -1
- package/dist/room/RoomPeer.d.ts +5 -9
- package/dist/room/RoomUsers.d.ts +6 -1
- package/dist/types.d.ts +6 -0
- package/package.json +3 -2
|
@@ -18,9 +18,20 @@ export interface CallsWebSocketOptions {
|
|
|
18
18
|
export declare class CallsWebSocket {
|
|
19
19
|
#private;
|
|
20
20
|
prws: PrWebSocket;
|
|
21
|
-
|
|
21
|
+
activeTimeStamp: number;
|
|
22
22
|
constructor(_options?: CallsWebSocketOptions);
|
|
23
|
+
/**
|
|
24
|
+
* fetchUrl
|
|
25
|
+
*/
|
|
26
|
+
getUrl: (env?: "local" | "dev" | "prod") => Promise<void>;
|
|
27
|
+
/**
|
|
28
|
+
* afreshSend
|
|
29
|
+
*/
|
|
30
|
+
afreshSends: () => void;
|
|
23
31
|
clearEvents: (sns?: string[]) => void;
|
|
32
|
+
/**
|
|
33
|
+
* checkActivity
|
|
34
|
+
*/
|
|
24
35
|
/**
|
|
25
36
|
* 连接
|
|
26
37
|
* @returns
|
|
@@ -34,7 +45,7 @@ export declare class CallsWebSocket {
|
|
|
34
45
|
* 发送消息
|
|
35
46
|
* @param message Message
|
|
36
47
|
*/
|
|
37
|
-
sendMessage: <T = any>(_message: Message,
|
|
48
|
+
sendMessage: <T = any>(_message: Message, onback?: boolean) => Promise<SendMessageRevolve<T>>;
|
|
38
49
|
/**
|
|
39
50
|
* 触发广播事件
|
|
40
51
|
* @param event 事件名称
|
package/dist/room/P2P.d.ts
CHANGED
|
@@ -1,20 +1,153 @@
|
|
|
1
|
+
import { K_mediaType } from '../enums/mediaType';
|
|
2
|
+
import { PrResolves } from './PrResolves';
|
|
3
|
+
import { UserTrack } from '../types';
|
|
1
4
|
export declare class P2P {
|
|
2
|
-
|
|
3
|
-
|
|
5
|
+
#private;
|
|
6
|
+
prResolves: PrResolves;
|
|
7
|
+
phoneyStreams: Map<K_mediaType, MediaStream>;
|
|
8
|
+
recv_peer_ins: RTCPeerConnection;
|
|
9
|
+
recv_icecandidates: RTCIceCandidate[];
|
|
10
|
+
recv_candidate_collected: boolean;
|
|
11
|
+
recv_transceiverMap: Map<"microphoneCamera_audio" | "microphoneCamera_video" | "screenSharing_video" | "screenSharing_audio", RTCRtpTransceiver>;
|
|
12
|
+
recvPeerNetwork: {
|
|
13
|
+
inboundBytes: number;
|
|
14
|
+
outboundBytes: number;
|
|
15
|
+
lostRate: string;
|
|
16
|
+
roundTripTime: string;
|
|
17
|
+
jitter: string;
|
|
18
|
+
};
|
|
19
|
+
send_peer_ins: RTCPeerConnection;
|
|
20
|
+
send_icecandidates: RTCIceCandidate[];
|
|
21
|
+
send_candidate_collected: boolean;
|
|
22
|
+
send_transceiverMap: Map<"microphoneCamera_audio" | "microphoneCamera_video" | "screenSharing_video" | "screenSharing_audio", RTCRtpTransceiver>;
|
|
23
|
+
sendPeerNetwork: {
|
|
24
|
+
inboundBytes: number;
|
|
25
|
+
outboundBytes: number;
|
|
26
|
+
lostRate: string;
|
|
27
|
+
roundTripTime: string;
|
|
28
|
+
jitter: string;
|
|
29
|
+
};
|
|
30
|
+
tracks: MediaStreamTrack[];
|
|
31
|
+
reports: any[];
|
|
32
|
+
getPeerStatsTimer: number;
|
|
33
|
+
constructor(phoneyStreams: Map<K_mediaType, MediaStream>);
|
|
34
|
+
getPhoneyStreams: (mediaType: K_mediaType) => MediaStream;
|
|
4
35
|
/**
|
|
5
|
-
*
|
|
36
|
+
* sendIceConnected
|
|
6
37
|
*/
|
|
7
|
-
|
|
38
|
+
sendIceConnected: () => Promise<unknown>;
|
|
8
39
|
/**
|
|
9
|
-
*
|
|
40
|
+
* recvIceConnected
|
|
10
41
|
*/
|
|
11
|
-
|
|
42
|
+
recvIceConnected: () => Promise<unknown>;
|
|
43
|
+
/**
|
|
44
|
+
* sendCandidateCollected
|
|
45
|
+
*/
|
|
46
|
+
sendCandidateCollected: () => Promise<unknown>;
|
|
47
|
+
/**
|
|
48
|
+
* recvCandidateCollected
|
|
49
|
+
*/
|
|
50
|
+
recvCandidateCollected: () => Promise<unknown>;
|
|
51
|
+
/**
|
|
52
|
+
* getSendIcecandidates
|
|
53
|
+
*/
|
|
54
|
+
getSendIcecandidates: () => Promise<RTCIceCandidate[]>;
|
|
55
|
+
/**
|
|
56
|
+
* getRecvIcecandidates
|
|
57
|
+
*/
|
|
58
|
+
getRecvIcecandidates: () => Promise<RTCIceCandidate[]>;
|
|
59
|
+
/**
|
|
60
|
+
* setOffered
|
|
61
|
+
*/
|
|
62
|
+
setOffered: () => Promise<unknown>;
|
|
63
|
+
/**
|
|
64
|
+
* initSender
|
|
65
|
+
*/
|
|
66
|
+
initSenderPc: () => Promise<void>;
|
|
67
|
+
/**
|
|
68
|
+
* clearSenderPc
|
|
69
|
+
*/
|
|
70
|
+
clearSenderPc: () => Promise<void>;
|
|
71
|
+
/**
|
|
72
|
+
* initRecvPc
|
|
73
|
+
*/
|
|
74
|
+
initRecvPc: () => Promise<void>;
|
|
75
|
+
/**
|
|
76
|
+
* clearSenderPc
|
|
77
|
+
*/
|
|
78
|
+
clearRecvPc: () => Promise<void>;
|
|
79
|
+
/**
|
|
80
|
+
* initSenders
|
|
81
|
+
*/
|
|
82
|
+
initSenders: (tracks?: {
|
|
83
|
+
mid: string;
|
|
84
|
+
type: number;
|
|
85
|
+
}[]) => Promise<void>;
|
|
86
|
+
/**
|
|
87
|
+
* addSenders
|
|
88
|
+
*/
|
|
89
|
+
addSenders: (mediaTypes?: K_mediaType[]) => Promise<("microphoneCamera_audio" | "microphoneCamera_video" | "screenSharing_video" | "screenSharing_audio")[]>;
|
|
90
|
+
/**
|
|
91
|
+
* addRecvs
|
|
92
|
+
*/
|
|
93
|
+
addRecvs: (mediaTypes?: K_mediaType[]) => Promise<("microphoneCamera_audio" | "microphoneCamera_video" | "screenSharing_video" | "screenSharing_audio")[]>;
|
|
94
|
+
/**
|
|
95
|
+
* getSenderTracks
|
|
96
|
+
*/
|
|
97
|
+
getSenderTracks: (mediaTypes?: K_mediaType[]) => Promise<UserTrack[]>;
|
|
98
|
+
/**
|
|
99
|
+
* getRecvTracks
|
|
100
|
+
*/
|
|
101
|
+
getRecvTracks: (mediaTypes?: K_mediaType[]) => Promise<{
|
|
102
|
+
type: number;
|
|
103
|
+
enabled: boolean;
|
|
104
|
+
trackName: string;
|
|
105
|
+
location: string;
|
|
106
|
+
mid: string | null;
|
|
107
|
+
key: string;
|
|
108
|
+
}[]>;
|
|
109
|
+
/**
|
|
110
|
+
* createOffer
|
|
111
|
+
*/
|
|
112
|
+
createOffer: () => Promise<RTCSessionDescriptionInit>;
|
|
113
|
+
/**
|
|
114
|
+
* setOffer
|
|
115
|
+
*/
|
|
116
|
+
setOffer: (offer: RTCSessionDescriptionInit) => Promise<void>;
|
|
117
|
+
/**
|
|
118
|
+
* createAnswer
|
|
119
|
+
*/
|
|
120
|
+
createAnswer: () => Promise<RTCSessionDescriptionInit>;
|
|
121
|
+
/**
|
|
122
|
+
* addCandidates
|
|
123
|
+
*/
|
|
124
|
+
addCandidates: (remote_candidates: RTCIceCandidate[]) => Promise<void>;
|
|
12
125
|
/**
|
|
13
126
|
* setAnswer
|
|
14
127
|
*/
|
|
15
|
-
setAnswer: (answer: RTCSessionDescriptionInit, answer_candidates: RTCIceCandidateInit[]) => Promise<
|
|
128
|
+
setAnswer: (answer: RTCSessionDescriptionInit, answer_candidates: RTCIceCandidateInit[]) => Promise<void>;
|
|
129
|
+
/**
|
|
130
|
+
* getTrack
|
|
131
|
+
*/
|
|
132
|
+
getTrack: (mediaType: K_mediaType) => MediaStreamTrack | undefined;
|
|
133
|
+
/**
|
|
134
|
+
* getSendPeerNetwork
|
|
135
|
+
*/
|
|
136
|
+
getSendPeerNetwork: () => {
|
|
137
|
+
inboundBytes: number;
|
|
138
|
+
outboundBytes: number;
|
|
139
|
+
lostRate: string;
|
|
140
|
+
roundTripTime: string;
|
|
141
|
+
jitter: string;
|
|
142
|
+
};
|
|
16
143
|
/**
|
|
17
|
-
*
|
|
144
|
+
* getRecvPeerNetwork
|
|
18
145
|
*/
|
|
19
|
-
|
|
146
|
+
getRecvPeerNetwork: () => {
|
|
147
|
+
inboundBytes: number;
|
|
148
|
+
outboundBytes: number;
|
|
149
|
+
lostRate: string;
|
|
150
|
+
roundTripTime: string;
|
|
151
|
+
jitter: string;
|
|
152
|
+
};
|
|
20
153
|
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
type Resolve = Map<string, Function>;
|
|
2
|
+
export declare class PrResolves {
|
|
3
|
+
resolvesMap: Map<string, Resolve>;
|
|
4
|
+
index: number;
|
|
5
|
+
constructor();
|
|
6
|
+
add: (eventKey: string, checkFun?: Function) => Promise<unknown>;
|
|
7
|
+
emit: (eventKey: string) => Promise<void>;
|
|
8
|
+
}
|
|
9
|
+
export {};
|
package/dist/room/RoomBase.d.ts
CHANGED
|
@@ -6,11 +6,14 @@ import { NetworkQualityTester } from './NetworkQualityTester';
|
|
|
6
6
|
import { StreamRecorder } from './StreamRecorder';
|
|
7
7
|
import { PrAsyncQueue } from 'pr-async-queue';
|
|
8
8
|
import { P2P } from './P2P';
|
|
9
|
+
import { K_iceState } from '../enums/iceState';
|
|
10
|
+
import { PrResolves } from './PrResolves';
|
|
9
11
|
type Options = QuickOptions & RoomOptions & CallsWebSocketOptions & {
|
|
10
12
|
earlyId?: string;
|
|
11
13
|
};
|
|
12
14
|
export declare class RoomBase {
|
|
13
15
|
options: Options;
|
|
16
|
+
prResolves: PrResolves;
|
|
14
17
|
sdk_service_version: string;
|
|
15
18
|
sdk_session: string;
|
|
16
19
|
prohibitNotify: boolean;
|
|
@@ -18,6 +21,7 @@ export declare class RoomBase {
|
|
|
18
21
|
isInRoom: boolean;
|
|
19
22
|
asyncQueue: PrAsyncQueue;
|
|
20
23
|
roomState: K_roomState;
|
|
24
|
+
iceState: K_iceState;
|
|
21
25
|
createAt: number;
|
|
22
26
|
cwsIns: CallsWebSocket;
|
|
23
27
|
peerIns: RTCPeerConnection;
|
|
@@ -67,6 +71,10 @@ export declare class RoomBase {
|
|
|
67
71
|
* setRoomState
|
|
68
72
|
*/
|
|
69
73
|
setRoomState: (state: K_roomState) => void;
|
|
74
|
+
/**
|
|
75
|
+
* setIceState
|
|
76
|
+
*/
|
|
77
|
+
setIceState: (state: K_iceState) => void;
|
|
70
78
|
/**
|
|
71
79
|
* setOptions
|
|
72
80
|
*/
|
package/dist/room/RoomCalls.d.ts
CHANGED
|
@@ -18,7 +18,7 @@ export declare class RoomCalls extends RoomPeer {
|
|
|
18
18
|
* @param mediaDeviceKind "audioinput" | "audiooutput" | "videoinput"
|
|
19
19
|
* @param deviceId string
|
|
20
20
|
*/
|
|
21
|
-
setMediaDeviceKind: (mediaDeviceKind: MediaDeviceKind, deviceId: string) => Promise<
|
|
21
|
+
setMediaDeviceKind: (mediaDeviceKind: MediaDeviceKind, deviceId: string) => Promise<unknown>;
|
|
22
22
|
/**
|
|
23
23
|
* changeScreenSharing
|
|
24
24
|
* @param mediaDeviceKind "audioinput" | "audiooutput" | "videoinput"
|
|
@@ -126,4 +126,30 @@ export declare class RoomCalls extends RoomPeer {
|
|
|
126
126
|
* setSession
|
|
127
127
|
*/
|
|
128
128
|
setSession: () => void;
|
|
129
|
+
/**
|
|
130
|
+
* wsConnected
|
|
131
|
+
*/
|
|
132
|
+
cwsConnected: () => Promise<unknown>;
|
|
133
|
+
p2p: {
|
|
134
|
+
/**
|
|
135
|
+
* open
|
|
136
|
+
*/
|
|
137
|
+
open: (remoteUserId: string, mediaTypes?: K_mediaType[]) => Promise<unknown>;
|
|
138
|
+
/**
|
|
139
|
+
* replaceSenderStreams
|
|
140
|
+
*/
|
|
141
|
+
replaceSenderStreams: (remoteUserIds: string[], mediaTypes: K_mediaType[] | undefined, isReal: Boolean) => Promise<void>;
|
|
142
|
+
/**
|
|
143
|
+
* reportNetwork
|
|
144
|
+
*/
|
|
145
|
+
reportNetwork: () => Promise<unknown>;
|
|
146
|
+
/**
|
|
147
|
+
* reportP2PConnect
|
|
148
|
+
*/
|
|
149
|
+
reportP2PConnect: (remoteUserId: string, sendUserId: string, code: 0 | 1 | 2 | 3, reason?: string, pushUserIds?: string[], connectedTime?: number) => Promise<import('..').SendMessageRevolve<any>>;
|
|
150
|
+
/**
|
|
151
|
+
* close
|
|
152
|
+
*/
|
|
153
|
+
close: (userId: string, mediaTypes?: K_mediaType[]) => Promise<void>;
|
|
154
|
+
};
|
|
129
155
|
}
|
|
@@ -27,7 +27,7 @@ export declare class RoomMedias extends RoomBase {
|
|
|
27
27
|
/**
|
|
28
28
|
* initUserMediaStreamContext
|
|
29
29
|
*/
|
|
30
|
-
initUserMediaStreamContext: (userId: string, mediaType: K_mediaType, stream: MediaStream) => Promise<void>;
|
|
30
|
+
initUserMediaStreamContext: (userId: string, mediaType: K_mediaType, stream: MediaStream, clear: boolean) => Promise<void>;
|
|
31
31
|
/**
|
|
32
32
|
* getUserMediaStreamContext
|
|
33
33
|
*/
|
package/dist/room/RoomPeer.d.ts
CHANGED
|
@@ -6,7 +6,6 @@ export declare class RoomPeer extends RoomUsers {
|
|
|
6
6
|
#private;
|
|
7
7
|
getPeerStatsTimer: number;
|
|
8
8
|
reports: any[];
|
|
9
|
-
candidates: any[];
|
|
10
9
|
peerNetwork: {
|
|
11
10
|
inboundBytes: number;
|
|
12
11
|
outboundBytes: number;
|
|
@@ -34,14 +33,7 @@ export declare class RoomPeer extends RoomUsers {
|
|
|
34
33
|
/**
|
|
35
34
|
* getSenderTracks
|
|
36
35
|
*/
|
|
37
|
-
getSenderTracks: (mediaTypes?: K_mediaType[]) => Promise<
|
|
38
|
-
type: number;
|
|
39
|
-
enabled: boolean;
|
|
40
|
-
trackName: string;
|
|
41
|
-
location: string;
|
|
42
|
-
mid: string | null;
|
|
43
|
-
key: string;
|
|
44
|
-
}[]>;
|
|
36
|
+
getSenderTracks: (mediaTypes?: K_mediaType[]) => Promise<UserTrack[]>;
|
|
45
37
|
/**
|
|
46
38
|
* addSenders
|
|
47
39
|
*/
|
|
@@ -50,6 +42,10 @@ export declare class RoomPeer extends RoomUsers {
|
|
|
50
42
|
* removeSenders
|
|
51
43
|
*/
|
|
52
44
|
removeSenders: (mediaTypes?: K_mediaType[]) => Promise<void>;
|
|
45
|
+
/**
|
|
46
|
+
* stopSenders
|
|
47
|
+
*/
|
|
48
|
+
stopSenders: (mediaTypes?: K_mediaType[]) => void;
|
|
53
49
|
/**
|
|
54
50
|
* onSubscribeUserTracks
|
|
55
51
|
*/
|
package/dist/room/RoomUsers.d.ts
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { K_mediaType } from '../enums/mediaType';
|
|
2
2
|
import { QuickOptions, RoomUser, UserTrack } from '../types';
|
|
3
3
|
import { RoomMedias } from './RoomMedias';
|
|
4
|
+
import { P2P } from './P2P';
|
|
4
5
|
export declare class RoomUsers extends RoomMedias {
|
|
5
6
|
constructor(options: QuickOptions);
|
|
6
|
-
|
|
7
|
+
getP2PIns: (userId: string) => Promise<P2P | undefined>;
|
|
7
8
|
/**
|
|
8
9
|
* getMaxVolumeUser
|
|
9
10
|
*/
|
|
@@ -147,6 +148,10 @@ export declare class RoomUsers extends RoomMedias {
|
|
|
147
148
|
* updateUserPermissions
|
|
148
149
|
*/
|
|
149
150
|
updateUserPermissions: (userId: string, permissions: number | undefined) => Promise<void>;
|
|
151
|
+
/**
|
|
152
|
+
* updateUserUseP2P
|
|
153
|
+
*/
|
|
154
|
+
updateUserUseP2P: (userId: string, useP2P: boolean) => Promise<void>;
|
|
150
155
|
/**
|
|
151
156
|
* updateUserBase
|
|
152
157
|
*/
|
package/dist/types.d.ts
CHANGED
|
@@ -104,6 +104,7 @@ export interface UserTrack {
|
|
|
104
104
|
* 唯一key 每次轨道变化均会改变
|
|
105
105
|
*/
|
|
106
106
|
key: string;
|
|
107
|
+
origin: 'sfu' | 'p2p';
|
|
107
108
|
}
|
|
108
109
|
/**
|
|
109
110
|
* 数据通道
|
|
@@ -126,6 +127,7 @@ export type Event = {
|
|
|
126
127
|
* 当前事件的发送的消息
|
|
127
128
|
*/
|
|
128
129
|
message: Message;
|
|
130
|
+
send: Function;
|
|
129
131
|
/**
|
|
130
132
|
* 当前事件的成功回调
|
|
131
133
|
* @param msg 事件完整消息
|
|
@@ -248,6 +250,10 @@ export interface RoomUser {
|
|
|
248
250
|
updateStreams: {
|
|
249
251
|
[key in K_mediaType]: boolean;
|
|
250
252
|
};
|
|
253
|
+
/**
|
|
254
|
+
* 是否使用P2P
|
|
255
|
+
*/
|
|
256
|
+
useP2P: boolean;
|
|
251
257
|
/**
|
|
252
258
|
* 数据更新时间
|
|
253
259
|
*/
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "quickvo-sdk-js",
|
|
3
3
|
"description": "提供快捷接入单对单、单对多、群体会议、舞台会议等音视频功能。",
|
|
4
|
-
"version": "1.
|
|
4
|
+
"version": "1.4.0",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"files": [
|
|
7
7
|
"dist"
|
|
@@ -22,7 +22,8 @@
|
|
|
22
22
|
"pako": "^2.1.0",
|
|
23
23
|
"pr-async-queue": "^0.1.3",
|
|
24
24
|
"pr-audio-stream": "^0.1.1",
|
|
25
|
-
"pr-
|
|
25
|
+
"pr-nat-type": "^0.1.2",
|
|
26
|
+
"pr-tools": "^1.6.0",
|
|
26
27
|
"pr-ws": "^0.3.2",
|
|
27
28
|
"sdp-transform": "^2.15.0",
|
|
28
29
|
"webm-duration-fix": "^1.0.4"
|