@hysc/meeting 2.6.64 → 2.6.66

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 (97) hide show
  1. package/esm/boom-core/src/BoomCore/BCClient/clientEventType.d.ts +418 -0
  2. package/esm/boom-meeting/src/BMChat/BMMessageInfo.d.ts +4 -0
  3. package/esm/boom-meeting/src/BMRoom/RoomEvent.d.ts +1 -0
  4. package/esm/boom-meeting/src/BMStream/BMSpeaker.d.ts +2 -2
  5. package/esm/boom-meeting/src/BMStream/BMStreamModel.d.ts +27 -6
  6. package/esm/boom-meeting/src/EventHandler.d.ts +20 -0
  7. package/esm/boom-meeting/src/bjy-common/function/debounce.d.ts +9 -0
  8. package/esm/boom-meeting/src/bjy-common/function/isDef.d.ts +1 -0
  9. package/esm/boom-meeting/src/bjy-common/function/isUndef.d.ts +1 -0
  10. package/esm/boom-meeting/src/bjy-common/function/throttling.d.ts +9 -0
  11. package/esm/boom-meeting/src/bjy-common/function/toNumber.d.ts +1 -0
  12. package/esm/boom-meeting/src/bjy-common/type/api.d.ts +66 -0
  13. package/esm/boom-meeting/src/bjy-common/type/options.d.ts +7 -0
  14. package/esm/boom-meeting/src/bjy-common/type/type.d.ts +90 -0
  15. package/esm/boom-meeting/src/bjy-common/util/NextTask.d.ts +28 -0
  16. package/esm/boom-meeting/src/bjy-common/util/Sleep.d.ts +14 -0
  17. package/esm/boom-meeting/src/bjy-common/util/Timer.d.ts +13 -0
  18. package/esm/boom-meeting/src/bjy-common/util/browser.d.ts +6 -0
  19. package/esm/boom-meeting/src/bjy-common/util/holder.d.ts +6 -0
  20. package/esm/boom-meeting/src/bjy-common/util/network.d.ts +4 -0
  21. package/esm/boom-meeting/src/bjy-common/util/os.d.ts +14 -0
  22. package/esm/boom-meeting/src/error/errorMap.d.ts +70 -0
  23. package/esm/boom-meeting/src/type/customStats.d.ts +119 -0
  24. package/esm/boom-meeting/src/type/index.d.ts +9 -0
  25. package/esm/boom-meeting/src/type/stream.d.ts +15 -0
  26. package/esm/boom-meeting/src/type/user.d.ts +9 -0
  27. package/esm/boom-meeting/src/util/PackLoss.d.ts +7 -0
  28. package/esm/boom-meeting/src/util/Privileges.d.ts +20 -0
  29. package/esm/boom-meeting/src/util/ReportCollector.d.ts +22 -0
  30. package/esm/boom-meeting/src/util/Stutter.d.ts +19 -0
  31. package/esm/boom-meeting/src/util/base64.d.ts +4 -0
  32. package/esm/boom-meeting/src/util/checkPermissions.d.ts +1 -0
  33. package/esm/boom-meeting/src/util/checkSystemRequirements.d.ts +1 -0
  34. package/esm/boom-meeting/src/util/devices.d.ts +2 -0
  35. package/esm/boom-meeting/src/util/formatUserId.d.ts +2 -0
  36. package/esm/boom-meeting/src/util/is.d.ts +70 -0
  37. package/esm/boom-meeting/src/util/peerToPeerProbe.d.ts +9 -0
  38. package/esm/boom-meeting/src/util/request.d.ts +45 -0
  39. package/esm/boom-meeting/src/util/sortUtils.d.ts +10 -0
  40. package/esm/boom-meeting/src/util/util.d.ts +1 -0
  41. package/esm/index.js +6 -6
  42. package/esm/index.js.map +2 -2
  43. package/esm/src/BMStream/BMStreamModel.d.ts +11 -7
  44. package/esm/src/BMStream/BMStreamModelVM.d.ts +11 -4
  45. package/esm/src/BMUser/BMUser.d.ts +2 -1
  46. package/esm/src/EventHandler.d.ts +20 -0
  47. package/esm/src/constants.d.ts +18 -1
  48. package/esm/src/util/emitter.d.ts +4 -2
  49. package/esm/src/util/sortUtils.d.ts +10 -10
  50. package/package.json +3 -3
  51. package/umd/boom-core/src/BoomCore/BCClient/clientEventType.d.ts +418 -0
  52. package/umd/boom-meeting/src/BMChat/BMMessageInfo.d.ts +4 -0
  53. package/umd/boom-meeting/src/BMRoom/RoomEvent.d.ts +1 -0
  54. package/umd/boom-meeting/src/BMStream/BMSpeaker.d.ts +2 -2
  55. package/umd/boom-meeting/src/BMStream/BMStreamModel.d.ts +27 -6
  56. package/umd/boom-meeting/src/EventHandler.d.ts +20 -0
  57. package/umd/boom-meeting/src/bjy-common/function/debounce.d.ts +9 -0
  58. package/umd/boom-meeting/src/bjy-common/function/isDef.d.ts +1 -0
  59. package/umd/boom-meeting/src/bjy-common/function/isUndef.d.ts +1 -0
  60. package/umd/boom-meeting/src/bjy-common/function/throttling.d.ts +9 -0
  61. package/umd/boom-meeting/src/bjy-common/function/toNumber.d.ts +1 -0
  62. package/umd/boom-meeting/src/bjy-common/type/api.d.ts +66 -0
  63. package/umd/boom-meeting/src/bjy-common/type/options.d.ts +7 -0
  64. package/umd/boom-meeting/src/bjy-common/type/type.d.ts +90 -0
  65. package/umd/boom-meeting/src/bjy-common/util/NextTask.d.ts +28 -0
  66. package/umd/boom-meeting/src/bjy-common/util/Sleep.d.ts +14 -0
  67. package/umd/boom-meeting/src/bjy-common/util/Timer.d.ts +13 -0
  68. package/umd/boom-meeting/src/bjy-common/util/browser.d.ts +6 -0
  69. package/umd/boom-meeting/src/bjy-common/util/holder.d.ts +6 -0
  70. package/umd/boom-meeting/src/bjy-common/util/network.d.ts +4 -0
  71. package/umd/boom-meeting/src/bjy-common/util/os.d.ts +14 -0
  72. package/umd/boom-meeting/src/error/errorMap.d.ts +70 -0
  73. package/umd/boom-meeting/src/type/customStats.d.ts +119 -0
  74. package/umd/boom-meeting/src/type/index.d.ts +9 -0
  75. package/umd/boom-meeting/src/type/stream.d.ts +15 -0
  76. package/umd/boom-meeting/src/type/user.d.ts +9 -0
  77. package/umd/boom-meeting/src/util/PackLoss.d.ts +7 -0
  78. package/umd/boom-meeting/src/util/Privileges.d.ts +20 -0
  79. package/umd/boom-meeting/src/util/ReportCollector.d.ts +22 -0
  80. package/umd/boom-meeting/src/util/Stutter.d.ts +19 -0
  81. package/umd/boom-meeting/src/util/base64.d.ts +4 -0
  82. package/umd/boom-meeting/src/util/checkPermissions.d.ts +1 -0
  83. package/umd/boom-meeting/src/util/checkSystemRequirements.d.ts +1 -0
  84. package/umd/boom-meeting/src/util/devices.d.ts +2 -0
  85. package/umd/boom-meeting/src/util/formatUserId.d.ts +2 -0
  86. package/umd/boom-meeting/src/util/is.d.ts +70 -0
  87. package/umd/boom-meeting/src/util/peerToPeerProbe.d.ts +9 -0
  88. package/umd/boom-meeting/src/util/request.d.ts +45 -0
  89. package/umd/boom-meeting/src/util/sortUtils.d.ts +10 -0
  90. package/umd/boom-meeting/src/util/util.d.ts +1 -0
  91. package/umd/index.js +6 -6
  92. package/umd/src/BMStream/BMStreamModel.d.ts +11 -7
  93. package/umd/src/BMStream/BMStreamModelVM.d.ts +11 -4
  94. package/umd/src/BMUser/BMUser.d.ts +2 -1
  95. package/umd/src/EventHandler.d.ts +20 -0
  96. package/umd/src/constants.d.ts +18 -1
  97. package/umd/src/util/emitter.d.ts +4 -2
@@ -35,10 +35,10 @@ export default class BMSpeaker {
35
35
  /**
36
36
  * 启动音频音量检测
37
37
  */
38
- collectAudioLevel(): void;
38
+ collectAudioLevel: () => void;
39
39
  private handleAudioLevel;
40
40
  /**
41
41
  * 关闭音频音量检测
42
42
  */
43
- close(): void;
43
+ close: () => void;
44
44
  }
@@ -1,6 +1,7 @@
1
1
  import { SingleStream, SubscribeOptions } from '../type';
2
2
  import BMUser from '../BMUser/BMUser';
3
3
  import { BehaviorSubject, Subject } from 'rxjs';
4
+ import BMStreamModelVM from "./BMStreamModelVM";
4
5
  /**
5
6
  * @name: BMStreamModel
6
7
  * @author: yangliye
@@ -16,6 +17,11 @@ export interface ConnectErrorMessage {
16
17
  stream: BMStreamModel;
17
18
  isLocal: boolean;
18
19
  }
20
+ export interface NoPlayerContainer {
21
+ type: 'share' | 'normal';
22
+ container: 'small' | 'big';
23
+ id: string;
24
+ }
19
25
  export default class BMStreamModel {
20
26
  private user;
21
27
  private _stream;
@@ -28,6 +34,14 @@ export default class BMStreamModel {
28
34
  _audio_enable: boolean;
29
35
  videoEnableWatcher: BehaviorSubject<boolean>;
30
36
  audioEnableWatcher: BehaviorSubject<boolean>;
37
+ streamUpdateWatcher: Subject<boolean>;
38
+ isSubScribedWatcher: Subject<boolean>;
39
+ playStateChangeWatcher: Subject<BMStreamModel>;
40
+ /**
41
+ * 找不到播放器,说明当前的streamModel可能是销毁重建的,或者是业务上绑定失败的,这个时候给端上一个提示,让他重新绑定一下播放器
42
+ */
43
+ noContainerWatcher: Subject<boolean>;
44
+ noBigContainerWatcher: Subject<boolean>;
31
45
  audioLevelWatcher: Subject<number>;
32
46
  isCurrentDisplay: boolean;
33
47
  /**
@@ -37,8 +51,10 @@ export default class BMStreamModel {
37
51
  isDisplayObserve: Subject<boolean>;
38
52
  isInBig: boolean;
39
53
  isInBigObserve: Subject<boolean>;
40
- hasPulled: boolean;
54
+ _hasPulled: boolean;
41
55
  playerId: string;
56
+ get hasPulled(): boolean;
57
+ set hasPulled(value: boolean);
42
58
  /**
43
59
  * 当前拉取的是大流还是小流
44
60
  */
@@ -116,8 +132,9 @@ export default class BMStreamModel {
116
132
  * 更新当前streamModel中的流
117
133
  * @param stream
118
134
  * @param needReProcess
135
+ * @param bmStreamVm
119
136
  */
120
- updateStream(stream: SingleStream | undefined, needReProcess?: boolean): void;
137
+ updateStream(stream: SingleStream | undefined, needReProcess: boolean | undefined, bmStreamVm: BMStreamModelVM): void;
121
138
  private onPlayerStateChange;
122
139
  handleStreamConnectError: () => void;
123
140
  /**
@@ -175,6 +192,14 @@ export default class BMStreamModel {
175
192
  sendMessage2Room: any;
176
193
  emitBindElement: any;
177
194
  emitBindBigElement: any;
195
+ /**
196
+ * 判断当前是不是正在小窗口播放
197
+ */
198
+ currentIsPlaying: () => boolean;
199
+ /**
200
+ * 判断当前是不是正在小窗口播放
201
+ */
202
+ currentBigIsPlaying: () => boolean | null | undefined;
178
203
  /**
179
204
  * 播放当前流
180
205
  */
@@ -228,10 +253,6 @@ export default class BMStreamModel {
228
253
  */
229
254
  collectAudioLevel(): void;
230
255
  private handleAudioLevel;
231
- /**
232
- * 关闭音频音量检测
233
- */
234
- close(): void;
235
256
  checkVideo(): void;
236
257
  /**
237
258
  * 播放黑窗处理,主要是做一个容错处理,又可能这股流拉下来或者存在订阅就出现问题的情况
@@ -0,0 +1,20 @@
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/esm/BoomAdapter/User/User";
15
+ import BMUser from "./BMUser/BMUser";
16
+ export declare function handleParticipantLeft(data: any, userVM: BMUserVM, bmRoom: BMRoom, observes: any, bmStreamVm: BMStreamModelVM, boomCore: BCClient, chatVM: BMChatVM): void;
17
+ export declare function handleParticipantJoin(data: any, userVM: BMUserVM, bmStreamVm: BMStreamModelVM, boomCore: BoomCore, chatVM: BMChatVM, observes: any): Promise<void>;
18
+ export declare function handleRoomSync(data: any, bmRoom: BMRoom, userVm: BMUserVM, bmStreamVm: BMStreamModelVM): Promise<void>;
19
+ export declare function updateBMUser(allUsers: Map<string, BCUser>, bmUser: BMUser, userVm: BMUserVM): void;
20
+ export declare function handleInitRoomInfo(data: any, bmRoom: BMRoom): Promise<void>;
@@ -0,0 +1,9 @@
1
+ /**
2
+ * 节流调用
3
+ *
4
+ * @param fn 需要节制调用的函数
5
+ * @param delay 调用的时间间隔,单位毫秒
6
+ * @param immediate 是否立即触发
7
+ * @return 节流函数
8
+ */
9
+ export default function (fn: Function, delay: number, immediate?: boolean): () => void;
@@ -0,0 +1 @@
1
+ export default function (target: any): boolean;
@@ -0,0 +1 @@
1
+ export default function (target: any): boolean;
@@ -0,0 +1,9 @@
1
+ /**
2
+ * 节流调用
3
+ *
4
+ * @param fn 需要节制调用的函数
5
+ * @param delay 调用的时间间隔,单位毫秒
6
+ * @param immediate 是否立即触发
7
+ * @return 节流函数
8
+ */
9
+ export default function (fn: Function, delay: number, immediate?: boolean): Function;
@@ -0,0 +1 @@
1
+ export default function (target: any, defaultValue?: number): number;
@@ -0,0 +1,66 @@
1
+ import { Data, ValueHolder } from './type';
2
+ export interface ArrayApi {
3
+ each<T>(array: T[], callback: (item: T, index: number) => boolean | void, reversed?: boolean): void;
4
+ push<T>(array: T[], target: T | T[]): void;
5
+ unshift<T>(array: T[], target: T | T[]): void;
6
+ indexOf<T>(array: T[], target: T, strict?: boolean): number;
7
+ last<T>(array: T[]): T | void;
8
+ pop<T>(array: T[]): T | void;
9
+ remove<T>(array: T[], target: T, strict?: boolean): number;
10
+ has<T>(array: T[], target: T, strict?: boolean): boolean;
11
+ toArray<T>(array: T[] | ArrayLike<T>): T[];
12
+ toObject(array: any[], key?: string | null, value?: any): object;
13
+ join(array: string[], separator: string): string;
14
+ falsy(array: any): boolean;
15
+ }
16
+ export interface IsApi {
17
+ func(value: any): boolean;
18
+ array(value: any): boolean;
19
+ object(value: any): boolean;
20
+ string(value: any): boolean;
21
+ number(value: any): boolean;
22
+ boolean(value: any): boolean;
23
+ numeric(value: any): boolean;
24
+ }
25
+ export interface LoggerApi {
26
+ DEBUG: number;
27
+ INFO: number;
28
+ WARN: number;
29
+ ERROR: number;
30
+ FATAL: number;
31
+ debug(msg: string, tag?: string): void;
32
+ info(msg: string, tag?: string): void;
33
+ warn(msg: string, tag?: string): void;
34
+ error(msg: string, tag?: string): void;
35
+ fatal(msg: string, tag?: string): void;
36
+ }
37
+ export interface ObjectApi {
38
+ keys(object: Data): string[];
39
+ sort(object: Data, desc?: boolean): string[];
40
+ each(object: Data, callback: (value: any, key: string) => boolean | void): void;
41
+ clear(object: Data): void;
42
+ extend(original: Data, object: Data): Data;
43
+ merge(object1: Data | void, object2: Data | void): Data | void;
44
+ copy(object: any, deep?: boolean): any;
45
+ get(object: any, keypath: string): ValueHolder | undefined;
46
+ set(object: Data, keypath: string, value: any, autofill?: boolean): void;
47
+ has(object: Data, key: string | number): boolean;
48
+ falsy(object: any): boolean;
49
+ }
50
+ export interface StringApi {
51
+ camelize(str: string): string;
52
+ hyphenate(str: string): string;
53
+ capitalize(str: string): string;
54
+ trim(str: any): string;
55
+ slice(str: string, start: number, end?: number): string;
56
+ indexOf(str: string, part: string, start?: number): number;
57
+ lastIndexOf(str: string, part: string, end?: number): number;
58
+ startsWith(str: string, part: string): boolean;
59
+ endsWith(str: string, part: string): boolean;
60
+ charAt(str: string, index?: number): string;
61
+ codeAt(str: string, index?: number): number;
62
+ upper(str: string): string;
63
+ lower(str: string): string;
64
+ has(str: string, part: string): boolean;
65
+ falsy(str: any): boolean;
66
+ }
@@ -0,0 +1,7 @@
1
+ import { Task } from './type';
2
+ export interface EmitterOptions extends Task {
3
+ ns?: string;
4
+ num?: number;
5
+ max?: number;
6
+ count?: number;
7
+ }
@@ -0,0 +1,90 @@
1
+ export declare type Data = Record<string, any>;
2
+ export declare type ThisTask<This> = (this: This) => void;
3
+ export declare type ThisListener<This> = (this: This, event: CustomEventInterface, data?: Data) => false | void;
4
+ export declare type Listener = (event: CustomEventInterface, data?: Data) => false | void;
5
+ export declare type NativeListener = (event: CustomEventInterface | Event) => false | void;
6
+ export declare type ValueHolder = {
7
+ keypath?: string;
8
+ value: any;
9
+ };
10
+ export declare type Task = {
11
+ fn: Function;
12
+ ctx?: any;
13
+ };
14
+ export interface CustomEventInterface {
15
+ type: string;
16
+ phase: number;
17
+ ns?: string;
18
+ target?: any;
19
+ originalEvent?: CustomEventInterface | Event;
20
+ isPrevented?: true;
21
+ isStoped?: true;
22
+ listener?: Function;
23
+ /**
24
+ * 阻止事件的默认行为
25
+ */
26
+ preventDefault(): this;
27
+ /**
28
+ * 停止事件广播
29
+ */
30
+ stopPropagation(): this;
31
+ prevent(): this;
32
+ stop(): this;
33
+ }
34
+ export interface OS {
35
+ /**
36
+ * os 平台
37
+ */
38
+ name: string;
39
+ /**
40
+ * os 版本号
41
+ */
42
+ version: string;
43
+ /**
44
+ * 是否是 ios 系统
45
+ */
46
+ ios?: boolean;
47
+ /**
48
+ * 系统判断
49
+ */
50
+ iphone?: boolean;
51
+ ipad?: boolean;
52
+ itouch?: boolean;
53
+ android?: boolean;
54
+ wp?: boolean;
55
+ windows?: boolean;
56
+ linux?: boolean;
57
+ mac?: boolean;
58
+ }
59
+ export interface Browser {
60
+ /**
61
+ * browser 平台
62
+ */
63
+ name: string;
64
+ /**
65
+ * browser 版本号
66
+ */
67
+ version: string;
68
+ /**
69
+ * 浏览器判断
70
+ */
71
+ alipay?: boolean;
72
+ wechat?: boolean;
73
+ baiduApp?: boolean;
74
+ baidu?: boolean;
75
+ uc?: boolean;
76
+ qq?: boolean;
77
+ qqApp?: boolean;
78
+ ie?: boolean;
79
+ edge?: boolean;
80
+ chrome?: boolean;
81
+ firefox?: boolean;
82
+ opera?: boolean;
83
+ safari?: boolean;
84
+ }
85
+ export interface Network {
86
+ /**
87
+ * 网络类型
88
+ */
89
+ name: string;
90
+ }
@@ -0,0 +1,28 @@
1
+ import { Task } from '../type/type';
2
+ export default class NextTask {
3
+ /**
4
+ * 全局单例
5
+ */
6
+ static shared(): NextTask;
7
+ /**
8
+ * 异步队列
9
+ */
10
+ tasks: Task[];
11
+ constructor();
12
+ /**
13
+ * 在队尾添加异步任务
14
+ */
15
+ append(func: Function, context?: any): void;
16
+ /**
17
+ * 在队首添加异步任务
18
+ */
19
+ prepend(func: Function, context?: any): void;
20
+ /**
21
+ * 清空异步队列
22
+ */
23
+ clear(): void;
24
+ /**
25
+ * 立即执行异步任务,并清空队列
26
+ */
27
+ run(): void;
28
+ }
@@ -0,0 +1,14 @@
1
+ /**
2
+ * @file 等待操作
3
+ * @author zhaogaoxing
4
+ */
5
+ export default class Sleep {
6
+ private timeout;
7
+ private timer;
8
+ private resolve;
9
+ private reject;
10
+ private startTime;
11
+ constructor(timeout: number);
12
+ then(res: (value?: number) => void, rej: (value?: number) => void): void;
13
+ stop(reslove?: boolean): void;
14
+ }
@@ -0,0 +1,13 @@
1
+ export default class Timer {
2
+ private task;
3
+ private timeout;
4
+ private interval;
5
+ private timer;
6
+ private count;
7
+ constructor(task: Function, timeout: number, interval: number);
8
+ start(): void;
9
+ stop(): void;
10
+ updateInterval(interval: number): void;
11
+ isStarted(): boolean;
12
+ destroy(): void;
13
+ }
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @file browser
3
+ * @author zhaogaoxing
4
+ */
5
+ declare const browser: any;
6
+ export default browser;
@@ -0,0 +1,6 @@
1
+ import { ValueHolder } from '../type/type';
2
+ /**
3
+ * 全局 value holder,避免频繁的创建临时对象
4
+ */
5
+ declare const holder: ValueHolder;
6
+ export default holder;
@@ -0,0 +1,4 @@
1
+ declare const _default: {
2
+ name: any;
3
+ };
4
+ export default _default;
@@ -0,0 +1,14 @@
1
+ /**
2
+ * UA 检测操作系统
3
+ *
4
+ * 返回结果如下:
5
+ *
6
+ * {
7
+ * name: 'mac', // 判断多个浏览器时,便于用 name 去 switch
8
+ * mac: true, // 判断某一个浏览器时,便于 if (mac) { ... }
9
+ * version: '8.0' // 版本号,string 类型
10
+ * }
11
+ *
12
+ */
13
+ declare const os: any;
14
+ export default os;
@@ -0,0 +1,70 @@
1
+ export declare const BoomErrorMessage: {
2
+ 1000: {
3
+ name: string;
4
+ message: string;
5
+ };
6
+ 1001: {
7
+ name: string;
8
+ message: string;
9
+ };
10
+ 1002: {
11
+ name: string;
12
+ message: string;
13
+ };
14
+ 1003: {
15
+ name: string;
16
+ message: string;
17
+ };
18
+ 4000: {
19
+ name: string;
20
+ message: string;
21
+ };
22
+ 4001: {
23
+ name: string;
24
+ message: string;
25
+ };
26
+ 4002: {
27
+ name: string;
28
+ message: string;
29
+ };
30
+ 4003: {
31
+ name: string;
32
+ message: string;
33
+ };
34
+ 4004: {
35
+ name: string;
36
+ message: string;
37
+ };
38
+ 4005: {
39
+ name: string;
40
+ message: string;
41
+ };
42
+ 4006: {
43
+ name: string;
44
+ message: string;
45
+ };
46
+ 4007: {
47
+ name: string;
48
+ message: string;
49
+ };
50
+ 4008: {
51
+ name: string;
52
+ message: string;
53
+ };
54
+ 5000: {
55
+ name: string;
56
+ message: string;
57
+ };
58
+ 5001: {
59
+ name: string;
60
+ message: string;
61
+ };
62
+ 9000: {
63
+ name: string;
64
+ message: string;
65
+ };
66
+ 1010: {
67
+ name: string;
68
+ message: string;
69
+ };
70
+ };
@@ -0,0 +1,119 @@
1
+ /**
2
+ * @name: customStats
3
+ * @author: yangliye
4
+ * @date: 2022-07-14 17:35
5
+ * @description:customStats 类型声明定义
6
+ * @update: 2022-07-14 17:35
7
+ */
8
+ export interface From {
9
+ fromTag: string;
10
+ }
11
+ export interface Tile {
12
+ index: number;
13
+ user: string;
14
+ nickname: string;
15
+ stream: string;
16
+ }
17
+ export interface NextTile {
18
+ index: number;
19
+ nickname: string;
20
+ user: string;
21
+ stream: string;
22
+ }
23
+ export interface MainLayout {
24
+ user: string;
25
+ layout: number;
26
+ activeSubtiles: boolean;
27
+ tiles: Tile[];
28
+ nextTiles: NextTile[];
29
+ }
30
+ export interface Tile2 {
31
+ index: number;
32
+ nickname: string;
33
+ user: string;
34
+ stream: string;
35
+ }
36
+ export interface ForceOn {
37
+ user?: string;
38
+ isShare?: boolean;
39
+ active?: boolean;
40
+ laterScreen?: boolean;
41
+ tiles?: Tile2[];
42
+ }
43
+ export interface Tile3 {
44
+ index: number;
45
+ nickname: string;
46
+ user: string;
47
+ stream: string;
48
+ }
49
+ export interface Tiles4 {
50
+ index: number;
51
+ nickname: string;
52
+ user: string;
53
+ stream: string;
54
+ isSubStream?: boolean;
55
+ }
56
+ export interface HostLayout {
57
+ user: string;
58
+ layout: number;
59
+ activeSubtiles: boolean;
60
+ tiles: Tiles4[];
61
+ }
62
+ export interface DefaultLayout {
63
+ mode: number;
64
+ allowSwitchingLayout: boolean;
65
+ tiles: Tile3[];
66
+ }
67
+ export interface Roll {
68
+ active: boolean;
69
+ start: number;
70
+ interval: number;
71
+ }
72
+ export interface ShareList {
73
+ user: string;
74
+ stream: string;
75
+ }
76
+ export interface CustomStats {
77
+ /**
78
+ * 默认为0,自由模式,可随时切换;
79
+ *
80
+ * 1时使用 defaultLayout,布局内可控;
81
+ *
82
+ * 2时使用 mainLayout,主会场同内容
83
+ */
84
+ layoutMode: number;
85
+ from: From;
86
+ mainLayout: MainLayout;
87
+ forceOn: ForceOn;
88
+ defaultLayout: DefaultLayout;
89
+ roll: Roll;
90
+ shareList: ShareList[];
91
+ chatNotice: string;
92
+ chatNoticeRich: object;
93
+ giveLikeEnable: number;
94
+ chatEnable: number;
95
+ fileUpdateModel: number;
96
+ fileUpdateLook: number;
97
+ fileUpdateDown: number;
98
+ fileUpdateEdit: number;
99
+ screenShareModel: number;
100
+ activeSubtiles: boolean;
101
+ hostLayout: HostLayout;
102
+ updateKeys: any[];
103
+ joinAudioEnable: number;
104
+ joinVideoEnable: number;
105
+ userListEnable: number;
106
+ audioEnable: number;
107
+ videoEnable: number;
108
+ modifyNameEnable: number;
109
+ backgroundAIEnable: number;
110
+ recordEnable: number;
111
+ joinMicrophoneDisable: number;
112
+ joinCameraDisable: number;
113
+ forceOpenUserMic: boolean;
114
+ forceOpenUserCamera: boolean;
115
+ onlyOnePersonShare: number;
116
+ raiseHandEnable: number;
117
+ joinCueVoice: number;
118
+ }
119
+ export declare type PartialCustomStats = Partial<CustomStats>;
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @name: index.ts
3
+ * @author: yangliye
4
+ * @date: 2022-04-25 13:42
5
+ * @description:index.ts
6
+ * @update: 2022-04-25 13:42
7
+ */
8
+ export * from './stream';
9
+ export * from './user';
@@ -0,0 +1,15 @@
1
+ /**
2
+ * @name: stream
3
+ * @author: yangliye
4
+ * @date: 2022-04-25 13:42
5
+ * @description:stream
6
+ * @update: 2022-04-25 13:42
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
+ export { SubscribeOptions } from '@hysc/core/esm/BoomAdapter/type/BRTCClient';
12
+ export declare type SingleLocalStream = LocalStream;
13
+ export declare type SingleRemoteStream = RemoteStream;
14
+ export declare type SingleStream = SingleLocalStream | SingleRemoteStream;
15
+ export declare type SingleStreamDeviceOption = StreamDeviceOption;
@@ -0,0 +1,9 @@
1
+ import BMUser from '../BMUser/BMUser';
2
+ export declare type UpdateMasterType = {
3
+ master?: BMUser;
4
+ oldMaster?: BMUser;
5
+ };
6
+ export declare type audioOffWatcherValue = {
7
+ audioOff: boolean;
8
+ selfopenaudio: boolean;
9
+ };
@@ -0,0 +1,7 @@
1
+ export default class PacketLoss {
2
+ private queue;
3
+ private win;
4
+ constructor(win?: number);
5
+ addData(packetsTotal: number, packetsLost: number): void;
6
+ getPacketLossRate(): number;
7
+ }
@@ -0,0 +1,20 @@
1
+ export default class Privileges {
2
+ private code;
3
+ constructor(code?: number);
4
+ /**
5
+ * 是否开启了权限控制
6
+ */
7
+ enableAuth(): boolean;
8
+ /**
9
+ * 是否可以发送音频
10
+ */
11
+ canPushAudio(): boolean;
12
+ /**
13
+ * 是否可以发送视频
14
+ */
15
+ canPushVideo(): boolean;
16
+ /**
17
+ * 是否可以使用互动白板
18
+ */
19
+ canUseWhiteboard(): boolean;
20
+ }