WoodWing Help Center

Elvis 4 Content Source plug-in for Enterprise Server

Integrating Elvis 4 in Enterprise Server

Elvis Server can be tightly integrated with Enterprise Server to make the assets that are stored in Elvis available in the workflow of Enterprise.

Connecting the two systems is done through the Elvis Content Source plug-in for Enterprise. This makes it possible to:

For a general overview, see Integrating Elvis 4 and Enterprise Server - how it works.

Elvis in Content Station

Figure: Using Elvis in Content Station.

Installation

The Elvis integration is provided as a plug-in that needs to be installed in Enterprise Server.

Step 1. Download the Elvis Integration Server plug-in.

Step 2. Unzip the file and place the resulting 'Elvis' folder into the following location:

<Enterprise Server folder>/config/plugins

Basic configuration

As minimum configuration steps, Enterprise Server needs to be connected to Elvis Server and Enterprise users need to be given access to shadow objects.

Connecting Enterprise Server to Elvis Server

Step 1. Open the configuration file of the Elvis plug-in in Enterprise in a text editor:

<Enterprise Server folder>/config/plugins/Elvis/config.php

Step 2. In the ELVIS_URL option, define the URL of the Elvis Server to connect to.

 * Elvis server URL (without a trailing slash)
 *
 * Used for server communication between Enterprise and Elvis Server.
 *
 * This is typically 'localhost' (if Elvis and Enterprise are running 
 * on the same machine), or the internal ip address of the Elvis Server.
 */
define('ELVIS_URL', 'http://localhost:80');

Providing Enterprise users access to shadow objects

Info: This feature requires the Elvis Content Source plug-in that is shipped with Enterprise Server 9.4.9 or higher.

When a file in Elvis is used in Enterprise, a reference to the file in Elvis is stored in Enterprise. This reference is sometimes referred to as a 'shadow object'.

Enterprise users who do not exist as a user in Elvis need to be given access to these shadow objects so that they can do the following in Enterprise:

  • See a preview of the asset on the layout
  • Add an asset from Elvis to Enterprise
  • Change the metadata of the asset

Such access is given as follows:

  • When the user exists in both Elvis and Enterprise, the access rights are managed by Elvis through the Capabilities settings.
  • When the user only exists in Enterprise and not in Elvis, the credentials of the Elvis Super User are used by defining this user in the plug-in configuration as explained in the steps below.

Step 1. Open the configuration file of the Elvis plug-in in Enterprise in a text editor:

<Enterprise Server folder>/config/plugins/Elvis/config.php

Step 2. Validate the following credentials:

  • ELVIS_SUPER_USER
  • ELVIS_SUPER_USER_PASS

In the following example, a user 'woodwing' with password 'ww' is defined:

/**
 * Elvis SUPER_USER username and password, needed for creating PDF previews 
 * with InDesign Server.
 * This user is also used to give Enterprise users without Elvis credentials access to the Elvis server.
 */
define('ELVIS_SUPER_USER', 'woodwing');
define('ELVIS_SUPER_USER_PASS', 'ww');

Step 3. Save and close the file.

Additional configuration

Whenever an asset is updated in Elvis (such as updating its metadata, opening it in an external editor, or deleting it), Enterprise users need to be made aware of this. Similarly, when an Enterprise user makes a change to an asset, this needs to be communicated to the Elvis users.

This communication is provided through a script that runs on Enterprise Server using cURL. It is a long-polling PHP script which periodically checks the Elvis Server for asset updates.

Once an asset update is received it is applied directly to the Enterprise object.

Note: The version number of an asset in Elvis is synchronized with the minor version number of an object in Enterprise at the moment a check-in is done in Elvis. This requires Elvis 4.6.8 or higher, Elvis 5.2.2 or higher and Enterprise 8.3.11 or higher.

cURL setup

The script is executed on Enterprise Server by using cURL.

Installation

  • For Mac OS X and Linux: cURL is pre-installed on these systems, no installation steps are necessary.
  • For Windows: download it from the cURL download site and install it.

Script setup

The script runs for a maximum amount of time and needs to be scheduled to always run.

Configuration

The following parameters are used:

  • maxexectime. The maximum amount of time that the script runs in seconds. The value should be between 60 and 1800 seconds (1 and 30 minutes) and should match the schedule interval. Default value=600.
  • maxtimeoutperrun. The maximum timeout in seconds for each update call to the Elvis Server. It should not be higher than the 'maxexectime' value. Default value=60.

Scheduling

The scheduling can be done by using Cron (Linux / Mac OS X) or the Task Scheduler (Windows).

Example configuration

Consider an example configuration with the following settings:

  • Enterprise runs under http://localhost/enterprise
  • The script should run every 5 minutes (=300 seconds) for an indefinite period of time

Elvis plug-in setup

To give the plug-in sufficient access rights for making the changes to the assets, give it Super User rights for Elvis and Admin rights for Enterprise Server.

Step 1. Open the configuration file of the Elvis plug-in in Enterprise in a text editor:

<Enterprise Server folder>/config/plugins/Elvis/config.php

Step 2. Validate the following credentials:

  • ELVIS_SUPER_USER
  • ELVIS_SUPER_USER_PASS
  • ELVIS_ENT_ADMIN_USER
  • ELVIS_ENT_ADMIN_PASS
/**
 * Elvis SUPER_USER username and password, needed for creating PDF previews 
 * with InDesign Server.*/
define('ELVIS_SUPER_USER', 'woodwing');
define('ELVIS_SUPER_USER_PASS', 'ww');

/**
 * Enterprise Admin username and password, needed for metadata synchronization  
 * from Elvis to Enterprise. By default we use a user which is known in both 
 * systems with the same credentials.*/
define('ELVIS_ENT_ADMIN_USER', ELVIS_SUPER_USER);
define('ELVIS_ENT_ADMIN_PASS', ELVIS_SUPER_USER_PASS);

Step 3. Save and close the file.

Enabling the plug-in

The installed plug-in needs to be enabled in Enterprise Server. Do this by accessing the Server Plug-ins page.

By accessing the page, the plug-in should be automatically enabled and show a green icon.

The Server plug-in enabled

Figure: The Elvis plug-in enabled on the Server Plug-ins page.

Testing the integration

Was this article helpful?
0 out of 0 found this helpful / Created: / Updated:
Have more questions? Submit a request

0 Comments

Please sign in to leave a comment.