@hysc/meeting 4.0.48 → 4.0.51

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.
@@ -3,13 +3,14 @@ import BMRoomVM, { AudioProfileInfo } from "./BMRoomVM";
3
3
  import BMUserVM from '../BMUser/BMUserVM';
4
4
  import { SingleLocalStream, SingleRemoteStream, SubscribeOptions } from '../type';
5
5
  import BMChatVM from '../BMChat/BMChatVM';
6
- import BMStreamModelVM from '../BMStream/BMStreamModelVM';
6
+ import BMStreamModelVM from "../BMStream/BMStreamModelVM";
7
7
  import { Device, VideoProfile } from '@hysc/core/esm/BoomAdapter/type/value';
8
8
  import BMRoomInfo from './BMRoomInfo';
9
9
  import { BehaviorSubject, Subject } from 'rxjs';
10
10
  import BMStreamModel from '../BMStream/BMStreamModel';
11
11
  import BMUser from '../BMUser/BMUser';
12
12
  import BMLiveVM from './BMLiveVM';
13
+ import SingletonQueue, { PullItem } from "../SingletonQueue/SingletonQueue";
13
14
  interface BMRoomProps {
14
15
  initDevices: boolean;
15
16
  }
@@ -27,6 +28,7 @@ export default class BMRoom {
27
28
  selectVideoDevice: Device | null;
28
29
  selectAudioDevice: Device | null;
29
30
  selectAudioOutputDevice: Device | null;
31
+ streamQueue: SingletonQueue;
30
32
  /**
31
33
  * 这个参数是和业务相关的功能,业务上的参会者列表是可以配置的,如果设置了只展示一列,那么所有的用户都要存储
32
34
  * 在commonUserList中
@@ -75,6 +77,7 @@ export default class BMRoom {
75
77
  * 会控底层相关处理, 比如是否取消自动拉流
76
78
  */
77
79
  private meetingControlOptions;
80
+ forceId: string;
78
81
  get isSingleColumns(): boolean;
79
82
  /**
80
83
  * 传递信息用的,主要是用于message信令往上层业务发送消息
@@ -634,6 +637,10 @@ export default class BMRoom {
634
637
  * 重拉远端流
635
638
  */
636
639
  handleResetOtherStreamStatus(): void;
640
+ addUser2Queue(pullItem: PullItem): Promise<void>;
641
+ queueProcessor: any;
642
+ handleAddStreams(streams: SingleRemoteStream[]): void;
643
+ queryBrtcStreams(uids: string[]): Promise<any>;
637
644
  getVersion(): string;
638
645
  }
639
646
  export {};
@@ -165,6 +165,16 @@ export default class BMRoomVM {
165
165
  * @param enable
166
166
  */
167
167
  changeAutoMute(enable: 0 | 1 | 2): Promise<void>;
168
+ /**
169
+ * 允许成员接收进入/离开会议通知配置 0 关闭 1 开启自动静音
170
+ * @param enable
171
+ */
172
+ allUserReceiveJoinLeaveMessages(enable: 0 | 1): Promise<void>;
173
+ /**
174
+ * 成员入会时给主持人播放提示音配置 0 关闭 1 开启自动静音
175
+ * @param enable
176
+ */
177
+ userJoinMasterVoice(enable: 0 | 1): Promise<void>;
168
178
  /**
169
179
  * 观众点赞(走customMessage)
170
180
  * @param type 1:点赞, 2:送花, 3:爱心, 4: 鼓掌, 5: 喝彩
@@ -0,0 +1,25 @@
1
+ /**
2
+ * @name: SingletonQueue
3
+ * @author: yangliye
4
+ * @date: 2023-05-18 09:47
5
+ * @description:SingletonQueue
6
+ * @update: 2023-05-18 09:47
7
+ */
8
+ declare type CallBack = (arg: Map<string, PullItem>, ...args: any) => void;
9
+ export declare type PullItem = {
10
+ id: string;
11
+ isScreen: boolean;
12
+ isWeb?: boolean;
13
+ };
14
+ export default class SingletonQueue {
15
+ private static instance;
16
+ private _callback;
17
+ private pullMap;
18
+ constructor();
19
+ addUsers(userIds: PullItem[]): void;
20
+ removeUsers(userId: PullItem[]): void;
21
+ restart(): void;
22
+ setQueueProcessor(callback: CallBack): void;
23
+ removeQueueProcessor(): void;
24
+ }
25
+ export {};
@@ -116,5 +116,7 @@ export interface CustomStats {
116
116
  raiseHandEnable: number;
117
117
  joinCueVoice: number;
118
118
  autoMute: number;
119
+ allUserReceiveJoinLeaveMessages: number;
120
+ userJoinMasterVoice: number;
119
121
  }
120
122
  export declare type PartialCustomStats = Partial<CustomStats>;