@hysc/meeting 5.0.117 → 5.0.120

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.
Files changed (182) hide show
  1. package/esm/boom-core/src/BoomCore/BCClient/clientEventType.d.ts +428 -0
  2. package/{umd → esm/boom-meeting/src}/BMChat/BMChatVM.d.ts +3 -1
  3. package/{umd → esm/boom-meeting/src}/BMRoom/BMRoomVM.d.ts +42 -9
  4. package/{umd → esm/boom-meeting/src}/BMStream/BMStreamModel.d.ts +64 -21
  5. package/{umd → esm/boom-meeting/src}/BMStream/BMStreamModelVM.d.ts +78 -53
  6. package/{umd → esm/boom-meeting/src}/BMUser/BMUser.d.ts +8 -5
  7. package/{umd → esm/boom-meeting/src}/BMUser/BMUserVM.d.ts +58 -12
  8. package/esm/boom-meeting/src/audioPlay/AudioPlay.d.ts +31 -0
  9. package/{umd/src/BMRoom → esm/boom-meeting/src/handleEvent}/attachEvents.d.ts +23 -9
  10. package/esm/boom-meeting/src/handleEvent/brtcNetEvent.d.ts +9 -0
  11. package/esm/boom-meeting/src/handleEvent/customMessageEvent.d.ts +2 -0
  12. package/esm/boom-meeting/src/handleEvent/handleParticipantEvent.d.ts +24 -0
  13. package/esm/boom-meeting/src/handleEvent/handleRoomEvent.d.ts +20 -0
  14. package/esm/boom-meeting/src/handleEvent/messageEvent.d.ts +5 -0
  15. package/esm/boom-meeting/src/handleEvent/pullUser.d.ts +7 -0
  16. package/esm/boom-meeting/src/handleEvent/roomErrEvent.d.ts +9 -0
  17. package/esm/boom-meeting/src/handleEvent/streamEvent.d.ts +22 -0
  18. package/{umd → esm/boom-meeting/src}/type/customStats.d.ts +6 -0
  19. package/{umd → esm/boom-meeting/src}/type/stream.d.ts +0 -2
  20. package/esm/index.js +8 -40401
  21. package/esm/src/BMChat/BMChatVM.d.ts +3 -3
  22. package/esm/src/BMChat/BMMessageInfo.d.ts +31 -31
  23. package/esm/src/BMRoom/BMLiveVM.d.ts +35 -35
  24. package/esm/src/BMRoom/BMRoom.d.ts +705 -705
  25. package/esm/src/BMRoom/BMRoomInfo.d.ts +215 -215
  26. package/esm/src/BMStream/BMSpeaker.d.ts +26 -26
  27. package/esm/src/BMStream/BMStreamModel.d.ts +4 -5
  28. package/esm/src/BMStream/BMStreamModelVM.d.ts +4 -4
  29. package/esm/src/BMStream/getHTMLMediaStreamOptions.d.ts +35 -35
  30. package/esm/src/BMStream/sortStream.d.ts +30 -30
  31. package/esm/src/BMUser/BMUser.d.ts +1 -1
  32. package/esm/src/BMUser/BMUserVM.d.ts +4 -4
  33. package/esm/src/SingletonQueue/SingletonQueue.d.ts +26 -26
  34. package/esm/src/bjy-common/function/execute.d.ts +9 -9
  35. package/esm/src/bjy-common/function/isNative.d.ts +1 -1
  36. package/esm/src/bjy-common/function/nextTick.d.ts +2 -2
  37. package/esm/src/bjy-common/function/toString.d.ts +1 -1
  38. package/esm/src/bjy-common/util/constant.d.ts +50 -50
  39. package/esm/src/bjy-common/util/is.d.ts +49 -49
  40. package/esm/src/bjy-common/util/string.d.ts +102 -102
  41. package/esm/src/constants.d.ts +129 -129
  42. package/esm/src/error/RTCError.d.ts +20 -20
  43. package/esm/src/error/errorType.d.ts +96 -96
  44. package/esm/src/handleEvent/attachEvents.d.ts +3 -2
  45. package/esm/src/handleEvent/handleParticipantEvent.d.ts +2 -2
  46. package/esm/src/index.d.ts +2 -4
  47. package/esm/src/logger/logger.d.ts +86 -86
  48. package/esm/src/type/stream.d.ts +4 -1
  49. package/esm/src/util/Pqueue.d.ts +62 -62
  50. package/esm/src/util/Thread.d.ts +12 -12
  51. package/esm/src/util/constant.d.ts +67 -67
  52. package/esm/src/util/emitter.d.ts +43 -43
  53. package/esm/src/util/sortUtils.d.ts +10 -10
  54. package/esm/src/util/util.d.ts +78 -78
  55. package/esm/utils/BoomError.d.ts +19 -0
  56. package/esm/utils/ErrorTypes.d.ts +139 -0
  57. package/esm/utils/index.d.ts +9 -0
  58. package/package.json +7 -8
  59. package/umd/boom-meeting/src/BMStream/BMStreamModelVM.d.ts +2 -1
  60. package/umd/boom-meeting/src/audioPlay/AudioPlay.d.ts +1 -1
  61. package/umd/index.js +2 -2
  62. package/umd/src/BMChat/BMChatVM.d.ts +4 -3
  63. package/umd/src/BMRoom/BMRoom.d.ts +9 -0
  64. package/umd/src/BMRoom/BMRoomInfo.d.ts +9 -7
  65. package/umd/src/BMRoom/BMRoomVM.d.ts +16 -1
  66. package/umd/src/BMStream/BMSpeaker.d.ts +2 -20
  67. package/umd/src/BMStream/BMStreamModel.d.ts +61 -15
  68. package/umd/src/BMStream/BMStreamModelVM.d.ts +63 -56
  69. package/umd/src/BMUser/BMUser.d.ts +3 -3
  70. package/umd/src/BMUser/BMUserVM.d.ts +54 -17
  71. package/umd/src/audioPlay/AudioPlay.d.ts +31 -0
  72. package/umd/src/constants.d.ts +35 -18
  73. package/umd/src/handleEvent/attachEvents.d.ts +47 -0
  74. package/umd/src/handleEvent/brtcNetEvent.d.ts +9 -0
  75. package/umd/src/handleEvent/customMessageEvent.d.ts +2 -0
  76. package/umd/src/handleEvent/handleParticipantEvent.d.ts +24 -0
  77. package/umd/src/handleEvent/handleRoomEvent.d.ts +20 -0
  78. package/umd/src/handleEvent/messageEvent.d.ts +5 -0
  79. package/umd/src/handleEvent/pullUser.d.ts +7 -0
  80. package/umd/src/handleEvent/roomErrEvent.d.ts +9 -0
  81. package/umd/src/handleEvent/streamEvent.d.ts +22 -0
  82. package/umd/src/type/customStats.d.ts +5 -0
  83. package/umd/src/type/stream.d.ts +1 -6
  84. package/umd/src/util/Pqueue.d.ts +1 -0
  85. package/umd/src/util/Stutter.d.ts +1 -1
  86. package/umd/src/util/devices.d.ts +1 -1
  87. package/umd/src/util/emitter.d.ts +28 -4
  88. package/umd/src/util/request.d.ts +1 -1
  89. package/umd/src/util/util.d.ts +2 -1
  90. package/esm/index.js.map +0 -7
  91. package/umd/BMChat/BMMessageInfo.d.ts +0 -31
  92. package/umd/BMRoom/BMLiveVM.d.ts +0 -35
  93. package/umd/BMRoom/BMRoom.d.ts +0 -638
  94. package/umd/BMRoom/BMRoomInfo.d.ts +0 -189
  95. package/umd/BMRoom/attachEvents.d.ts +0 -27
  96. package/umd/BMStream/BMSpeaker.d.ts +0 -44
  97. package/umd/BMStream/getHTMLMediaStreamOptions.d.ts +0 -35
  98. package/umd/bjy-common/function/execute.d.ts +0 -9
  99. package/umd/bjy-common/function/isNative.d.ts +0 -1
  100. package/umd/bjy-common/function/nextTick.d.ts +0 -2
  101. package/umd/bjy-common/function/toString.d.ts +0 -1
  102. package/umd/bjy-common/util/constant.d.ts +0 -50
  103. package/umd/bjy-common/util/is.d.ts +0 -49
  104. package/umd/bjy-common/util/string.d.ts +0 -102
  105. package/umd/boom-meeting/src/BMChat/BMMessageInfo.d.ts +0 -31
  106. package/umd/boom-meeting/src/BMRoom/BMLiveVM.d.ts +0 -35
  107. package/umd/boom-meeting/src/BMRoom/BMRoom.d.ts +0 -699
  108. package/umd/boom-meeting/src/BMRoom/BMRoomInfo.d.ts +0 -215
  109. package/umd/boom-meeting/src/BMRoom/attachEvents.d.ts +0 -34
  110. package/umd/boom-meeting/src/BMStream/BMSpeaker.d.ts +0 -26
  111. package/umd/boom-meeting/src/BMStream/getHTMLMediaStreamOptions.d.ts +0 -35
  112. package/umd/boom-meeting/src/EventHandler.d.ts +0 -20
  113. package/umd/boom-meeting/src/bjy-common/function/execute.d.ts +0 -9
  114. package/umd/boom-meeting/src/bjy-common/function/isNative.d.ts +0 -1
  115. package/umd/boom-meeting/src/bjy-common/function/nextTick.d.ts +0 -2
  116. package/umd/boom-meeting/src/bjy-common/function/toString.d.ts +0 -1
  117. package/umd/boom-meeting/src/bjy-common/util/constant.d.ts +0 -50
  118. package/umd/boom-meeting/src/bjy-common/util/is.d.ts +0 -49
  119. package/umd/boom-meeting/src/bjy-common/util/string.d.ts +0 -102
  120. package/umd/boom-meeting/src/constants.d.ts +0 -129
  121. package/umd/boom-meeting/src/error/RTCError.d.ts +0 -20
  122. package/umd/boom-meeting/src/error/errorType.d.ts +0 -96
  123. package/umd/boom-meeting/src/logger/logger.d.ts +0 -86
  124. package/umd/boom-meeting/src/util/Pqueue.d.ts +0 -62
  125. package/umd/boom-meeting/src/util/constant.d.ts +0 -67
  126. package/umd/boom-meeting/src/util/emitter.d.ts +0 -43
  127. package/umd/boom-meeting/src/util/sortUtils.d.ts +0 -10
  128. package/umd/boom-meeting/src/util/util.d.ts +0 -78
  129. package/umd/constants.d.ts +0 -107
  130. package/umd/error/RTCError.d.ts +0 -20
  131. package/umd/error/errorType.d.ts +0 -96
  132. package/umd/index.d.ts +0 -2
  133. package/umd/index.js.map +0 -1
  134. package/umd/logger/logger.d.ts +0 -86
  135. package/umd/src/EventHandler.d.ts +0 -20
  136. package/umd/util/Pqueue.d.ts +0 -61
  137. package/umd/util/constant.d.ts +0 -67
  138. package/umd/util/emitter.d.ts +0 -18
  139. package/umd/util/sortUtils.d.ts +0 -10
  140. package/umd/util/util.d.ts +0 -76
  141. /package/{umd → esm/boom-meeting/src}/BMRoom/RoomEvent.d.ts +0 -0
  142. /package/{umd → esm/boom-meeting/src}/bjy-common/function/debounce.d.ts +0 -0
  143. /package/{umd → esm/boom-meeting/src}/bjy-common/function/getErrorMessage.d.ts +0 -0
  144. /package/{umd → esm/boom-meeting/src}/bjy-common/function/isDef.d.ts +0 -0
  145. /package/{umd → esm/boom-meeting/src}/bjy-common/function/isUndef.d.ts +0 -0
  146. /package/{umd → esm/boom-meeting/src}/bjy-common/function/throttling.d.ts +0 -0
  147. /package/{umd → esm/boom-meeting/src}/bjy-common/function/toNumber.d.ts +0 -0
  148. /package/{umd → esm/boom-meeting/src}/bjy-common/type/api.d.ts +0 -0
  149. /package/{umd → esm/boom-meeting/src}/bjy-common/type/options.d.ts +0 -0
  150. /package/{umd → esm/boom-meeting/src}/bjy-common/type/type.d.ts +0 -0
  151. /package/{umd → esm/boom-meeting/src}/bjy-common/util/CustomEvent.d.ts +0 -0
  152. /package/{umd → esm/boom-meeting/src}/bjy-common/util/Emitter.d.ts +0 -0
  153. /package/{umd → esm/boom-meeting/src}/bjy-common/util/NextTask.d.ts +0 -0
  154. /package/{umd → esm/boom-meeting/src}/bjy-common/util/Sleep.d.ts +0 -0
  155. /package/{umd → esm/boom-meeting/src}/bjy-common/util/Timer.d.ts +0 -0
  156. /package/{umd → esm/boom-meeting/src}/bjy-common/util/array.d.ts +0 -0
  157. /package/{umd → esm/boom-meeting/src}/bjy-common/util/browser.d.ts +0 -0
  158. /package/{umd → esm/boom-meeting/src}/bjy-common/util/holder.d.ts +0 -0
  159. /package/{umd → esm/boom-meeting/src}/bjy-common/util/keypath.d.ts +0 -0
  160. /package/{umd → esm/boom-meeting/src}/bjy-common/util/logger.d.ts +0 -0
  161. /package/{umd → esm/boom-meeting/src}/bjy-common/util/network.d.ts +0 -0
  162. /package/{umd → esm/boom-meeting/src}/bjy-common/util/object.d.ts +0 -0
  163. /package/{umd → esm/boom-meeting/src}/bjy-common/util/os.d.ts +0 -0
  164. /package/{umd → esm/boom-meeting/src}/error/errorMap.d.ts +0 -0
  165. /package/{umd → esm/boom-meeting/src}/type/index.d.ts +0 -0
  166. /package/{umd → esm/boom-meeting/src}/type/user.d.ts +0 -0
  167. /package/{umd → esm/boom-meeting/src}/util/PackLoss.d.ts +0 -0
  168. /package/{umd → esm/boom-meeting/src}/util/Privileges.d.ts +0 -0
  169. /package/{umd → esm/boom-meeting/src}/util/ReportCollector.d.ts +0 -0
  170. /package/{umd → esm/boom-meeting/src}/util/Stutter.d.ts +0 -0
  171. /package/{umd → esm/boom-meeting/src}/util/base64.d.ts +0 -0
  172. /package/{umd → esm/boom-meeting/src}/util/checkPermissions.d.ts +0 -0
  173. /package/{umd → esm/boom-meeting/src}/util/checkSystemRequirements.d.ts +0 -0
  174. /package/{umd → esm/boom-meeting/src}/util/devices.d.ts +0 -0
  175. /package/{umd → esm/boom-meeting/src}/util/formatUserId.d.ts +0 -0
  176. /package/{umd → esm/boom-meeting/src}/util/is.d.ts +0 -0
  177. /package/{umd → esm/boom-meeting/src}/util/peerToPeerProbe.d.ts +0 -0
  178. /package/{umd → esm/boom-meeting/src}/util/request.d.ts +0 -0
  179. /package/{umd → esm/boom-meeting/src}/util/roomUtils.d.ts +0 -0
  180. /package/umd/{boom-meeting/src → src}/BMStream/sortStream.d.ts +0 -0
  181. /package/umd/{boom-meeting/src → src}/SingletonQueue/SingletonQueue.d.ts +0 -0
  182. /package/umd/{boom-meeting/src → src}/util/Thread.d.ts +0 -0
@@ -1,9 +1,10 @@
1
- import BoomCore from '@hysc/core/esm';
1
+ import BCClient from '@hysc/core';
2
2
  import BMUser from "./BMUser";
3
- import BCUser from '@hysc/core/esm/BoomAdapter/User/User';
3
+ import { BCUser } from "@hysc/core";
4
4
  import BMRoom from '../BMRoom/BMRoom';
5
- import { BehaviorSubject } from 'rxjs';
5
+ import { BehaviorSubject } from "rxjs";
6
6
  import { UpdateMasterType } from '../type';
7
+ import { UserSortType } from "../util/emitter";
7
8
  /**
8
9
  * 往业务端返回的时候,需要把这些用户过滤掉
9
10
  */
@@ -13,21 +14,30 @@ export interface ChangeIsGuest {
13
14
  preIsGuest: boolean;
14
15
  isGuest: boolean;
15
16
  }
17
+ /**
18
+ * bloud 一页用户拉取数量
19
+ */
20
+ export declare const BLOUD_PAGE_SIZE = 500;
21
+ /**
22
+ * 嘉宾及以上身份用户
23
+ */
24
+ export declare const PERMISSION_NOT_COMMON = "RWPSAVMO,RWPSAVM,RWPSAV";
16
25
  export default class BMUserVM {
17
26
  userList: Map<string, BMUser>;
18
27
  audiencesList: Map<string, BMUser>;
19
28
  signalList: Map<string, BMUser>;
20
29
  commonUserList: Map<string, BMUser>;
21
- boomCore: BoomCore;
22
- room: BMRoom | null;
30
+ boomCore: BCClient;
31
+ room: BMRoom;
23
32
  userListWatcher: BehaviorSubject<BMUser[]>;
24
33
  audiencesListWatcher: BehaviorSubject<BMUser[]>;
25
34
  commonUserListWatcher: BehaviorSubject<BMUser[]>;
26
35
  signalListWatcher: BehaviorSubject<BMUser[]>;
27
36
  masterUserWatcher: BehaviorSubject<BMUser | null>;
37
+ getForceUserWatcher: BehaviorSubject<boolean>;
28
38
  localUser: BMUser;
29
- constructor(boomCore: BoomCore, localUser: BMUser);
30
- initWithRoom(room: BMRoom): void;
39
+ commTimer: number;
40
+ constructor(boomCore: BCClient, localUser: BMUser, room: BMRoom);
31
41
  handleUserRoleChange(info: ChangeIsGuest): Promise<void>;
32
42
  /**
33
43
  * 添加用户, 并返回已添加的用户对象
@@ -38,7 +48,7 @@ export default class BMUserVM {
38
48
  * 移除用户
39
49
  * @param userId 用户id
40
50
  */
41
- removeUser(userId: string): void;
51
+ removeUser(userId: string): boolean;
42
52
  /**
43
53
  * 获取用户视频开启状态
44
54
  * @param userId 用户id
@@ -57,7 +67,7 @@ export default class BMUserVM {
57
67
  /**
58
68
  * 检测当前用户是否有主持人权限
59
69
  */
60
- checkLocalHasMaster(): any;
70
+ checkLocalHasMaster(): boolean;
61
71
  /**
62
72
  * 检测目标用户是否有主持人权限
63
73
  */
@@ -67,11 +77,13 @@ export default class BMUserVM {
67
77
  * @param {string} userId
68
78
  */
69
79
  getUser(userId: string): BMUser | undefined;
70
- getAllUsers(pageIndex: number, allUsers: Map<string, BCUser>): Promise<void>;
80
+ getAllUsers(pageIndex: number, allUsers: Map<string, BCUser>, permission?: string, useNew?: boolean): Promise<void>;
71
81
  /**
72
82
  * 刚加入房间时初始化人数
73
83
  */
74
84
  initUserList(usersInRoom: Map<string, BCUser>): Promise<void>;
85
+ addBcUsersMap(users: Map<string, BCUser>, forceGetStream?: boolean): void;
86
+ addBCUser: (bcUser: BCUser, forceGetStream?: boolean) => BMUser | null;
75
87
  /**
76
88
  * 改变userList中的主持人,返回改变后的主持人用户对象,该方法只在change-master中调用, 不对外暴露
77
89
  * @param userId
@@ -97,6 +109,7 @@ export default class BMUserVM {
97
109
  */
98
110
  getLocalUser(): BMUser;
99
111
  updateUser(bmUser: BMUser, bcUser: BCUser): void;
112
+ updateLocalUserPermission(permission: string): void;
100
113
  /**
101
114
  * bcUser变成BMUser
102
115
  * @param bcUser
@@ -111,12 +124,24 @@ export default class BMUserVM {
111
124
  /**
112
125
  * 排序变化之后的处理逻辑
113
126
  */
114
- updateSort: () => void;
127
+ updateAllSort: () => void;
128
+ updateSortByType: (userType: UserSortType) => void;
129
+ updateUserSort: any;
130
+ updateCommonUserSort: any;
131
+ updateDelayCommonUserSort: any;
132
+ updateAudienceUserSort: () => void;
133
+ updateSignalUserSort: () => void;
115
134
  /**
116
135
  * 初始化所有的用户
117
- * @param total
118
136
  */
119
- initUsers(total: number): Promise<void>;
137
+ initUsers(): Promise<void>;
138
+ /**
139
+ * 把bloud用户转化为当前的BMUser 和创建对应的BMStreamModel
140
+ * @param page
141
+ * @param permission
142
+ * @param useNew 是否使用getUsersList
143
+ */
144
+ transBloudUsers: (page: number, permission?: string, useNew?: boolean, failedNum?: number) => Promise<void>;
120
145
  /**
121
146
  * 本地嘉宾用户降级为普通参会者之后要取消拉流
122
147
  */
@@ -126,15 +151,27 @@ export default class BMUserVM {
126
151
  userList: BMUser[];
127
152
  total: number;
128
153
  }>;
154
+ getUsersList(page: number, pageSize: number, permission?: string, waitRoom?: boolean): Promise<{
155
+ userList: BMUser[];
156
+ total: number;
157
+ pageIndex: number;
158
+ }>;
129
159
  getTotalUserNumber(): Promise<number>;
130
160
  clearUsers(): void;
131
161
  /**
132
- * 参会者列表搜索(嘉宾及以上才能搜索)
133
- * @param searchTxt 搜索文本
134
- * @param pageSize 一页几个
135
- */
162
+ * 参会者列表搜索(嘉宾及以上才能搜索)
163
+ * @param searchTxt 搜索文本
164
+ * @param pageSize 一页几个
165
+ * @param waitRoom 是否是等候室用户
166
+ */
136
167
  searchUsers(searchTxt: string, pageSize: number): Promise<{
137
168
  userList: BMUser[];
138
169
  commonUserList: BMUser[];
139
170
  }>;
171
+ /**
172
+ * 查找等候室用户
173
+ * @param searchTxt
174
+ * @param pageSize
175
+ */
176
+ searchWaitRoomUsers(searchTxt: string, pageSize: number): Promise<BMUser[]>;
140
177
  }
@@ -0,0 +1,31 @@
1
+ /**
2
+ * @name: AudioPlay.ts
3
+ * @author: yangliye
4
+ * @date: 2023-06-08 16:35
5
+ * @description:AudioPlay.ts
6
+ * @update: 2023-06-08 16:35
7
+ */
8
+ import { SingleRemoteStream, SingleStream } from "../type";
9
+ import { AudioPlayer } from '@hysc/core';
10
+ import BMRoom from "../BMRoom/BMRoom";
11
+ import { Subject } from "rxjs";
12
+ export default class AudioPlay {
13
+ playMap: WeakSet<SingleStream>;
14
+ playerMap: Map<string, AudioPlayer>;
15
+ container: HTMLDivElement | undefined;
16
+ muted: boolean;
17
+ room: BMRoom;
18
+ playStateChangeWatcher: Subject<AudioPlayer>;
19
+ deviceId?: string;
20
+ constructor(containerId: string, room: BMRoom);
21
+ addStream(stream: SingleRemoteStream, force?: boolean): void;
22
+ removeStream(stream: SingleStream): void;
23
+ removeStreamByUid(uid: string): void;
24
+ play(stream: SingleRemoteStream): Promise<void>;
25
+ mute(mute: boolean): void;
26
+ setVolume(streamId: string, volume: number): void;
27
+ setDevice(deviceId: string, force?: boolean): Promise<void>;
28
+ addPlayerEvent(player: AudioPlayer): void;
29
+ clear(): void;
30
+ destroy(): void;
31
+ }
@@ -9,24 +9,37 @@
9
9
  * 标品排序规则
10
10
  */
11
11
  export declare enum MODEL_SORT_ENUM_STAND {
12
- SCREEN = 0,
13
- MASTER = 1,
14
- LOCAL = 2,
15
- MANAGER_AUDIO_VIDEO = 3,
16
- MANAGER_AUDIO = 4,
17
- MANAGER_VIDEO = 5,
18
- MANAGER = 6,
19
- RAISE_HAND = 7,
20
- RAISE_AUDIO = 8,
21
- RAISE_VIDEO = 9,
22
- GUEST_AUDIO_VIDEO = 10,
23
- GUEST_AUDIO = 11,
24
- GUEST_VIDEO = 12,
25
- SIGNAL = 13,
26
- COMMONUSER_AUDIO_VIDEO = 14,
27
- COMMONUSER_AUDIO = 15,
28
- COMMONUSER_VIDEO = 16,
29
- OTHER = 17
12
+ SCREEN_MASTER = 0,
13
+ SCREEN_MANAGER_AUDIO_VIDEO = 1,
14
+ SCREEN_MANAGER_AUDIO = 2,
15
+ SCREEN_MANAGER_VIDEO = 3,
16
+ SCREEN_MANAGER = 4,
17
+ SCREEN_GUEST_AUDIO_VIDEO = 5,
18
+ SCREEN_GUEST_AUDIO = 6,
19
+ SCREEN_GUEST_VIDEO = 7,
20
+ SCREEN_GUEST = 8,
21
+ SCREEN_COMMONUSER_AUDIO_VIDEO = 9,
22
+ SCREEN_COMMONUSER_AUDIO = 10,
23
+ SCREEN_COMMONUSER_VIDEO = 11,
24
+ SCREEN_OTHER = 12,
25
+ MASTER = 13,
26
+ LOCAL = 14,
27
+ MANAGER_AUDIO_VIDEO = 15,
28
+ MANAGER_AUDIO = 16,
29
+ MANAGER_VIDEO = 17,
30
+ MANAGER = 18,
31
+ RAISE_HAND = 19,
32
+ RAISE_AUDIO = 20,
33
+ RAISE_VIDEO = 21,
34
+ GUEST_AUDIO_VIDEO = 22,
35
+ GUEST_AUDIO = 23,
36
+ GUEST_VIDEO = 24,
37
+ GUEST = 25,
38
+ SIGNAL = 26,
39
+ COMMONUSER_AUDIO_VIDEO = 27,
40
+ COMMONUSER_AUDIO = 28,
41
+ COMMONUSER_VIDEO = 29,
42
+ OTHER = 30
30
43
  }
31
44
  /**
32
45
  * 中移排序规则
@@ -110,3 +123,7 @@ export declare const UNSUBSCRIBE_STREAM = "unsubscribe-stream";
110
123
  export declare const CHANG_IS_GUEST = "change-is-guest";
111
124
  export declare const BIND_BIG_ELEMENT = "bind-big-element";
112
125
  export declare const NO_CONTAINER = "no-container";
126
+ export declare const MODEL_SORT_NUM_CHANGE = "model-sort-num-change";
127
+ export declare const ADD_PULL_USER = "add-pull-user";
128
+ export declare const SET_VOLUME = "set-volume";
129
+ export declare const ADD_AUDIO_PLAY = "add-audio-play";
@@ -0,0 +1,47 @@
1
+ import BoomCore from '@hysc/core';
2
+ import BMStreamModelVM from "../BMStream/BMStreamModelVM";
3
+ import BMRoom from '../BMRoom/BMRoom';
4
+ import BMUserVM from "../BMUser/BMUserVM";
5
+ import BMChatVM from '../BMChat/BMChatVM';
6
+ import { BehaviorSubject } from 'rxjs';
7
+ import type { StreamCustomInfo } from '@hysc/bloud';
8
+ /**
9
+ * 收到消息信令的集合
10
+ */
11
+ export declare enum MessageType {
12
+ /**
13
+ * 初始化watcher用
14
+ */
15
+ INIT = "init",
16
+ /**
17
+ * 收到远端控制本地摄像头的消息
18
+ */
19
+ VIDEO_FORCE_CHANGE = "video-force-change",
20
+ /**
21
+ * 收到远端控制本地麦克风的消息
22
+ */
23
+ AUDIO_FORCE_CHANGE = "audio-force-change"
24
+ }
25
+ export interface BloudStreamEventState {
26
+ userId: string;
27
+ streamId: string;
28
+ isScreen: boolean;
29
+ video: boolean;
30
+ audio: boolean;
31
+ customInfo?: StreamCustomInfo;
32
+ }
33
+ export interface BloudStreamState {
34
+ video: boolean;
35
+ audio: boolean;
36
+ isScreen: boolean;
37
+ customInfo?: StreamCustomInfo;
38
+ }
39
+ export interface BloudUnPubEvent {
40
+ userId: string;
41
+ streamId: string;
42
+ isScreen: boolean;
43
+ }
44
+ export declare type Observes = {
45
+ [k: string]: BehaviorSubject<any>;
46
+ };
47
+ export declare function attachEvents(boomCore: BoomCore, userVM: BMUserVM, bmStreamVm: BMStreamModelVM, chatVM: BMChatVM, bmRoom: BMRoom): Observes;
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @name: brtcNetEvent
3
+ * @author: yangliye
4
+ * @date: 2023-04-26 10:39
5
+ * @description:brtcNetEvent
6
+ * @update: 2023-04-26 10:39
7
+ */
8
+ import BoomCore from "@hysc/core";
9
+ export declare function addBrtcNetEvent(bcClient: BoomCore): void;
@@ -0,0 +1,2 @@
1
+ import BMRoom from "../BMRoom/BMRoom";
2
+ export declare function handleCustomStats(data: any, bmRoom: BMRoom, observes: any): void;
@@ -0,0 +1,24 @@
1
+ /**
2
+ * @name: EventHandler
3
+ * @author: yangliye
4
+ * @date: 2023-04-04 10:14
5
+ * @description:EventHandler
6
+ * @update: 2023-04-04 10:14
7
+ */
8
+ import BMUserVM from "../BMUser/BMUserVM";
9
+ import BMRoom from "../BMRoom/BMRoom";
10
+ import BMStreamModelVM from "../BMStream/BMStreamModelVM";
11
+ import BCClient from "@hysc/core";
12
+ import BMChatVM from "../BMChat/BMChatVM";
13
+ import BoomCore from "@hysc/core";
14
+ import { BCUser } from "@hysc/core";
15
+ import BMUser from "../BMUser/BMUser";
16
+ export declare function handleParticipantJoin(data: any, userVM: BMUserVM, bmStreamVm: BMStreamModelVM, boomCore: BoomCore, chatVM: BMChatVM, observes: any): void;
17
+ export declare function handleLeaveUsers(data: any, userVM: BMUserVM, bmRoom: BMRoom, observes: any, bmStreamVm: BMStreamModelVM, boomCore: BCClient, chatVM: BMChatVM): void;
18
+ export declare function handleParticipantLeft(data: any, userVM: BMUserVM, bmRoom: BMRoom, observes: any, bmStreamVm: BMStreamModelVM, boomCore: BCClient, chatVM: BMChatVM): void;
19
+ export declare function handleChangeMaster(data: any, userVM: BMUserVM, bmRoom: BMRoom, observes: any, bmStreamVm: BMStreamModelVM): void;
20
+ export declare function handleEvict(data: any, userVM: BMUserVM, bmStreamVm: BMStreamModelVM, bmRoom: BMRoom, observes: any): void;
21
+ export declare function handleUpdateUser(data: any, userVM: BMUserVM, bmRoom: BMRoom, bmStreamVm: BMStreamModelVM, observes: any): void;
22
+ export declare function updateBMUser(allUsers: Map<string, BCUser>, bmUser: BMUser, userVm: BMUserVM): void;
23
+ export declare const handleUserRejoined: any;
24
+ export declare function handleMoveUserRoom(bmRoom: BMRoom, userVM: BMUserVM, data: any, observes: any): Promise<void>;
@@ -0,0 +1,20 @@
1
+ /**
2
+ * @name: handleRoomEvent
3
+ * @author: yangliye
4
+ * @date: 2023-04-25 15:16
5
+ * @description:handleRoomEvent
6
+ * @update: 2023-04-25 15:16
7
+ */
8
+ import BMRoom from "../BMRoom/BMRoom";
9
+ import BMUserVM from "../BMUser/BMUserVM";
10
+ import BMStreamModelVM from "../BMStream/BMStreamModelVM";
11
+ export declare function handleRoomConnected(data: any, bmRoom: BMRoom, userVM: BMUserVM, observes: any, shouldNotification?: boolean): Promise<void>;
12
+ export declare function handleInitJoinRoomUsers(bmRoom: BMRoom): Promise<void>;
13
+ export declare function handleRoomUpdated(data: any, bmRoom: BMRoom): void;
14
+ export declare function handleInitRoomInfo(data: any, bmRoom: BMRoom): void;
15
+ export declare function handleRoomSync(data: any, bmRoom: BMRoom, userVm: BMUserVM, bmStreamVm: BMStreamModelVM): Promise<void>;
16
+ export declare function handleBrtcRoomReconnecting(data: any, bmRoom: BMRoom, observes: any): void;
17
+ export declare function handleBrtcRoomReconnected(data: any, bmRoom: BMRoom, observes: any): void;
18
+ export declare function handleBloudRoomReconnecting(data: any, bmRoom: BMRoom, observes: any): void;
19
+ export declare function handleBloudRoomReconnected(data: any, bmRoom: BMRoom, observes: any): Promise<void>;
20
+ export declare function handleBloudRoomSync(data: any, userVM: BMUserVM, bmRoom: BMRoom, bmStreamVm: BMStreamModelVM, observes: any): Promise<void>;
@@ -0,0 +1,5 @@
1
+ import BMUserVM from "../BMUser/BMUserVM";
2
+ import BMChatVM from "../BMChat/BMChatVM";
3
+ import BMRoom from "../BMRoom/BMRoom";
4
+ export declare function handleSendMessage(msg: any, userVM: BMUserVM, chatVM: BMChatVM, observes: any): void;
5
+ export declare function handleCustomMessage(msg: any, bmRoom: BMRoom, observes: any): void;
@@ -0,0 +1,7 @@
1
+ import BMRoom from "../BMRoom/BMRoom";
2
+ /**
3
+ * 处理brtc用户列表,当当前房间内brtc用户超过50人的时候,只会给端上下发50个人
4
+ * 超过50个人需要调用该方法去处理
5
+ * @param bmRoom
6
+ */
7
+ export declare function handlePullBrtcUsers(bmRoom: BMRoom): Promise<void>;
@@ -0,0 +1,9 @@
1
+ import BMRoom from "../BMRoom/BMRoom";
2
+ import BCClient from "@hysc/core";
3
+ import BMStreamModelVM from "../BMStream/BMStreamModelVM";
4
+ import BoomCore from "@hysc/core";
5
+ export declare const NETWORK_ERROR_QUEUE: Set<(...args: any) => void>;
6
+ export declare function handleBRTCRoomError(data: any, bmRoom: BMRoom, boomCore: BCClient, bmStreamVm: BMStreamModelVM, observes: any): Promise<void>;
7
+ export declare function reconnectBloud(bmRoom: BMRoom, boomCore: BoomCore, observes: any, data: any): Promise<unknown>;
8
+ export declare function reconnectBRTCShareWS(boomCore: BoomCore): Promise<unknown>;
9
+ export declare function handleBloudError(bmRoom: BMRoom, boomCore: BCClient, bmStreamVm: BMStreamModelVM, data: any, observes: any): Promise<void>;
@@ -0,0 +1,22 @@
1
+ /**
2
+ * @name: streamEvent
3
+ * @author: yangliye
4
+ * @date: 2023-04-26 10:36
5
+ * @description:streamEvent
6
+ * @update: 2023-04-26 10:36
7
+ */
8
+ import BMStreamModel from "../BMStream/BMStreamModel";
9
+ import BMStreamModelVM from "../BMStream/BMStreamModelVM";
10
+ import { BloudStreamEventState, BloudUnPubEvent } from "./attachEvents";
11
+ import BMRoom from "../BMRoom/BMRoom";
12
+ export declare function checkStreamIsNormal(streamModel: BMStreamModel | undefined): void;
13
+ export declare function handleStreamUpdated(event: any, bmStreamVm: BMStreamModelVM, observes: any): void;
14
+ export declare function handleBloudReconnectStreamEvent(bmStreamVm: BMStreamModelVM): void;
15
+ export declare const handleReconnectedStream: any;
16
+ export declare function handleStreamPublished(event: any, bmStreamVm: BMStreamModelVM, bmRoom: BMRoom, observes: any): void;
17
+ export declare function handleBloudStreamPublished(data: any, bmStreamVm: BMStreamModelVM, observes: any): void;
18
+ export declare function handleBloudStreamPubAUpdate(data: BloudStreamEventState, bmStreamVm: BMStreamModelVM, isPublish?: boolean): void;
19
+ export declare function handleBloudStreamUnPublished(data: any, bmStreamVm: BMStreamModelVM, observes: any): void;
20
+ export declare function handleBloudStreamUpdated(data: any, bmStreamVm: BMStreamModelVM, observes: any): void;
21
+ export declare function handleBloudStreamUnpublish(data: BloudUnPubEvent, bmStreamVm: BMStreamModelVM): void;
22
+ export declare function handleShareStreamFailed(bmRoom: BMRoom, bmStreamVm: BMStreamModelVM): void;
@@ -83,6 +83,7 @@ export interface CustomStats {
83
83
  */
84
84
  layoutMode: number;
85
85
  from: From;
86
+ showTipNotice: boolean;
86
87
  mainLayout: MainLayout;
87
88
  forceOn: ForceOn;
88
89
  defaultLayout: DefaultLayout;
@@ -114,5 +115,9 @@ export interface CustomStats {
114
115
  forceOpenUserCamera: boolean;
115
116
  onlyOnePersonShare: number;
116
117
  raiseHandEnable: number;
118
+ joinCueVoice: number;
119
+ autoMute: number;
120
+ allUserReceiveJoinLeaveMessages: number;
121
+ userJoinMasterVoice: number;
117
122
  }
118
123
  export declare type PartialCustomStats = Partial<CustomStats>;
@@ -5,13 +5,8 @@
5
5
  * @description:stream
6
6
  * @update: 2022-04-25 13:42
7
7
  */
8
- import LocalStream from '@hysc/core/esm/BoomAdapter/singleMode/stream/LocalStream';
9
- import RemoteStream from '@hysc/core/esm/BoomAdapter/singleMode/stream/RemoteStream';
10
- import { StreamDeviceOption } from '@hysc/core/esm/BoomAdapter/type/BRTCStream';
11
- import { RemoteStreamOptions } from '@hysc/core/esm/BoomCore/BCClient/BCClient';
12
- export { SubscribeOptions } from '@hysc/core/esm/BoomAdapter/type/BRTCClient';
8
+ import type { LocalStream, RemoteStream, StreamDeviceOption } from '@hysc/brtc';
13
9
  export declare type SingleLocalStream = LocalStream;
14
10
  export declare type SingleRemoteStream = RemoteStream;
15
11
  export declare type SingleStream = SingleLocalStream | SingleRemoteStream;
16
12
  export declare type SingleStreamDeviceOption = StreamDeviceOption;
17
- export declare type SingleRemoteStreamOption = Pick<RemoteStreamOptions, 'uid' | 'stream' | 'subStream' | 'sid'>;
@@ -58,4 +58,5 @@ declare class Pqueue {
58
58
  onEmpty(): Promise<void>;
59
59
  }
60
60
  export declare const streamPullQueue: Pqueue;
61
+ export declare const eventQueue: Pqueue;
61
62
  export {};
@@ -1,4 +1,4 @@
1
- import { ReportThreshold } from '../type/type';
1
+ import { ReportThreshold } from '../type/types';
2
2
  export default class Stutter {
3
3
  private audioPacketLossStutter;
4
4
  private videoPacketLossStutter;
@@ -1,2 +1,2 @@
1
- import { RawDevice } from '../type/type';
1
+ import { RawDevice } from '../type/types';
2
2
  export declare function getDevices(type: string): Promise<RawDevice[]>;
@@ -1,10 +1,27 @@
1
+ /**
2
+ * @name: emitter
3
+ * @author: yangliye
4
+ * @date: 2022-05-24 15:15
5
+ * @description:emitter
6
+ * @update: 2022-05-24 15:15
7
+ */
8
+ import { Emitter } from "mitt";
1
9
  import { ConnectErrorMessage, NoPlayerContainer, SubscribeMessage } from "../BMStream/BMStreamModel";
2
- import { BIND_BIG_ELEMENT, BIND_ELEMENT, CHANG_IS_GUEST, HANDLE_STREAM_CONNECT_ERROR, MANUAL_SUBSCRIPTION, NO_CONTAINER, RAISE_HAND, RECEIVE_SUBSCRIBE_MESSAGE, UNSUBSCRIBE_STREAM, USER_SORT_NUM_CHANGE } from "../constants";
10
+ import { ADD_AUDIO_PLAY, ADD_PULL_USER, BIND_BIG_ELEMENT, BIND_ELEMENT, CHANG_IS_GUEST, HANDLE_STREAM_CONNECT_ERROR, MANUAL_SUBSCRIPTION, MODEL_SORT_NUM_CHANGE, NO_CONTAINER, RAISE_HAND, RECEIVE_SUBSCRIBE_MESSAGE, SET_VOLUME, UNSUBSCRIBE_STREAM, USER_SORT_NUM_CHANGE } from "../constants";
3
11
  import { RaiseHandInfo } from "../BMUser/BMUser";
4
12
  import { ChangeIsGuest } from "../BMUser/BMUserVM";
13
+ import { PullItem } from "../SingletonQueue/SingletonQueue";
14
+ export declare type UserSortType = {
15
+ isCommon: boolean;
16
+ shouldDelay: boolean;
17
+ };
18
+ export declare type VolumeInfo = {
19
+ streamId: string;
20
+ volume: number;
21
+ };
5
22
  declare type Events = {
6
23
  [RECEIVE_SUBSCRIBE_MESSAGE]: SubscribeMessage;
7
- [USER_SORT_NUM_CHANGE]: null;
24
+ [USER_SORT_NUM_CHANGE]: UserSortType;
8
25
  [HANDLE_STREAM_CONNECT_ERROR]: ConnectErrorMessage;
9
26
  [RAISE_HAND]: RaiseHandInfo;
10
27
  [UNSUBSCRIBE_STREAM]: SubscribeMessage;
@@ -13,7 +30,14 @@ declare type Events = {
13
30
  [BIND_ELEMENT]: SubscribeMessage;
14
31
  [BIND_BIG_ELEMENT]: SubscribeMessage;
15
32
  [NO_CONTAINER]: NoPlayerContainer;
33
+ [MODEL_SORT_NUM_CHANGE]: null;
34
+ [ADD_PULL_USER]: PullItem;
35
+ [SET_VOLUME]: VolumeInfo;
36
+ [ADD_AUDIO_PLAY]: SubscribeMessage;
16
37
  };
17
- export declare const emitter: import("mitt").Emitter<Events>;
18
- export declare const removeEmitter: () => void;
38
+ export default class BoomEmitter {
39
+ static emitter: Emitter<Events> | undefined;
40
+ static getInstance(): Emitter<Events>;
41
+ static removeEmitter: () => void;
42
+ }
19
43
  export {};
@@ -1,4 +1,4 @@
1
- import { MsaterRes, ProbeServerRes, SigRes } from '../type/type';
1
+ import { MsaterRes, ProbeServerRes, SigRes } from '../type/types';
2
2
  /**
3
3
  * 设置请求环境
4
4
  *
@@ -66,7 +66,8 @@ export declare function timestampMillisecond(diffNTP?: number): number;
66
66
  * @returns {string} 12:09
67
67
  */
68
68
  export declare function handleTime(timeStamp: number): string;
69
- export declare function sortStreamModelsOrUser<T extends BMUser | BMStreamModel>(list: T[], reverse?: boolean): T[];
69
+ export declare function sortUsers(list: BMUser[]): BMUser[];
70
+ export declare function sortStreamModels(list: BMStreamModel[]): BMStreamModel[];
70
71
  /**
71
72
  * 根据权限判断是不是普通参会者
72
73
  * @param permission