HomeGuidesRecipesAPI
HomeGuidesAPILog In

DocuShare Connector

This connector has been developed to provide an integrated experience for customers looking for an end to end document lifecycle management, leveraging the powerful e-forms, data transformation and document creation features of Infiniti and the content management and publishing capabilities of DocuShare.

The Palo Alto based Xerox DocuShare has two distinct offerings one for Fuji Xerox and one for the rest of the world, however both versions are built on the same code base.

Additional information on DocuShare can be found here

Connector Components

Action

  • DocuShare Create Document(s)
  • DocuShare Update Document

Data Source

  • Search
  • Get Collection Tree (deprecated)

Features

  • Store generated document(s) in Infiniti to DocuShare.
  • Add metadata to the generated document(s).
  • Create a new Collection and store generated files into it, where possible to specify the name and description.
  • Support the following MIME Types: .pdf, .doc, .docx, .pptx, .rtf, .odt, .xps, .docm, .odp, .xlsx, .xls, .ppt, .txt, .csv, .xml, .json, .html, jpeg and png.
  • Add/modify metadata of existing document in DocuShare.
  • Search method to get Collections and Documents as an Infiniti DataSource.
  • Get system file structure (Collections and Documents) as an Infiniti DataSource.
  • Get Document Handle and Collection Handle of stored documents.

Installation Requirements

Before installing this extension you must consider the following requirements:

  • You must have administrator/elevated permissions to the Infiniti web server, including the ability to copy and replace files in the Infiniti installation folder. This is usually c:\inetpub\wwwroot\infiniti however may vary from system to system.

  • You must have the following installation files:

  • DocuShareConnector.dll

  • Ensure you have a compatible version of the connector with your current Infiniti system (Connector and Infiniti should match versions)

👍

Remember

Changes to the configuration may cause interruptions to users in forms.
Before installing this Connector in a production Infiniti environment, ensure the environment is backed up.
It is recommended that this installation is tested in a non-production environment first, and installed during scheduled downtime.

Installation and Configuration

Use the instructions below to install the connector. If you are upgrading the extension from a previous version, refer to the section Upgrading the extension below.

Note that [Infiniti Produce Path] refers to the installation path on the web server running Infiniti, where the Produce site has been installed. By default this is c:\inetpub\wwwroot\infiniti\produce however may vary from environment to environment. Equally, [Infiniti Manage Path] refers to where the Manage site has been installed, and [IntelledoxScheduler Path] refers to the where the Intelledox Scheduler service has been installed.

How to install the DocuShare Connector

  1. Copy the files listed above into the following folder on the Infiniti web server:
    [Infiniti Produce Path]\bin
  2. Using a text editor such as Notepad, open the following file:
    [Infiniti Produce Path]\appsettings.json

📘

Note

Ensure you have elevated privileges when opening the web.config file, otherwise you may not be able to save in the current folder.

  1. Locate the <Extensions> section of the appsettings.json file and add the following entries:
"Intelledox.Action.LegacyAction`1[[DocuShareConnector.DocuShareCreateDocumentAction, DocuShareConnector]], Intelledox.Action",
"Intelledox.Action.LegacyAction`1[[DocuShareConnector.DocuShareUpdateDocumentAction, DocuShareConnector]], Intelledox.Action",
"Intelledox.Datasource.LegacyDatasource`1[[DocuShareConnector.DocuShareDataSource, DocuShareConnector]], Intelledox.Datasource"
  1. Locate the "LegacyActions" property or create it if it doesn't exist, and add the following:
"LegacyActions": {
  "DocuShareConnector.DocuShareCreateDocumentAction, DocuShareConnector": {
    "Name": "DocuShare Create Document Action"
  },
  "DocuShareConnector.DocuShareUpdateDocumentAction, DocuShareConnector": {
    "Name": "DocuShare Update Document Action"
  }
}
  1. Locate the "LegacyDatasources" property or create it if it doesn't exist, and add the following:
"LegacyDatasources": {
  "DocuShareConnector.DocuShareDataSource, DocuShareConnector": {
    "Name": "DocuShare"
  }
}

Produce appsettings.json file should look like:

{
  "Extensions": [
    "Intelledox.Extension.DatasourceBuiltin.OleDbDatasource, Intelledox.Extension.DatasourceBuiltin",
    "Intelledox.Extension.DatasourceBuiltin.SqlServerDatasource, Intelledox.Extension.DatasourceBuiltin",
    "Intelledox.Extension.DatasourceBuiltin.CsvDatasource, Intelledox.Extension.DatasourceBuiltin",
    "Intelledox.Extension.DatasourceBuiltin.OdbcDatasource, Intelledox.Extension.DatasourceBuiltin",
    "Intelledox.Extension.DatasourceBuiltin.RSSDatasource, Intelledox.Extension.DatasourceBuiltin",
    "Intelledox.Extension.DatasourceBuiltin.WebserviceDatasource, Intelledox.Extension.DatasourceBuiltin",
    "Intelledox.Extension.DatasourceBuiltin.XmlDatasource, Intelledox.Extension.DatasourceBuiltin",
    "Intelledox.Extension.DatasourceBuiltin.InfinitiDatasource, Intelledox.Extension.DatasourceBuiltin",
    "Intelledox.Extension.DatasourceBuiltin.JsonDatasource, Intelledox.Extension.DatasourceBuiltin",
    "Intelledox.Extension.DatasourceBuiltin.RestDatasource, Intelledox.Extension.DatasourceBuiltin",
    "Intelledox.Extension.ActionBuiltin.FileAction, Intelledox.Extension.ActionBuiltin",
    "Intelledox.Extension.ActionBuiltin.SQLServerAction, Intelledox.Extension.ActionBuiltin",
    "Intelledox.Extension.ActionBuiltin.DownloadPageMessageAction, Intelledox.Extension.ActionBuiltin",
    "Intelledox.Extension.ActionBuiltin.RedirectAction, Intelledox.Extension.ActionBuiltin",
    "Intelledox.Extension.ActionBuiltin.EmailAction, Intelledox.Extension.ActionBuiltin",
    "Intelledox.Extension.ActionBuiltin.PrintAction, Intelledox.Extension.ActionBuiltin",
    "Intelledox.Extension.ActionBuiltin.UserAction, Intelledox.Extension.ActionBuiltin",
    "Intelledox.Extension.ActionBuiltin.WebhookAction, Intelledox.Extension.ActionBuiltin",
    "Intelledox.Extension.ActionBuiltin.RESTAction, Intelledox.Extension.ActionBuiltin",
    "Intelledox.Extension.ActionBuiltin.OracleAction, Intelledox.Extension.ActionBuiltin",
    "Intelledox.Extension.ActionBuiltin.PushNotificationAction, Intelledox.Extension.ActionBuiltin",
    "Intelledox.Extension.EscalationBuiltin.EmailEscalation, Intelledox.Extension.EscalationBuiltin",
    "Intelledox.Extension.EscalationBuiltin.ReassignmentEscalation, Intelledox.Extension.EscalationBuiltin",
    "Intelledox.Extension.EscalationBuiltin.PushNotificationEscalation, Intelledox.Extension.EscalationBuiltin",
    "Intelledox.Extension.ActionBuiltin.LogMessageAction, Intelledox.Extension.ActionBuiltin",
    "Intelledox.Extension.ActionBuiltin.SQLProjectResultsAction, Intelledox.Extension.ActionBuiltin",
    "Intelledox.Action.LegacyAction`1[[DocuShareConnector.DocuShareCreateDocumentAction, DocuShareConnector]], Intelledox.Action",
    "Intelledox.Action.LegacyAction`1[[DocuShareConnector.DocuShareUpdateDocumentAction, DocuShareConnector]], Intelledox.Action",
    "Intelledox.Datasource.LegacyDatasource`1[[DocuShareConnector.DocuShareDataSource, DocuShareConnector]], Intelledox.Datasource"
  ],
  "LegacyDatasources": {
    "DocuShareConnector.DocuShareDataSource, DocuShareConnector": {
      "Name": "DocuShare"
    }
  },
  "LegacyActions": {
  "DocuShareConnector.DocuShareCreateDocumentAction, DocuShareConnector": {
    "Name": "DocuShare Create Document Action"
  },
  "DocuShareConnector.DocuShareUpdateDocumentAction, DocuShareConnector": {
    "Name": "DocuShare Update Document Action"
  }
},
  "Authentication": {
    "Settings": {
      "CookiePrefix": "infiniti",
      "Timeout": "30"
    }
  }
}

A similar process has to be done to configure DocuShare data source in manage.

  1. Copy the files listed above into the following folder on the Infiniti web server:
    [Infiniti Manage Path]\bin
  2. Using a text editor such as Notepad, open the following file:
    [Infiniti Manage Path]\appsettings.json
"Intelledox.Datasource.LegacyDatasource`1[[DocuShareConnector.DocuShareDataSource, DocuShareConnector]], Intelledox.Datasource"
  1. Locate the "LegacyDatasources" property or create it if it doesn't exist, and add the following:
"LegacyDatasources": {
  "DocuShareConnector.DocuShareDataSource, DocuShareConnector": {
    "Name": "DocuShare"
  }
}

Manage appsettings.json file should look like:

{
  "Extensions": [
    "Intelledox.Extension.DatasourceBuiltin.OleDbDatasource, Intelledox.Extension.DatasourceBuiltin",
    "Intelledox.Extension.DatasourceBuiltin.SqlServerDatasource, Intelledox.Extension.DatasourceBuiltin",
    "Intelledox.Extension.DatasourceBuiltin.CsvDatasource, Intelledox.Extension.DatasourceBuiltin",
    "Intelledox.Extension.DatasourceBuiltin.OdbcDatasource, Intelledox.Extension.DatasourceBuiltin",
    "Intelledox.Extension.DatasourceBuiltin.RSSDatasource, Intelledox.Extension.DatasourceBuiltin",
    "Intelledox.Extension.DatasourceBuiltin.WebserviceDatasource, Intelledox.Extension.DatasourceBuiltin",
    "Intelledox.Extension.DatasourceBuiltin.XmlDatasource, Intelledox.Extension.DatasourceBuiltin",
    "Intelledox.Extension.DatasourceBuiltin.InfinitiDatasource, Intelledox.Extension.DatasourceBuiltin",
    "Intelledox.Extension.DatasourceBuiltin.JsonDatasource, Intelledox.Extension.DatasourceBuiltin",
    "Intelledox.Extension.DatasourceBuiltin.RestDatasource, Intelledox.Extension.DatasourceBuiltin",
    "Intelledox.Datasource.LegacyDatasource`1[[DocuShareConnector.DocuShareDataSource, DocuShareConnector]], Intelledox.Datasource"
  ],
  "LegacyDatasources": {
    "DocuShareConnector.DocuShareDataSource, DocuShareConnector": {
      "Name": "DocuShare"
    }
  },
  "AppSettings": {},
  "Authentication": {
    "Settings": {
      "CookiePrefix": "infiniti",
      "Timeout": "30"
    }
  },
  "Styles": {
    "Well": {
      "appliesto": "question,layout",
      "class": "well"
    },
    "Jumbotron": {
      "appliesto": "question,layout",
      "class": "jumbotron"
    },
    "Alert (success)": {
      "appliesto": "question,layout",
      "class": "alert alert-success"
    },
    "Alert (info)": {
      "appliesto": "question,layout",
      "class": "alert alert-info"
    },
    "Alert (warning)": {
      "appliesto": "question,layout",
      "class": "alert alert-warning"
    },
    "Alert (error)": {
      "appliesto": "question,layout",
      "class": "alert alert-danger"
    },
    "Label (default)": {
      "appliesto": "question",
      "class": "labelIx label-default"
    },
    "Label (primary)": {
      "appliesto": "question",
      "class": "labelIx label-primary"
    },
    "Label (success)": {
      "appliesto": "question",
      "class": "labelIx label-success"
    },
    "Label (info)": {
      "appliesto": "question",
      "class": "labelIx label-info"
    },
    "Label (warning)": {
      "appliesto": "question",
      "class": "labelIx label-warning"
    },
    "Label (error)": {
      "appliesto": "question",
      "class": "labelIx label-danger"
    }
  }
}

Using a web browser, navigate to the Infiniti Produce and Infiniti Manage applications to allow the system to register the Connector.

The DocuShare Connector should now be installed ready for configuration and usage.

Upgrading the Connector

  1. Copy the files listed above into the following folder on the Infiniti web server, overwriting the existing files:
  • [Infiniti Produce Path]\bin
  • [Infiniti Manage Path]\bin
  1. Using a web browser, navigate to the Infiniti Produce application to allow the system to register the upgraded extension.

Installation to Intelledox Scheduler

If the target environment is using the Intelledox Scheduler, it is best practice to always install connectors and accelerators to this service at the same time as the installation in Infiniti Produce application. If this is not installed to the Intelledox Scheduler there may be errors if any projects are executed from the scheduler that refers to this connector.

To install any connector to the Intelledox Scheduler, follow the instructions in this guide as they apply to Infiniti Produce, except instead of [Infiniti Produce Path] use [IntelledoxScheduler Path], noting that there is no ‘bin’ folder in this path so all files should be copied into the root of this path. For example, consider the path:
c:\inetpub\wwwroot\infiniti\produce\bin

To install to the Intelledox Scheduler, simply use this path:

c:\inetpub\wwwroot\infiniti\intelledoxscheduler

Also, you must apply the same configuration changes as instructed for the Produce appsettings.json file.

Configuring the connector settings

The DocuShare Connector exposes a number of connector settings which provide system-wide values to control behaviour or context. In many cases, these settings can be overridden when the action is used in a project.

How to view or modify connector settings

  1. In a web browser, navigate to the Infiniti Manage application and log in.
  2. Navigate to Settings in the Administration menu group, and then click the Connector Settings button at the top of the page.
  3. Using the Connector drop-down list, select the ‘DocuShare’ option.
  4. Review and update the settings as required. The settings are described in the table below.
  5. Click the Save button at the top of the page.
SettingDescription
Default URLDefault DocuShare URL, e.g http://YourServer/docushare

Note: in some cases, it is required to specify a port in the URL, e.g http://12.34.56.78:8080/docushare
Default DomainDefault domain, this value should be empty if no domain required.
Default UsernameDefault Username used to authenticate Infiniti against DocuShare.
Default PasswordDefault Password used to authenticate Infiniti against DocuShare.

📘

Note

Connector Settings are applied system-wide, for specific scenarios where it is required to use different credentials, please specify them in Design or directly in the Data Source configuration.

DocuShare Create Document(s)

An action that allows storing generated document(s) in Infiniti into DocuShare, add metadata (optional and create a new Collection under an existing one.
Features include:

  • Store generated document(s) in Infiniti to DocuShare.
  • Add metadata to the generated document(s) -optional.
  • Create a new Collection and store generated files into it, where possible to specify the name and description -optional.
  • Support the following MIME Types: .pdf, .doc, .docx, .pptx, .rtf, .odt, .xps, .docm, .odp, .xlsx, .xls, .ppt, .txt.
  • Get Document Handle and Collection Handle of stored documents into DocuShare

Using the Action in Design

Once you’ve added the DocuShare Create Document(s) Action to your project, either on the Finish page or a workflow transition, use the following table to configure any action attributes that you require.

Action Attributes

NameDescription
URLDocuShare URL e.g http://YourServer/docushare. If this attribute is used, this value will override the default specified in connector settings.
DomainThe domain used in the authentication, this attribute could be empty if no domain required.
UsernameDocuShare username. If this attribute is used, this value will override the default specified in connector settings.
PasswordDocuShare password. If this attribute is used, this value will override the default specified in connector settings.
Collection HandleCollection Handle ( Collection unique identifier) where the generated documents are going to be stored.
Metadata (name=value)Add this attribute as many times as metadata required, e.g summary= [ q9 ]. -optional
New Collection NameName of new Collection created via Infiniti.
New Collection DescriptionDescription of New Collection created via Infiniti
Return Full handle (true|false)Specify the format of Action Outputs, if true it will return the entire handle, false just number. For example:
True: File-30 or Collection-30
False: 30

Action Documents

Use the Documents tab in Design to configure which documents should be used by this action. By default, all documents will be used, including those generated and attached.
If you’d like to configure which documents should be used by this action, select the ‘Custom’ option on the Documents tab and proceed to add the required documents and document formats.

Action Outputs

DocuShare Create Documents implements two Action outputs:

  • Collection Handle: Handle of Collection used to store documents created from Infiniti.
  • Document Handle: Handle of recently stored Document in DocuShare.

Note: If more than one document used, it will be returned as a pipe separated.

Error Handling

The DocuShare Create Document(s) Action will return a result, as described below. If the result is a failure, an error message will be available in Infiniti Manage on the Management screen.
Action results:

  • Success – the action ran successfully without error.
  • Fail – the action ran and returned an error.
  • Not Run – if conditions set on the action prevented it from running, it will return this result.
    Action results can be used to control logic in subsequent actions. For example, an email action can be configured to execute in the event of failure.

Common Error Messages

All error messages generated by this action begin with the statement ‘{Action Name} failed:’ for example ‘DocuShare Create Document(s) failed’. If you renamed the action in Design, the name you chose will be used.

📘

Note

All failure messages are reported as level ‘Warning’ in Manage. Infiniti reserves the use of ‘Error’ level messages for critical events such as document generation errors that may affect all actions.

DocuShare Update Document

Action that allows modifying existing Document in DocuShare
Features include:

  • Add/modify metadata of existing document in DocuShare.

Using the Action in Design

Once you’ve added the DocuShare Update Document Action to your project, either on the Finish page or on a workflow transition, use the following table to configure any action attributes that you require.

Action Attributes

NameDescription
URLDocuShare URL e.g http://YourServer/docushare. If this attribute is used, this value will override the default specified in connector settings.
DomainThe domain used in the authentication, this attribute could be empty if no domain required.
UsernameDocuShare username. If this attribute is used, this value will override the default specified in connector settings.
PasswordDocuShare password. If this attribute is used, this value will override the default specified in connector settings.
Document HandleCollection Handle (Collection unique identifier) where the generated documents are going to be stored.
Metadata (name=value)Add this attribute as many times as metadata required, e.g. summary= [q9]. -optional

Action Documents

Use the Documents tab in Design to configure which documents should be used by this action. By default, all documents will be used, including those generated and attached.
If you’d like to configure which documents should be used by this action, select the ‘Custom’ option on the Documents tab and proceed to add the required documents and document formats.

DocuShare Data Source

Infiniti Datasource type that allows to search Collections and Documents in DocuShare
Features include:

  • Search method to get Collections and Documents
  • Get system file structure (Collections and Documents)

Configure DocuShare Data Source

To configure credentials for a Data Source in Manage:

  • Navigate to Data Sources and click the ‘New Data Source’ button.
  • In this screen, you should provide the basic data required to set up a data source that points to DocuShare. If every user will provide their own credentials in the eForm, then is not necessary to provide credentials in this window otherwise you are able to set up system-wide credentials for all your users.
SettingDescription
Data Source NameEnter the name of this data source, then this could be referenced in Design.
Connection TypeDocuShare
Connection StringThis field is required by Infiniti but not implemented by this connector, you should provide any value: “DocuShare”
CredentialsIf you require to set up system-wide credentials, provide a user name and password under credentials section, using this pattern: Domain/UserName, if your user doesn’t belong to any domain: /UserName. E.g. Intelledox/camilog or /camilog if don’t have domain.
Otherwise, select the “No Credentials Required” option.
  • Click on ‘Save’ button.
  • Click on ‘Test Connection’ to ensure that all the data provided is ok.
841
  • Click on ‘Data Object’ button and then in ‘New Data Object’.

Search Method

-Filter fields-

NameDescription
URLDocuShare URL e.g http://YourServer/docushare. If this value is provided, the default URL will be overridden.
DomainThe Domain is used in the authentication, this attribute could be empty if no domain required.
UsernameDocuShare username. If this attribute is used, this value will override the default specified in connector settings.
PasswordDocuShare password. If this attribute is used, this value will override the default specified in connector settings.
ResultsThe maximum number of returned results, if no value provided Infiniti will return 10.
CriteriaCriteria value used by Infiniti to retrieve Collections or Documents.

-Display Fields-

NameDescription
DisplayDisplay name of Collection or Document.
HandleUnique identifier of Collection or Document.
Parent Display NameDisplay Name of Collection parent.
Parent HandleUnique identifier of Collection parent.
TypeCollection or Handler (document).

GetCollectionTree Method (Deprecated)

-Filter Fields-

NameDescription
URLDocuShare URL e.g. http://YourServer/docushare. If this value is provided, the default URL will be overridden.
DomainThe domain is used in the authentication, this attribute could be empty if no domain required.
UsernameDocuShare username. If this attribute is used, this value will override the default specified in connector settings.
PasswordDocuShare password. If this attribute is used, this value will override the default specified in connector settings.

-Display Fields-

NameDescription
DisplayDisplay name of Collection or Document
HandleUnique identifier of Collection or Document
TypeCollection or Handler (document).