You can configure Titan by updating the app.config.json file. The following is a list of the sections available in the app.config.json file.
appInfo
The appInfo section specifies the application information for Titan.
Options
| Attribute | Description |
|---|---|
| name | Specifies the name of the product. |
| logoUrl | Specifies the path to the logo that displays when logging into Titan. |
| licenseUrl | Specifies the path to the license text file for Titan. |
Example
"appInfo": {
"name": "Titan",
"logoUrl": "assets/logo.svg",
"licensesUrl": "assets/licenses.txt"
},
inactivityTimeoutInMinutes
The inactivityTimeoutInMinutes section specifies the amount of inactivity time, in minutes, that you want the system to wait before logging the user out of Titan.
Example
"inactivityTimeoutInMinutes": 30,
authConfig
The authConfig section specifies the options for configuration for validating Titan authentication.
Options
| Attributes | Description |
|---|---|
| issuer | Specifies the full URL to the Hyland IDP instance. |
| clientID | Specifies the clientId defined when configuring IDP. |
| scope | Specifies the list of scopes to request when connecting to the Identity Provider. |
| redirectUri | Specifies the URI to redirect to after authenticating with IDP. |
| postLogoutRedirectUri | Specifies the logout URI to redirect users to after logging out of Titan. |
| requireHttps | Specifies whether you want Titan to require https level authentication. |
| strictDiscoveryDocumentValidation | Specifies whether all endpoints provided by the ID Provider discovery document share the same base URL as the issuer parameter. |
Example
" authConfig": {
"issuer": "https://<idp-host>/identityprovider",
"clientId": "titan-app",
"scope": "openid profile",
"redirectUri": "https://<app-host>/<subdirectory>",
"postLogoutRedirectUri": "https://<app-host>/<subdirectory>",
"requireHttps": true,
"strictDiscoveryDocumentValidation": false
},
loginSubtitle
The loginSubtitle section specifies the message that displays in the login dialog box.
Example
"loginSubtitle": "Click login to begin the login process through the identity provider",
loginLogoUrl
The loginLogoUrl section specifies the URL location for the logo that displays on the login dialog box.
Example
"loginLogoUrl": "assets/logo.svg",
displayModules
The displayModules section specifies which Titan modules to display on the home page of the application.
Default
The following settings display the default Titan modules on the homepage.
Options
| Attribute | Description |
|---|---|
| id | Specifies the module to display. Options are Capture, CaptureIndexing, Documents, Folders, Tasks, and Workflow. |
| enabled | Specifies whether you want the module to display on the Home page. The default is true. |
Example
"displayModules": [
{ "id": "Capture", "enabled": true },
{ "id": "CaptureIndexing", "enabled": false},
{ "id": "Documents", "enabled": true },
{ "id": "Folders", "enabled": true },
{ "id": "Tasks", "enabled": true },
{ "id": "Workflow", "enabled": true }
],
Custom
The following settings allow you to customize which module tiles display on the home page.
Options
| Attribute | Description |
|---|---|
| name | Specifies the custom tile you want to display on the Home page. |
| url | Specifies the URL of the custom tile. |
| icon | Specifies the name of the icon you want to display on the custom tile. |
Example
"displayModules": [
{ "id": "Capture", "enabled": true },
{ "id": "CaptureIndexing", "enabled": false },
{ "name": "Custom Tile 1", "url": "https://someurl", "icon": "pin" },
{ "id": "Documents", "enabled": true },
{ "id": "Folders", "enabled": true },
{ "id": "Tasks", "enabled": false },
{ "id": "Workflow", "enabled": true },
{ "name": "Custom Tile 2", "url": "https://someotherurl", "icon": "notepad" }
],
- All fields are required when using custom tiles.
- The order set in the displayModules section is the order the tiles will display.
enableDelegate
The enableDelegate section specifies whether to display the delegate user list in the Out of Office pane to the logged-on user when an out of the office event is being enabled.
"outOfOffice": {
"enableDelegate": true
}
appSettings
The appSettings section specifies the configuration options for the Titan application. The subsections are described below.
general
The general section specifies the general configuration settings for Titan.
Options
| Attribute | Description |
|---|---|
| pathDelimiter | Specifies the character used to separate values in the path that displays the folder location. |
Example
"general": {
"pathDelimiter": "\\"
},
integrationServer
The integrationServer section specifies the configuration options for Integration Server.
Options
| Attribute | Description |
|---|---|
| url | Specifies the URL for Integration Server. |
| applicationId | Specifies the application ID that Titan uses for the Hyland Preferences Service. |
| bearerLoginProfileName | Specifies the bearer token login profile name. |
Example
"integrationServer": {
"url": "https://<is-host>/integrationserver",
"applicationId": "titan",
"bearerLoginProfileName": ""
},
pageviewer
The pageViewer section specifies which audio and video file types are supported by Titan. If this section is not configured, Titan cannot play audio or video files.
Options
| Attribute | Description |
|---|---|
| supportedAudioFileTypes | Specifies an array that maps audio file extensions to the corresponding mimeType. |
| supportedVideoFileTypes | Specifies an array that maps video file extensions to the corresponding mimeType. i |
Example
"pageViewer": {
"supportedAudioFileTypes": [
{ "extension": "mp3", "mimeType": "audio/mp3" },
{ "extension": "wav", "mimeType": "audio/wav" }
],
"supportedVideoFileTypes": [
{ "extension": "mp4", "mimeType": "video/mp4" },
{ "extension": "webm", "mimeType": "video/webm" },
{ "extension": "qt", "mimeType": "video/quicktime" },
{ "extension": "mov", "mimeType": "video/quicktime" }
]
},
documentViewer
The documentViewer section specifies the configuration options for the Document Viewer in Titan.
Options
| Attribute | Description |
|---|---|
| removeFormsPane | Removes the Forms pane from the viewer. |
| removePropertiesPane | Removes the Properties pane from the viewer. |
| useNativePdfViewer | Specifies whether to use your system's native PDF viewer to view PDF documents. |
Example
"documentViewer": {
"removeFormsPane": false,
"removePropertiesPane": false,
"useNativePdfViewer": false
},
folderViewer
The folderViewer section specifies the configuration options for the Folder Viewer in Titan.
Options
| Attribute | Description |
|---|---|
| removeFormsPane | Removes the Forms pane from the viewer. |
| removePropertiesPane | Removes the Properties pane from the viewer. |
| removeRelatedFoldersPane | Removes the Related Folders pane from the viewer. |
| removeRelatedTasksPane | Removes the Related Tasks pane from the viewer. |
| canEditPageLabel | Specifies whether the user can edit a page label. |
Example
"folderViewer": {
"removeFormsPane": false,
"removePropertiesPane": false,
"removeRelatedFoldersPane": false,
"removeRelatedTasksPane": false,
"canEditPageLabel": true
},
formViewer
The formViewer section specifies the configuration options for the Forms Viewer in Titan.
Options
| Attribute | Description |
|---|---|
| autoloadFirstForm | Specifies whether the first form in the list displays by default when viewing the Forms pane. |
Example
"formViewer": {
"autoloadFirstForm": false
},
propertiesPane
The propertiesPane section specifies the configuration options for the Properties pane in Titan.
options
| Attribute | Description |
|---|---|
| name | Specifies the display of the Name field in the Properties panes. |
| location | Specifies the display of the Drawer or Path field in the Properties panes. |
| keys | Specifies the display of the Field1 through Field5 fields in the Properties pane. |
| type | Specifies the display of the Type field in the Properties panes. |
| notes | Specifies the display of the Notes pane in the user interface. |
| customProperties | Specifies the display of the Custom Properties pane in the user interface. |
| pageLabel | Specifies the display of the page label in the user interface. |
| additionalPageMetadata | Specifies the display of additional page metadata under Page Properties on the Properties pane in the user interface. |
Example
"propertiesPane": {
"displaySettings": {
"document": {
"name": "enabled",
"location": "enabled",
"keys": "enabled",
"type": "enabled",
"notes": "enabled",
"customProperties": "enabled",
"pageProperties": "disabled",
"pageLabel": "disabled",
"additionalPageMetadata": "disabled"
}
}
},
search
The search section specifies the configuration options for the search functionality in Titan.
options
| Attribute | Description |
|---|---|
| enableFullTextSearch | Specifies whether Full-text search is enabled for Titan. |
| vslExtendedOperatorsEnabled | Specifies whether Titan adds the “contains” and “ends with” operators in the list of search operators. |
| vslAnyKeyConditionEnabled | Specifies whether Titan includes the Any Document Key condition in the list of search conditions.. |
| fullTextSearchHighlightTag | Specifies how Titan identifies the highlighted keyword in the search result. The values of the default tags in OpenSearch to mark the highlighted terms are <em> and </em>, The value em must be retained till this value is changed from the server. |
| fullTextSearchHighlightFillColor | Specifies the color of the highlighted keyword for raster pages such as TIF files. The existing color cannot be changed for text files. |
| excludeSearchFields | Specifies what search properties Titan excludes from the list of search conditions. If no values are included in the list, then all search properties are displayed. Only values added to the list are excluded. |
| includedCustomPropertySearchFields | Specifies what custom properties Titan includes in the list of search conditions. Only values added to the list are displayed. If the setting is not in the configuration file, or is set to undefined, then all custom properties are displayed. If the setting is defined with no values included in the list, then no custom properties are displayed. |
Example
"search": {
"enableFullTextSearch": true,
"vslExtendedOperatorsEnabled": true,
"vslAnyKeyConditionEnabled": true,
"fullTextSearchHighlightTag": “em”,
"fullTextSearchHighlightFillColor":“#3288DE33”
"document": {
"excludeSearchFields": ["[drawer]", "[field2]" ],
"includedCustomPropertySearchFields": ["Prop1", "Prop2"]
},
"folder": {
"excludeSearchFields": ["[drawer]"],
"includedCustomPropertySearchFields": ["Prop1"]
},
"folderContent": {
"excludeSearchFields": ["[drawer]"],
"includedCustomPropertySearchFields": ["Prop1"]
},
"task": {
"excludeSearchFields": ["[drawer]"],
"includedCustomPropertySearchFields": ["Prop1"]
},
"workflow": {
"excludeSearchFields": ["[drawer]"],
"includedCustomPropertySearchFields": ["Prop1"]
}
"captureIndexing": {
"excludeSearchFields": ["[drawer]", "[field2]" ],
"includedCustomPropertySearchFields": ["Prop1", "Prop2]
}
},
documentPrinter
The documentPrinter section specifies the configuration options for the printer settings in Titan.
Options
| Attribute | Description |
|---|---|
| pageSize | Specifies the paper size printed. |
| enableCoverPage | Specifies if the cover page of a document is to be printed. |
| enableAnnotations | Specifies if the annotations are printed. |
Example
"documentPrinter": {
"pageSize": "Letter",
"enableCoverPage": true,
"enableAnnotations": true
}
exportEmail
The exportEmail section specifies whether the user can email links to a document and what values are included in the email template.
Options
| Attribute | Description |
|---|---|
| to | Specifies the email address of the recipient. |
| cc | Specifies a carbon copy of an email when the user wants to include someone other than the direct recipient. |
| bcc | Specifies a blind carbon copy of an email when the user does not want the other recipients to see who else is included in the email. |
| subject | Specifies a subject of an email where the user can add a short description of the main content. |
| preBody | Specifies the section where the user can add any content before a document or a workflow item link. |
| postBody | Specifies the section on complimentary closure, such as “Thanks & regards”. |
Example
"exportEmail": {
"document": {
"to": "to_recipient@domain.com",
"cc": "cc_recipient@domain.com",
"bcc": "bcc_recipient@domain.com",
"subject": "Perceptive Content Document",
"preBody": "Below are links to the documents:",
"postBody": "Regards,"
},
"workflow": {
"to": "to_recipient@domain.com",
"cc": "cc_recipient@domain.com",
"bcc": "bcc_recipient@domain.com",
"subject": "Perceptive Content Workflow Item",
"preBody": "Below are links to the workflow items:",
"postBody": "Regards,"
}
capture
The capture section specifies the settings for the Titan capture module.
Options
| Attribute | Description |
|---|---|
| fileMaxFileSize | Specifies the maximum file size, in MB, that you can upload when capturing a document. If the value is left blank then there is no maximum size limit. |
| toolkitDowloadLocation | Specifies the URL of where to download the Perceptive Web Scan Toolkit installer if the toolkit is not detected. |
| postSaveScriptName | Specifies the post-save iScript file. |
| profileNamesToSourceMapping | Specifies mapping between a capture profile name and capture source identifier. |
| barcodeSeparatorMapping | Specifies one or more regular expression patterns for identifying separator pages. If any barcode on the page matches one of the patterns, the page is flagged as a separator sheet and not saved. A new group is created and any application plan document keys (field1-field5) set to Barcode are cleared. The groupSeparation setting must be configured. |
| barcodeDocSplitMode | Creates new group and clears any application plan document keys (field1-field5) that are set to Barcode when the page has no barcodes, and a previous page had a barcode. The groupSeparation setting must be configured. |
| groupSeparation | Specifies group separation options. blankPage - A new group is created for each blank image scanned. Source profile filters and blank page detection must be enabled in the source profile for blank pages to be detected. eachScan - A new group is created on each capture or scan. eachPage - A new group is created for each file captured or image scanned. |
capture: {
"fileMaxFileSize: "5",
"toolkitDownloadLocation: http://127.0,0,1:8090/cloud/PerceptiveWebCapture.zip,
"postSaveScriptName: "post-save-actions.js"
"profileNamesToSourceMapping": [
"/scan/i:scanner-source",
"/file/i:file-source"
],
"barcodeSeparatorMapping": [
"^T$|^3$|^HEADER.*"
],
"barcodeDocSplitMode": false,
"groupSeparation": {
"blankPage": true,
"eachScan": true,
"eachPage": false
},
};
toolbarActionDisplaySettings
The toolbarActionDisplaySettings parameter specifies the conditional display settings for configurable toolbar actions based on the specific module and the screen size of a mobile device such as smart phone. You can apply these settings to various modules, including documents, capture, workflow, tasks, and folders. For instance, when configuring the document module, you can control the visibility of individual toolbar actions for different screen sizes, such as desktop and smallForm (mobile).
Refer to the following sample JSON configuration illustrating this setting:
Options
The following table lists actions that you can configure.
| Modules | Action Name |
|---|---|
| captureIndexing | capture-indexing-batch-capture |
| capture-indexing-properties-panel-toggle | |
| capture-indexing-thumbnails-display-type | |
| capture-indexing-thumbnails-panel-toggle | |
| copy-pages-clear | |
| copy-pages-keep-index | |
| copy-pages-keep-type-index | |
| copy-pages-keep-type | |
| copy-pages | |
| new-from-selected | |
| rescan-pages | |
| send-to-submit | |
| split-above-clear | |
| split-above-keep-index | |
| split-above-keep-type-index | |
| split-above-keep-type | |
| split-above | |
| captureIndexing, document, folder, and task |
save-document |
| captureIndexing, document, folder, task, and workflow | apply-retention-holds |
| copy-document | |
| create-actions | |
| delete-item | |
| download-document | |
| export-email | |
| export-grid | |
| export-pdf-document | |
| move-content | |
| print-document | |
| version-control | |
| document, folder, and task |
add-page |
| annotation-menu | |
| digital-signature-menu | |
| redaction-menu | |
| document, folder, task, and workflow | create-task |
| workflow-actions | |
| folder | view-location |
| folder and workflow | save-folder |
Example
"toolbarActionDisplaySettings": {
"captureIndexing": {
"copy-pages": {
"desktop": { "isVisible": true }
},
"copy-pages-clear": {
"desktop": { "isVisible": true }
},
"copy-pages-keep-type": {
"desktop": { "isVisible": true }
},
"copy-pages-keep-index": {
"desktop": { "isVisible": true }
},
"copy-pages-keep-type-index": {
"desktop": { "isVisible": true }
},
"split-above": {
"desktop": { "isVisible": true },
"smallForm": { "isVisible": true }
},
"split-above-clear": {
"desktop": { "isVisible": true },
"smallForm": { "isVisible": true }
},
"split-above-keep-type": {
"desktop": { "isVisible": true },
"smallForm": { "isVisible": true }
},
"split-above-keep-index": {
"desktop": { "isVisible": true },
"smallForm": { "isVisible": true }
},
"split-above-keep-type-index": {
"desktop": { "isVisible": true },
"smallForm": { "isVisible": true
}
},
"document": {
"download-document": {
"desktop": {"isVisible": false},
"smallForm": {"isVisible": true}
},
"create-task": {
"desktop": {"isVisible": true},
"smallForm": {"isVisible": true}
}
}
},
outOfOffice
The outOfOffice section specifies whether to display the delegate user list in the Out of Office pane to the logged-on user when an out of the office event is being enabled.
| Attribute | Description |
|---|---|
| enableDelegate | Specifies whether to display the delegate user list. |
Example
"outOfOffice": {
"enableDelegate": true }
}
captureIndexing
The captureIndexing section specifies the settings for the Capture and Indexing module.
Options
| Attribute | Description |
|---|---|
| batchContent | Specifies the summary of batch contents as "2 documents, 5 pages." |
| creationDate | Displays the date when the batch was created. |
| numDocs | Specifies the total number of documents in the batch. |
| numPages | Displays the total number of pages across all documents in the batch. |
| priority | Specifies the priority level assigned to the batch. It is fetched from the priority on the workflow queue where the batch is currently located. |
| workflowQueueName | Displays the name of the workflow queue where the batch is currently located. |
| workflowQueueStartDate | Displays the date and time when the batch entered the current workflow queue. |
Batch
The batch section specifies options used in batch indexing.
| Attribute | Description |
|---|---|
| confirmPageDeletion | Specifies if users should be prompted to confirmation when deleting a page. The default is FALSE. |
captureProfileMapping
The captureProfileMapping section defines rules for filtering capture profiles. Only capture profile names matching one of the regular expressions will be displayed in the application.
The filters are regular expressions that are matched to capture profile names. Multiple regular expressions can be defined, a capture profile displays when its name matches any of the regular expressions.
documentDefaultType
The documentTypeList section specifies the default document type to use when indexing if document type is cleared.
documentTypeList
The documentTypeList section specifies one or more document type list objects. Each document type list object is keyed by the document type list name in Perceptive Content. In the Capture and Indexing application, indexing rules can be defined for each document type via a document type list.
Option
| Attribute | Description |
|---|---|
| applicationPlan | Specifies the manual application plan name that defines the indexing scheme for a document type. You can configure specific document types to contain no indexing information, by setting the application plan to an empty value. You can also define an application plan to use for indexing and validation. This option does not require external lookups for indexing fields. |
originDrawerMapping
The originDrawerMapping section defines mappings for origin to drawer. It allows capturing to a specific drawer based on the selected origin. The system uses this mapping if a match is not found under the application plan’s originDrawerMapping. The origin can be a partial match.
| Attribute | Description |
|---|---|
| applicationPlan | Specifies the manual application plan name that defines the indexing scheme for a document type. You can configure specific document types to contain no indexing information, by setting the application plan to an empty value. You can also define an application plan to use for indexing and validation. This option does not require external lookups for indexing fields. |
originMapping
The originMapping section contains filter rules for each capture mode. The filter rules are regular expressions that are matched to origin names. If multiple regular expressions are defined, an origin displays when its name matches any of the regular expressions.
routeBatch
The routeBatch section defines the name of the iScript to route a batch after the capture process. The iScript expects the batchFolderId single input parameter and will then return four output parameters.
Options
| Parameter Name | Parameter Type |
|---|---|
| batchFolderId | Input |
|
“SUCCESS: <success message>” or “ERROR: <error message>” |
Output |
| workflowItemId | Output |
| workflowQueueId | Output |
| workflowQueueName | Output |
submitBatch
The submitBatch section specifies the iScript to be invoked after the batch is completely indexed and submitted for processing. The iScript expects three input parameters and returns two output parameters.
Options
| Parameter Name | Parameter Type |
|---|---|
| workflowItemId | Input |
| batchFolderId | Input |
| username | Input |
| status: SUCCESS or ERROR | Output |
| error message | Output |
workflow
The workflow section specifies the options used in the workflow process.
Options
| Attribute | Description |
|---|---|
| openNextItem | Specifies the next action after submitting or routing a batch. If set to true, the next available batch in the queue is fetched automatically and opened for indexing. If not set or set to false, the current queue is displayed. The default is FALSE. |
workflowProcess
The workflowProcess section specifies a set of configurations for each workflow process that should appear in the Capture and Indexing Module. Only processes configured in this section are displayed in the Capture and Indexing module.
Custom Properties
Custom Properties can be displayed in batch header except Array and Composite. The editable fields are displayed based on the user permissions, ensuring secure and role-based access. The following is a configuration for Custom properties.
{{
{{{ "customPropertyName": "<property_name>",
"label": "<display_label>", "isEditable": true }}
}}}
Flexible Layout:
The columnsPerRow parameter allows users to define how many fields are displayed per row in the batch header in Desktop mode. When more than six fields are configured in each row, fields are split to the next row for an organized display. In smartphones and tablets, users can navigate to Batch Information to view the details.
Batch Header Validation:
This configuration prevents combining fields with custom strings and spacing to ensure values are accurate for the displayed field.
Options
| Attribute | Description |
|---|---|
| enableValidation | Specifies if validation should be enabled or disabled in the batch view. The default is TRUE. |
| properties | Specifies the map of properties to strings. |
| properties[Key ID] | Specifies whether the doc key is enabled, disabled, hidden, or disabledAllowLookups. |
| properties.customProperties [custom property name] | Specifies whether the custom property is enabled, disabled, hidden, or disabledAllowLookups. |
workflowQueue
The workflowQueue section specifies a set of configurations used when processing a batch, based on the queue from which the batch is opened.
Options
| Attribute | Description |
|---|---|
| enableValidation | Specifies if validation should be enabled or disabled in the batch view. The default is TRUE. |
| properties | Specifies the map of properties to strings. |
| properties[Key ID] | Specifies whether the doc key is enabled, disabled, hidden, or disabledAllowLookups. |
| properties.customProperties [custom property name] | Specifies whether the custom property is enabled, disabled, hidden, or disabledAllowLookups. |
Example
"captureIndexing": {
"batch": {
"confirmPageDeletion": false
},
"captureProfileMapping": [
"/^CI.*/", "HIM” ]
"defaultDocumentType": "Unindexed Document Type"
"documentTypeList": {
"Unindexed Documents": {
"applicationPlan": ""
},
"Manager Review Documents": {
"applicationPlan": "Manager Review"
}, "Manager Review Documents2": {
"applicationPlan": "Manager Review csn mrn"
}
"originDrawerMapping" : {
"North": "NorthDrawer",
"South": "SouthDrawer"
}
"originMapping" : ["^IC"]
"routeBatch" : {
"serverAction" : "CI_RouteBatchFolder.js"
},
"workflow": {
"openNextItem": true
},
"workflowProcess": {
"CnI WF": {
"enableValidation": false,
"properties": {
"field1": "disabledAllowLookups",
"field5": "disabled",
"type": "disabled",
"customProperties": {
"Date": "disabled",
"Flag": "enabled"
}
}
}
},
"workflowQueue": {
"1 QA": {
"properties": {
"field1": "enabled",
"field2": "disabled",
"type": "enabled",
"customProperties": {
"Flag": "disabled"
}
}
},
"North (1 QA)": {
"properties": {
"field4": "hidden",
"type": "disabled",
"customProperties": {
"Flag": "disabled",
"List": "hidden"
}
}
}