Chamilo
关于 ONLYOFFICE 和 Chamilo 集成
ONLYOFFICE 提供了一个官方连接器,可以将 ONLYOFFICE 文档 与 Chamilo 集成,并在文档库中编辑办公文档。您可以从 GitHub 页面下载 ONLYOFFICE 连接器。
要详细了解适用于 Chamilo 的 ONLYOFFICE 连接器的工作原理,请访问我们的 API 文档。
主要功能
- 编辑和查看文本文档、电子表格、演示文稿和 PDF 表单。
- 实时共同编辑文档:两种共同编辑模式(快速和严格)、跟踪更改 模式、批注和内置聊天。
- JWT 支持,保护您的流量,除具有适当权限的用户外,任何人都无法访问您的文档。
支持的格式
- 编辑:DOCX、XLSX、PPTX、PPSX、PDF 表单
- 仅查看:PDF、DJVU、TXT、CSV、ODT、ODS、ODP、DOC、XLS、PPT、PPS、EPUB、RTF、HTML、HTM、MHT、XPS
1.5.0 版本的新增内容
已添加
- 支持学习路径
已更改
- 小幅修复
完整的更改日志请见此处。
将 ONLYOFFICE 文档连接到 Chamilo
要求
-
ONLYOFFICE 文档服务器 v6.2 或更高版本(服务器版或云版)
您需要一个 ONLYOFFICE 文档实例,该实例必须可以从 Chamilo 和所有终端客户端解析并连接。它必须能够直接向 Chamilo 发送 POST 请求。
备注要了解有关安装 ONLYOFFICE 文档的更多信息,请参阅官方文档页面。
-
Chamilo v1.11.16 或更高版本
安装适用于 Chamilo 的 ONLYOFFICE 连接器
从 Chamilo v1.11.16 开始,ONLYOFFICE 连接器已预装。要启用它,请执行以下步骤:
- 转到 Chamilo Administration(管理)页面,在 Portal(门户)区块中选择 Plugins(插件)部分。
- 在插件列表中,选择 ONLYOFFICE 插件,然后点击 Enable the selected plugins(启用所选插件)按钮。

如果您的 Chamilo 版本 低于 1.11.16,请按照以下说明安装 ONLYOFFICE 连接器:
- 从 GitHub 页面下载连接器。
- 转到 Chamilo Administration(管理),选择 Plugins(插件),然后点击 Upload plugin(上传插件)按钮。
- 上传 onlyoffice.zip 文件。您将看到插件列表。
- 在 Chamilo 根文件夹中使用终端运行 composer install。
- 返回插件列表,选择 ONLYOFFICE 插件,然后点击 Enable(启用)。
更新适用于 Chamilo 的 ONLYOFFICE 连接器
要将连接器更新到最新版本,您需要用新收集的插件替换预装的默认插件文件夹。
步骤 1:准备包含新版本连接器的文件夹。
-
您可以从 GitHub 页面下载并 解压缩归档文件:
cd /tmp && wget https://github.com/ONLYOFFICE/onlyoffice-chamilo/releases/download/vX.X.X/onlyoffice.zip其中 vX.X.X 是所需的连接器版本。
unzip onlyoffice.zip -
或者,您也可以自行收集连接器:
-
运行以下命令获取此仓库的最新版本:
git clone https://github.com/ONLYOFFICE/onlyoffice-chamilocd onlyoffice-chamilo -
获取子模块:
git submodule update --init --recursive -
获取插件依赖项:
composer install -
收集所有文件:
mkdir /tmp/onlyoffice-deploymkdir /tmp/onlyoffice-deploy/onlyofficecp -r ./ /tmp/onlyoffice-deploy/onlyofficecd /tmp/onlyoffice-deploy/onlyofficerm -rf ./.git*rm -rf */.git*
-
步骤 2:删除旧的连接器文件夹。
-
在根文件夹中打开终端。
-
使用以下命令删除该文件夹:
rm -rf /var/www/html/chamilo-x.x.x/plugin/onlyoffice其中
chamilo-x.x.x是您的 Chamilo 版本。
步骤 3:将新的连接器文件夹移动到 chamilo-x.x.x/plugin/ 目录。
-
在根文件夹中打开终端。
-
使用以下命令移动该文件夹:
cp -r /tmp/onlyoffice-deploy/onlyoffice /var/www/html/chamilo-x.x.x/plugin/其中
chamilo-x.x.x是您的 Chamilo 版本。
配置适用于 Chamilo 的 ONLYOFFICE 连接器
在 Plugins(插件)页面上,找到 ONLYOFFICE 并点击 Configure(配置)。您将看到 Settings(设置)页面,可以在其中配置以下参数:
-
在 Document Editing Service address(文档编辑服务地址)字段中,输入从 Chamilo 访问 文档编辑服务 所用的地址。
重要ONLYOFFICE 文档 的地址必须可以从 Chamilo 访问,同时 Chamilo 的地址也必须可以从 ONLYOFFICE 文档 访问。
-
在 Secret Key(密钥)字段中指定用于对数据进行签名的密钥。
备注从 ONLYOFFICE 文档 v7.2 开始,JWT 默认启用,并且密钥会自动生成。您还需要在 Chamilo 端启用它:在 ONLYOFFICE 文档配置文件 中找到您的密钥,然后在连接器设置中指定相同的密钥。有关更多详细信息,请参阅本文的为 ONLYOFFICE 和 Chamilo 集成启用 JWT 部分。

工作原理
ONLYOFFICE 集成遵循此处记录的 API。
-
创建新文件时,教师打开所需的文件夹,然后点击 Create new(新建)ONLYOFFICE 图标。
-
用户将被重定向到文件创建页面,需要在该页面输入文件名和格式(文本文档、电子表格或演示文稿)。浏览器调用 /plugin/onlyoffice/create.php 方法。该方法会将一个空文件的副本添加到课程文件夹中。
-
打开现有文件时,用户选择 Open with ONLYOFFICE(使用 ONLYOFFICE 打开)图标。
-
请求被发送到 /plugin/onlyoffice/editor.php?docId="document identificator"。服务器处理该请求,并生成具有以下属性的编辑器初始化配置:
- url - ONLYOFFICE 文档 用于下载文档的 URL;
- callbackUrl - ONLYOFFICE 文档 用于通知文档编辑状态的 URL;
- documentServerUrl - 客户端需要用来响应 ONLYOFFICE 文档 的 URL(可以在管理设置页面中设置);
- key - etag,用于指示 ONLYOFFICE 文档 是否需要再次下载该文档。
-
服务器返回一个带有用于打开编辑器的脚本的页面。
-
浏览器打开此页面并加载编辑器。
-
浏览器向 ONLYOFFICE 文档 发出请求,并将文档配置传递给它。
-
ONLYOFFICE 文档 加载文档,用户开始编辑。
-
ONLYOFFICE 文档 向 callbackUrl 发送 POST 请求,以通知 Chamilo 有用户正在编辑该文档。
-
当所有用户完成编辑后,他们会关闭编辑器窗口。
-
在 10 秒后,ONLYOFFICE 文档 向 callbackUrl 发送 POST 请求,通知编辑会话已结束,并发送指向新文档版本的链接。
-
Chamilo 加载文档的新版本并覆盖该文件。
为 ONLYOFFICE 和 Chamilo 集成启用 JWT
为了保护文档免遭未经授权的访问,ONLYOFFICE 编辑器使用 JSON Web 令牌(JWT)。令牌 会在文档编辑器初始化时以及 ONLYOFFICE 文档 内部服务之间交换命令时添加到配置中。密钥 用于对 JSON Web 令牌进行签名,并在向 ONLYOFFICE 文档发出请求时验证令牌。
从 ONLYOFFICE 文档 v7.2 开始,JWT 默认启用,并且密钥会自动生成。您需要在 ONLYOFFICE 文档配置文件 中找到您的密钥,然后在连接器设置中指定相同的密钥。
步骤 1:在 ONLYOFFICE 文档配置文件 中找到您的密钥
-
使用任意可用的文本编辑器打开 local.json 文件。
-
对于 Linux -
/etc/onlyoffice/documentserver/local.json -
对于 Windows -
%ProgramFiles%\ONLYOFFICE\DocumentServer\config\local.json -
对于 Docker – 使用
docker exec -it <containerID> bash命令进入 ONLYOFFICE 文档容器,然后打开/etc/onlyoffice/documentserver/local.json或者,您也可以使用以下命令查找默认密钥,而无需打开 local.json:
sudo docker exec <containerID> /var/www/onlyoffice/documentserver/npm/json -f /etc/onlyoffice/documentserver/local.json 'services.CoAuthoring.secret.session.string'
local.json 文件应如下所示:
{"services": {"CoAuthoring": {"token": {"enable": {"request": {"inbox": true,"outbox": true},"browser": true}},"secret": {"inbox": {"string": "yoursecret"},"outbox": {"string": "yoursecret"},"session": {"string": "yoursecret"}}}}} -
-
三个部分中均指定了
true值,这表示已启用令牌验证。services.CoAuthoring.token.enable.browserservices.CoAuthoring.token.enable.request.inboxservices.CoAuthoring.token.enable.request.outbox
-
自动生成的密钥在三个部分中指定。您可以将默认密钥值替换为您自己的密钥。三个部分中的密钥必须相同。
services.CoAuthoring.secret.inbox.stringservices.CoAuthoring.secret.outbox.stringservices.CoAuthoring.secret.session.string
-
如果您进行了更改,请保存并重启服务,以使配置更改生效。
supervisorctl restart all
步骤 2:在连接器设置中指定相同的密钥
在连接器设置中,于 Secret key(密钥)字段指定相同的密钥并保存设置。
禁用适用于 Chamilo 的 ONLYOFFICE 连接器
如果您需要禁用 ONLYOFFICE 连接器:
- 在 Plugins(插件)页面上,找到 ONLYOFFICE 并点击 Configure(配置)。
- 在 Enable(启用)部分勾选 No(否)复选框。
在 Chamilo 中开始使用 ONLYOFFICE 文档
要使用 ONLYOFFICE 文档编辑器 打开文档 进行编辑:
- 打开包含所需文件的文件夹。
- 点击
Edit in ONLYOFFICE(在 ONLYOFFICE 中编辑)图标,在编辑器中打开文件进行编辑。
文档将在 ONLYOFFICE 文档编辑器中打开。

要将文档权限更改为 只读:
- 找到所需的文档。
- 点击
Edit(编辑)图标。
- 在打开的页面上,选中 Read only(只读)复选框。
- 点击 Save document(保存文档)按钮。

要了解有关最常见问题及其解决方法的更多信息,请访问我们的故障排除指南。