How to integrate Nuxeo with ONLYOFFICE Docs on Ubuntu

1. Overview

We continue a series of our handy tutorials about the integration of an open-source office suite ONLYOFFICE Docs into third-party web services. Distributed under AGPLv.3 license, ONLYOFFICE Docs includes editors for text documents, spreadsheets, and presentations that offer a full set of editing and formatting tools:

  • all operations with fonts and styles, paragraph and text formatting, simplified navigation with drop caps, footnotes, table of contents, bookmarks in documents;
  • creating and customizing shapes, charts, text art and text boxes, inserting equations, shapes, and images in all editors;
  • pivot tables, over 400 available functions and formulas, colorful charts and informative graphics in spreadsheets;

Pivot-tables

  • interactive presentations with color themes, autoshapes, ready-made transitions, Presenter View mode.

As for co-authoring tools, you have at your disposal two co-editing modes (real-time and paragraph-locking), commenting, reviewing, tracking changes, document comparison, version history, integrated chat.

In ONLYOFFFICE Docs, you can differentiate what your teammates are able to do when they open shared documents. You can grant them the following permissions: full access, read only, review, comment, form filling, custom filter, restricting downloading, printing, copying document content to clipboard. Available permissions depend on your doc management system. If you are integrating the suite and want to add more permissions, your app must allow registering new sharing attributes described in the API documentation.

As you know, ONLYOFFICE Docs can be used in three ways:

This time, we will focus on Nuxeo Platform, a cloud-native and low-code enterprise content management system. To enable Nuxeo users to edit and co-edit office documents right inside their ECM, without downloading them or switching between multiple apps, it is necessary to connect Nuxeo to a self-hosted online collaborative suite.

What you’ll learn

In this tutorial, we will describe how to install the ONLYOFFICE integration app for Nuxeo to connect these services and thus provide Nuxeo users with self-hosted and feature-rich online document editors.

What you’ll need

  • ONLYOFFICE Docs
  • Nuxeo Platform (different installation packages and instructions are available in the official Nuxeo documentation)
  • ONLYOFFICE integration app for Nuxeo

2. Installing ONLYOFFICE Docs

To work with documents within Nuxeo, you need an instance of ONLYOFFICE Docs (Document Server) that is resolvable and connectable both from Nuxeo and any end-clients. ONLYOFFICE Docs must also be able to POST to Nuxeo directly.

In case you’re new to ONLYOFFICE Docs, get the latest version of the editors from GitHub or read this article to check the software requirements and find more installation options.

The ONLYOFFICE container should have access to the Nuxeo instance: either make configure the container network settings, or use a public URL / localname of your machine (for example, http://my-laptop-id:8080/nuxeo). In this last case, update the nuxeo.url parameter of the nuxeo.conf file.


3. Installing the ONLYOFFICE integration plugin for Nuxeo

The ONLYOFFICE connector for Nuxeo is distributed under the Apache License 2.0. You can download its latest version from the official Nuxeo Marketplace.

You can also install it using nuxeoctl script:

nuxeoctl mp-install /path/to/onlyoffice-nuxeo-package-x.x.zip

If you wish compile the integration app from its source code, you are able to do that by performing some steps listed in the repository of the connector.


4. Configuring the ONLYOFFICE integration plugin for Nuxeo

Once all elements are installed and operational, find nuxeo.conf file and edit it to adjust ONLYOFFICE settings.

Specify the URL of the server with the ONLYOFFICE Document Server installed:

onlyoffice.docserv.url=http://documentserver/

http://documentserver should be accessible and the status of the service can be checked at http://documentserver/healthcheck

Protect your data and secure your traffic using JSON Web Tokens (JWT) standard that keeps your documents safe from unauthorized access. Add your JWT secret key:

onlyoffice.jwt.secret=YOURSECRET

The same JWT key has to be specified in the ONLYOFFICE Docs configuration file (like onlyoffice-nuxeo.list file). To enable JWT authenticator: set the JWT_ENABLED and JWT_SECRET environment variables, so that the Document Server can be accessed only with the secret with JWT_ENABLED=true and JWT_SECRET=secret.


5. Using ONLYOFFICE Docs within Nuxeo Platform

To access ONLYOFFICE Docs, choose the “Edit in OnlyOffice” action in the document library:

Now, you are able to:

  • Create and edit text documents, spreadsheets, and presentations in DOCX, XLSX and PPTX;
  • View PDF, ODT, ODS, ODP, DOC, XLS, PPT files;
  • Share and co-edit documents with other users of your platform.

Congratulations! You can securely process and collaborate on your office documents right inside the enterprise content management system, keeping full control over sensitive data.