跳到主要内容

InfiWebSDK API 说明

更新时间 2024/12/02 01:54:56

InfiWebSdk 全局对象是使用 Infi 白板 WebSDK 的功能入口。

获取方式

在您安装 @plaso-infi/whiteboard-sdk 依赖后:

npm i @plaso-infi/whiteboard-sdk

您可以通过 default import 获取到该全局对象,方式如下:

import InfiWebSdk from '@plaso-infi/whiteboard-sdk';

API 列表

getSdkInstance

getSdkInstance: (configs: GetSdkInstanceConfigs) => GetSdkInstanceReturnType;

使用画布能力的核心方法,用户需要通过执行该 API 完成画布的初始化工作,并获取画布的对象实例。

参数

参数名
类型
描述
configs
对象
初始化画布实例的必要设置,详情请参考初始化参数文档

返回

执行 getSdkInstance 方法后,您会获取到一个 Promise 对象 (GetSdkInstanceReturnType), 该对象在 fulfill 后,会有以下可能的返回结果:

  • 执行成功,返回对象为:

    {
    code: 0; // 成功状态码
    payload: InfiWebsdkInstanceType; // 画布 SDK 实例对象
    }
  • 执行失败,返回对象为:

    {
    code: 1; // 失败错误码
    payload: string; // 错误消息提示
    }

enableLogUpload

enableLogUpload: () => void;

开启客户端日志上传能力。

注:该能力默认关闭,建议您仅在需要我们帮助定位问题时开启该功能。

disableLogUpload

disableLogUpload: () => void;

关闭客户端日志上传能力。

prepareMediaResource

prepareMediaResource: () => void;

提前准备画布内使用的 HtmlVideoElementHtmlAudioElement 资源,以确保在画布会议场景下, 用户进入画布后能正常同步画布内的音视频播放行为。如果在进入画布前没有正常执行该 API,则用户进入画布会议后,可能会出现无法同步音视频播放进度的情况。

注:该 API 需要结合用户实时操作行为触发,建议您将执行该 API 代码片段添加至进入画布前的页面点击业务中,示例如下:

// 假设页面中有一个 id 为 enterInfiBtn 的按键
const button = document.getElementById('enterInfiBtn');
button.addEventListener('click', () => {
// 在按键被点击时,同步执行准备音视频元素的 API
InfiWebSdk.prepareMediaResource();
... // 执行过后,进入画布
});

属性列表

version

获取当前 Web SDK 的版本信息。