netender-web-sdk 1.0.0 → 1.0.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.
Files changed (59) hide show
  1. package/README.md +31 -45
  2. package/dist/index.cjs.js +1 -1
  3. package/dist/index.esm.js +1 -1
  4. package/dist/index.umd.js +1 -1
  5. package/dist/meeting-kit-lite/src/config.d.ts +29 -0
  6. package/dist/meeting-kit-lite/src/kit/impl/account_manager.d.ts +45 -0
  7. package/dist/meeting-kit-lite/src/kit/impl/annotation_manager.d.ts +22 -0
  8. package/dist/meeting-kit-lite/src/kit/impl/audio_manager.d.ts +44 -0
  9. package/dist/meeting-kit-lite/src/kit/impl/breakout_manager.d.ts +22 -0
  10. package/dist/meeting-kit-lite/src/kit/impl/chatroom_manager.d.ts +25 -0
  11. package/dist/meeting-kit-lite/src/kit/impl/interpretation_manager.d.ts +26 -0
  12. package/dist/meeting-kit-lite/src/kit/impl/invite_manager.d.ts +28 -0
  13. package/dist/meeting-kit-lite/src/kit/impl/meeting_kit.d.ts +138 -0
  14. package/dist/meeting-kit-lite/src/kit/impl/meeting_manager.d.ts +61 -0
  15. package/dist/meeting-kit-lite/src/kit/impl/member_manager.d.ts +41 -0
  16. package/dist/meeting-kit-lite/src/kit/impl/notification_manager.d.ts +22 -0
  17. package/dist/meeting-kit-lite/src/kit/impl/plugin_manager.d.ts +19 -0
  18. package/dist/meeting-kit-lite/src/kit/impl/pre_meeting_manager.d.ts +35 -0
  19. package/dist/meeting-kit-lite/src/kit/impl/quality_monitor_manager.d.ts +23 -0
  20. package/dist/meeting-kit-lite/src/kit/impl/record_manager.d.ts +18 -0
  21. package/dist/meeting-kit-lite/src/kit/impl/screen_share_manager.d.ts +18 -0
  22. package/dist/meeting-kit-lite/src/kit/impl/security_manager.d.ts +108 -0
  23. package/dist/meeting-kit-lite/src/kit/impl/transcription_manager.d.ts +21 -0
  24. package/dist/meeting-kit-lite/src/kit/impl/video_manager.d.ts +37 -0
  25. package/dist/meeting-kit-lite/src/kit/impl/waitingRoom_manager.d.ts +29 -0
  26. package/dist/meeting-kit-lite/src/kit/impl/whiteboard_manager.d.ts +23 -0
  27. package/dist/meeting-kit-lite/src/kit/index.d.ts +26 -0
  28. package/dist/meeting-kit-lite/src/kit/interface/account_manager.d.ts +56 -0
  29. package/dist/meeting-kit-lite/src/kit/interface/annotation_manager.d.ts +57 -0
  30. package/dist/meeting-kit-lite/src/kit/interface/audio_manager.d.ts +171 -0
  31. package/dist/meeting-kit-lite/src/kit/interface/breakout_manager.d.ts +64 -0
  32. package/dist/meeting-kit-lite/src/kit/interface/chatroom_manager.d.ts +190 -0
  33. package/dist/meeting-kit-lite/src/kit/interface/interpretation_manager.d.ts +61 -0
  34. package/dist/meeting-kit-lite/src/kit/interface/invite_manager.d.ts +77 -0
  35. package/dist/meeting-kit-lite/src/kit/interface/meeting_kit.d.ts +143 -0
  36. package/dist/meeting-kit-lite/src/kit/interface/meeting_manager.d.ts +91 -0
  37. package/dist/meeting-kit-lite/src/kit/interface/member_manager.d.ts +125 -0
  38. package/dist/meeting-kit-lite/src/kit/interface/notification_manager.d.ts +60 -0
  39. package/dist/meeting-kit-lite/src/kit/interface/plugin_manager.d.ts +43 -0
  40. package/dist/meeting-kit-lite/src/kit/interface/pre_meeting_manager.d.ts +67 -0
  41. package/dist/meeting-kit-lite/src/kit/interface/quality_monitor_manager.d.ts +70 -0
  42. package/dist/meeting-kit-lite/src/kit/interface/record_manager.d.ts +41 -0
  43. package/dist/meeting-kit-lite/src/kit/interface/screen_share_manager.d.ts +35 -0
  44. package/dist/meeting-kit-lite/src/kit/interface/security_manager.d.ts +84 -0
  45. package/dist/meeting-kit-lite/src/kit/interface/transcription_manager.d.ts +35 -0
  46. package/dist/meeting-kit-lite/src/kit/interface/video_manager.d.ts +121 -0
  47. package/dist/meeting-kit-lite/src/kit/interface/waitingRoom_manager.d.ts +58 -0
  48. package/dist/meeting-kit-lite/src/kit/interface/whiteboard_manager.d.ts +85 -0
  49. package/dist/meeting-kit-lite/src/types/index.d.ts +2 -0
  50. package/dist/meeting-kit-lite/src/types/innerType.d.ts +1919 -0
  51. package/dist/meeting-kit-lite/src/types/type.d.ts +1201 -0
  52. package/dist/meeting-kit-lite/src/utils/common.d.ts +11 -0
  53. package/dist/meeting-kit-lite/src/utils/highAvailableRequest.d.ts +10 -0
  54. package/dist/meeting-kit-lite/src/utils/index.d.ts +10 -0
  55. package/dist/meeting-kit-lite/src/utils/logDebug.d.ts +56 -0
  56. package/dist/meeting-kit-lite/src/utils/report.d.ts +8 -0
  57. package/dist/meeting-kit-lite/src/utils/throwError.d.ts +6 -0
  58. package/dist/{index.d.ts → tender-sdk-web/src/index.d.ts} +0 -1
  59. package/package.json +10 -10
@@ -0,0 +1,190 @@
1
+ import { NEResult } from 'neroom-types';
2
+ export type NERoomChatMessageType = 'text' | 'image' | 'audio' | 'video' | 'file' | 'geo' | 'custom' | 'tip' | 'notification';
3
+ export interface Progress {
4
+ total?: string;
5
+ loaded?: string;
6
+ percentage: number;
7
+ percentageText?: string;
8
+ }
9
+ /**
10
+ * 房间内聊天消息
11
+ */
12
+ export type NERoomChatMessage = {
13
+ /**
14
+ * 消息 id
15
+ */
16
+ messageUuid?: string;
17
+ /**
18
+ * 客户端类型
19
+ */
20
+ fromClientType: 'Android' | 'iOS' | 'PC' | 'Web' | 'Mac';
21
+ /**
22
+ * 消息类型
23
+ */
24
+ messageType: NERoomChatMessageType;
25
+ /**
26
+ * 发送端用户ID。如果为空字符串,则说明该用户可能未加入房间内。
27
+ */
28
+ fromUserUuid: string;
29
+ /**
30
+ * 发送端昵称
31
+ */
32
+ fromNick: string;
33
+ /**
34
+ * 接收端; 为空表示聊天室全体成员
35
+ */
36
+ toUserUuidList?: string[];
37
+ /**
38
+ * 消息时间戳
39
+ */
40
+ time: number;
41
+ /**
42
+ * 消息类型
43
+ */
44
+ type: string;
45
+ /**
46
+ * 文本内容
47
+ */
48
+ text: string;
49
+ /**
50
+ * 消息状态
51
+ */
52
+ status: string;
53
+ /**
54
+ * 附加信息
55
+ */
56
+ attach?: {
57
+ from: string;
58
+ fromNick: string;
59
+ type: string;
60
+ to: string[];
61
+ toNick: string[];
62
+ url: string;
63
+ name: string;
64
+ msgId: string;
65
+ msgTime: number;
66
+ id: number;
67
+ operator: string;
68
+ };
69
+ /**
70
+ * 消息来源
71
+ */
72
+ from: string;
73
+ /**
74
+ * 消息是否来自自己
75
+ */
76
+ isMe?: boolean;
77
+ /**
78
+ * 重发
79
+ */
80
+ resend?: boolean;
81
+ /**
82
+ * 客户端唯一ID
83
+ */
84
+ idClient: string;
85
+ /**
86
+ * 文件
87
+ */
88
+ file?: {
89
+ name: string;
90
+ ext: string;
91
+ size: number;
92
+ url: string;
93
+ filePath: string;
94
+ w: number;
95
+ h: number;
96
+ };
97
+ /**
98
+ * 自定义信息
99
+ */
100
+ custom?: string;
101
+ /**
102
+ * 0: 会内聊天室;1: 等候室
103
+ */
104
+ chatroomType?: number;
105
+ /**
106
+ * 临时文件,用于重发
107
+ */
108
+ tempFile?: File;
109
+ /**
110
+ * 是否是私聊
111
+ */
112
+ isPrivate?: boolean;
113
+ /**
114
+ * 发送给的昵称
115
+ */
116
+ toNickname?: string;
117
+ /**
118
+ * 头像
119
+ */
120
+ fromAvatar?: string;
121
+ progress: Progress;
122
+ };
123
+ export type NERoomChatMessageExt = {
124
+ url: string;
125
+ displayName: string;
126
+ size: number;
127
+ md5: string;
128
+ extension: string;
129
+ width: number;
130
+ height: number;
131
+ attachStr?: string;
132
+ };
133
+ export type FileEx = File & {
134
+ base64?: string;
135
+ url?: string;
136
+ filePath?: string;
137
+ height?: number;
138
+ width?: number;
139
+ };
140
+ export interface ChatroomManager {
141
+ /**
142
+ * 获取当前消息
143
+ */
144
+ getMessageList(): Promise<NEResult<NERoomChatMessage[]>>;
145
+ /**
146
+ * 获取历史消息
147
+ * @param meetingId 会议ID
148
+ */
149
+ fetchHistoryMessageList(meetingId?: number): Promise<NEResult<NERoomChatMessage[]>>;
150
+ /**
151
+ * 发送文本消息
152
+ * @param content 消息内容
153
+ * @param toUserUuids 私聊用户UUID(可选)
154
+ */
155
+ sendTextMessage(idClient: string, content: string, isWaitingRoom?: boolean, toUserUuids?: string[]): Promise<NEResult<NERoomChatMessage>>;
156
+ /**
157
+ * 发送文件图片消息
158
+ * @param type 文件类型
159
+ * @param file 文件对象
160
+ * @param toUserUuids 私聊用户UUID(可选)
161
+ */
162
+ sendFileMessage(idClient: string, type: 'image' | 'file', file: FileEx, isWaitingRoom?: boolean, toUserUuids?: string[]): Promise<NEResult<NERoomChatMessage>>;
163
+ /**
164
+ * 撤回消息
165
+ * @param messageId 消息ID
166
+ */
167
+ recallMessage(msg: NERoomChatMessage): Promise<NEResult<void>>;
168
+ /**
169
+ * 取消发送
170
+ * @param messageId 消息ID
171
+ */
172
+ cancelSendFileMessage(msg: NERoomChatMessage): Promise<NEResult<void>>;
173
+ /**
174
+ * 下载附件
175
+ * @param msg 消息
176
+ * @param path 保存路径
177
+ */
178
+ downloadAttachment(msg: NERoomChatMessage, path: string): Promise<NEResult<void>>;
179
+ /**
180
+ * 取消下载附件
181
+ * @param msg 消息
182
+ */
183
+ cancelDownloadAttachment(msg: NERoomChatMessage): Promise<NEResult<void>>;
184
+ /**
185
+ * 导出聊天历史
186
+ * @param meetingId 会议ID
187
+ */
188
+ exportChatroomHistoryMessageList(meetingId: string): Promise<NEResult<string>>;
189
+ }
190
+ export default ChatroomManager;
@@ -0,0 +1,61 @@
1
+ import { NEMeetingInterpreter } from '../../types';
2
+ import { NEResult } from 'neroom-types';
3
+ export interface NEInterpretationInfo {
4
+ started: boolean;
5
+ interpreters: Record<string, {
6
+ language: string;
7
+ name: string;
8
+ }>;
9
+ channels: Record<string, {
10
+ language: string;
11
+ name: string;
12
+ }>;
13
+ }
14
+ export interface NEInterpretationLanguage {
15
+ languageCode: string;
16
+ languageName: string;
17
+ isDefault?: boolean;
18
+ }
19
+ export interface InterpretationManager {
20
+ /**
21
+ * 开始/更新同声传译
22
+ * @param config 传译配置
23
+ */
24
+ startInterpretation(data: {
25
+ interpreters?: NEMeetingInterpreter[];
26
+ }): Promise<NEResult<void>>;
27
+ /**
28
+ * 关闭同声传译
29
+ */
30
+ stopInterpretation(): Promise<void>;
31
+ /**
32
+ * 获取同传信息
33
+ */
34
+ getInterpretation(): NEInterpretationInfo | undefined;
35
+ /**
36
+ * 是否正在同声传译
37
+ */
38
+ isInterpretationStarted(): boolean;
39
+ /**
40
+ * 本端是否为译员
41
+ */
42
+ isMySelfInterpreter(): boolean;
43
+ /**
44
+ * 调整原声音音量
45
+ * @param volume 音量值 (0-100)
46
+ */
47
+ adjustChannelPlaybackSignalVolume(volume?: number): void;
48
+ /**
49
+ * 静音主频道
50
+ * @param mute 是否静音
51
+ * @param volume 音量值 (0-100)
52
+ */
53
+ muteMajorAudio(mute: boolean, volume?: number): void;
54
+ /**
55
+ * 同时收听原声
56
+ * @param enable 是否启用
57
+ * @param majorVolume 音量值 (0-100)
58
+ */
59
+ listenToOriginalAudio(enable: boolean, majorVolume?: number): Promise<void>;
60
+ }
61
+ export default InterpretationManager;
@@ -0,0 +1,77 @@
1
+ import { NEMember, NEESearchAccountInfo, NEAccountInfoListResponse } from '../../types';
2
+ import { NEResult, NERoomSipCallResponse, NERoomSystemDevice } from 'neroom-types';
3
+ export interface InviteInfo {
4
+ meetingNum: string;
5
+ meetingId: number;
6
+ subject: string;
7
+ password?: string;
8
+ inviteUrl: string;
9
+ shortInviteUrl: string;
10
+ }
11
+ export interface ContactInfo {
12
+ userUuid: string;
13
+ nickname: string;
14
+ avatar?: string;
15
+ }
16
+ export interface InviteManager {
17
+ /**
18
+ * 获取邀请中成员列表
19
+ */
20
+ getInInvitingMemberList(): NEMember[];
21
+ /**
22
+ * 根据昵称获取通讯录列表
23
+ * @param name 昵称关键词
24
+ */
25
+ searchContactListByName(name: string): Promise<NEESearchAccountInfo[]>;
26
+ /**
27
+ * 通讯录邀请
28
+ * @param userUuids 用户UUID列表
29
+ */
30
+ inviteByUserUuids(userUuids: string[]): Promise<NEResult<null>>;
31
+ /**
32
+ * 获取账号信息列表
33
+ * @param userUuids 用户UUID列表
34
+ */
35
+ getAccountInfoList(userUuids: string[]): Promise<NEAccountInfoListResponse>;
36
+ /**
37
+ * 根据手机号获取账号信息
38
+ * @param phone 手机号
39
+ */
40
+ searchAccountInfoByPhone(phone: string): Promise<NEESearchAccountInfo[]>;
41
+ /**
42
+ * 拨号呼叫
43
+ * @param number 电话号码
44
+ */
45
+ callByPhoneNumber(phoneNumber: string, countryCode: string, name?: string): Promise<NEResult<NERoomSipCallResponse> | undefined>;
46
+ /**
47
+ * 批量拨号呼叫
48
+ * @param userUuids 用户UUID列表
49
+ */
50
+ callByUserUuids(userUuids: string[]): Promise<NEResult<null>>;
51
+ /**
52
+ * 内部重新呼叫
53
+ * @param userUuid 用户UUID
54
+ */
55
+ callByUserUuid(userUuid: string): Promise<NEResult<null>>;
56
+ /**
57
+ * 会议室呼叫
58
+ * @param roomNumber 会议室号码
59
+ */
60
+ callOutRoomSystem(device: NERoomSystemDevice): Promise<NEResult<NERoomSipCallResponse>>;
61
+ /**
62
+ * 移除呼叫
63
+ * @param userUuid 呼叫ID
64
+ */
65
+ removeCall(userUuid: string): Promise<NEResult<null>>;
66
+ /**
67
+ * 取消呼叫
68
+ * @param userUuid 呼叫ID
69
+ */
70
+ cancelCall(userUuid: string): Promise<NEResult<null>>;
71
+ /**
72
+ * 挂断通话
73
+ * @param userUuid 呼叫ID
74
+ */
75
+ hangUpCall(userUuid: string): Promise<NEResult<null>>;
76
+ }
77
+ export default InviteManager;
@@ -0,0 +1,143 @@
1
+ import { NEGlobalEventListener, NERoomWhiteboardAppConfig, NEServerConfig, NEResult, Roomkit, NEIMServerConfig, NERtcServerConfig, NEWhiteboardServerConfig } from 'neroom-types';
2
+ import { IM, NEMeetingAppNoticeTips, NEMeetingLanguage } from '../../types/type';
3
+ import AccountManager from './account_manager';
4
+ import MeetingManager from './meeting_manager';
5
+ import AudioManager from './audio_manager';
6
+ import VideoManager from './video_manager';
7
+ import SecurityManager from './security_manager';
8
+ import InviteManager from './invite_manager';
9
+ import MemberManager from './member_manager';
10
+ import ChatroomManager from './chatroom_manager';
11
+ import ScreenShareManager from './screen_share_manager';
12
+ import WhiteboardManager from './whiteboard_manager';
13
+ import AnnotationManager from './annotation_manager';
14
+ import RecordManager from './record_manager';
15
+ import PluginManager from './plugin_manager';
16
+ import NotificationManager from './notification_manager';
17
+ import TranscriptionManager from './transcription_manager';
18
+ import InterpretationManager from './interpretation_manager';
19
+ import BreakoutManager from './breakout_manager';
20
+ import QualityMonitorManager from './quality_monitor_manager';
21
+ import { NEProps, PreMeetingManager } from '..';
22
+ import { LogDebug } from '../../utils/logDebug';
23
+ export type NEMeetingKitServerConfig = NEServerConfig;
24
+ export type { NEMeetingLanguage };
25
+ export type ExceptionHandler = {
26
+ onError: (code: number) => void;
27
+ };
28
+ export declare enum NEMeetingThemeType {
29
+ /**
30
+ * 跟随系统主题
31
+ */
32
+ SYSTEM = 0,
33
+ /**
34
+ * 浅色主题
35
+ */
36
+ LIGHT = 1,
37
+ /**
38
+ * 深色主题
39
+ */
40
+ DARK = 2
41
+ }
42
+ export type NEMeetingKitConfig = {
43
+ /**
44
+ * roomkit
45
+ */
46
+ roomkit: Roomkit;
47
+ domain?: string;
48
+ };
49
+ export type NEMeetingKitInitConfig = {
50
+ /**
51
+ * 是否开启日志打印(默认为true)
52
+ */
53
+ debug?: boolean;
54
+ /**
55
+ * 国际化语言
56
+ */
57
+ locale?: string;
58
+ /**
59
+ * 是否开启日志上(报默认为true)
60
+ */
61
+ eventTracking?: boolean;
62
+ /**
63
+ * 会议appKey
64
+ */
65
+ appKey: string;
66
+ /**
67
+ * IM私有化配置仅限于私有化配置时使用
68
+ */
69
+ imPrivateConf?: NEIMServerConfig;
70
+ /**
71
+ * G2 私有化配置仅私有化配置使用
72
+ */
73
+ neRtcServerAddresses?: NERtcServerConfig;
74
+ /**
75
+ * 白板私有化配置使用
76
+ */
77
+ whiteboardConfig?: NEWhiteboardServerConfig;
78
+ /**
79
+ * @ignore
80
+ */
81
+ globalEventListener?: Record<string, NEProps>;
82
+ /**
83
+ * @ignore
84
+ */
85
+ im?: IM;
86
+ /**
87
+ * 私有化配置使用,如果配置该字段则会从服务端对应接口拉取配置文件。但是优先级低于其他私有化配置字段,如果配置过其他字段则该配置不生效
88
+ */
89
+ serverUrl?: string;
90
+ /**
91
+ * 扩展字段
92
+ */
93
+ extras?: Record<string, NEProps>;
94
+ /**
95
+ * 是否读取私有化配置文件
96
+ */
97
+ useAssetServerConfig?: boolean;
98
+ /**
99
+ * 白板防盗链配置
100
+ */
101
+ whiteboardAppConfig?: NERoomWhiteboardAppConfig;
102
+ serverConfig?: NEServerConfig;
103
+ logger?: LogDebug;
104
+ };
105
+ interface NEMeetingKit {
106
+ readonly isInitialized: boolean;
107
+ /**
108
+ * 初始化
109
+ * @param config 配置信息
110
+ */
111
+ initialize(config: NEMeetingKitInitConfig): Promise<NEResult<void>>;
112
+ /**
113
+ * 反初始化
114
+ */
115
+ unInitialize(): Promise<NEResult<void>>;
116
+ getAccountManager(): AccountManager | undefined;
117
+ getMeetingManager(): MeetingManager | undefined;
118
+ getAudioManager(): AudioManager | undefined;
119
+ getVideoManager(): VideoManager | undefined;
120
+ getSecurityManager(): SecurityManager | undefined;
121
+ getInviteManager(): InviteManager | undefined;
122
+ getMemberManager(): MemberManager | undefined;
123
+ getChatroomManager(): ChatroomManager | undefined;
124
+ getScreenShareManager(): ScreenShareManager | undefined;
125
+ getWhiteboardManager(): WhiteboardManager | undefined;
126
+ getAnnotationManager(): AnnotationManager | undefined;
127
+ getRecordManager(): RecordManager | undefined;
128
+ getPluginManager(): PluginManager | undefined;
129
+ getNotificationManager(): NotificationManager | undefined;
130
+ getTranscriptionManager(): TranscriptionManager | undefined;
131
+ getInterpretationManager(): InterpretationManager | undefined;
132
+ getBreakoutManager(): BreakoutManager | undefined;
133
+ getQualityMonitorManager(): QualityMonitorManager | undefined;
134
+ getPreMeetingManager(): PreMeetingManager | undefined;
135
+ addGlobalEventListener: (listener: NEGlobalEventListener) => void;
136
+ removeGlobalEventListener: (listener: NEGlobalEventListener) => void;
137
+ getSDKLogPath(): Promise<NEResult<string>>;
138
+ getAppNoticeTips(): Promise<NEResult<NEMeetingAppNoticeTips>>;
139
+ setExceptionHandler(handler: ExceptionHandler): void;
140
+ startMarvel(): Promise<NEResult<void>>;
141
+ checkSystemRequirements(): boolean | undefined;
142
+ }
143
+ export default NEMeetingKit;
@@ -0,0 +1,91 @@
1
+ import { NERoomContext, NERoomListener, NEStatsListener, NEResult, NEMessageChannelListener } from 'neroom-types';
2
+ import { NEMeetingCreateOptions, NEMeetingJoinOptions, NEMeetingConfig } from '../../types/type';
3
+ import { NEMeetingSDKInfo } from '../../types';
4
+ export interface MeetingManager {
5
+ /**
6
+ * 创建房间
7
+ * @param options 创建会议选项
8
+ */
9
+ createMeeting(options: NEMeetingCreateOptions): Promise<void>;
10
+ roomContext: NERoomContext | null;
11
+ /**
12
+ * 加入房间
13
+ * @param options 加入会议选项
14
+ */
15
+ joinMeeting(options: NEMeetingJoinOptions): Promise<void>;
16
+ /**
17
+ * 重新加入房间(被准入后重新加入房间)
18
+ */
19
+ rejoinAfterAdmittedToRoom(): Promise<void>;
20
+ /**
21
+ * 通过邀请加入房间
22
+ * @param options 加入会议选项
23
+ */
24
+ joinMeetingByAInvite(options: NEMeetingJoinOptions): Promise<void>;
25
+ /**
26
+ * 匿名加入房间
27
+ * @param options 加入会议选项
28
+ */
29
+ anonymousJoinMeeting(options: NEMeetingJoinOptions): Promise<NEResult<void>>;
30
+ /**
31
+ * 获取全局配置
32
+ */
33
+ getGlobalConfig(): Promise<NEMeetingConfig>;
34
+ /**
35
+ * 离开房间
36
+ * @param closeIfHost 是否结束会议
37
+ */
38
+ leaveMeeting(closeIfHost: boolean): Promise<void>;
39
+ /**
40
+ * 结束房间
41
+ */
42
+ endMeeting(): Promise<void>;
43
+ /**
44
+ * 获取应用信息
45
+ */
46
+ getAppInfo(): Promise<{
47
+ appName: string;
48
+ }>;
49
+ /**
50
+ * 获取会议信息
51
+ */
52
+ getMeetingInfo(): NEMeetingSDKInfo | null;
53
+ /**
54
+ * 获取是否允许成员使用字幕
55
+ */
56
+ getIsAllowParticipantsEnableCaption(): boolean;
57
+ /**
58
+ * 添加会议事件监听器
59
+ * @param listener 监听器
60
+ */
61
+ addMeetingListener(listener: NERoomListener): void;
62
+ /**
63
+ * 移除会议事件监听器
64
+ * @param listener 监听器
65
+ */
66
+ removeMeetingListener(listener?: NERoomListener): void;
67
+ /**
68
+ * 获取房间监Rtc听器
69
+ */
70
+ addRtcStatsListener(listener: NEStatsListener): void;
71
+ /**
72
+ * 移除房间Rtc监听器
73
+ * @param listener 监听器
74
+ */
75
+ removeRtcStatsListener(listener: NEStatsListener): void;
76
+ /**
77
+ * 添加自定义透传消息监听
78
+ * @param listener 消息监听器
79
+ */
80
+ addMessageChannelListener(listener: NEMessageChannelListener): void;
81
+ /**
82
+ * 移除自定义透传消息监听
83
+ * @param listener 消息监听器
84
+ */
85
+ removeMessageChannelListener(listener: NEMessageChannelListener): void;
86
+ /**
87
+ * 释放会议资源,监听到离开或者结束会议事件后需调用
88
+ */
89
+ releaseMeeting(): void;
90
+ }
91
+ export default MeetingManager;
@@ -0,0 +1,125 @@
1
+ import { NEMember, Role } from '../../types';
2
+ import { NEResult } from 'neroom-types';
3
+ export interface MemberInfo {
4
+ userUuid: string;
5
+ nickname: string;
6
+ avatar?: string;
7
+ role: 'host' | 'coHost' | 'attendee';
8
+ isAudioMuted: boolean;
9
+ isVideoMuted: boolean;
10
+ isScreenSharing: boolean;
11
+ isWhiteboardSharing: boolean;
12
+ isInWaitingRoom: boolean;
13
+ isFocus: boolean;
14
+ }
15
+ export interface MemberManager {
16
+ /**
17
+ * 获取成员列表
18
+ */
19
+ getMemberList(): NEMember[];
20
+ /**
21
+ * 改名
22
+ * @param userUuid 用户UUID
23
+ * @param nickName 新名称
24
+ */
25
+ changeMemberName(params: {
26
+ userUuid?: string;
27
+ nickName: string;
28
+ }): Promise<NEResult<null>>;
29
+ /**
30
+ * 静音
31
+ * @param userUuid 用户UUID
32
+ */
33
+ muteMemberAudio(userUuid: string): Promise<NEResult<void>>;
34
+ /**
35
+ * 关闭视频
36
+ * @param userUuid 用户UUID
37
+ */
38
+ muteMemberVideo(userUuid: string): Promise<NEResult<void>>;
39
+ /**
40
+ * 解除静音
41
+ * @param userUuid 用户UUID
42
+ */
43
+ unmuteMemberAudio(userUuid: string): Promise<NEResult<void>>;
44
+ /**
45
+ * 开启视频
46
+ * @param userUuid 用户UUID
47
+ */
48
+ unmuteMemberVideo(userUuid: string): Promise<NEResult<void>>;
49
+ /**
50
+ * 关闭音视频
51
+ * @param userUuid 用户UUID
52
+ */
53
+ muteVideoAndAudio(userUuid: string): Promise<NEResult<void>>;
54
+ /**
55
+ * 开启音视频
56
+ * @param userUuid 用户UUID
57
+ */
58
+ unmuteVideoAndAudio(userUuid: string): Promise<NEResult<void>>;
59
+ /**
60
+ * 设置焦点视频
61
+ * @param userUuid 用户UUID
62
+ */
63
+ setFocus(userUuid: string): Promise<NEResult<void>>;
64
+ /**
65
+ * 取消设置焦点
66
+ */
67
+ unsetFocus(): Promise<NEResult<void>>;
68
+ /**
69
+ * 移交主持人
70
+ * @param userUuid 用户UUID
71
+ */
72
+ handOverMyRole(userUuid: string, resign?: boolean): Promise<NEResult<void>>;
73
+ /**
74
+ * 设置/取消联席主持人
75
+ * @param userUuid 用户UUID
76
+ * @param role 角色
77
+ */
78
+ changeMemberRole(userUuid: string, role: Role): Promise<NEResult<void>>;
79
+ /**
80
+ * 移除成员
81
+ * @param userUuid 用户UUID
82
+ * @param toBlacklist 是否移除进黑名单
83
+ */
84
+ kickMemberOut(userUuid: string, toBlacklist?: boolean): Promise<NEResult<void>>;
85
+ /**
86
+ * 全部静音
87
+ */
88
+ muteAllAudio(): Promise<NEResult<void>>;
89
+ /**
90
+ * 解除全部静音
91
+ */
92
+ unmuteAllAudio(): Promise<NEResult<void>>;
93
+ /**
94
+ * 全体开启视频
95
+ */
96
+ unmuteAllVideo(): Promise<NEResult<void>>;
97
+ /**
98
+ * 全体关闭视频
99
+ */
100
+ muteAllVideo(): Promise<NEResult<void>>;
101
+ /**
102
+ * 关闭屏幕共享
103
+ * @param userUuid 用户UUID
104
+ */
105
+ stopMemberScreenShare(userUuid: string): Promise<NEResult<void>>;
106
+ /**
107
+ * 关闭白板
108
+ * @param userUuid 用户UUID
109
+ */
110
+ closeWhiteShare(userUuid: string): Promise<NEResult<void>>;
111
+ /**
112
+ * 手放下所有成员
113
+ */
114
+ handsDownAll(): Promise<void>;
115
+ /**
116
+ * 手放下单个成员
117
+ * @param userUuid 用户UUID 如果为空默认为自己
118
+ */
119
+ handsDown(userUuid?: string): Promise<NEResult<null>>;
120
+ /**
121
+ * 举手
122
+ */
123
+ handsUp(): Promise<NEResult<null>>;
124
+ }
125
+ export default MemberManager;