Jive Connector and Datasource Configuration

Important
If you are upgrading from Fusion 2.0 or earlier, you must remove the old connector, add the new one, and then install the Lucidworks add-on for Jive. See the instructions below.

Updating the Jive connector

Perform all of the steps below as the user that owns the Fusion installation files and processes.

Removing the Old Jive Connector

  1. Remove all existing Jive datasources, using either the UI or the REST API. Any datasource that is not a Jive type of datasource can be retained.

    1. In the UI, go to the Datasources screen for each collection that includes a Jive datasource, and select the X icon on the right side of the row. Confirm the delete action to remove the datasource.

    2. Using the Connector Datasources API, you can perform a call similar to this one:

      curl -u user:password -X DELETE http://localhost:8764/api/apollo/connectors/datasources/<id>

      Be sure to use the correct username and password, and also replace the hostname, port and datasource ID as appropriate.

  2. Stop Fusion.

  3. On the filesystem, find the file $FUSION_HOME/connectors/plugins/luicid.anda/connectors.json. From this file, remove the following line:

    "jive": "com.lucidworks.connectors.anda.type.JiveAndaType",

    Be sure to save your changes.

  4. In the directory $FUSION_HOME/connectors/plugins/lucid.anda/lib/ remove the file lucid.jive.jar by deleting it or saving it outside of your Fusion installation directory tree (i.e., to a /tmp directory or similar).

Adding the New Jive Connector

  1. In the $FUSION_HOME/connectors/plugins directory, make a new directory named lucid.jive.

  2. Copy the files connectors.json and lucid.jive.jar to the new directory created in the previous step, $FUSION_HOME/connectors/plugins/lucid.jive.

  3. In order for the UI to display the correct name for the new connector, we must update a datasource mapping file.

    In $FUSION_HOME/jetty/ui/webapps/root/WEB-INF/classes/public/data/datsource-name-map.json, remove the following line:

      "lucid.anda.jive" : "Jive",

    And add the following line (anywhere, as long as it is a new line):

      "lucid.jive.jive" : "Jive",

    When adding the new line, be sure to add a comma to the previous line in order to preserve correct JSON. If this file cannot be parsed, you will see odd-looking datasource names in the UI.

  4. Start Fusion.

Installing the Jive Add-on

The add-on allows using OAuth for authenticating the crawler to the Jive API. This is a recommended way for Jive users to use the API, as documented by Jive at https://community.jivesoftware.com/docs/DOC-157031. The add-on is used to get a client ID and secret that are supplied to the connector.

If the client ID and secret cannot be retrieved or used, then Basic authentication is used as a fallback.

How to install the Jive Add-on

Following the instructions at https://community.jivesoftware.com/docs/DOC-141123, use the Jive UI to upload the add-on located in your Fusion distribution: $FUSION_HOME/apps/connectors/resources/lucid.jive/lucidworks-jive-addon.zip

Security Trimming of Results

If "Enable Security Trimming" is enabled, the Jive connector will use the visibility field while indexing permission metadata on content. This data is stored in the acl_ss field for each document.

The value of the visibility field impacts the permissions assigned to a document. The following list describes how the types of permissions found in the visibility field of a document are used.

All

The value stored in the acl_ss field will be "all".

People

The document will include a list of users who are authorized to view the content. This list will be stored in the acl_ss field as user email addresses.

Place

A request will be made to determine the type of group. The group type will determine the permissions stored.

Open or Members Only

The value stored in the acl_ss field will be "all".

Private or Secret

The value stored in the acl_ss field will be the name of the group.

Configuration

Tip
When entering configuration values in the UI, use unescaped characters, such as \t for the tab character. When entering configuration values in the API, use escaped characters, such as \\t for the tab character.