Chamilo
关于 ONLYOFFICE 与 Chamilo 的集成
ONLYOFFICE 提供了一个官方连接器,可以将 ONLYOFFICE 文档 与 Chamilo 集成,并在文档库中编辑办公文档。您可以从 GitHub 页面下载 ONLYOFFICE 连接器。
主要功能
- 编辑和查看文本文档、电子表格、演示文稿和 PDF 表单。
- 实时协同编辑文档:两种协同编辑模式(快速和严格)、修订模式、评论和内置聊天。
- JWT 支持,以保护您的流量,确保只有具有适当权限的用户才能访问您的文档。
支持的格式
- 可编辑:DOCX、XLSX、PPTX、PPSX、PDF 表单
- 仅查看:PDF、DJVU、TXT、CSV、ODT、ODS、ODP、DOC、XLS、PPT、PPS、EPUB、RTF、HTML、HTM、MHT、XPS
将 ONLYOFFICE 文档连接到 Chamilo
要求
-
ONLYOFFICE 文档服务器 v6.2(服务器或云版本)或更高版本
您需要一个可以从 Chamilo 和任何终端客户端解析和连接的 ONLYOFFICE 文档实例。它必须能够直接向 Chamilo 发送 POST 请求。
请参阅官方文档页面,了解有关安装 ONLYOFFICE 文档的更多信息。 - Chamilo v1.11.16 或更高版本
为 Chamilo 安装 ONLYOFFICE 连接器
从 Chamilo v1.11.16 开始,ONLYOFFICE 连接器已预装。要启用它,请执行以下步骤:
- 转到 Chamilo 的管理页面,并在门户块中选择插件部分。
- 在插件列表中,选择 ONLYOFFICE 插件并点击启用所选插件按钮。


如果您的 Chamilo 版本低于 1.11.16,请按照以下说明安装 ONLYOFFICE 连接器:
- 从GitHub 页面下载连接器。
- 转到 Chamilo 管理,选择插件并点击上传插件按钮。
- 上传onlyoffice.zip文件。您将看到插件列表。
- 使用终端从 Chamilo 根文件夹运行composer install。
- 返回插件列表,选择 ONLYOFFICE 插件,然后点击启用。
更新 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-chamilo cd onlyoffice-chamilo -
获取子模块:
git submodule update --init --recursive -
获取插件依赖项:
composer install -
收集所有文件:
mkdir /tmp/onlyoffice-deploy mkdir /tmp/onlyoffice-deploy/onlyoffice cp -r ./ /tmp/onlyoffice-deploy/onlyoffice cd /tmp/onlyoffice-deploy/onlyoffice rm -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 连接器
在插件页面,找到ONLYOFFICE并点击配置。您将看到设置页面,您可以在其中配置以下参数:
-
在文档编辑服务地址字段中输入用于从Chamilo访问文档编辑服务的地址。
重要 ONLYOFFICE 文档的地址必须可以从Chamilo访问,Chamilo的地址也必须可以从ONLYOFFICE 文档访问。
-
在密钥字段中指定用于签署数据的密钥。
从 ONLYOFFICE 文档 v7.2 开始,JWT 默认启用,并且密钥自动生成。您需要在 Chamilo 端启用它:在ONLYOFFICE 文档配置文件中找到您的密钥,然后在连接器设置中指定相同的密钥。有关详细信息,请参阅本文的启用 ONLYOFFICE 和 Chamilo 集成的 JWT部分。


工作原理
ONLYOFFICE 集成遵循记录在此处的 API。
- 要创建新文件,教师打开所需的文件夹并点击创建新 ONLYOFFICE 图标。
- 用户被重定向到文件创建页面,在那里他们需要输入文件名和格式(文本文档、电子表格或演示文稿)。浏览器调用/plugin/onlyoffice/create.php方法。它将一个空文件的副本添加到课程文件夹中。
- 要打开现有文件,用户选择用 ONLYOFFICE 打开图标。
-
请求被发送到/plugin/onlyoffice/editor.php?docId="document identificator"。服务器处理请求,生成具有以下属性的编辑器初始化配置:
- url - ONLYOFFICE 文档用于下载文档的 URL;
- callbackUrl - ONLYOFFICE 文档用于通知文档编辑状态的 URL;
- documentServerUrl - 客户端需要响应ONLYOFFICE 文档的 URL(可以在管理设置页面中设置);
- key - 用于指示ONLYOFFICE 文档是否需要重新下载文档的 etag。
- 服务器返回一个页面,其中包含打开编辑器的脚本。
- 浏览器打开此页面并加载编辑器。
- 浏览器向ONLYOFFICE 文档发出请求,并将文档配置传递给它。
- ONLYOFFICE 文档加载文档,用户开始编辑。
- ONLYOFFICE 文档向callbackUrl发送 POST 请求,以通知Chamilo用户正在编辑文档。
- 当所有用户完成编辑后,他们关闭编辑器窗口。
- 在10 秒后,ONLYOFFICE 文档向 callbackUrl 发出 POST 请求,通知编辑会话已结束,并发送新文档版本的链接。
- Chamilo 加载文档的新版本并覆盖文件。
为 ONLYOFFICE 和 Chamilo 集成启用 JWT
为了保护文档免受未经授权的访问,ONLYOFFICE 编辑器使用 JSON Web Token (JWT)。令牌在初始化文档编辑器时添加到配置中,并在内部ONLYOFFICE 文档服务之间交换命令时使用。密钥用于签署 JSON Web Token,并在请求到 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"}}}}} - 对于 Linux -
-
在三个部分中指定了
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:在连接器设置中指定相同的密钥
在连接器设置中,在密钥字段中指定相同的密钥并保存设置。
禁用 Chamilo 的 ONLYOFFICE 连接器
如果您需要禁用 ONLYOFFICE 连接器:
- 在插件页面,找到ONLYOFFICE并点击配置。
- 在启用部分中勾选否复选框。
在 Chamilo 中开始使用 ONLYOFFICE 文档
要使用 ONLYOFFICE 文档编辑器打开文档进行编辑:
- 打开包含所需文件的文件夹。
-
点击
在 ONLYOFFICE 中编辑图标以在编辑器中打开文件进行编辑。
文档将在 ONLYOFFICE 文档编辑器中打开。


要更改文档的权限为只读:
- 找到所需的文档。
-
点击
编辑图标。
- 在打开的页面中,选择只读复选框。
- 点击保存文档按钮。

