会议管理
更新时间: 2026/01/06 15:49:38
本文介绍如何通过网易会议组件管理会议的相关示例。
前提条件
根据本文操作前,请确保您已经完成了 登录鉴权。
离开或结束会议
您可以调用 leaveCurrentMeeting 离开当前进行中的会议,并通过参数控制(leaveMeetingType)是否同时结束当前会议。
TypeScriptconst neMeetingKit = NEMeetingKit.getInstance()
const meetingService = neMeetingKit.getMeetingService()
/**
* leaveMeetingType
* 0 所有设备离开会议;
* 1 仅当前设备离开会议(当非多设备入会场景时,调用仅当前设备离开会议等同于离开会议); 如果退出当前会议后,会议中再无其他成员,则该会议也会结束;(默认值)
* 2 结束会议(结束会议,仅当前账户是会议主持人/联席主持人时,该参数才有效。当非管理员时候,调用结束会议等同于所有设备离开会议)
*/
meetingService.leaveCurrentMeeting(leaveMeetingType).then(() => {
// 离开或结束会议成功
}).catch((error) => {
// 离开或结束会议失败
})
查询用户的会议设置
通过会议设置服务,设置和查询用户的当前会议设置,例如入会时的音视频开关状态、会议持续时间的显示等。
- 每个已登录的用户有自己独立的一份会议设置项。其他所有未登录用户、匿名用户共享一份会议设置项。
- 会议设置项仅在当前设备上保存,不会漫游。
- 调用创建会议或加入会议方法时,若您设置
NEMeetingOptions参数为 null,SDK 会使用会议设置服务中已保存的相关配置进行创会/入会。
-
调用
getSettingsService方法获取会议设置服务。示例代码如下:
JavaScriptconst neMeetingKit = NEMeetingKit.getInstance() const settingService = neMeetingKit.getSettingsService()() -
调用不同方法设置或查询会议设置项。
-
设置或查询通用入会设置项。
示例代码如下:
JavaScript// 设置并保存会议设置 settingsService.enableTurnOnMyAudioWhenJoinMeeting(true); settingsService.enableTurnOnMyVideoWhenJoinMeeting(true); //查询会议设置 const audioEnabled = settingsService.isTurnOnMyAudioWhenJoinMeetingEnabled(); const videoEnabled = settingsService.isTurnOnMyVideoWhenJoinMeetingEnabled(); -
查询直播开通状态。
示例代码如下:
JavaScript/** * 查询直播开通状态 * @return true-打开,false-关闭 */ settingsService.isMeetingLiveSupported();
-
获取当前会议信息
在已经完成 SDK 登录鉴权的状态下,获取当前会议信息。
调用 getCurrentMeetingInfo 方法获取当前会议信息并进行回调处理。该接口的回调结果的数据类型为 NEMeetingInfo 对象类型。
请确认已经通过一种入会方式(加入会议/创建会议/匿名入会)加入到会议内,否则回调数据对象为空。
示例代码如下:
TypeScriptconst neMeetingKit = NEMeetingKit.getInstance()
const meetingService = neMeetingKit.getMeetingService()
meetingService.getCurrentMeetingInfo().then((res) => {
const {data} = res
// data 当前会议信息
})
监听会议状态
通过注册会议状态回调接口,获取会议状态变更的通知。
-
注册回调开始监听,并在回调方法中根据您的需求处理相应事件。
- 该接口在初始化 SDK 成功后即可调用。
- 一次会议状态变更回调可能包含多个会议信息的变更。
示例代码如下:
TypeScriptconst neMeetingKit = NEMeetingKit.getInstance() const meetingService = neMeetingKit.getMeetingService() const listener = { onMeetingStatusChanged: (status) = { // 会议状态变更 } } meetingService.addMeetingStatusListener(listener) -
反注册回调接口
removeMeetingStatusListener停止监听。移除的 listener 必须是和之前 addListener 的相同对象。
示例代码如下:
TypeScriptconst neMeetingKit = NEMeetingKit.getInstance() const meetingService = neMeetingKit.getMeetingService() meetingService.removeMeetingStatusListener(listener)
监听全局事件
通过注册全局事件回调接口,获取相应事件通知,目前支持监听 RTC 初始化和销毁相关的事件。
-
注册回调接口
addGlobalEventListener开始监听,并在回调方法中根据您的需求处理相应事件。该接口在初始化 SDK 成功后即可调用。
示例代码如下:
TypeScriptconst neMeetingKit = NEMeetingKit.getInstance() const listener = { /** * RTC engine 初始化之前回调 * @param roomUuid 房间UUID */ beforeRtcEngineInitialize: (roomUuid) => { }, /** * RTC engine 完成初始化后回调 * @param roomUuid 房间UUID * @param rtcWrapper RTC Wrapper 实例 */ afterRtcEngineInitialize: (roomUuid, rtcWrapper) => { }, /** * RTC engine 销毁前回调 * @param roomUuid 房间UUID * @param rtcWrapper RTC Wrapper 实例 */ beforeRtcEngineRelease: (roomUuid, rtcWrapper) => { }, } neMeetingKit.addGlobalEventListener(listener) -
反注册回调接口
removeGlobalEventListener停止监听。移除的 listener 必须是和之前 addGlobalEventListener 的相同对象。
示例代码如下:
TypeScriptconst neMeetingKit = NEMeetingKit.getInstance() neMeetingKit.removeGlobalEventListener(listener)




