Collaboration Jobs Overview

   Journey Manager (JM) The transaction engine for the platform.  |    System Manager / DevOps  |  All versions This feature is related to all versions.

Journey Manager comes with the collaboration job framework for building complex and robust workflowA workflow is progression of steps (tasks, events, interactions) that comprise a work process, involve two or more persons, and create or add value to the organization's activities. In a sequential workflow, each step is dependent on occurrence of the previous step; in a parallel workflow, two or more steps can occur concurrently.s without the need to use Business Process ModelingBusiness Process Modeling Notation (BPMN) is a method of illustrating business processes in the form of a diagram similar to a flowchart. tools. The framework is easy to use, so the collaboration jobs can be configured by non-developers.

A typical workflow can be an application review and approval process, which enable several people to work collaboratively on a user submitted form to either approve or reject it, as shown below.

A collaboration job controls a workflow of transactions that represents user interaction with a form. A collaboration job can be considered as a series of tasks that Manager creates for users to complete, review or reject a form. A collaboration job consists of several steps with each step containing actions or endpoints. Steps are not ordered, but actions are sequential within each step. The sequence of steps and actions defining a form approval workflow scenario is shown in the diagram below.

The example above represents the happy pathA happy path is a default scenario featuring no exceptional or error conditions. scenario where the instance of a collaboration job is approved. The collaboration job is routed through three of the four steps shown on the step diagram above. An applicant fills and submits a form which starts the collaboration job. The first step being the Application Start, which has one action - the Form Start this links this initial submission by the applicant to the collaboration job. The collaboration job processing completes this action and immediately routes to the next step - the Application Review step - which has two actions - the Create Task, which creates a group task assigned to a review group, and the Task Wait which waits for the task to be submitted by a user. A user in the review group opens the task, review the submission, selects the Approve option to approve it, and submits this approval. This completes the Task Wait action which takes the Approve route to the next step - the Application Approved. This step is an endpoint which has one action, the Update Status, that notifies the applicant that there submission has been approved. Once all the actions have completed in an endpoint step, the collaboration job completes.

A collaboration job's workflow is specified in the job definition of a job controller service as a JSONJSON (JavaScript Object Notation) is an open standard file format and data interchange format that uses human-readable text to store and transmit data objects consisting of attribute–value pairs and arrays. document. You can configure the job definition to change its execution flow. The usual way to initiate a collaboration job is to setup a form with the corresponding job controller service. When a form user submits the initial form, it will start a collaboration job, which in turn creates tasks and assigns them to various users, groups or email (anonymous users) in a review and approval flow. Alternatively, tasks can be assigned back to the original submitter to have them fill in new forms which is a form bundles flow.


A collaboration job can be started from an API call without requiring an initial form submission.

A collaboration job has two types of execution mode. The standard mode, which is used for reviews and approvals, has the processing kicked off by a standard scheduled job called the Collaboration Job Controller - Scheduled Job, which runs every minute by default. The other mode is used for form bundles and has the job processing kicked of at the end of a submission processing. This is allows for collaboration jobs to run immediately and then present the a newly created form task back in the users browser.

Maestro forms have a number of custom widgets that interact with collaboration jobs. In addition, form fields can be mapped in Maestro to Data Extracts. Collaboration jobs use data extracts in preconditions to determine run a step or an action and also in the displaying of tasks details to the user. Finally, when a task is opened it contains job context information in the form XML, such as Job Ref Number, Current Step and Available routes. This populates widgets as well as controlling the visibility of form sections.

Manager allows you to track collaboration jobs, manage their details and check related transactions. You can also create custom job services.

Typically, there are two groups of Manager users that will work with collaboration jobs - developers and system administrators. You should configure and grant them the following permissions:

  • Collaboration Job View
  • Collaboration Job Edit
  • Collaboration Job Remove

These permissions let developers to view collaboration jobs and enable the Event and Error tabs, which are useful for testing collaboration jobs. It allows them to search for the test job and drill down to review each step and action.

System administrators should be also able to move forms and collaboration jobs between environments, to maintain and assign users to the correct groups and roles. This will let them to:

  • Search on a job and see what step it is up to and then drill down into it for more detail.
  • Look at a action task and see who the task is assigned to.
  • View form receipts, form XML data for completed submissions.
  • Review error status.

Next, learn about collaboration job modes.