@hysc/meeting 1.6.0 → 1.6.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/esm/BMChat/BMChatVM.d.ts +24 -24
- package/esm/BMChat/BMMessageInfo.d.ts +27 -27
- package/esm/BMRoom/BMLiveVM.d.ts +35 -35
- package/esm/BMStream/BMStreamModel.d.ts +248 -248
- package/esm/BMUser/BMUser.d.ts +147 -147
- package/esm/BMUser/BMUserVM.d.ts +137 -137
- package/esm/boom-meeting/src/BMChat/BMChatVM.d.ts +1 -1
- package/esm/boom-meeting/src/BMRoom/attachEvents.d.ts +4 -2
- package/esm/boom-meeting/src/BMStream/BMStreamModel.d.ts +1 -1
- package/esm/boom-meeting/src/BMUser/BMUser.d.ts +1 -1
- package/{umd → esm/boom-meeting/src}/BMUser/BMUserVM.d.ts +0 -0
- package/{umd → esm/boom-meeting/src}/constants.d.ts +0 -0
- package/esm/constants.d.ts +83 -83
- package/esm/index.js +1 -1
- package/esm/index.js.map +3 -3
- package/esm/util/Pqueue.d.ts +61 -61
- package/esm/util/emitter.d.ts +18 -18
- package/package.json +1 -1
- package/umd/boom-meeting/src/BMChat/BMChatVM.d.ts +1 -1
- package/umd/boom-meeting/src/BMRoom/attachEvents.d.ts +4 -2
- package/umd/boom-meeting/src/BMStream/BMStreamModel.d.ts +1 -1
- package/umd/boom-meeting/src/BMUser/BMUser.d.ts +1 -1
- package/umd/boom-meeting/src/BMUser/BMUserVM.d.ts +137 -0
- package/umd/boom-meeting/src/constants.d.ts +83 -0
- package/umd/index.js +1 -1
- package/esm/boom-meeting/src/BMRoom/BMRoomInfo.d.ts +0 -189
- package/esm/boom-meeting/src/BMRoom/BMRoomVM.d.ts +0 -278
- package/esm/boom-meeting/src/BMRoom/RoomEvent.d.ts +0 -1
- package/esm/boom-meeting/src/BMStream/BMStreamModelVM.d.ts +0 -232
- package/esm/boom-meeting/src/bjy-common/function/debounce.d.ts +0 -9
- package/esm/boom-meeting/src/bjy-common/function/isDef.d.ts +0 -1
- package/esm/boom-meeting/src/bjy-common/function/isUndef.d.ts +0 -1
- package/esm/boom-meeting/src/bjy-common/function/throttling.d.ts +0 -9
- package/esm/boom-meeting/src/bjy-common/function/toNumber.d.ts +0 -1
- package/esm/boom-meeting/src/bjy-common/type/api.d.ts +0 -66
- package/esm/boom-meeting/src/bjy-common/type/options.d.ts +0 -7
- package/esm/boom-meeting/src/bjy-common/type/type.d.ts +0 -90
- package/esm/boom-meeting/src/bjy-common/util/NextTask.d.ts +0 -28
- package/esm/boom-meeting/src/bjy-common/util/Sleep.d.ts +0 -14
- package/esm/boom-meeting/src/bjy-common/util/Timer.d.ts +0 -13
- package/esm/boom-meeting/src/bjy-common/util/browser.d.ts +0 -6
- package/esm/boom-meeting/src/bjy-common/util/holder.d.ts +0 -6
- package/esm/boom-meeting/src/bjy-common/util/network.d.ts +0 -4
- package/esm/boom-meeting/src/bjy-common/util/os.d.ts +0 -14
- package/esm/boom-meeting/src/error/errorMap.d.ts +0 -70
- package/esm/boom-meeting/src/error/errorType.d.ts +0 -96
- package/esm/boom-meeting/src/logger/logger.d.ts +0 -86
- package/esm/boom-meeting/src/type/customStats.d.ts +0 -117
- package/esm/boom-meeting/src/type/index.d.ts +0 -9
- package/esm/boom-meeting/src/type/stream.d.ts +0 -17
- package/esm/boom-meeting/src/type/user.d.ts +0 -9
- package/esm/boom-meeting/src/types/customStats.d.ts +0 -103
- package/esm/boom-meeting/src/types/index.d.ts +0 -9
- package/esm/boom-meeting/src/types/stream.d.ts +0 -17
- package/esm/boom-meeting/src/types/user.d.ts +0 -11
- package/esm/boom-meeting/src/util/PackLoss.d.ts +0 -7
- package/esm/boom-meeting/src/util/Pqueue.d.ts +0 -61
- package/esm/boom-meeting/src/util/Privileges.d.ts +0 -20
- package/esm/boom-meeting/src/util/ReportCollector.d.ts +0 -22
- package/esm/boom-meeting/src/util/Stutter.d.ts +0 -19
- package/esm/boom-meeting/src/util/base64.d.ts +0 -4
- package/esm/boom-meeting/src/util/checkPermissions.d.ts +0 -1
- package/esm/boom-meeting/src/util/checkSystemRequirements.d.ts +0 -1
- package/esm/boom-meeting/src/util/constant.d.ts +0 -67
- package/esm/boom-meeting/src/util/devices.d.ts +0 -2
- package/esm/boom-meeting/src/util/formatUserId.d.ts +0 -2
- package/esm/boom-meeting/src/util/is.d.ts +0 -70
- package/esm/boom-meeting/src/util/peerToPeerProbe.d.ts +0 -9
- package/esm/boom-meeting/src/util/request.d.ts +0 -45
- package/esm/types/customStats.d.ts +0 -103
- package/esm/types/index.d.ts +0 -9
- package/esm/types/stream.d.ts +0 -17
- package/esm/types/user.d.ts +0 -11
- package/esm/utils/ErrorTypes.d.ts +0 -97
- package/umd/BMChat/BMChatVM.d.ts +0 -24
- package/umd/BMChat/BMMessageInfo.d.ts +0 -27
- package/umd/BMRoom/BMLiveVM.d.ts +0 -35
- package/umd/BMStream/BMSpeaker.d.ts +0 -44
- package/umd/BMStream/BMStreamModel.d.ts +0 -248
- package/umd/BMUser/BMUser.d.ts +0 -147
- package/umd/boom-meeting/src/BMRoom/BMRoomInfo.d.ts +0 -189
- package/umd/boom-meeting/src/BMRoom/BMRoomVM.d.ts +0 -278
- package/umd/boom-meeting/src/BMRoom/RoomEvent.d.ts +0 -1
- package/umd/boom-meeting/src/BMStream/BMStreamModelVM.d.ts +0 -232
- package/umd/boom-meeting/src/bjy-common/function/debounce.d.ts +0 -9
- package/umd/boom-meeting/src/bjy-common/function/isDef.d.ts +0 -1
- package/umd/boom-meeting/src/bjy-common/function/isUndef.d.ts +0 -1
- package/umd/boom-meeting/src/bjy-common/function/throttling.d.ts +0 -9
- package/umd/boom-meeting/src/bjy-common/function/toNumber.d.ts +0 -1
- package/umd/boom-meeting/src/bjy-common/type/api.d.ts +0 -66
- package/umd/boom-meeting/src/bjy-common/type/options.d.ts +0 -7
- package/umd/boom-meeting/src/bjy-common/type/type.d.ts +0 -90
- package/umd/boom-meeting/src/bjy-common/util/NextTask.d.ts +0 -28
- package/umd/boom-meeting/src/bjy-common/util/Sleep.d.ts +0 -14
- package/umd/boom-meeting/src/bjy-common/util/Timer.d.ts +0 -13
- package/umd/boom-meeting/src/bjy-common/util/browser.d.ts +0 -6
- package/umd/boom-meeting/src/bjy-common/util/holder.d.ts +0 -6
- package/umd/boom-meeting/src/bjy-common/util/network.d.ts +0 -4
- package/umd/boom-meeting/src/bjy-common/util/os.d.ts +0 -14
- package/umd/boom-meeting/src/error/errorMap.d.ts +0 -70
- package/umd/boom-meeting/src/error/errorType.d.ts +0 -96
- package/umd/boom-meeting/src/logger/logger.d.ts +0 -86
- package/umd/boom-meeting/src/type/customStats.d.ts +0 -117
- package/umd/boom-meeting/src/type/index.d.ts +0 -9
- package/umd/boom-meeting/src/type/stream.d.ts +0 -17
- package/umd/boom-meeting/src/type/user.d.ts +0 -9
- package/umd/boom-meeting/src/types/customStats.d.ts +0 -103
- package/umd/boom-meeting/src/types/index.d.ts +0 -9
- package/umd/boom-meeting/src/types/stream.d.ts +0 -17
- package/umd/boom-meeting/src/types/user.d.ts +0 -11
- package/umd/boom-meeting/src/util/PackLoss.d.ts +0 -7
- package/umd/boom-meeting/src/util/Pqueue.d.ts +0 -61
- package/umd/boom-meeting/src/util/Privileges.d.ts +0 -20
- package/umd/boom-meeting/src/util/ReportCollector.d.ts +0 -22
- package/umd/boom-meeting/src/util/Stutter.d.ts +0 -19
- package/umd/boom-meeting/src/util/base64.d.ts +0 -4
- package/umd/boom-meeting/src/util/checkPermissions.d.ts +0 -1
- package/umd/boom-meeting/src/util/checkSystemRequirements.d.ts +0 -1
- package/umd/boom-meeting/src/util/constant.d.ts +0 -67
- package/umd/boom-meeting/src/util/devices.d.ts +0 -2
- package/umd/boom-meeting/src/util/formatUserId.d.ts +0 -2
- package/umd/boom-meeting/src/util/is.d.ts +0 -70
- package/umd/boom-meeting/src/util/peerToPeerProbe.d.ts +0 -9
- package/umd/boom-meeting/src/util/request.d.ts +0 -45
- package/umd/index.js.map +0 -1
- package/umd/util/emitter.d.ts +0 -18
- package/umd/utils/ErrorTypes.d.ts +0 -97
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @name: ErrorTypes
|
|
3
|
-
* @author: yangliye
|
|
4
|
-
* @date: 2022-07-08 11:20
|
|
5
|
-
* @description:ErrorTypes
|
|
6
|
-
* @update: 2022-07-08 11:20
|
|
7
|
-
*/
|
|
8
|
-
/**
|
|
9
|
-
* boom-core层的错误
|
|
10
|
-
*/
|
|
11
|
-
export declare type ErrorTypes = {
|
|
12
|
-
code: number;
|
|
13
|
-
message: string;
|
|
14
|
-
};
|
|
15
|
-
export declare enum BoomCoreErrorCode {
|
|
16
|
-
'BloudLock' = 28,
|
|
17
|
-
'ShareScreenNoPermission' = 100,
|
|
18
|
-
'ShareScreenCanceled' = 101,
|
|
19
|
-
'ShareScreenOtherError' = 102,
|
|
20
|
-
'ShareScreenContentHintError' = 103,
|
|
21
|
-
'ShareScreenClientJoinedError' = 104,
|
|
22
|
-
'BrtcShareSigError' = 105,
|
|
23
|
-
'ToggleShareScreenError' = 106,
|
|
24
|
-
'BrtcCreateStreamError' = 107,
|
|
25
|
-
'BrtcSubscribeError' = 108,
|
|
26
|
-
'BrtcPublishError' = 109,
|
|
27
|
-
'BrtcUnsubscribeError' = 110,
|
|
28
|
-
'BrtcUnPublishError' = 111,
|
|
29
|
-
'RepeatJoinError' = 112,
|
|
30
|
-
'ProxiesUrlTypeError' = 113,
|
|
31
|
-
'getBloudProxiesUrlError' = 114,
|
|
32
|
-
'JoinUserInfoError' = 115,
|
|
33
|
-
'JoinTypeError' = 116,
|
|
34
|
-
'JoinBrtcError' = 117,
|
|
35
|
-
'JoinBloudError' = 118,
|
|
36
|
-
'UpdateCustomStatsError' = 119,
|
|
37
|
-
'CreateBloudError' = 120
|
|
38
|
-
}
|
|
39
|
-
export declare const ShareScreenNoPermission: ErrorTypes;
|
|
40
|
-
export declare const ShareScreenCanceled: ErrorTypes;
|
|
41
|
-
export declare const ShareScreenOtherError: (msg: string) => ErrorTypes;
|
|
42
|
-
export declare const ShareScreenContentHintError: ErrorTypes;
|
|
43
|
-
export declare const ShareScreenClientJoinedError: ErrorTypes;
|
|
44
|
-
export declare const BrtcShareSigError: ErrorTypes;
|
|
45
|
-
export declare const ToggleShareScreenError: (msg: string) => ErrorTypes;
|
|
46
|
-
export declare const RepeatJoinError: ErrorTypes;
|
|
47
|
-
export declare const ProxiesUrlTypeError: ErrorTypes;
|
|
48
|
-
export declare const getBloudProxiesUrlError: (msg: string) => ErrorTypes;
|
|
49
|
-
export declare const JoinUserInfoError: ErrorTypes;
|
|
50
|
-
export declare const JoinTypeError: ErrorTypes;
|
|
51
|
-
export declare const JoinBrtcError: (msg: string) => ErrorTypes;
|
|
52
|
-
export declare const JoinBloudError: (msg: string) => ErrorTypes;
|
|
53
|
-
export declare const BloudLockError: (msg: string) => ErrorTypes;
|
|
54
|
-
export declare const BrtcCreateStreamError: (msg: string) => ErrorTypes;
|
|
55
|
-
export declare const BrtcSubscribeError: (msg: string) => ErrorTypes;
|
|
56
|
-
export declare const BrtcPublishError: (msg: string) => ErrorTypes;
|
|
57
|
-
export declare const BrtcUnsubscribeError: (msg: string) => ErrorTypes;
|
|
58
|
-
export declare const BrtcUnPublishError: (msg: string) => ErrorTypes;
|
|
59
|
-
export declare const updateCustomStatsError: (msg: string) => ErrorTypes;
|
|
60
|
-
export declare enum BoomMeetingErrorCode {
|
|
61
|
-
'BmJoinError' = 200,
|
|
62
|
-
'BMLeaveError' = 201,
|
|
63
|
-
'BmSetRemoteVideoEnable' = 202,
|
|
64
|
-
'BmSetRemoteAudioEnable' = 203,
|
|
65
|
-
'BmSetLocalVideoEnable' = 204,
|
|
66
|
-
'BmSetLocalAudioEnable' = 205,
|
|
67
|
-
'BmSetLocalSpeakerEnable' = 206,
|
|
68
|
-
'BmChangeMasterError' = 207,
|
|
69
|
-
'BmUpdateManagerError' = 208,
|
|
70
|
-
'BmEvictUserError' = 209,
|
|
71
|
-
'BmUpdateUserError' = 210,
|
|
72
|
-
'BmSetAudioOffError' = 211,
|
|
73
|
-
'BmSetVideoOffError' = 212,
|
|
74
|
-
'BmSetMsgOffError' = 213,
|
|
75
|
-
'BmUpdateCustomStatsError' = 214,
|
|
76
|
-
'BmChangeVideoProfileError' = 215,
|
|
77
|
-
'BmChangeAudioProfileError' = 216,
|
|
78
|
-
'BmCheckDeviceError' = 217
|
|
79
|
-
}
|
|
80
|
-
export declare const BmJoinError: (msg: string) => ErrorTypes;
|
|
81
|
-
export declare const BmLeaveError: (msg: string) => ErrorTypes;
|
|
82
|
-
export declare const BmSetRemoteVideoEnable: (msg: string) => ErrorTypes;
|
|
83
|
-
export declare const BmSetRemoteAudioEnable: (msg: string) => ErrorTypes;
|
|
84
|
-
export declare const BmSetLocalVideoEnable: (msg: string) => ErrorTypes;
|
|
85
|
-
export declare const BmSetLocalAudioEnable: (msg: string) => ErrorTypes;
|
|
86
|
-
export declare const BmSetLocalSpeakerEnable: (msg: string) => ErrorTypes;
|
|
87
|
-
export declare const BmChangeMasterError: (msg: string) => ErrorTypes;
|
|
88
|
-
export declare const BmUpdateManagerError: (msg: string) => ErrorTypes;
|
|
89
|
-
export declare const BmEvictUserError: (msg: string) => ErrorTypes;
|
|
90
|
-
export declare const BmUpdateUserError: (msg: string) => ErrorTypes;
|
|
91
|
-
export declare const BmSetAudioOffError: (msg: string) => ErrorTypes;
|
|
92
|
-
export declare const BmSetVideoOffError: (msg: string) => ErrorTypes;
|
|
93
|
-
export declare const BmSetMsgOffError: (msg: string) => ErrorTypes;
|
|
94
|
-
export declare const BmUpdateCustomStatsError: (msg: string) => ErrorTypes;
|
|
95
|
-
export declare const BmChangeVideoProfileError: (msg: string) => ErrorTypes;
|
|
96
|
-
export declare const BmChangeAudioProfileError: (msg: string) => ErrorTypes;
|
|
97
|
-
export declare const BmCheckDeviceError: (msg: string) => ErrorTypes;
|
package/umd/BMChat/BMChatVM.d.ts
DELETED
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import BoomCore from '@hysc/core/esm';
|
|
2
|
-
import BMMessageInfo from './BMMessageInfo';
|
|
3
|
-
import { BehaviorSubject, Subject } from "rxjs";
|
|
4
|
-
import BMUserVM from '../BMUser/BMUserVM';
|
|
5
|
-
import BMRoom from '../BMRoom/BMRoom';
|
|
6
|
-
export default class BMChatVM {
|
|
7
|
-
messageList: Array<BMMessageInfo>;
|
|
8
|
-
boomCore: BoomCore;
|
|
9
|
-
userVM: BMUserVM;
|
|
10
|
-
bmRoom: BMRoom;
|
|
11
|
-
messageListWatcher: BehaviorSubject<Array<BMMessageInfo>>;
|
|
12
|
-
hasDangerMessageWatcher: Subject<boolean>;
|
|
13
|
-
constructor(boomCore: BoomCore, userVM: BMUserVM, bmRoom: BMRoom);
|
|
14
|
-
/**
|
|
15
|
-
* 发送聊天消息
|
|
16
|
-
* @param talkMsg 聊天信息
|
|
17
|
-
*/
|
|
18
|
-
sendMessage(talkMsg: string, userId: string | undefined): Promise<void>;
|
|
19
|
-
addMessage(info: BMMessageInfo, isParticipantNotice: boolean): void;
|
|
20
|
-
/**
|
|
21
|
-
* 获取历史消息
|
|
22
|
-
*/
|
|
23
|
-
getHistoryMessage(): Promise<BMMessageInfo[]>;
|
|
24
|
-
}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
interface IMessageInfo {
|
|
2
|
-
userId?: string;
|
|
3
|
-
message: string;
|
|
4
|
-
role?: string;
|
|
5
|
-
isLocal?: boolean;
|
|
6
|
-
avatar?: string;
|
|
7
|
-
nickName?: string;
|
|
8
|
-
sendTime?: number;
|
|
9
|
-
isMeetingNotice?: boolean;
|
|
10
|
-
to?: string | undefined;
|
|
11
|
-
isDanger?: boolean;
|
|
12
|
-
}
|
|
13
|
-
export default class BMMessageInfo {
|
|
14
|
-
userId?: any;
|
|
15
|
-
message: string;
|
|
16
|
-
time: string;
|
|
17
|
-
timeStamp: number;
|
|
18
|
-
role?: string;
|
|
19
|
-
isLocal?: boolean;
|
|
20
|
-
avatar?: any;
|
|
21
|
-
nickName?: any;
|
|
22
|
-
isMeetingNotice: boolean;
|
|
23
|
-
to: string | undefined;
|
|
24
|
-
isDanger: boolean | undefined;
|
|
25
|
-
constructor(props: IMessageInfo);
|
|
26
|
-
}
|
|
27
|
-
export {};
|
package/umd/BMRoom/BMLiveVM.d.ts
DELETED
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @name: BMLiveVM.ts
|
|
3
|
-
* @author: yangliye
|
|
4
|
-
* @date: 2022-07-15 13:53
|
|
5
|
-
* @description:处理直播相关的流处理
|
|
6
|
-
* @update: 2022-07-15 13:53
|
|
7
|
-
*/
|
|
8
|
-
import BMRoom from "./BMRoom";
|
|
9
|
-
import BMStreamModel from "../BMStream/BMStreamModel";
|
|
10
|
-
declare class BMLiveVM {
|
|
11
|
-
private room;
|
|
12
|
-
constructor(room: BMRoom);
|
|
13
|
-
private get localBMUser();
|
|
14
|
-
private get localIsAudience();
|
|
15
|
-
/**
|
|
16
|
-
* 拉流处理
|
|
17
|
-
* @param bmStreamModel
|
|
18
|
-
*/
|
|
19
|
-
handlePull(bmStreamModel: BMStreamModel): Promise<void>;
|
|
20
|
-
/**
|
|
21
|
-
* 切换大小流处理
|
|
22
|
-
* @param bmStreamModel
|
|
23
|
-
*/
|
|
24
|
-
handleChangeStreamType(bmStreamModel: BMStreamModel): Promise<void>;
|
|
25
|
-
handlePlay(bmStreamModel: BMStreamModel, noPlayChanged: boolean): Promise<void>;
|
|
26
|
-
/**
|
|
27
|
-
* 处理观众端举手发言完了,然后在禁止发言,这个时候,没有必要在拉所有人的流,把除了混流的人的流都取消订阅,然后播放混流的声音
|
|
28
|
-
*/
|
|
29
|
-
handleAudienceDisable(): Promise<void>;
|
|
30
|
-
/**
|
|
31
|
-
* 观众允许发言,允许发言之后,要把所有的流都拉,然后混流静音
|
|
32
|
-
*/
|
|
33
|
-
handleAudienceEnable(): Promise<void>;
|
|
34
|
-
}
|
|
35
|
-
export default BMLiveVM;
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import BMUser from '../BMUser/BMUser';
|
|
2
|
-
import { SingleStream } from '../types';
|
|
3
|
-
/**
|
|
4
|
-
* @name: BMSpeaker
|
|
5
|
-
* @author: liuxinghai
|
|
6
|
-
* @date: 2022-06-07 11:41
|
|
7
|
-
* @description:BMSpeaker
|
|
8
|
-
* 适配 brtc 流对象到 bloud 流对象接口,
|
|
9
|
-
* 用户辅助采用 bloud SpeakerDetector 做说话人检测
|
|
10
|
-
* @date: 2022-06-07 11:41
|
|
11
|
-
*/
|
|
12
|
-
export default class BMSpeaker {
|
|
13
|
-
private _user;
|
|
14
|
-
private _stream;
|
|
15
|
-
private _emitter;
|
|
16
|
-
constructor(user: BMUser, stream: SingleStream);
|
|
17
|
-
/**
|
|
18
|
-
* 获取对象 ID 标识,此处使用流 ID 标识
|
|
19
|
-
* @returns
|
|
20
|
-
*/
|
|
21
|
-
getID(): string;
|
|
22
|
-
/**
|
|
23
|
-
* 获取用户 BMUser 对象
|
|
24
|
-
* @returns
|
|
25
|
-
*/
|
|
26
|
-
getUser(): BMUser;
|
|
27
|
-
/**
|
|
28
|
-
* 监听事件
|
|
29
|
-
*
|
|
30
|
-
* @param type 事件类型
|
|
31
|
-
* @param fn 事件回调
|
|
32
|
-
* @return 实例本身 {@link Client}
|
|
33
|
-
*/
|
|
34
|
-
on(type: string, fn: Function): this;
|
|
35
|
-
/**
|
|
36
|
-
* 启动音频音量检测
|
|
37
|
-
*/
|
|
38
|
-
collectAudioLevel(): void;
|
|
39
|
-
private handleAudioLevel;
|
|
40
|
-
/**
|
|
41
|
-
* 关闭音频音量检测
|
|
42
|
-
*/
|
|
43
|
-
close(): void;
|
|
44
|
-
}
|
|
@@ -1,248 +0,0 @@
|
|
|
1
|
-
import { SingleStream, SubscribeOptions } from '../type';
|
|
2
|
-
import BMUser from '../BMUser/BMUser';
|
|
3
|
-
import { BehaviorSubject, Subject } from 'rxjs';
|
|
4
|
-
/**
|
|
5
|
-
* @name: BMStreamModel
|
|
6
|
-
* @author: yangliye
|
|
7
|
-
* @date: 2022-04-25 11:14
|
|
8
|
-
* @description:BMStreamModel
|
|
9
|
-
* @update: 2022-04-25 11:14
|
|
10
|
-
*/
|
|
11
|
-
declare type StreamType = 'big' | 'small';
|
|
12
|
-
export interface SubscribeMessage {
|
|
13
|
-
stream: BMStreamModel;
|
|
14
|
-
}
|
|
15
|
-
export interface ConnectErrorMessage {
|
|
16
|
-
stream: BMStreamModel;
|
|
17
|
-
isLocal: boolean;
|
|
18
|
-
}
|
|
19
|
-
export default class BMStreamModel {
|
|
20
|
-
private user;
|
|
21
|
-
private _stream;
|
|
22
|
-
/**
|
|
23
|
-
* 流类型
|
|
24
|
-
*/
|
|
25
|
-
streamType: number;
|
|
26
|
-
pullFailedNum: number;
|
|
27
|
-
_video_enable: boolean;
|
|
28
|
-
_audio_enable: boolean;
|
|
29
|
-
videoEnableWatcher: BehaviorSubject<boolean>;
|
|
30
|
-
audioEnableWatcher: BehaviorSubject<boolean>;
|
|
31
|
-
audioLevelWatcher: Subject<number>;
|
|
32
|
-
isCurrentDisplay: boolean;
|
|
33
|
-
/**
|
|
34
|
-
* 当前窗口是不是在展示中目标状态
|
|
35
|
-
*/
|
|
36
|
-
isDisplay: boolean;
|
|
37
|
-
isDisplayObserve: Subject<boolean>;
|
|
38
|
-
isInBig: boolean;
|
|
39
|
-
isInBigObserve: Subject<boolean>;
|
|
40
|
-
hasPulled: boolean;
|
|
41
|
-
playerId: string;
|
|
42
|
-
/**
|
|
43
|
-
* 当前拉取的是大流还是小流
|
|
44
|
-
*/
|
|
45
|
-
_pulledStreamType: StreamType;
|
|
46
|
-
get pulledStreamType(): StreamType;
|
|
47
|
-
set pulledStreamType(type: StreamType);
|
|
48
|
-
/**
|
|
49
|
-
* 要拉取的流的目标状态
|
|
50
|
-
*/
|
|
51
|
-
pulledStreamGoal: StreamType;
|
|
52
|
-
bigPlayerId: string;
|
|
53
|
-
private player;
|
|
54
|
-
private isPlayingBig;
|
|
55
|
-
/**
|
|
56
|
-
* 是否静音了扬声器,brtc不会处理业务上静音的逻辑,所以需要自己处理
|
|
57
|
-
* 如果静音了,就把所有的流都重新静音播放一遍
|
|
58
|
-
*/
|
|
59
|
-
muted: boolean;
|
|
60
|
-
private checkVideoTimer;
|
|
61
|
-
checkCount: number;
|
|
62
|
-
private checkFailedCount;
|
|
63
|
-
/**
|
|
64
|
-
* streamModel的唯一标识,用来给业务绑定播放容器
|
|
65
|
-
*/
|
|
66
|
-
get uuid(): string;
|
|
67
|
-
get isAudience(): boolean;
|
|
68
|
-
/**
|
|
69
|
-
* 因为直播模式中,观众默认是不展示的,只有开麦以后才会展示
|
|
70
|
-
* 所以这个地方要判断一下
|
|
71
|
-
*/
|
|
72
|
-
get canShow(): boolean;
|
|
73
|
-
changeMute(mute: boolean): void;
|
|
74
|
-
handleSpeakerChange(): void;
|
|
75
|
-
/**
|
|
76
|
-
* 排序数字
|
|
77
|
-
*/
|
|
78
|
-
get sortNum(): number;
|
|
79
|
-
get isToupingma(): boolean;
|
|
80
|
-
get isMixer(): boolean;
|
|
81
|
-
get isSignal(): boolean;
|
|
82
|
-
/**
|
|
83
|
-
* 初始化展示的model
|
|
84
|
-
* @param user
|
|
85
|
-
* @param stream
|
|
86
|
-
*/
|
|
87
|
-
constructor(user: BMUser, stream?: SingleStream);
|
|
88
|
-
/**
|
|
89
|
-
* 生成订阅信息
|
|
90
|
-
*/
|
|
91
|
-
genReceiveSubMsg(): SubscribeOptions;
|
|
92
|
-
/**
|
|
93
|
-
* display属性改变调整
|
|
94
|
-
* @private
|
|
95
|
-
*/
|
|
96
|
-
private handleDisplayChange;
|
|
97
|
-
/**
|
|
98
|
-
* 处理当前窗口是不是在大窗的逻辑
|
|
99
|
-
* @param display
|
|
100
|
-
* @private
|
|
101
|
-
*/
|
|
102
|
-
private handleIsInBig;
|
|
103
|
-
/**
|
|
104
|
-
* 设置是否打开摄像头状态
|
|
105
|
-
* @param enable
|
|
106
|
-
* @private
|
|
107
|
-
*/
|
|
108
|
-
setVideoEnable(enable: boolean): void;
|
|
109
|
-
/**
|
|
110
|
-
* 设置是否打开麦克风状态
|
|
111
|
-
* @param enable
|
|
112
|
-
* @private
|
|
113
|
-
*/
|
|
114
|
-
setAudioEnable(enable: boolean): void;
|
|
115
|
-
/**
|
|
116
|
-
* 更新当前streamModel中的流
|
|
117
|
-
* @param stream
|
|
118
|
-
* @param needReProcess
|
|
119
|
-
*/
|
|
120
|
-
updateStream(stream: SingleStream | undefined, needReProcess?: boolean): void;
|
|
121
|
-
private onPlayerStateChange;
|
|
122
|
-
handleStreamConnectError: () => void;
|
|
123
|
-
/**
|
|
124
|
-
* 获取当前的streamId
|
|
125
|
-
*/
|
|
126
|
-
get streamId(): string;
|
|
127
|
-
/**
|
|
128
|
-
* 获取当前窗口绑定的用户id
|
|
129
|
-
*/
|
|
130
|
-
get userId(): string;
|
|
131
|
-
/**
|
|
132
|
-
* 获取当前的流对象
|
|
133
|
-
*/
|
|
134
|
-
get stream(): SingleStream | undefined;
|
|
135
|
-
/**
|
|
136
|
-
* 是否是本地流
|
|
137
|
-
*/
|
|
138
|
-
get isLocal(): boolean;
|
|
139
|
-
/**
|
|
140
|
-
* 是否是屏幕共享的流
|
|
141
|
-
*/
|
|
142
|
-
get isShare(): boolean | undefined;
|
|
143
|
-
/**
|
|
144
|
-
* 当前音频是否开启
|
|
145
|
-
*/
|
|
146
|
-
get audioEnable(): boolean;
|
|
147
|
-
/**
|
|
148
|
-
* 当前视频是否开启
|
|
149
|
-
*/
|
|
150
|
-
get videoEnable(): boolean;
|
|
151
|
-
/**
|
|
152
|
-
* 获取当前流绑定的用户昵称
|
|
153
|
-
*/
|
|
154
|
-
get nickname(): string;
|
|
155
|
-
/**
|
|
156
|
-
* 获取流的麦克风音量
|
|
157
|
-
*/
|
|
158
|
-
get audioLevel(): number;
|
|
159
|
-
getUser(): BMUser;
|
|
160
|
-
/**
|
|
161
|
-
* 设置远端流的播放声音
|
|
162
|
-
* @param volume
|
|
163
|
-
*/
|
|
164
|
-
setRemoteAudioLevel(volume: number): void;
|
|
165
|
-
/**
|
|
166
|
-
* 获取流的传输信息
|
|
167
|
-
*/
|
|
168
|
-
getStats(): Promise<import("@hysc/core/esm/BoomAdapter/type/stats").RemoteStreamStats> | Promise<import("@hysc/core/esm/BoomAdapter/type/stats").LocalStreamStats> | undefined;
|
|
169
|
-
/**
|
|
170
|
-
* BIND_ELEMENT 事件
|
|
171
|
-
* @param eleId
|
|
172
|
-
*/
|
|
173
|
-
bindElement: (eleId: string) => void;
|
|
174
|
-
bindBigElement: (eleId: string) => void;
|
|
175
|
-
sendMessage2Room: any;
|
|
176
|
-
emitBindElement: any;
|
|
177
|
-
emitBindBigElement: any;
|
|
178
|
-
/**
|
|
179
|
-
* 播放当前流
|
|
180
|
-
*/
|
|
181
|
-
play: any;
|
|
182
|
-
/**
|
|
183
|
-
* 在大窗口播放该流的时候调用这个方法
|
|
184
|
-
* @param mute 是否静音 默认true
|
|
185
|
-
*/
|
|
186
|
-
playInBig: any;
|
|
187
|
-
private initBigPlayer;
|
|
188
|
-
/**
|
|
189
|
-
* 停止播放当前流
|
|
190
|
-
*/
|
|
191
|
-
stop(): void;
|
|
192
|
-
/**
|
|
193
|
-
* 销毁当前流
|
|
194
|
-
*/
|
|
195
|
-
destroy(): void;
|
|
196
|
-
/**
|
|
197
|
-
* 获取当前流是否正在播放
|
|
198
|
-
*/
|
|
199
|
-
isPlaying(): boolean | undefined;
|
|
200
|
-
/**
|
|
201
|
-
* 重新播放
|
|
202
|
-
*/
|
|
203
|
-
replay(): Promise<void> | undefined;
|
|
204
|
-
/**
|
|
205
|
-
* 恢复播放音视频
|
|
206
|
-
* 在某些版本浏览器上移动传入 play() 的 div 容器可能会导致音视频播放器进入 ‘PAUSED’ 状态,此时 需要调用该接口恢复播放。
|
|
207
|
-
* 由于浏览器自动播放策略的限制,在 play() 返回 PLAY_NOT_ALLOWED 错误后需要引导用户通过手势 调用该接口恢复播放
|
|
208
|
-
*
|
|
209
|
-
* @returns
|
|
210
|
-
*/
|
|
211
|
-
resume(): Promise<any> | undefined;
|
|
212
|
-
/**
|
|
213
|
-
* 是否有音频流
|
|
214
|
-
*/
|
|
215
|
-
hasAudio(): boolean;
|
|
216
|
-
/**
|
|
217
|
-
* 是否有视频流
|
|
218
|
-
*/
|
|
219
|
-
hasVideo(): boolean;
|
|
220
|
-
/**
|
|
221
|
-
* 更新当前model的用户信息
|
|
222
|
-
* @param user
|
|
223
|
-
*/
|
|
224
|
-
updateUser(user: BMUser): void;
|
|
225
|
-
updateSortNum(): void;
|
|
226
|
-
/**
|
|
227
|
-
* 启动音频音量检测
|
|
228
|
-
*/
|
|
229
|
-
collectAudioLevel(): void;
|
|
230
|
-
private handleAudioLevel;
|
|
231
|
-
/**
|
|
232
|
-
* 关闭音频音量检测
|
|
233
|
-
*/
|
|
234
|
-
close(): void;
|
|
235
|
-
checkVideo(): void;
|
|
236
|
-
/**
|
|
237
|
-
* 播放黑窗处理,主要是做一个容错处理,又可能这股流拉下来或者存在订阅就出现问题的情况
|
|
238
|
-
* 播放时黑窗的,这个时候需要,检测,然后重新拉流
|
|
239
|
-
* @param videoContainer
|
|
240
|
-
*/
|
|
241
|
-
private checkVideoDecodeFrame;
|
|
242
|
-
/**
|
|
243
|
-
* 发送订阅该流的请求
|
|
244
|
-
*/
|
|
245
|
-
subscribeStream(): void;
|
|
246
|
-
unSubscribeStream(): void;
|
|
247
|
-
}
|
|
248
|
-
export {};
|
package/umd/BMUser/BMUser.d.ts
DELETED
|
@@ -1,147 +0,0 @@
|
|
|
1
|
-
import BMStreamModel from '../BMStream/BMStreamModel';
|
|
2
|
-
import { BehaviorSubject } from 'rxjs';
|
|
3
|
-
import BCUser from '@hysc/core/esm/BoomAdapter/User/User';
|
|
4
|
-
import BMRoom from '../BMRoom/BMRoom';
|
|
5
|
-
declare type Operation = 'none' | 'getMaster' | 'getManager' | 'removeMaster' | 'getGuest' | 'removeGuest' | 'removeManager' | 'changeNickName' | 'speakerEnable' | 'changeShare' | 'updateUser' | 'raiseHandsVideo' | 'raiseHandsAudio' | 'audienceEnableSpeaking';
|
|
6
|
-
interface IUserActionWatcher {
|
|
7
|
-
operation: Operation;
|
|
8
|
-
user: BMUser;
|
|
9
|
-
}
|
|
10
|
-
interface UserInfo {
|
|
11
|
-
avatar: string;
|
|
12
|
-
jointime: number;
|
|
13
|
-
nickname: string;
|
|
14
|
-
pos: string;
|
|
15
|
-
userId: string;
|
|
16
|
-
status?: {
|
|
17
|
-
audioRaiseHands: boolean;
|
|
18
|
-
videoRaiseHands: boolean;
|
|
19
|
-
};
|
|
20
|
-
}
|
|
21
|
-
export interface RaiseHandInfo {
|
|
22
|
-
status: 'raiseHandsAudio' | 'raiseHandsVideo';
|
|
23
|
-
user: BMUser;
|
|
24
|
-
}
|
|
25
|
-
export default class BMUser {
|
|
26
|
-
/**
|
|
27
|
-
* 用户id
|
|
28
|
-
*/
|
|
29
|
-
userId: string;
|
|
30
|
-
/**
|
|
31
|
-
* 用户信息
|
|
32
|
-
*/
|
|
33
|
-
userInfo: UserInfo;
|
|
34
|
-
nickName: string;
|
|
35
|
-
isMaster: boolean;
|
|
36
|
-
isManager: boolean;
|
|
37
|
-
mirror: boolean;
|
|
38
|
-
isLocal: boolean;
|
|
39
|
-
isToupingma: boolean;
|
|
40
|
-
hasMultiple: boolean;
|
|
41
|
-
isCreate: boolean;
|
|
42
|
-
hasShare: boolean;
|
|
43
|
-
audienceEnableSpeaking: boolean;
|
|
44
|
-
/** 头像 */
|
|
45
|
-
avatar: string;
|
|
46
|
-
private streamModels;
|
|
47
|
-
permission: any;
|
|
48
|
-
/**
|
|
49
|
-
* 监听器, 监听返回对象属性
|
|
50
|
-
* @property {string} operation
|
|
51
|
-
* 'getManager':获得管理员权限/成为联席主持人
|
|
52
|
-
* 'getMaster':成为主持人
|
|
53
|
-
* 'removeManager':取消管理员权限/取消联席主持人
|
|
54
|
-
* 'removeMaster':取消主持人
|
|
55
|
-
* 'changeNickName':改变昵称
|
|
56
|
-
* 'speakerEnable':扬声器开关状态改变
|
|
57
|
-
* 'changeShare': 是否在屏幕共享
|
|
58
|
-
* 'raiseHandsVideo': 是否视频举手
|
|
59
|
-
* 'raiseHandsAudio': 是否音频举手
|
|
60
|
-
* @property {BMUser} user
|
|
61
|
-
*/
|
|
62
|
-
watcher: BehaviorSubject<IUserActionWatcher>;
|
|
63
|
-
/**
|
|
64
|
-
* 排序
|
|
65
|
-
*/
|
|
66
|
-
sortNum: number;
|
|
67
|
-
/**
|
|
68
|
-
* 举手相关
|
|
69
|
-
*/
|
|
70
|
-
raiseVideoHands: boolean;
|
|
71
|
-
raiseAudioHands: boolean;
|
|
72
|
-
isAudience: boolean;
|
|
73
|
-
/**
|
|
74
|
-
* 是不是普通参会者
|
|
75
|
-
*/
|
|
76
|
-
isCommonUser: boolean;
|
|
77
|
-
/**
|
|
78
|
-
* 是不是web端入会
|
|
79
|
-
*/
|
|
80
|
-
get isWeb(): boolean;
|
|
81
|
-
constructor(user: any, isLocal?: boolean);
|
|
82
|
-
setup(userId: string, userinfo: UserInfo, nickname: string): void;
|
|
83
|
-
getMainStreamModel(): BMStreamModel | undefined;
|
|
84
|
-
getShareStreamModel(): BMStreamModel | undefined;
|
|
85
|
-
/**
|
|
86
|
-
* 获取用户麦克风开启状态
|
|
87
|
-
*/
|
|
88
|
-
get audioEnable(): boolean;
|
|
89
|
-
get isMixer(): boolean;
|
|
90
|
-
/**
|
|
91
|
-
* 获取用户视频开启状态
|
|
92
|
-
*/
|
|
93
|
-
get videoEnable(): boolean;
|
|
94
|
-
get isSharing(): boolean;
|
|
95
|
-
/**
|
|
96
|
-
* 是否是信号源
|
|
97
|
-
*/
|
|
98
|
-
get isSignal(): boolean;
|
|
99
|
-
/**
|
|
100
|
-
* 检测当前用户是否有主持人权限
|
|
101
|
-
*/
|
|
102
|
-
checkLocalHasMaster(): boolean;
|
|
103
|
-
/**
|
|
104
|
-
* 给用户添加流
|
|
105
|
-
* @param streamId
|
|
106
|
-
* @param stream 流
|
|
107
|
-
*/
|
|
108
|
-
addStream(streamId: string, stream: BMStreamModel): void;
|
|
109
|
-
/**
|
|
110
|
-
* 删除流
|
|
111
|
-
* @param streamId
|
|
112
|
-
*/
|
|
113
|
-
removeStream(streamId: string): void;
|
|
114
|
-
/**
|
|
115
|
-
* 获取用户id
|
|
116
|
-
*/
|
|
117
|
-
getID(): string;
|
|
118
|
-
/**
|
|
119
|
-
* 获取用户昵称
|
|
120
|
-
*/
|
|
121
|
-
getNickName(): string;
|
|
122
|
-
/**
|
|
123
|
-
* 获取用户信息
|
|
124
|
-
*/
|
|
125
|
-
getUserInfo(): UserInfo;
|
|
126
|
-
/**
|
|
127
|
-
* 获取用户流信息
|
|
128
|
-
*/
|
|
129
|
-
getStreams(): Map<string, BMStreamModel>;
|
|
130
|
-
/**
|
|
131
|
-
* updateUserInfo更新用户信息(除了isMaster,isMaster是通过change-master事件改变的)
|
|
132
|
-
* @param bcUser
|
|
133
|
-
* @param participant
|
|
134
|
-
* @param bmRoom
|
|
135
|
-
* @returns
|
|
136
|
-
*/
|
|
137
|
-
updateUserInfo(bcUser: BCUser, participant: any, bmRoom: BMRoom): void;
|
|
138
|
-
/** 是否有管理权限, 是主持人或联席主持人之一 */
|
|
139
|
-
hasManager(): boolean;
|
|
140
|
-
/** 获取用户后面的身份标识 */
|
|
141
|
-
getNicknameSuffix(): string;
|
|
142
|
-
/**
|
|
143
|
-
* 更新当前用户的排序
|
|
144
|
-
*/
|
|
145
|
-
updateSortNum(): void;
|
|
146
|
-
}
|
|
147
|
-
export {};
|