RtcRoomContext.kickOutUser
基础库 3.250.12 开始支持,低版本需做兼容处理。
解释:指定踢出房间内某个成员。当有成员被踢出时,会通过 rtc-room
组件的 bindstatechange 事件监听返回信息。
方法参数
Object object
object 参数说明
属性名 | 类型 | 必填 | 默认值 | 说明 |
---|---|---|---|---|
userId | Number | 是 | 要踢出房间的成员 id | |
success | Function | 否 | 接口调用成功的回调函数 | |
fail | Function | 否 | 接口调用失败的回调函数 | |
complete | Function | 否 | 接口调用结束的回调函数(调用成功、失败都会执行) |
代码示例
- SWAN
- JS
<view class="wrap" bindstatechange="handleStateChange">
<rtc-room id="myRoom">
<rtc-room-item
type="local"
userId="{{localUserId}}"
class="local-view">
</rtc-room-item>
<rtc-room-item
type="remote"
userId="{{remoteUserId}}"
class="remote-view">
</rtc-room-item>
</rtc-room>
<button bindtap="kickOutUser">取消订阅远端音视频流</button>
</view>
Page({
onReady(e) {
// 使用此API需要小程序主体开通实时音视频通话鉴权
this.rtcRoomContext = swan.createRtcRoomContext('myRoom');
console.log('这是一个 RtcRoomContext 实例:', this.rtcRoomContext);
this.enterRoom();
},
enterRoom() {
this.rtcRoomContext.enterRoom({
roomName: 'roomName',
userId: 1234567,
displayName: 'displayName',
sdkAppId: 'xxxxxx',
token: 'xxxxxx',
success: res => {
console.log('enterRoom success: ', res);
},
fail: err => {
console.log('enterRoom fail: ', err);
}
});
},
kickOutUser() {
this.rtcRoomContext.kickOutUser({
// 需要 userId 为 2345678 的成员在房间内
userId: 2345678,
success: res => {
console.log('kickOutUser success: ', res);
},
fail: err => {
console.log('kickOutUser fail: ', err);
}
});
},
handleStateChange(e) {
let data = e.detail;
if(data.msg === 'REMOTE_USER_KICKOUT') {
console.log('有成员被踢出房间');
}
}
});