帧同步相关接口

最近更新时间:2019-08-15 11:05:32

startFrameSync

接口描述

开始帧同步。

参数描述

参数名 类型/值 描述
para object 预留参数,传{}即可
callback MGOBE.types.ReqCallback<MGOBE.types.StartFrameSyncRsp> 响应回调函数
说明:

  • 调用结果将在 callback 中异步返回。调用成功后房间内全部成员将收到 onStartFrameSync 广播。该接口会修改房间帧同步状态为“已开始帧同步”。
  • 房间内任意一个玩家成功调用该接口将导致全部玩家开始接收帧广播。

返回值说明

使用示例

    room.startFrameSync({}, event => {
        if (event.code === 0) {
            console.log("开始帧同步成功");
        }
    });

stopFrameSync

接口描述

停止帧同步。

参数描述

参数名 类型/值 描述
para object 预留参数,传{}即可
callback MGOBE.types.ReqCallback<MGOBE.types.StoptFrameSyncRsp> 响应回调函数
说明:

  • 调用结果将在 callback 中异步返回。调用成功后房间内全部成员将收到 onStopFrameSync 广播。该接口会修改房间帧同步状态为“已停止帧同步”。
  • 房间内任意一个玩家成功调用该接口将导致全部玩家停止接收帧广播。

返回值说明

使用示例

room.stopFrameSync({}, event => console.log(event));

sendFrame

接口描述

发送帧同步数据。

参数描述

参数名 类型/值 描述
sendFramePara MGOBE.types.SendFramePara 发送帧同步数据参数
callback MGOBE.types.ReqCallback<MGOBE.types.SendFrameRsp> 响应回调函数
说明:

  • 帧数据内容 data 类型为普通 object,由开发者自定义,目前支持最大长度不超过1k。
  • 后台将集合全部玩家的帧数据,并以一定时间间隔(由房间帧率定义)通过 onRecvFrame 广播给各客户端。调用结果将在 callback 中异步返回。
  • 只有房间处于“已开始帧同步”状态才能调用该接口。

返回值说明

使用示例

    const frame = {cmd: "xxxxxxxx", id: "xxxxxxxx" };
    const sendFramePara = { data: frame };
    room.sendFrame(sendFramePara, event => console.log(event));

requestFrame

接口描述

请求补帧。

参数描述

参数名 类型/值 描述
requestFramePara MGOBE.types.RequestFramePara 请求补帧参数
callback MGOBE.types.ReqCallback<MGOBE.types.RequestFrameRsp> 响应回调函数
说明:

  • 调用结果将在 callback 中异步返回。

返回值说明

使用示例

    const requestFramePara = {
        beginFrameId: 100,
        endFrameId: 120,
    };

    room.requestFrame(requestFramePara, event => console.log(event));

onRecvFrame

接口描述

房间帧消息广播回调接口。

参数描述

参数名 类型/值 描述
event MGOBE.types.BroadcastEvent<MGOBE.types.RecvFrameBst> 回调参数
说明:

  • onRecvFrame 广播表示收到一个帧 frame,frame 的内容由多个 MGOBE.types.FrameItem 组成,即一帧时间内房间内所有玩家向服务器发送帧消息的集合。

返回值说明

使用示例

    room.onRecvFrame = event => {
        console.log("帧广播", event.data.frame);
    };

onStartFrameSync

接口描述

开始帧同步广播回调接口。

参数描述

参数名 类型/值 描述
event MGOBE.types.BroadcastEvent<MGOBE.types.StartFrameSyncBst> 回调参数
说明:

  • onStartFrameSync 广播表示房间开始帧同步。收到该广播后将持续收到 onRecvFrame 广播。

返回值说明

使用示例

room.onStartFrameSync = event => console.log("开始帧同步");

onStopFrameSync

接口描述

停止帧同步广播回调接口。

参数描述

参数名 类型/值 描述
event MGOBE.types.BroadcastEvent<MGOBE.types.StopFrameSyncBst> 回调参数
说明:

  • onStopFrameSync 广播表示房间停止帧同步。收到该广播后将不再收到 onRecvFrame 广播。

返回值说明

使用示例

room.onStopFrameSync = event => console.log("停止帧同步");

onAutoRequestFrameError

接口描述

自动补帧失败回调接口。

参数描述

参数名 类型/值 描述
event MGOBE.types.BroadcastEvent<MGOBE.types.ResponseEvent<MGOBE.types.RequestFrameRsp>> 回调参数
说明:

  • onAutoRequestFrameError 表示自动补帧失败,在初始化 Listener 时开启自动补帧后才能触发。
  • 发生补帧失败后,将不能收到帧广播,开发者可以使用 retryAutoRequestFrame 方法重试自动补帧。

返回值说明

使用示例

    room.onAutoRequestFrameError = event => {
        console.log("自动补帧失败", event.data.code);
        // 重试
        room.retryAutoRequestFrame();
    };

retryAutoRequestFrame

接口描述

重试自动补帧。

参数描述

说明:

  • 当收到 onAutoRequestFrameError 回调时,表示自动补帧失败,可以使用该方法重新触发自动补帧。

返回值说明

使用示例

    room.onAutoRequestFrameError = event => {
        console.log("自动补帧失败", event.data.code);
        // 重试
        room.retryAutoRequestFrame();
    };