修改成员角色

更新时间: 2024/09/09 10:44:45

不同的角色拥有不同的操作权限,您可以通过修改成员角色,给该成员赋予或者取消相应的操作权限,例如开启视频、屏幕共享等权限。本文介绍如何通过 NERoom SDK 修改成员角色。

注意事项

您可以在云信控制台上配置某角色是否具备修改成员角色的权限,只有具备该权限的角色才可以执行此操作。

配置步骤

  1. 调用 joinRoom 接口加入房间。

  2. 调用 getRoomContext 方法获取房间上下文。

    调用此方法时,您需要将 roomUuid 设置为您所加入房间的 ID。

  3. 调用 NERoomContextchangeMemberRole 方法,修改成员的角色。相关参数说明如下。

    NEChangeMemberRoleParams 相关参数说明如下表所示。

    名称 描述
    userUuid 用户ID
    role 修改后的角色 ID,角色 ID 的查看方法请参见如何获取角色 ID
    • 如果传入的角色内容为空,表示保持原有角色,不修改。
    • 如果传入的角色不存在,会返回1003错误。
  4. (可选)调用 NERoomContexthandOverMyRole 方法,移交成员的角色。相关参数说明如下。

    名称 描述
    userUuid 用户ID
    • 如果传入的角色内容为空,表示保持原有角色,不修改。
    • 如果传入的角色不存在,会返回1003错误。
  5. 当房间内有成员角色变更时,会触发 NERoomListener 协议中的 onMemberRoleChanged 回调方法,通知房间内所有成员。

示例代码

实现修改成员角色功能的示例代码如下:

/**
 * 获取房间上下文NERoomContext
 * @param roomUuid 房间ID
 */
const NERoomContext = NERoomService.getRoomContext(roomUuid)

// 示例数据
const userUuid = '123'
const role = 'audience'

/**
 * 修改成员角色
 * @param uuid 用户ID
 * @param role 角色名称
 */
NERoomContext.changeMemberRole(userUuid, role).then(res => {
    console.log(res, 'changeMemberRole success')
}).catch(err => {
    console.error(err, 'changeMemberRole fail')
})

/**
 * 移交成员角色
 * @param userUuid 用户ID
 */
NERoomContext.handOverMyRole(userUuid).then(res => {
    console.log(res, 'handOverMyRole success')
}).catch(err => {
    console.error(err, 'handOverMyRole fail')
})

API 参考

方法 功能描述
changeMemberRole 修改成员角色。
handOverMyRole 移交成员角色。
此文档是否对你有帮助?
有帮助
去反馈
  • 注意事项
  • 配置步骤
  • 示例代码
  • API 参考