开发文档Umo Editor Next多人协作编辑

多人协作编辑

多人协作编辑功能允许多个用户同时编辑同一个文档,并且文档内容是实时传输到服务器端的,可以在服务器端直接入库,无需再由客户端发起保存请求。

多人协作编辑需要服务器端软件Umo Editor Server的支持,当然您也可以自定义服务商。

效果截图

Umo Editor 多人协作编辑

演示视频

特点及优势

  • 支持私有化部署,您可以私有化部署或者自定义服务商,实现数据的安全性和可控性;
  • 支持实时离线和在线协作,当用户离线后再次连接时,仍然可以同步文档更改的内容;
  • 通过 WebSocket 与服务器进行实时通信,实现文档内容的实时同步;
  • 可通过 Webhook 与其他应用进行通信,实现文档内容及评论等信息的同步;
  • 支持文档评论协作,用户可以对文档进行评论,评论内容也会实时同步到服务器端;
  • Umo Editor Server 可支持 100000+ 用户同时在线编辑,实现高效的多人协作,支持集群部署。

使用场景

  • 会议纪要多人共编:主持人定框架,参会人补充要点
  • 需求/PRD 评审共编:一边讨论一边落笔,减少多版本来回拷贝
  • 合同/制度协作撰写:多角色并行修改,集中在一个版本里收敛
  • 论文/报告合写:章节分工编辑,统一格式与目录结构
  • 运营/市场文案协作:多人同时优化语句与排版,快速发布
  • 售前方案联合编写:销售、产品、交付共同补齐内容与附件
  • 教学/培训材料共建:讲师与助教协同完善案例与练习题
  • 跨地区项目周报:异地成员实时补齐进度与风险
  • 客服/知识库维护:多人同步更新 FAQ,减少内容冲突
  • 制度宣贯资料维护:持续迭代同一份文档并保留协作痕迹

与其他功能协同使用

文档批注/评论(comments)

  • 协作负责“共同编辑”,评论负责“讨论与结论沉淀”:文档批注/评论
  • 结合 @ 提醒,把需要确认的问题定点抛给负责人

文档修订(revision)

  • 协作中开启修订,便于审阅“是谁改了什么”,再集中接受/拒绝定稿:文档修订
  • 审阅阶段按修订人过滤,分角色逐步收敛

文档历史版本(versions)

  • 用版本保存里程碑,用协作承接过程编辑:文档历史版本
  • 阶段验收/发布前创建版本,便于回溯与对比

AI(ai)

  • 协作写作时,用 AI 做段落润色/重写/扩写,把结果写回正文:AI 功能
  • 结合评论,把 AI 建议作为讨论依据,最后由协作者落地修改

默认配置

const defaultOptions = {
  // 多人协作编辑相关配置
  document: {
    id: '', // 多人协作场景下,文档 ID 是必填的,用于唯一标识一个文档
  },
  collaboration: {
    enabled: false,
    provider: {},
  },
}

不支持的配置

当开启了在线协作功能时,不支持以下配置:

const defaultOptions = {
  document: {
    content: '',
    autoSave: {
      // ...
    },
  },
  onSave() {
    // ...
  },
}

因为在多人协作的场景中,文档内容是实时传输到服务器端的,可以在服务器端直接入库,无需再由客户端发起保存请求。

配置说明

collaboration

多人协作编辑的相关配置,其实现思路和原理可以参考:https://tiptap.dev/docs/hocuspocus

  • collaboration.enabled

说明:是否启用在线协作。

类型:Boolean

  • collaboration.provider

说明:在线协作服务商配置。Umo Editor Next 默认提供了基于 Express 一个 Nodejs 的服务器端(见:Umo Editor Server),包含了 Hocuspocus Server,该选项支持 Hocuspocus Server 的所有配置。

类型:Object

配置:同 Hocuspocus Server 的配置,见 https://tiptap.dev/docs/hocuspocus/provider/configuration

方法列表

方法的使用示例请参考:方法列表

getCollaboration

说明:获取在线协作相关信息。

参数:无

返回值Objectundefined,Object 包含以下信息: