User Input Action Plugin



Overview

This action plugin provides an interactive way to present information and collect data from users through web forms within the Orchestrator control application.

Saved Parameters Description

  • Name: The name used to identify a saved UserInput configured instance.
  • Comments: Some comments about this saved UserInput configured instance.
  • Event description: The description of the user task that gets created on the tasks tab.
  • On-going trigger: The On-going trigger checkbox is to be checked if the plugin execution is to be kept ongoing.
  • View template: The template of the form that should be displayed, when user clicks on the task. Template files should be located in '/opt/aspera/var/config/orchestrator/actions_config/user_inputs' and need to have their name start with '_'
  • Mandatory inputs: Multiple runtime mandatory inputs can be created by adding Mandatory inputs. Input name and the data type should be selected for each input that is added.
  • Optional inputs: Multiple runtime optional inputs can be created by adding Optional inputs. Input name and the data type should be selected for each input that is added.
  • Mandatory requested data: Multiple mandatory inputs/data can be created by adding Mandatory requested data. Input name and the data type should be selected for each input that is added. These inputs act as plugin outputs and execution will not move to next step until these fields are provided with data.
  • Optional requested data: Multiple optional inputs/data can be created by adding Optional requested data. Requested data name and the data type should be selected for each input that is added. These inputs act as plugin outputs.

Email notification section

  • Send notification email: This Checkbox is to be checked if email notification is to be sent upon execution of this plugin.
  • Mail server: Mail server that is to be used to send email notification.
  • Subject: Subject line of the email that will be sent.
  • Email body: Email body of the email that will be sent.
  • Additional to destinations: Additional 'to' email address apart from the users/groups (discussed below) that are selected.
  • Additional cc destinations: Additional 'cc' email address apart from the users/groups (discussed below) that are selected.
  • Additional bcc destinations: Additional 'bcc' email address apart from the users/groups (discussed below) that are selected.

Users section

  • Users: All the users that are suppose to be assigned with the user task that will be created by the execution of this plugin.

Groups

  • Groups: All the groups that are suppose to be assigned with the user task that will be created by the execution of this plugin.

Inputs Description

The list of inputs depends on the configuration of the UserInput action template.

Event description is a Mandatory field.

The inputs created by the Mandatory inputs field are mandatory.

If email notification is selected, Email subject and Email body are mandatory fields and should be populated.

Outputs Description

  • Mandatory requested data: Mandatory requested data will appear as Outputs and will serve as outputs to next step.
  • Optional requested data: Optional requested data will appear as Outputs and will serve as outputs to next step.

Operating Instructions

User Input plugin is intended to display and request information for a human using a Form.

This HTML based form is list in the "Tasks" tab for users in Orchestrator GUI.

As mentioned in the above description, custom forms must be located in the folder /opt/aspera/var/config/orchestrator/actions_config/user_inputs/ and the filename must begin with "_" and end with ".html.erb", example: _myform.html.erb

These forms will appear on the drop down for 'View template'.

An example to user input will be have a workflow that takes an Input file and performs transcoding on it. Now we can have a UserInput plugin step, that can enable to view the transcoded media and validate it. Upon validation, the flow of the workflow moves forward. (Here the validation parameters will part of Mandatory requested data.)

There is no limit on customization of the form. Server side processing can be made with embedded Ruby (for example, database access, parsing a file).

Client side processing can be made with javascript (for example, REST request, HTML form generation). GUI can be customized using standard web technologies like HTML5, CSS3, and so on.