quickvo-sdk-js 1.5.12 → 1.5.14
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/index.js +21198 -20685
- package/dist/index.umd.cjs +3 -3
- package/dist/{room/PeerAnalyzeStats.d.ts → pr-analysis-for-webrtc/PrPeerAnalysis.d.ts} +21 -16
- package/dist/pr-analysis-for-webrtc/PrPeerAnalysisItem.d.ts +55 -0
- package/dist/room/P2P.d.ts +8 -3
- package/dist/room/RoomBase.d.ts +2 -0
- package/dist/room/RoomCalls.d.ts +0 -8
- package/dist/room/RoomMedias.d.ts +1 -0
- package/dist/room/RoomPeer.d.ts +8 -10
- package/dist/room/RoomUsers.d.ts +2 -1
- package/package.json +3 -2
|
@@ -1,27 +1,29 @@
|
|
|
1
|
-
|
|
1
|
+
import { PrPeerAnalysisItem } from './PrPeerAnalysisItem';
|
|
2
|
+
export declare class PrPeerAnalysis {
|
|
2
3
|
pc: RTCPeerConnection | undefined;
|
|
4
|
+
analysisMap: Map<string, PrPeerAnalysisItem>;
|
|
5
|
+
reports: any[];
|
|
6
|
+
roundTripTimes: number[];
|
|
7
|
+
jitters: number[];
|
|
3
8
|
network: {
|
|
4
9
|
inboundBytes: number;
|
|
5
10
|
outboundBytes: number;
|
|
6
|
-
lostRate:
|
|
7
|
-
roundTripTime:
|
|
8
|
-
jitter:
|
|
11
|
+
lostRate: number;
|
|
12
|
+
roundTripTime: number;
|
|
13
|
+
jitter: number;
|
|
9
14
|
quality: number;
|
|
10
15
|
averageQuality: number;
|
|
11
16
|
velocityPull: number;
|
|
12
17
|
velocityPush: number;
|
|
13
18
|
};
|
|
14
|
-
reports: any[];
|
|
15
|
-
averageQualitys: number[];
|
|
16
|
-
timer: number;
|
|
17
19
|
constructor();
|
|
18
20
|
onNetwork: (_e: typeof this.network) => void;
|
|
19
21
|
getNetwork: () => {
|
|
20
22
|
inboundBytes: number;
|
|
21
23
|
outboundBytes: number;
|
|
22
|
-
lostRate:
|
|
23
|
-
roundTripTime:
|
|
24
|
-
jitter:
|
|
24
|
+
lostRate: number;
|
|
25
|
+
roundTripTime: number;
|
|
26
|
+
jitter: number;
|
|
25
27
|
quality: number;
|
|
26
28
|
averageQuality: number;
|
|
27
29
|
velocityPull: number;
|
|
@@ -29,16 +31,19 @@ export declare class PeerAnalyzeStats {
|
|
|
29
31
|
};
|
|
30
32
|
getAverageQuality: () => number;
|
|
31
33
|
/**
|
|
32
|
-
*
|
|
34
|
+
* 初始化
|
|
35
|
+
*/
|
|
36
|
+
init: (pc: RTCPeerConnection) => void;
|
|
37
|
+
/**
|
|
38
|
+
* 定时获取报告
|
|
33
39
|
*/
|
|
34
|
-
|
|
35
|
-
analyzeStats: () => Promise<void>;
|
|
40
|
+
getReportsInterval: () => Promise<void>;
|
|
36
41
|
/**
|
|
37
|
-
*
|
|
42
|
+
* 获取报告
|
|
38
43
|
*/
|
|
39
44
|
getReports: (mids?: string[]) => Promise<any[]>;
|
|
40
45
|
/**
|
|
41
|
-
*
|
|
46
|
+
* 清理
|
|
42
47
|
*/
|
|
43
|
-
|
|
48
|
+
clear: () => void;
|
|
44
49
|
}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
interface ReportInfo {
|
|
2
|
+
bytesSent: number;
|
|
3
|
+
bytesReceived: number;
|
|
4
|
+
packetsSent: number;
|
|
5
|
+
packetsLost: number;
|
|
6
|
+
}
|
|
7
|
+
export declare class PrPeerAnalysisItem {
|
|
8
|
+
lastReports: never[];
|
|
9
|
+
reportInfos: ReportInfo[];
|
|
10
|
+
roundTripTime: number;
|
|
11
|
+
jitter: number;
|
|
12
|
+
network: {
|
|
13
|
+
inboundBytes: number;
|
|
14
|
+
outboundBytes: number;
|
|
15
|
+
lostRate: number;
|
|
16
|
+
roundTripTime: number;
|
|
17
|
+
jitter: number;
|
|
18
|
+
quality: number;
|
|
19
|
+
averageQuality: number;
|
|
20
|
+
velocityPull: number;
|
|
21
|
+
velocityPush: number;
|
|
22
|
+
};
|
|
23
|
+
packetsSentBefore: number;
|
|
24
|
+
packetsLostBefore: number;
|
|
25
|
+
averageQualitys: number[];
|
|
26
|
+
constructor();
|
|
27
|
+
/**
|
|
28
|
+
* 添加信息
|
|
29
|
+
* @param report
|
|
30
|
+
*/
|
|
31
|
+
addInfo: (info: ReportInfo) => void;
|
|
32
|
+
setRoundTripTimeAndJitter: ({ roundTripTime, jitter }: {
|
|
33
|
+
roundTripTime: number;
|
|
34
|
+
jitter: number;
|
|
35
|
+
}) => void;
|
|
36
|
+
/**
|
|
37
|
+
* 汇总报告
|
|
38
|
+
*/
|
|
39
|
+
gather: () => {
|
|
40
|
+
inboundBytes: number;
|
|
41
|
+
outboundBytes: number;
|
|
42
|
+
lostRate: number;
|
|
43
|
+
roundTripTime: number;
|
|
44
|
+
jitter: number;
|
|
45
|
+
quality: number;
|
|
46
|
+
averageQuality: number;
|
|
47
|
+
velocityPull: number;
|
|
48
|
+
velocityPush: number;
|
|
49
|
+
};
|
|
50
|
+
/**
|
|
51
|
+
* 清理
|
|
52
|
+
*/
|
|
53
|
+
clear: () => void;
|
|
54
|
+
}
|
|
55
|
+
export {};
|
package/dist/room/P2P.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { K_mediaType } from '../enums/mediaType';
|
|
2
2
|
import { PrResolves } from './PrResolves';
|
|
3
3
|
import { MediaTypeTransceiver, Message, UserTrack } from '../types';
|
|
4
|
-
import {
|
|
4
|
+
import { PrPeerAnalysis } from '../pr-analysis-for-webrtc/PrPeerAnalysis';
|
|
5
5
|
export declare class P2P {
|
|
6
6
|
#private;
|
|
7
7
|
pr_resolves: PrResolves;
|
|
@@ -9,18 +9,19 @@ export declare class P2P {
|
|
|
9
9
|
userId: string;
|
|
10
10
|
remoteUserId: string;
|
|
11
11
|
phoney_streams_map: Map<K_mediaType, MediaStream>;
|
|
12
|
+
local_streams_map: Map<K_mediaType, MediaStream>;
|
|
12
13
|
peer_ins?: RTCPeerConnection;
|
|
13
14
|
timer?: NodeJS.Timeout;
|
|
14
15
|
local_channel?: RTCDataChannel;
|
|
15
16
|
remote_channel?: RTCDataChannel;
|
|
16
17
|
icecandidates: RTCIceCandidate[];
|
|
17
18
|
candidate_collected: boolean;
|
|
18
|
-
analyze_stats_ins:
|
|
19
|
+
analyze_stats_ins: PrPeerAnalysis;
|
|
19
20
|
send_transceiver_map: Map<"microphoneCamera_audio" | "microphoneCamera_video" | "screenSharing_video" | "screenSharing_audio", RTCRtpTransceiver>;
|
|
20
21
|
recv_transceiver_map: Map<"microphoneCamera_audio" | "microphoneCamera_video" | "screenSharing_video" | "screenSharing_audio", RTCRtpTransceiver>;
|
|
21
22
|
tracks: MediaStreamTrack[];
|
|
22
23
|
onClose: () => void;
|
|
23
|
-
constructor(roomId: string, userId: string, remoteUserId: string, phoney_streams: Map<K_mediaType, MediaStream>);
|
|
24
|
+
constructor(roomId: string, userId: string, remoteUserId: string, phoney_streams: Map<K_mediaType, MediaStream>, local_streams_map: Map<K_mediaType, MediaStream>);
|
|
24
25
|
remoteChannelSend: (message: Message) => void;
|
|
25
26
|
init: () => Promise<void>;
|
|
26
27
|
/**
|
|
@@ -33,6 +34,10 @@ export declare class P2P {
|
|
|
33
34
|
initRecvs: (mediaTypes?: K_mediaType[], direction?: RTCRtpTransceiverDirection) => Promise<("microphoneCamera_audio" | "microphoneCamera_video" | "screenSharing_video" | "screenSharing_audio")[]>;
|
|
34
35
|
hasRecv: (mediaType: K_mediaType) => Promise<boolean>;
|
|
35
36
|
checkActive: () => boolean;
|
|
37
|
+
/**
|
|
38
|
+
* 替换流
|
|
39
|
+
*/
|
|
40
|
+
replaceSenderStreams: (mediaTypes: K_mediaType[] | undefined, isReal: Boolean) => Promise<void>;
|
|
36
41
|
pauseSends: (mediaTypes: K_mediaType[] | undefined, pause: boolean) => Promise<("microphoneCamera_audio" | "microphoneCamera_video" | "screenSharing_video" | "screenSharing_audio")[]>;
|
|
37
42
|
pauseRecvs: (mediaTypes: K_mediaType[] | undefined, pause: boolean) => Promise<("microphoneCamera_audio" | "microphoneCamera_video" | "screenSharing_video" | "screenSharing_audio")[]>;
|
|
38
43
|
/**
|
package/dist/room/RoomBase.d.ts
CHANGED
|
@@ -7,6 +7,7 @@ import { PrAsyncQueue } from 'pr-async-queue';
|
|
|
7
7
|
import { P2P } from './P2P';
|
|
8
8
|
import { K_iceState } from '../enums/iceState';
|
|
9
9
|
import { PrResolves } from './PrResolves';
|
|
10
|
+
import { Queue } from 'pr-interval-queue';
|
|
10
11
|
type Options = QuickOptions & RoomOptions & CallsWebSocketOptions & {
|
|
11
12
|
earlyId?: string;
|
|
12
13
|
};
|
|
@@ -19,6 +20,7 @@ export declare class RoomBase {
|
|
|
19
20
|
historical_publish_mediaTypes: K_mediaType[];
|
|
20
21
|
historical_subscribe_mediaTypes: UserMediaTypes[];
|
|
21
22
|
prResolves: PrResolves;
|
|
23
|
+
intervalQueue: Queue;
|
|
22
24
|
sdk_service_version: string;
|
|
23
25
|
sdk_session: string;
|
|
24
26
|
isEarly: boolean;
|
package/dist/room/RoomCalls.d.ts
CHANGED
|
@@ -156,10 +156,6 @@ export declare class RoomCalls extends RoomPeer {
|
|
|
156
156
|
* open
|
|
157
157
|
*/
|
|
158
158
|
open: (remoteUserId: string, mediaTypes: K_mediaType[]) => Promise<unknown>;
|
|
159
|
-
/**
|
|
160
|
-
* replaceSenderStreams
|
|
161
|
-
*/
|
|
162
|
-
replaceSenderStreams: (remoteUserIds: string[], mediaTypes: K_mediaType[] | undefined, isReal: Boolean) => Promise<void>;
|
|
163
159
|
pauseSends: (remoteUserIds: string[], mediaTypes: K_mediaType[] | undefined, pause: boolean) => Promise<void>;
|
|
164
160
|
pauseRecvs: (remoteUserIds: string[], mediaTypes: K_mediaType[] | undefined, pause: boolean) => Promise<void>;
|
|
165
161
|
/**
|
|
@@ -176,9 +172,5 @@ export declare class RoomCalls extends RoomPeer {
|
|
|
176
172
|
desc?: string;
|
|
177
173
|
connectedTime?: string;
|
|
178
174
|
}) => Promise<import('..').SendMessageRevolve<any>>;
|
|
179
|
-
/**
|
|
180
|
-
* close
|
|
181
|
-
*/
|
|
182
|
-
close: (userIds?: string[]) => Promise<void>;
|
|
183
175
|
};
|
|
184
176
|
}
|
|
@@ -5,6 +5,7 @@ import { RoomBase } from './RoomBase';
|
|
|
5
5
|
import { PrAudioStream } from 'pr-audio-stream';
|
|
6
6
|
export declare class RoomMedias extends RoomBase {
|
|
7
7
|
#private;
|
|
8
|
+
localStreamsMap: Map<K_mediaType, MediaStream>;
|
|
8
9
|
localStreamsActionMap: Map<K_mediaType, Boolean>;
|
|
9
10
|
audioContext: AudioContext;
|
|
10
11
|
constructor(options: QuickOptions);
|
package/dist/room/RoomPeer.d.ts
CHANGED
|
@@ -2,10 +2,10 @@ import { K_callStrategy } from '../enums/callStrategy';
|
|
|
2
2
|
import { K_mediaType } from '../enums/mediaType';
|
|
3
3
|
import { QuickOptions, UserTrack } from '../types';
|
|
4
4
|
import { RoomUsers } from './RoomUsers';
|
|
5
|
-
import {
|
|
5
|
+
import { PrPeerAnalysis } from '../pr-analysis-for-webrtc/PrPeerAnalysis';
|
|
6
6
|
export declare class RoomPeer extends RoomUsers {
|
|
7
7
|
#private;
|
|
8
|
-
peerAnalyzeStatsIns:
|
|
8
|
+
peerAnalyzeStatsIns: PrPeerAnalysis;
|
|
9
9
|
simulcast: 'f' | 'h' | 'q';
|
|
10
10
|
offset_inboundBytes: number;
|
|
11
11
|
offset_outboundBytes: number;
|
|
@@ -79,9 +79,9 @@ export declare class RoomPeer extends RoomUsers {
|
|
|
79
79
|
getPeerNetwork: () => {
|
|
80
80
|
inboundBytes: number;
|
|
81
81
|
outboundBytes: number;
|
|
82
|
-
lostRate:
|
|
83
|
-
roundTripTime:
|
|
84
|
-
jitter:
|
|
82
|
+
lostRate: number;
|
|
83
|
+
roundTripTime: number;
|
|
84
|
+
jitter: number;
|
|
85
85
|
quality: number;
|
|
86
86
|
averageQuality: number;
|
|
87
87
|
velocityPull: number;
|
|
@@ -93,12 +93,12 @@ export declare class RoomPeer extends RoomUsers {
|
|
|
93
93
|
getRoomNetwork: () => {
|
|
94
94
|
sfu: any;
|
|
95
95
|
p2p: {
|
|
96
|
-
averageQuality: number;
|
|
97
96
|
inboundBytes: number;
|
|
98
|
-
jitter: number;
|
|
99
|
-
lostRate: number;
|
|
100
97
|
outboundBytes: number;
|
|
98
|
+
averageQuality: number;
|
|
101
99
|
quality: number;
|
|
100
|
+
jitter: number;
|
|
101
|
+
lostRate: number;
|
|
102
102
|
roundTripTime: number;
|
|
103
103
|
velocityPull: number;
|
|
104
104
|
velocityPush: number;
|
|
@@ -108,6 +108,4 @@ export declare class RoomPeer extends RoomUsers {
|
|
|
108
108
|
* getReportsByMid
|
|
109
109
|
*/
|
|
110
110
|
getReportsByMid: (mids?: string[]) => Promise<any[]>;
|
|
111
|
-
startGetPeerStats: () => void;
|
|
112
|
-
stopGetPeerStats: () => void;
|
|
113
111
|
}
|
package/dist/room/RoomUsers.d.ts
CHANGED
|
@@ -84,6 +84,7 @@ export declare class RoomUsers extends RoomMedias {
|
|
|
84
84
|
* createUser
|
|
85
85
|
*/
|
|
86
86
|
createUser: (userId: string) => Promise<void>;
|
|
87
|
+
createP2PUser: (userId: string) => void;
|
|
87
88
|
/**
|
|
88
89
|
* getUser
|
|
89
90
|
*/
|
|
@@ -116,7 +117,7 @@ export declare class RoomUsers extends RoomMedias {
|
|
|
116
117
|
/**
|
|
117
118
|
* checkSubscribed
|
|
118
119
|
*/
|
|
119
|
-
checkSubscribed: (remoteUserId: string, mediaTypes: K_mediaType[]) => Promise<{
|
|
120
|
+
checkSubscribed: (remoteUserId: string, mediaTypes: K_mediaType[], origin?: "sfu" | "p2p" | "all") => Promise<{
|
|
120
121
|
subscribed_mediaTypes: ("microphoneCamera_audio" | "microphoneCamera_video" | "screenSharing_video" | "screenSharing_audio")[];
|
|
121
122
|
prohibited_mediaTypes: ("microphoneCamera_audio" | "microphoneCamera_video" | "screenSharing_video" | "screenSharing_audio")[];
|
|
122
123
|
}>;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "quickvo-sdk-js",
|
|
3
3
|
"description": "提供快捷接入单对单、单对多、群体会议、舞台会议等音视频功能。",
|
|
4
|
-
"version": "1.5.
|
|
4
|
+
"version": "1.5.14",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"files": [
|
|
7
7
|
"dist"
|
|
@@ -21,7 +21,8 @@
|
|
|
21
21
|
"dependencies": {
|
|
22
22
|
"pako": "^2.1.0",
|
|
23
23
|
"pr-async-queue": "^0.1.3",
|
|
24
|
-
"pr-audio-stream": "^0.
|
|
24
|
+
"pr-audio-stream": "^0.2.0",
|
|
25
|
+
"pr-interval-queue": "^1.1.4",
|
|
25
26
|
"pr-nat-type": "^0.1.2",
|
|
26
27
|
"pr-tools": "^1.6.4",
|
|
27
28
|
"pr-ws": "^0.3.3",
|