Nuxeo Add-Ons

Nuxeo Annotations with ARender

Updated: August 9, 2019 Page Information Edit on GitHub

The Nuxeo Annotations with ARender addon allows users to preview and annotate any document stored in the Nuxeo repository: Office documents, PDF, images, videos with the ARender previewer, from Arondor.

ARender software is made of two pieces:

  • Previewer
  • Rendition

ARender rendition server needs to be installed on a dedicated host.

ARender previewer is extended by Nuxeo to integrate the ARender Previewer with the Nuxeo REST API, it corresponds to nuxeo-arender-connector-hmi in ARender Connector. It is built as a war file to deploy.

Here's a chart describing actions during first connection to ARender:

Installation

There're several ways to install ARender software.

To ease deployment, Nuxeo provides two Docker images, one for each piece of ARender software: arender-previewer and arender-rendition.

Private addon
You should contact your Nuxeo Administrator or your Nuxeo sales representative to get access to these images.

Docker Images Version
Docker images have the same version than marketplace packages. You should always use same version for docker images and marketplace package.

You can also install both pieces directly on dedicated hosts by following ARender Documentation. Don't forget to take the ARender previewer in order to leverage the connector between ARender previewer and Nuxeo.

All communications are made over HTTP, we recommend usage of HTTPS for production. Below are the ports of each piece:

  • previewer is reachable on port 8080 when exposed directly by Tomcat, we recommend to setup an Apache or Nginx in front of it
  • rendition is reachable on port 8761

Below the needed communication (for firewall rules/docker network setup):

  • Nuxeo needs to reach ARender previewer
  • ARender previewer needs to reach ARender rendition
  • ARender previewer needs to reach Nuxeo

Embedded Installation - Development

For development purposes, you need to run the Docker image for rendition and bind its port to localhost:

docker run -p 8761:8761 -it ARENDER_DOCKER_IMAGE_ID

Then you need to install nuxeo-arender-connector marketplace package.

It installs ARender integration inside Nuxeo and ARender previewer inside the Nuxeo's Tomcat.

Docker Installation - Production

For production, we recommend to deploy each ARender piece as a Docker container.

You can deploy several ARender renditions. Their URL needs to be given to ARender previewer. ARender previewer is responsible for renditions load. ARender renditions don't need to communicate with each other.

Then you can deploy an ARender previewer and give it rendition URLs as the environment variable renditionHostEnv.

ARender previewer behavior
ARender previewer owns in its cache a session corresponding to the t-uple user, document and blob.
You'll need to ask for a new session if the previewer crashes (action 1. on chart).

ARender previewer clustering
You can't currently have a cluster of ARender previewer because previewers don't share sessions.

If you need to change this settings while ARender previewer is running, you have a REST API on ARender previewer.

To get current setting:

GET /arendergwt/weather?format=json

To update it:

POST /arendergwt/weather?format=json
["https://rendition1:8761", "https://rendition2:8761"]

Configuration

Nuxeo Configuration

The ARender connector relies on a JWT to request an OAuth2 token for authentication (See OAuth2 documentation page for more information). You need to define a secret nuxeo.jwt.secret in your nuxeo.conf to enable it.

Authentication from ARender to Nuxeo relies on a shared secret between the two applications. This secret is defined with the property nuxeo.arender.secret in your nuxeo.conf.

Shared secret environment variable
If using the docker image for the ARender previewer, you can also define this shared secret through an environment variable nuxeoArenderSecretEnv.

If your ARender rendition server doesn't run on same host than Nuxeo's Tomcat, you can change the ARender rendition URL by setting arender.server.rendition.hosts in your nuxeo.conf (default value is http://localhost:8761).

You can change ARender previewer URL used by Nuxeo to open ARender session by setting arender.server.previewer.host in your nuxeo.conf (default value if http://localhost:8080).

ARender Previewer Configuration

For an on-host installation, you can follow the ARender Documentation.

For an embedded installation, you can modify the arender-hmi.properties files under NUXEO_HOME/nxserver/config/ARenderConfiguration folder.

For a Docker installation, you can extends our image and copy your properties file to /docker-entrypoint-init.d/arender.properties:

FROM dockerin-arender.nuxeo.com:443/arender-previewer:MP_VERSION

COPY arender.properties /docker-entrypoint-init.d/arender.properties

You can also modify the arender-hmi.properties that is deployed inside the /ARenderConfiguration in the previewer Docker container.

Editing these configuration files helps you to tailor the ARender interface to fit specific UI and UX needs. Please follow the ARender configuration guide.

You can for example:

  • Add and/or remove buttons from the ARender interface
  • Modify ARender behaviors on specific user actions (like validating a comment when the user clicks on "Enter")
  • Reference a new theme (by creating your custom CSS file)

Functional Overview

Once the ARender addon is properly installed and configured a new Annotations tab is available on each document with the picture or video facet:

Add a New Annotation

You can access the annotations by hovering the dedicated button , a sub menu appears:

Different types of annotations are available:

  • A sticky note
  • A text box
  • Highlight text
  • Draw different shapes (arrow, circle, polygon, etc.)
  • Show/Hide annotations

To add an annotation:

  1. Go to the annotations tab
  2. Click on an annotation type, like the sticky note.
    An empty box is displayed on your document.
  3. Write your annotation.
  4. Click on the Save button icon in the top bar.
    Your annotation is displayed.
    annotation-sticky-note-displayed
    annotation-sticky-note-displayed

Access to the Annotations

Two views are available at the top right:

  • : The documents pages thumbs, opened by default
  • : The annotation browser

From the annotation browser, you can see the list of all the annotations done on the document you are viewing, grouped by document pages.

You can search and filter any annotation by expending the following item:

You can also manage annotations from this view:

  • Leave a comment
  • Reply to a comment
  • Delete a comment
  • Accept, reject, cancelled, completed a comment

Compare Files

Limitations
This feature only allows you to compare two text files.

The ARender addon allows you to compare two files belonging to two different versions. By default, ARender compares the binary stored in the file:content property corresponding to the main file. You can access this feature from the Compare Versions Screen by clicking on the eye button.

compare-arender
compare-arender

It opens a new window with the two documents, highlighting what was deleted, modified and added.

compare_arender_2
compare_arender_2

Finally, you can see the annotations linked to each version on the same screen, and even annotate one file from this view.

Going Further

The connector can be customized in many different ways, for example if you want to have the possibility to watermark a document with specific stamps, if you want some actions/tools displayed and/or hidden in the top bar of the annotation screen, etc.

a month ago Manon Lumeau Fix wording
History: Created by Manon Lumeau

We'd love to hear your thoughts!

All fields required