nimeet 文档中心
English

互动白板产品概览

产品定位、架构、房间模型、实时通道(LiveKit)与服务端持久化的分工。

版本 v1.0.0 · 更新于 2026-10-28 · 修订 2

互动白板(Interactive Whiteboard)是 ni-meet 的产品线之一:把白板房间、场景与笔迹内容放在控制面持久化,再用实时数据通道把增量同步给房间内的所有成员。它不依赖白板专用的媒体服务器,房间里的语音、视频仍由 RTC 频道承载。

产品定位

  • 可持久化:每个房间的场景、笔迹、图片和视口写入控制面,服务重启前一直可读;关闭房间后仍可导出快照与回放。
  • 可回放:所有变更按序号写入操作日志,回放接口按时间偏移返回操作帧,播放器可以暂停、定位和结束。
  • 可鉴权:项目凭证用于服务端调用;房间 Token 绑定到单个房间与角色(admin / writer / reader),有效期可控。
  • 可观测:房间版本号随每次变更递增,操作序号单调递增,便于客户端对账和去重。

架构

text
浏览器 / 移动端 WebView
        │  ① REST(场景与内容持久化)
        │  ② LiveKit data channel(topic = whiteboard,低延迟广播)
        ▼
ni-meet 控制面 ── 白板服务 ── 房间 / 场景 / 笔迹 / 操作日志
        │
        └── 快照导出(JSON / SVG)与回放时间线

第 ① 条路径是权威数据源:晚加入的成员、回放和导出都从控制面读取。第 ② 条路径只负责实时性,消息丢失时由下一次 REST 同步或状态刷新补齐。

能力清单

能力说明
房间生命周期创建、列表、详情、封禁/解禁、永久关闭(关闭后只读)
场景(页面)场景路径 /目录/页面、背景图、新增与切换
场景内容笔迹(画笔、橡皮、矩形、椭圆、图形、激光笔等工具)、图片、视口
撤销/重做按成员隔离,服务端保留完整操作日志
快照/导出完整 JSON 快照(含操作日志)与单场景 SVG
回放按 from / to 时间窗返回操作帧与偏移
房间 TokenNETLESSROOM_*,角色与有效期可控;项目 Token 为 NETLESSSDK_*

与 RTC 的关系

白板房间与 RTC 频道是两个独立概念:白板房间有自己的 UUID,可以绑定到任意频道名或课程。典型用法是先用 RTC 加入语音/视频频道,再用白板 Token 加入白板房间,两者都通过同一套项目凭证在服务端签发。

当前边界

  • 服务端不提供文档转换(PPT/PDF 转图片):背景图由调用方上传后以 URL 形式写入场景。
  • 场景删除、页面排序不在服务端接口范围内;客户端仍可清空内容或切换页面。
  • 操作日志按房间保留最近 10000 条,超出后最早的记录不再进入回放。
  • 白板服务使用与平台一致的存储抽象;默认内存实现重启即清空,生产部署需替换为持久化存储。
历史版本
  • 版本 0.9.0 2026-10-20 — Initial whiteboard overview (pre-GA).

本页由文档构建流水线生成 · 2026-10-31 01:24:02 UTC · 文档中心 v1.1.0.

内容依据公开 API 定义.

ni-meet 是自建 RTC PaaS,媒体面基于 LiveKit(Apache-2.0),并与声网 API 兼容。