Options
All
  • Public
  • Public/Protected
  • All
Menu

Interface WhiteBoardSDKInstance

Hierarchy

  • WhiteBoardSDKInstance

Index

Methods

destroy

  • destroy(): void
  • 断开连接。销毁sdk

    房间的销毁需要满足下面条件: 房间内每个用户都处于下面这两个状态之一:

    1. 调用了destroy
    2. 心跳超时超过一分钟

    如果用户A调用了destroy后,假若房间内有其他用户导致房间未销毁,用户A仍可以重新创建whiteboardSDK,并通过joinRoom重新进入房间

    Returns void

getChannelId

  • getChannelId(): string
  • 返回当前房间的cid。可用于获取录像文件。

    注意joinRoom时,若当前该channel的房间不存在,则会创建一个新的cid对应当前的房间。房间销毁后,该cid对应的房间周期就结束了。之后用同样的channel创建房间时,会生成新的cid。

    每次白板房间的cid不会重复。

    Returns string

getUid

  • getUid(): number
  • 返回当前用户的uid。G2白板既返回用户传入的uid。G1白板会返回im账号在云信内部映射的uid。录像回放可能需要该uid获取录像文件

    Returns number

isConnected

  • isConnected(): boolean
  • 返回白板是否处于连接状态。只有不处于同步状态,且处于连接状态时,才能够修改白板的状态。 若需要监听白板连接状态, 或者同步状态的变化,可以通过 IJoinRoomCallback

    Returns boolean

isSynchronizing

  • isSynchronizing(): boolean
  • 返回白板是否处于同步中。只有不处于同步状态,且处于连接状态时,才能够修改白板的状态。 若需要监听白板连接状态, 或者同步状态的变化,可以通过 IJoinRoomCallback

    Returns boolean

joinRoom

  • joinRoom(opt: { channel: string; channelDestroyTime?: number; persistent?: boolean }, callback: IJoinRoomCallback): Promise<DrawPlugin>
  • 加入白板房间。进入成功后

    opt.createRoom建议一直设置为true。G1登录时重复创建房间会报错,但是不影响运行。G2该参数没有被用到。

    example
     whiteboardSdk
         .joinRoom(
         {
             channel: '871239'       //房间名字
         },
         {
             ondisconnected: (err) => {}
             onwillreconnect: () => {}
             onconnected: () => {},
             onSyncStart: () => {},
             onSyncFinish: () => {}
         }
     )
     .then(drawPlugin => {
         //加入房间成功。
         drawPlugin.enableDraw(true)
         toolCollection = ToolCollection.getInstance({
             container: document.getElementById('whiteboard'),
             handler: drawPlugin,
             options: {
                 platform: 'web'
             }
         })
         toolCollection.show()
     })
     .catch(err => {
         //加入房间失败
     })
    

    Parameters

    • opt: { channel: string; channelDestroyTime?: number; persistent?: boolean }
      • channel: string

        房间名称

      • Optional channelDestroyTime?: number

        持久化房间销毁时间;Unix时间戳;精确到s。最长为30个自然日。

      • Optional persistent?: boolean

        默认为false。 是否创建持久化房间。多个用户joinRoom进入同一个channel时,会以第一个用户的持久化参数作为标准

        注意,仅G2白板支持创建持久化房间

    • callback: IJoinRoomCallback

    Returns Promise<DrawPlugin>