跳到主要内容

带看退出

提示

如果包含带看语言功能,带看退出会默认退出语音连接。

通常有两种情况需要关注带看退出:

  • 1、用户主动退出带看房间
    主动退出房间调用 exit() 方法进行操作,通过 exit() 方法的回调可知带看是否退出。
    其他因业务场景需要,由程序主动调用 exit() 触发的退出带看都归于用户主动退出带看房间。

  • 2、带看房间被关闭
    带看房间被关闭可通过监听内置事件 builtinEvent ,判断返回行为是否为 RoomClose 类型,获悉带看是否退出。

下面针对以上情况做详细开发说明。

无框架示例

此说明默认您使用原生 js | ts 进行应用开发。

1、调用退出方法

信息

通过 exit() 方法,操作带看退出。

// 通过简单的 `console.log(live)` ,确保您的确获取到了 `live` 实例。
live.exit().then(() => {
console.log("退出带看");
});

2、监听房间关闭

import { BuiltinActionType } from "@realsee/live/lib/typings/LiveMsg";

live.on("builtinEvent", (builtinMsg) => {
if (builtinMsg.action === BuiltinActionType.RoomClose) {
// 带看房间关闭,退出带看
}
});

3、成功退出标识

提示

您也可以在控制台快捷查看带看是否成功退出。

live-exit-success

如上图所示,如果收到 BUILTIN_MSG 指令,点击查看详细内容,data 的事件类型(event_type) 为 room_change, 行为(action) 为 close, 则标识带看成功退出。

React 示例

此说明默认您使用 React 框架进行应用开发。

1、调用退出方法

信息

使用 useLiveAction hook, 调用 exit() 方法,进行带看退出。

import { useLiveAction } from "./LiveReact";

function ExitBtn() {
const { exit } = useLiveAction();

const handleExit = () => {
exit().then(() => {
console.log("退出带看");
});
};

return <button onClick={handleExit}>退出带看示例按钮</button>;
}

2、监听房间关闭

import { BuiltinActionType } from "@realsee/live/lib/typings/LiveMsg";

const { useLiveEventCallback } = liveInstance;

useLiveEventCallback("builtinEvent", (builtinMsg) => {
switch (builtinMsg.action) {
case BuiltinActionType.RoomClose:
console.log("__带看房间关闭__");
break;
case BuiltinActionType.UserStatus:
console.log(builtinMsg.data);
console.log("builtinEvent: user state change");
break;
case BuiltinActionType.UserInfo:
console.log("builtinEven: user info change");
break;
case BuiltinActionType.UserMicroStatus:
console.log("builtinEvent: user micro change");
break;
case BuiltinActionType.UserPermission:
console.log("builtinEvent: user permission change");
break;
default: // debug
console.log("builtinEvent: 其他不在枚举内的变更!");
break;
}
});

3、成功退出标识

提示

您也可以在控制台快捷查看带看是否成功退出。

live-exit-success

如上图所示,如果收到 BUILTIN_MSG 指令,点击查看详细内容,data 的事件类型(event_type) 为 room_change, 行为(action) 为 close, 则标识带看成功退出。