quickvo-sdk-js 0.2.2 → 0.2.3
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/notifyName.d.ts +5 -2
- package/dist/index.d.ts +0 -1
- package/dist/index.js +765 -699
- package/dist/index.umd.cjs +2 -2
- package/dist/room/Room.d.ts +0 -8
- package/dist/room/RoomBase.d.ts +38 -5
- package/dist/room/RoomCalls.d.ts +6 -6
- package/dist/room/RoomMedias.d.ts +97 -0
- package/dist/room/RoomPeer.d.ts +4 -1
- package/dist/room/RoomUsers.d.ts +7 -9
- package/dist/room/{mediaStreamsContext/AudioMediaStreamContext.d.ts → mediaStreams/AudioMediaContext.d.ts} +3 -2
- package/dist/room/{mediaStreamsContext/VideoMediaStreamContext.d.ts → mediaStreams/VideoMediaContext.d.ts} +2 -1
- package/dist/tools.d.ts +0 -17
- package/dist/types.d.ts +2 -2
- package/package.json +1 -1
- package/dist/PrAsyncQueue.d.ts +0 -33
- package/dist/room/MediaStreams.d.ts +0 -60
package/dist/room/Room.d.ts
CHANGED
|
@@ -1,12 +1,4 @@
|
|
|
1
1
|
import { RoomCalls } from './RoomCalls';
|
|
2
2
|
export declare class Room extends RoomCalls {
|
|
3
3
|
constructor();
|
|
4
|
-
/**
|
|
5
|
-
* 获取指定轨道的名称数组
|
|
6
|
-
* @param tracks 轨道
|
|
7
|
-
* @param types number[] = []
|
|
8
|
-
* @param keyName
|
|
9
|
-
* @returns string[]
|
|
10
|
-
*/
|
|
11
|
-
getTrackNamesFormTracks: (tracks: any[], types?: number[], keyName?: string) => string[];
|
|
12
4
|
}
|
package/dist/room/RoomBase.d.ts
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import { K_roomState } from '../enums/roomState';
|
|
2
|
-
import { QuickOptions, RoomOptions } from '../types';
|
|
2
|
+
import { QuickOptions, RoomOptions, RoomUser, UserTrack } from '../types';
|
|
3
3
|
import { CallsWebSocket, CallsWebSocketOptions } from './CallsWebSocket';
|
|
4
4
|
import { PrAsyncQueue } from 'pr-async-queue';
|
|
5
|
-
import * as tools from '../tools';
|
|
6
5
|
type Options = QuickOptions & RoomOptions & CallsWebSocketOptions;
|
|
7
6
|
export declare class RoomBase {
|
|
8
7
|
options: Options;
|
|
9
|
-
|
|
8
|
+
prohibitNotify: boolean;
|
|
10
9
|
asyncQueue: PrAsyncQueue;
|
|
11
10
|
state: K_roomState;
|
|
12
11
|
createAt: number;
|
|
13
12
|
cwsIns: CallsWebSocket;
|
|
14
|
-
|
|
13
|
+
peerIns: RTCPeerConnection;
|
|
14
|
+
userMap: Map<string, RoomUser>;
|
|
15
15
|
mediaDevicesErrInfo: {
|
|
16
16
|
microphoneCamera_audio: string;
|
|
17
17
|
microphoneCamera_video: string;
|
|
@@ -29,7 +29,7 @@ export declare class RoomBase {
|
|
|
29
29
|
url?: string;
|
|
30
30
|
debug?: boolean;
|
|
31
31
|
callStrategy?: import('../enums/callStrategy').K_callStrategy;
|
|
32
|
-
sdkToken
|
|
32
|
+
sdkToken?: string;
|
|
33
33
|
roomId: string;
|
|
34
34
|
userId: string;
|
|
35
35
|
callType: number;
|
|
@@ -57,5 +57,38 @@ export declare class RoomBase {
|
|
|
57
57
|
screenSharing_video: string;
|
|
58
58
|
screenSharing_audio: string;
|
|
59
59
|
}>;
|
|
60
|
+
/**
|
|
61
|
+
* 获取MediaKey
|
|
62
|
+
*/
|
|
63
|
+
getUserMediaKey: (userId: string, mediaType: string) => string;
|
|
64
|
+
/**
|
|
65
|
+
* 获取 CallAction map
|
|
66
|
+
*/
|
|
67
|
+
getCallActionMap: (callAction?: number) => {
|
|
68
|
+
microphoneCamera_audio: boolean;
|
|
69
|
+
microphoneCamera_video: boolean;
|
|
70
|
+
screenSharing_video: boolean;
|
|
71
|
+
screenSharing_audio: boolean;
|
|
72
|
+
};
|
|
73
|
+
/**
|
|
74
|
+
* 获取音量
|
|
75
|
+
*/
|
|
76
|
+
getAverageVolume: (analyser: AnalyserNode, dataArray: Uint8Array) => number;
|
|
77
|
+
/**
|
|
78
|
+
* 通过轨道计算当前用户的通话状态
|
|
79
|
+
*/
|
|
80
|
+
getCallAction: (tracks: UserTrack[]) => Promise<number>;
|
|
81
|
+
/**
|
|
82
|
+
* 获取指定轨道的名称数组
|
|
83
|
+
* @param tracks 轨道
|
|
84
|
+
* @param types number[] = []
|
|
85
|
+
* @param keyName
|
|
86
|
+
* @returns string[]
|
|
87
|
+
*/
|
|
88
|
+
getTrackNamesFormTracks: (tracks: any[], types?: number[], keyName?: string) => string[];
|
|
89
|
+
/**
|
|
90
|
+
* 处理为应用层数据
|
|
91
|
+
*/
|
|
92
|
+
usersFilter: (users: RoomUser[]) => RoomUser[];
|
|
60
93
|
}
|
|
61
94
|
export {};
|
package/dist/room/RoomCalls.d.ts
CHANGED
|
@@ -5,12 +5,6 @@ export declare class RoomCalls extends RoomPeer {
|
|
|
5
5
|
#private;
|
|
6
6
|
sdk_service_version: string;
|
|
7
7
|
constructor();
|
|
8
|
-
/**
|
|
9
|
-
* 添加广播事件
|
|
10
|
-
* @param notify Notify
|
|
11
|
-
* @returns sn
|
|
12
|
-
*/
|
|
13
|
-
addNotify: (notify: Notify) => string;
|
|
14
8
|
/**
|
|
15
9
|
* 设置本地流
|
|
16
10
|
* @param mediaType MediaType
|
|
@@ -19,6 +13,12 @@ export declare class RoomCalls extends RoomPeer {
|
|
|
19
13
|
* @returns Promise<Streams>
|
|
20
14
|
*/
|
|
21
15
|
setLocalStream: (mediaType: K_mediaType, active: boolean) => Promise<Streams>;
|
|
16
|
+
/**
|
|
17
|
+
* 添加广播事件
|
|
18
|
+
* @param notify Notify
|
|
19
|
+
* @returns sn
|
|
20
|
+
*/
|
|
21
|
+
addNotify: (notify: Notify) => string;
|
|
22
22
|
/**
|
|
23
23
|
* 加入房间
|
|
24
24
|
* @param roomOptions RoomOptions
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { K_mediaType } from '../enums/mediaType';
|
|
2
|
+
import { Streams } from '../types';
|
|
3
|
+
import { AudioMediaContext } from './mediaStreams/AudioMediaContext';
|
|
4
|
+
import { VideoMediaContext } from './mediaStreams/VideoMediaContext';
|
|
5
|
+
import { RoomBase } from './RoomBase';
|
|
6
|
+
export declare class RoomMedias extends RoomBase {
|
|
7
|
+
#private;
|
|
8
|
+
mediaDevices: MediaDeviceInfo[];
|
|
9
|
+
constructor();
|
|
10
|
+
/**
|
|
11
|
+
* 初始化用户媒体上下文
|
|
12
|
+
*/
|
|
13
|
+
initUserMediaStreamContext: (userId: string, mediaType: K_mediaType, stream: MediaStream) => Promise<void>;
|
|
14
|
+
/**
|
|
15
|
+
* 获取用户媒体流上下文
|
|
16
|
+
*/
|
|
17
|
+
getUserMediaStreamContext: (userId: string, mediaType: K_mediaType) => AudioMediaContext | VideoMediaContext | undefined;
|
|
18
|
+
/**
|
|
19
|
+
* 获取用户音频媒体流上下文
|
|
20
|
+
*/
|
|
21
|
+
getUserAudioMediaStreamContext: (userId: string, mediaType: "microphoneCamera_audio" | "screenSharing_audio") => AudioMediaContext;
|
|
22
|
+
/**
|
|
23
|
+
* 删除用户媒体流上下文
|
|
24
|
+
*/
|
|
25
|
+
removeUserMediaStreamContext: (userId: string, mediaType: K_mediaType) => void;
|
|
26
|
+
/**
|
|
27
|
+
* 获取某个用户的某个数据流
|
|
28
|
+
*/
|
|
29
|
+
getUserStream: (userId: string, mediaType: K_mediaType) => MediaStream;
|
|
30
|
+
/**
|
|
31
|
+
* 获取某个用户的某些数据流
|
|
32
|
+
*/
|
|
33
|
+
getUserStreams: (userId: string, mediaTypes?: K_mediaType[]) => Streams;
|
|
34
|
+
/**
|
|
35
|
+
* 删除某个用户的某些数据流
|
|
36
|
+
*/
|
|
37
|
+
removeUserStreams: (userId: string, mediaTypes?: K_mediaType[]) => Promise<void>;
|
|
38
|
+
/**
|
|
39
|
+
* 清除所有媒体流使用
|
|
40
|
+
*/
|
|
41
|
+
clearUserStreams: () => Promise<void>;
|
|
42
|
+
/**
|
|
43
|
+
* 设置轨道媒体参数
|
|
44
|
+
*/
|
|
45
|
+
setMediaTrackConstraints: (mediaType: K_mediaType, constraints: MediaTrackConstraints) => Promise<void>;
|
|
46
|
+
/**
|
|
47
|
+
* 改变本地流
|
|
48
|
+
* @param mediaType MediaType
|
|
49
|
+
* @param active 激活状态
|
|
50
|
+
* @example quickvo.setLocalStream('microphoneCamera_audio', false)
|
|
51
|
+
* @returns Promise<Streams>
|
|
52
|
+
*/
|
|
53
|
+
changeLocalStream: (mediaType: K_mediaType) => Promise<void>;
|
|
54
|
+
/**
|
|
55
|
+
* 获取正在使用的媒体设备ID
|
|
56
|
+
* @param mediaDeviceKind 设备类型 "audioinput" | "audiooutput" | "videoinput"
|
|
57
|
+
* @returns deviceId 设备ID
|
|
58
|
+
*/
|
|
59
|
+
getMediaDeviceKind: (mediaDeviceKind: MediaDeviceKind) => string | undefined;
|
|
60
|
+
/**
|
|
61
|
+
* 替换发射器媒体流
|
|
62
|
+
*/
|
|
63
|
+
replaceSenderStream: (mediaType: K_mediaType, stream: MediaStream) => Promise<void>;
|
|
64
|
+
/**
|
|
65
|
+
* 设置正在使用的媒体设备
|
|
66
|
+
* @param mediaDeviceKind 设备类型 "audioinput" | "audiooutput" | "videoinput"
|
|
67
|
+
* @param deviceId 设备ID
|
|
68
|
+
*/
|
|
69
|
+
setMediaDeviceKind: (mediaDeviceKind: MediaDeviceKind, deviceId: string) => Promise<void>;
|
|
70
|
+
/**
|
|
71
|
+
* 设置音频输出设备
|
|
72
|
+
* @param deviceId 设备ID
|
|
73
|
+
* @returns
|
|
74
|
+
*/
|
|
75
|
+
setAudioOutputDevice: (deviceId: string) => Promise<void>;
|
|
76
|
+
/**
|
|
77
|
+
* 获取可用设备
|
|
78
|
+
* @param mediaDeviceKind 设备类型 "audioinput" | "audiooutput" | "videoinput"
|
|
79
|
+
* @returns MediaDeviceInfo[]
|
|
80
|
+
*/
|
|
81
|
+
getEnumerateDevices: (mediaDeviceKind: MediaDeviceKind) => Promise<MediaDeviceInfo[]>;
|
|
82
|
+
/**
|
|
83
|
+
* 获取可用音频输入设备
|
|
84
|
+
* @returns MediaDeviceInfo[]
|
|
85
|
+
*/
|
|
86
|
+
getEnumerateAudioinputDevices: () => Promise<MediaDeviceInfo[]>;
|
|
87
|
+
/**
|
|
88
|
+
* 获取可用音频输出设备
|
|
89
|
+
* @returns MediaDeviceInfo[]
|
|
90
|
+
*/
|
|
91
|
+
getEnumerateAudioOutputDevices: () => Promise<MediaDeviceInfo[]>;
|
|
92
|
+
/**
|
|
93
|
+
* 获取可用视频输入设备
|
|
94
|
+
* @returns MediaDeviceInfo[]
|
|
95
|
+
*/
|
|
96
|
+
getEnumerateVideoinputDevices: () => Promise<MediaDeviceInfo[]>;
|
|
97
|
+
}
|
package/dist/room/RoomPeer.d.ts
CHANGED
|
@@ -4,7 +4,6 @@ import { UserTrack } from '../types';
|
|
|
4
4
|
import { RoomUsers } from './RoomUsers';
|
|
5
5
|
export declare class RoomPeer extends RoomUsers {
|
|
6
6
|
#private;
|
|
7
|
-
peerIns: RTCPeerConnection;
|
|
8
7
|
getPeerStatsTimer: number;
|
|
9
8
|
reports: any[];
|
|
10
9
|
peerNetwork: {
|
|
@@ -73,6 +72,10 @@ export declare class RoomPeer extends RoomUsers {
|
|
|
73
72
|
* @param parameters RTCRtpSendParameters
|
|
74
73
|
*/
|
|
75
74
|
setRTCRtpSenderParameters: (parameters: RTCRtpSendParameters) => void;
|
|
75
|
+
/**
|
|
76
|
+
* 获取分析报告
|
|
77
|
+
*/
|
|
78
|
+
getReportsByMid: (mids?: string[]) => Promise<any[]>;
|
|
76
79
|
/**
|
|
77
80
|
* 停止网络报告分析
|
|
78
81
|
*/
|
package/dist/room/RoomUsers.d.ts
CHANGED
|
@@ -1,15 +1,9 @@
|
|
|
1
1
|
import { K_mediaType } from '../enums/mediaType';
|
|
2
2
|
import { RoomUser, UserTrack } from '../types';
|
|
3
|
-
import {
|
|
4
|
-
import { UserAudioFilterOptions } from './
|
|
5
|
-
export declare class RoomUsers extends
|
|
6
|
-
userMap: Map<string, RoomUser>;
|
|
7
|
-
prohibitNotify: boolean;
|
|
3
|
+
import { RoomMedias } from './RoomMedias';
|
|
4
|
+
import { UserAudioFilterOptions } from './mediaStreams/AudioMediaContext';
|
|
5
|
+
export declare class RoomUsers extends RoomMedias {
|
|
8
6
|
constructor();
|
|
9
|
-
/**
|
|
10
|
-
* 获取用户音频处理上下文
|
|
11
|
-
*/
|
|
12
|
-
getUserAudioMediaStreamContext: (userId: string, mediaType: K_mediaType) => import('./mediaStreamsContext/AudioMediaStreamContext').AudioMediaStreamContext | undefined;
|
|
13
7
|
/**
|
|
14
8
|
* 获取最大音量用户
|
|
15
9
|
*/
|
|
@@ -113,5 +107,9 @@ export declare class RoomUsers extends MediaStreams {
|
|
|
113
107
|
/**
|
|
114
108
|
* 广播用户变化
|
|
115
109
|
*/
|
|
110
|
+
emitNotifyUpdateUser: (userId: string) => Promise<void>;
|
|
111
|
+
/**
|
|
112
|
+
* 房间所有用户所有变化
|
|
113
|
+
*/
|
|
116
114
|
emitNotifyUpdateUsers: () => Promise<void>;
|
|
117
115
|
}
|
|
@@ -3,8 +3,9 @@ export interface UserAudioFilterOptions {
|
|
|
3
3
|
noiseSuppression: boolean;
|
|
4
4
|
echoCancellation: boolean;
|
|
5
5
|
}
|
|
6
|
-
export declare class
|
|
6
|
+
export declare class AudioMediaContext {
|
|
7
7
|
options: UserAudioFilterOptions;
|
|
8
|
+
kind: "audio";
|
|
8
9
|
stream: MediaStream;
|
|
9
10
|
audio: HTMLAudioElement;
|
|
10
11
|
audioContext: AudioContext;
|
|
@@ -15,7 +16,7 @@ export declare class AudioMediaStreamContext {
|
|
|
15
16
|
gainNode: GainNode;
|
|
16
17
|
analyserNode: AnalyserNode;
|
|
17
18
|
analyserArrayData: Uint8Array;
|
|
18
|
-
constructor(
|
|
19
|
+
constructor(track: MediaStreamTrack);
|
|
19
20
|
/**
|
|
20
21
|
* 停止
|
|
21
22
|
*/
|
package/dist/tools.d.ts
CHANGED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { UserTrack } from './types';
|
|
2
|
-
/**
|
|
3
|
-
* 获取指定轨道的名称数组
|
|
4
|
-
* @param tracks 轨道
|
|
5
|
-
* @param types number[] = []
|
|
6
|
-
* @param keyName
|
|
7
|
-
* @returns string[]
|
|
8
|
-
*/
|
|
9
|
-
export declare const getTrackNamesFormTracks: (tracks: any[], types?: number[], keyName?: string) => string[];
|
|
10
|
-
export declare const getAverageVolume: (analyser: AnalyserNode, dataArray: Uint8Array) => number;
|
|
11
|
-
export declare const getCallAction: (tracks: UserTrack[]) => Promise<number>;
|
|
12
|
-
export declare const getCallActionMap: (callAction?: number) => {
|
|
13
|
-
microphoneCamera_audio: boolean;
|
|
14
|
-
microphoneCamera_video: boolean;
|
|
15
|
-
screenSharing_video: boolean;
|
|
16
|
-
screenSharing_audio: boolean;
|
|
17
|
-
};
|
package/dist/types.d.ts
CHANGED
package/package.json
CHANGED
package/dist/PrAsyncQueue.d.ts
DELETED
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
interface PrAsyncQueueItem {
|
|
2
|
-
key: string;
|
|
3
|
-
func: () => Promise<any>;
|
|
4
|
-
resolve: (value: unknown) => any;
|
|
5
|
-
reject: (reason?: any) => any;
|
|
6
|
-
timeout: number;
|
|
7
|
-
}
|
|
8
|
-
interface Options {
|
|
9
|
-
key?: string;
|
|
10
|
-
timeout?: number;
|
|
11
|
-
}
|
|
12
|
-
export declare class PrAsyncQueue {
|
|
13
|
-
#private;
|
|
14
|
-
queue: PrAsyncQueueItem[];
|
|
15
|
-
timer: number;
|
|
16
|
-
activeIndex: number;
|
|
17
|
-
activePromise: PrAsyncQueueItem | undefined;
|
|
18
|
-
options: {
|
|
19
|
-
timeout: number;
|
|
20
|
-
};
|
|
21
|
-
constructor(options?: Options);
|
|
22
|
-
/**
|
|
23
|
-
* 添加
|
|
24
|
-
* @param func 待执行函数
|
|
25
|
-
* @returns 待执行函数结果
|
|
26
|
-
*/
|
|
27
|
-
add: (func: () => Promise<any>, options?: Options) => Promise<unknown>;
|
|
28
|
-
/**
|
|
29
|
-
* 清除全部事件
|
|
30
|
-
*/
|
|
31
|
-
clear: () => void;
|
|
32
|
-
}
|
|
33
|
-
export {};
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
import { K_mediaType } from '../enums/mediaType';
|
|
2
|
-
import { Streams } from '../types';
|
|
3
|
-
import { AudioMediaStreamContext } from './mediaStreamsContext/AudioMediaStreamContext';
|
|
4
|
-
import { VideoMediaStreamContext } from './mediaStreamsContext/VideoMediaStreamContext';
|
|
5
|
-
import { RoomBase } from './RoomBase';
|
|
6
|
-
export declare class MediaStreams extends RoomBase {
|
|
7
|
-
audioMediaStreamContextMap: Map<string, AudioMediaStreamContext>;
|
|
8
|
-
videoMediaStreamContextMap: Map<string, VideoMediaStreamContext>;
|
|
9
|
-
mediaDevices: MediaDeviceInfo[];
|
|
10
|
-
constructor();
|
|
11
|
-
/**
|
|
12
|
-
* 获取key
|
|
13
|
-
*/
|
|
14
|
-
getUserMediaKey: (userId: string, mediaType: K_mediaType) => string;
|
|
15
|
-
/**
|
|
16
|
-
* 判断用户媒体类型
|
|
17
|
-
*/
|
|
18
|
-
getUserMediaKind: (mediaType: K_mediaType) => "audio" | "video";
|
|
19
|
-
/**
|
|
20
|
-
* 设置媒体参数
|
|
21
|
-
*/
|
|
22
|
-
setConstraints: (userId: string, mediaType: K_mediaType, constraints: MediaTrackConstraints) => Promise<void>;
|
|
23
|
-
/**
|
|
24
|
-
* 初始化用户媒体上下文
|
|
25
|
-
*/
|
|
26
|
-
initUserMediaStreamContext: (userId: string, mediaType: K_mediaType, stream: MediaStream) => Promise<void>;
|
|
27
|
-
/**
|
|
28
|
-
* 获取某个用户的某个数据流
|
|
29
|
-
*/
|
|
30
|
-
getUserStream: (userId: string, mediaType: K_mediaType) => Promise<MediaStream>;
|
|
31
|
-
/**
|
|
32
|
-
* 获取某个用户的全部数据流
|
|
33
|
-
*/
|
|
34
|
-
getUserStreams: (userId: string) => Promise<Streams>;
|
|
35
|
-
/**
|
|
36
|
-
* 删除用户媒体流上下文
|
|
37
|
-
*/
|
|
38
|
-
removeUserMediaStreamContext: (userId: string, mediaType: K_mediaType) => void;
|
|
39
|
-
/**
|
|
40
|
-
* 删除某个用户的某个数据流
|
|
41
|
-
*/
|
|
42
|
-
removeUserStreams: (userId: string, mediaTypes?: K_mediaType[]) => Promise<void>;
|
|
43
|
-
/**
|
|
44
|
-
* 清除所有媒体流使用
|
|
45
|
-
*/
|
|
46
|
-
clearUserStreams: () => Promise<void>;
|
|
47
|
-
/**
|
|
48
|
-
* 停止媒体流
|
|
49
|
-
*/
|
|
50
|
-
stopStream: (stream: MediaStream) => Promise<void>;
|
|
51
|
-
/**
|
|
52
|
-
* 获取可用音频输出媒体设备
|
|
53
|
-
*/
|
|
54
|
-
getEnumerateAudioOutputDevices: () => Promise<MediaDeviceInfo[]>;
|
|
55
|
-
/**
|
|
56
|
-
* 设置音频输出设备
|
|
57
|
-
*/
|
|
58
|
-
setAudioOutputDevice: (deviceId: string) => void;
|
|
59
|
-
getAudioOutputDevice: () => string;
|
|
60
|
-
}
|