有奖捉虫:行业应用 & 管理与支持文档专题 HOT
本文档主要介绍如何主动退出当前 TRTC 房间,同时还会介绍在什么情况下会被移出房间:
?
?
说明:
本教程基于 5.x TRTC Web SDK 实现,若您使用 4.x 版本 SDK,可参考此教程

步骤1:完成前序步骤

可以参考文档 进入房间,创建 trtc 并进入房间。

步骤2:退出当前房间

调用 trtc.exitRoom() 方法退出房间,结束音视频通话。
await trtc.exitRoom();
// 退房成功后,若后续无需使用 trtc 实例,则可以调用 trtc.destroy 方法销毁实例,及时释放相关资源。销毁后的 trtc 实例无法继续使用,需要重新创建新的实例。
trtc.destroy();

被移出房间处理情况

除了用户主动退出房间之外,用户也有可能因为如下原因被移出房间,此时 SDK 会抛出 KICKED_OUT 事件,这时不需要调用 trtc.exitRoom() 退房,SDK 自动进入退房状态。
1. kick:两个相同 userId 的用户进入相同房间,前一个进房的用户会被移出。同名用户同时进入同一房间是不允许的行为,可能会导致双方音视频通话异常,应避免出现这种情况。
2. banned:通过服务端的 RemoveUser | RemoveUserByStrRoomId接口将某个用户移出某个 TRTC 房间。该用户会收到被移事件,reason 为banned
3. room-disband:通过服务端的 DismissRoom | DismissRoomByStrRoomId接口将某个 TRTC 房间解散,解散房间之后,该房间的所有用户都会收到被移事件,reason 为 room-disband
trtc.on(TRTC.EVENT.KICKED_OUT, event => {
console.log(event.reason)
});
?


http://www.vxiaotou.com