RightNow Scanner (Aspire 2)

From wiki.searchtechnologies.com
Jump to: navigation, search

For Information on Aspire 3.1 Click Here

RightNow Scanner (Aspire 2)
Factory Name  com.searchtechnologies.aspire:aspire-rightnow-connector
subType  default
Inputs  AspireObject from a content source submitter holding all the information required for a crawl
Outputs  Jobs from the crawl
Feature only available with Aspire Premium

The RightNow Scanner component performs full and incremental scans over a RightNow server, maintaining a snapshot of the server and comparing it with the current content to establish what content has been updated. Updated content is then submitted to the configured pipeline in AspireObjectis attached to Jobs. As well as the URL of the changed item, the AspireObject will also contain metadata extracted from the repository. Updated content is split in to three types: add, update, and delete. Each type of content is published on a different event so that it may be handled by different Aspire pipelines

The scanner reacts to an incoming job. This job may instruct the scanner to start, stop, pause or resume. Typically the start job will contain all information required by the job to perform the crawl. However, the scanner can be configured with default values via application.xml file. When pausing or stopping, the scanner will wait until all the jobs it published have completed before itself completing.

Optionally, the scanner can utilize the services of a Connector Job Status component to update a database with progress and statistics.

Input Job Parameters

The scanner recognizes the following parameters on the control Job:

Element Type Description
id int The database id from the aspire_content_sources table.
@crawlId int The crawl id from the content database.
@action String The control job action - start, stop, pause or resume.
@actionProperties String Properties for the crawl - full or incremental.
connectorSource/displayName String The name of the crawl.


The scanner recognizes the following configuration parameters:

Element Type Description
objectUrl String The URL that links the object through its id. This is the URL that displays the object. Add a String wildcard (%s) where the id should be placed in this URL.
username String The username to use when accessing RightNow server.
password String The password to use when accessing RightNow server.
wsdlLocation String URL to the Right Now WSDL. Note: It is the URL without specifying the WSDL version (Example: <domain>.custhelp.org/cgi-bin/<interface>.cfg/services/soap)
objectType String Define the object type to be fetched. For example 'Answer', 'Incident', etc. To see the complete list of objects, go to RightNow Object List
crawlQuery String The query (see ROQL Configuration) to discover new objects. This query should contain only the necessary information for the connector to determine if the content has changed or not and check if the there are attachments. Use a decimal integer wildcard (%d) to make an dynamic offset for the query. For example: SELECT ... FROM ... OFFSET %d
indexQuery String The query (see ROQL Configuration) to fetch the all the information required for indexing. There must be a WHERE clause with a condition that compares the object 'id' with the id wildcard ({id}), that the connector is eventually going to replace with the actual id values. For example: SELECT ... FROM ... WHERE id={id}
subQueries/subQuery String Add description to subQuery (see ROQL Configuration). Also need to be restricted to the object 'id' with the id wildcard ({id}), that the connector is eventually going to replace with the actual id values. For example: SELECT ... FROM ... WHERE id={id}

ROQL Configuration

For crawlQuery, indexQuery and subQuery parameters, ROQL (RigthNow Object Query Language) syntax is used. For more information about how to build ROQL queries, please visit the official documentation:

Branch Configuration

This component publishes to the onAdd, onDelete and onUpdate, so a branch must be configured for each of these three events.

Element Type Description
branches/branch/@event string The event to configure - onAdd, onDelete or onUpdate.
branches/branch/@pipelineManager string The name of the pipeline manager to publish to. Can be relative.
branches/branch/@pipeline string The name of the pipeline to publish to. If missing, publishes to the default pipeline for the pipeline manager.

Example Configuration

Crawl Query

SELECT Answer.id, Answer.updatedTime, Answer.FileAttachments.FileAttachmentList.ID FROM Answer  WHERE Answer.FileAttachments.FileAttachmentList.ID IS NOT NULL AND (NOT StatusWithType.Status.Name='Private') LIMIT 10000 OFFSET %d;

Index Query

SELECT Answer.id as id, Answer.Name as name, Answer.Question as question, Answer.Solution as solution, Answer.Summary as summary, Answer.UpdatedTime as lastmodified, Answer.AssignedTo.Account.name as AssignedTo, Answer.StatusWithType.Status.name as type, Answer.StatusWithType.StatusType.name as statustype, Answer.AnswerType.name as recordMimeType, Answer.URL as url, Answer.Keywords as keywords FROM Answer WHERE id={id};

Sub Queries

SELECT Answer.AccessLevels.namedidlist.name as accessLevels FROM Answer WHERE id={id};
SELECT Answer.FileAttachments.id as attachment FROM Answer WHERE id={id};