Chamilo ONLYOFFICE integration plugin

This plugin enables users to edit office documents within Chamilo using ONLYOFFICE Docs.

The app is compatible with Chamilo v1.11.14 or higher.

  • Create and edit text documents, spreadsheets, and presentations. Currently, the following document formats can be edited: DOCX, XLSX, PPTX, PPSX.
  • The above mentioned formats are also available for viewing together with PDF, DJVU, TXT, CSV, ODT, ODS, ODP, DOC, XLS, PPT, PPS, EPUB, RTF, HTML, HTM, MHT, XPS.
  • Co-edit documents in real-time: use two co-editing modes (Fast and Strict), the Track Changes mode, comments, and the built-in chat.

You need an instance of ONLYOFFICE Docs (Document Server) that is resolvable and connectable both from Chamilo and any end clients. ONLYOFFICE Docs must also be able to POST to Chamilo directly.

ONLYOFFICE Docs and Chamilo can be installed either on different computers, or on the same machine. If you use one machine, set up a custom port for Document Server as by default both ONLYOFFICE Docs and Chamilo work on port 80.

The easiest way to start an instance of ONLYOFFICE Docs is to use Docker.

To start using ONLYOFFICE Docs with Chamilo, the following steps must be performed:

  1. Go to Chamilo Administration, choose Plugins and click the Upload plugin button.
  2. Upload (you'll find it here). You'll see the plugin list.
  3. Launch composer install from the Chamilo root folder.
  4. Return to the plugin list, select the ONLYOFFICE plugin, and click Enable the selected plugins.

On the Plugins page, find ONLYOFFICE and click Configure. You'll see the Settings page. Enable the plugin and specify Document Server address:


Where the documentserver is the name of the server with ONLYOFFICE Docs installed. The address must be accessible from the user browser and from the Chamilo server. The Chamilo server address must also be accessible from ONLYOFFICE Docs for correct work.

To create a new file, the user opens the necessary folder and clicks the Create new ONLYOFFICE icon.

The user is redirected to the file creation page where they need to enter the file name and format (text document, spreadsheet, or presentation). The browser calls the /plugin/onlyoffice/create.php method. It adds the copy of the empty file to the user folder.

To open an existing file, the user chooses the Open with ONLYOFFICE icon.

The request is sent to /plugin/onlyoffice/editor.php?docId="document identificator". The server processes the request, generates the editor initialization configuration with the following properties:

  • url - the URL that ONLYOFFICE Docs uses to download the document;
  • callbackUrl - the URL that ONLYOFFICE Docs uses to inform about the status of document editing;
  • documentServerUrl - the URL that the client needs to respond to ONLYOFFICE Docs (can be set at the administrative settings page);
  • key - the tag to instruct ONLYOFFICE Docs whether to download the document again or not.

The server returns a page with a script to open the editor.

The browser opens this page and loads the editor.

The browser makes a request to Document Server and passes the document configuration to it.

Document Server loads the document and the user starts editing.

Document Server sends a POST request to callbackUrl to inform Chamilo that the user is editing the document.

When all the users have finished editing, they close the editor window.

After 10 seconds, Document Server makes a POST request to callbackUrl with the information that editing has ended and sends a link to the new document version.

Chamilo loads a new version of the document and overwrites the file.

Download the Chamilo/ONLYOFFICE integration plugin here.