Appearance
切换角色
说明
调用本接口可以实现用户在“主播”和“观众”两种角色之间来回切换。
由于视频直播和语音聊天室需要支持多达10万名观众同时观看,所以设定了 只有主播才能发布自己的音视频 的规则。因此,当有些观众希望发布自己的音视频流(以便能跟主播互动)时,就需要先把自己的角色切换成 主播。
您可以在进入房间时通过 params 中的 role 字段事先确定用户的角色,也可以在进入房间后通过该接口动态切换角色。
注意
- 该接口仅适用于视频直播(TRTC_APP_SCENE_LIVE)和语音聊天室(TRTC_APP_SCENE_VOICE_CHATROOM)这两个场景。
- 如果您在 enterRoom 时指定的 scene 为
TRTC_APP_SCENE_VIDEOCALL或 TRTC_APP_SCENE_AUDIOCALL,请不要调用这个接口。
方法名
switchRole
用法
- 用法如下:
js
module.switchRole({
params:{
},
//成功执行的函数
success: (res) => {
let data = res.data;
console.log(data)
},
//失败执行的函数
fail: (res) => {
console.log(res)
},
//接口调用完成返回函数,不管成功还是失败都会返回
complete: (res) => {
// console.log(res)
}
})js
module.switchRole({
params:{
},
//成功执行的函数
success: (res) => {
const data = res.data;
console.log(data)
},
//失败执行的函数
fail: (res) => {
console.log(res)
},
//接口调用完成返回函数,不管成功还是失败都会返回
// complete: (res) => {
// console.log(res)
// }
} as LevenOptions)- 参数说明
参数名 参数类型 是否必填 默认值 参数描述 params Object 是 无 参数配置 params.role String 是 TRTCRoleAnchor 角色,默认为 主播 TRTCRoleAnchor:主播,可以发布自己的音视频,同一个房间里最多支持50个主播同时发布音视频。TRTCRoleAudience:观众,不能发布自己的音视频流,只能观看房间中其他主播的音视频。如果要发布自己的音视频,需要先通过 switchRole 切换成 主播,同一个房间内同时最多可以容纳 10 万名观众。params.privateMapKey String 否 无 用于权限控制的权限票据,当您希望某个房间只能让特定的 userId 进入或者上行视频时,需要使用 privateMapKey进行权限保护。
仅建议有高级别安全需求的客户使用,更多详情请参见 开启高级权限控制。success Function 否 无 执行成功的函数 fail Function 否 无 执行失败的函数 complete Function 否 无 执行完成的函数,不管成功还是失败都会执行
回调
- 示例
json
{
"data": { },
"message": "",
"code": 0
}- 回调说明:
参数名 参数类型 参数描述 message String 消息提示 data Object 数据对象 code Integer 返回类型,0.成功,其他:失败
