Skip to main content
Version: 3.3

Tasks

A Task is a reusable configuration that defines an automated action triggered at a specific point in the transfer lifecycle. UDMG supports multiple Task types, each defining a specific action and its associated configuration parameters, such as executing system commands or publishing Universal Events to Universal Controller.

Tasks can be used to automate operations such as executing system commands or publishing Universal Events to Universal Controller.

Tasks are assigned to Pipelines through the Pipeline Workflow. Each Workflow defines:

  • which Tasks run,
  • which transfer event triggers them,
  • and the order in which they are executed.

Workflows and Task Execution

Each Pipeline has a Workflow composed of Triggers based on transfer lifecycle events. Tasks can be assigned to each trigger to automate actions at specific points during transfer processing.

Tasks associated with the same trigger are executed sequentially in the order defined in the Workflow. Each Task must complete before the next Task in the sequence begins.

If a Task fails, the remaining Tasks associated with that trigger are not executed, and the Transfer is marked as Failed.

During Workflow execution, Transfers enter different statuses, depending on the Task trigger. In most cases, the Transfer is in the Processing status, which indicates that post-transfer operations, such as Task execution, are still in progress. Once all Tasks have completed successfully, the transfer status is updated to Completed.

Task Types

TypeDescription
Command

Executes a system command on the host where UDMG Server is running.

This Task type can be used to run commands or executable programs as part of the Pipeline Workflow.

Publish Event

Publishes a Universal Event to Universal Controller through the Universal Controller API.

This Task type can be used to notify Universal Controller of transfer lifecycle events or to trigger downstream automation.

For more context, see Universal Event Integration.

Triggers

Tasks are executed when specific transfer lifecycle events occur. These events determine when Tasks run, and their order in the Pipeline Workflow determines the execution sequence.

The available triggers are:

TriggerDescriptionTransfer Status During Task Execution
On StagedTriggered after the file is staged on the UDMG Server host and, if configured, after ICAP scanning*, but before the file is moved to its final destination.Running
On SentTriggered after the file is successfully sent to the final destination.Processing
On ReceivedTriggered after the file is successfully received at the final destination.Processing
On Error

Triggered when a transfer fails, or when a Task assigned to the On Staged, On Sent, or On Received Trigger fails during execution.

To avoid unnecessary Task execution, low-level transfer errors such as mid-upload disconnects, write errors, and setup failures cause the transfer to be marked as Failed directly, without triggering On Error Tasks.

Processing
info

ICAP Error and Violation policies set to Reject and Quarantine are handled as a transfer Failure and trigger On Error tasks directly.

Trigger Availability & Behavior by Pipeline Type

Trigger availability and behavior vary by Pipeline Type. They depend on the role UDMG performs in the Pipeline (Server, Client, or Gateway) and on whether the transfer is inbound or outbound.

UDMG as Server

Pipeline TypeOn StagedOn SentOn ReceivedOn Error
Local AS2 Server to Local Filesystem

(only for inbound transfers)

(only for inbound transfers)

Local FTP(S) Server to Local Filesystem

(only for inbound transfers)

(only for outbound transfers)

(only for inbound transfers)

Local HTTPS Server to Local Filesystem

(only for inbound transfers)

(only for outbound transfers)

(only for inbound transfers)

Local SFTP Server to Local Filesystem

(only for inbound transfers)

(only for outbound transfers)

(only for inbound transfers)

info

For Local AS2 Server to Local Filesystem, only inbound transfers are supported. As a result, On Sent Tasks are not available for this Pipeline type.

The following diagrams shows the Tasks sequencing during the keys steps of a transfer lifecycle:

Color code
  • Purple: Transfer step
  • Orange: Task execution
  • Green: Transfer completed
  • Red: Transfer failed

UDMG as Client

Push Scenario
Pipeline TypeOn StagedOn SentOn ReceivedOn Error
Local Filesystem to Remote AS2 Server
Local Filesystem to Remote FTP(S) Server
Local Filesystem to Remote SFTP Server
Local Filesystem to Remote Cloud Storage

The following diagram shows the Tasks sequencing during the keys steps of a transfer lifecycle:

Color code
  • Purple: Transfer step
  • Orange: Task execution
  • Green: Transfer completed
  • Red: Transfer failed
Pull Scenario
Pipeline TypeOn StagedOn SentOn ReceivedOn Error
Remote FTP(S) Server to Local Filesystem
Remote SFTP Server to Local Filesystem
Remote Cloud Storage to Local Filesystem

The following diagram shows the Tasks sequencing during the keys steps of a transfer lifecycle:

Color code
  • Purple: Transfer step
  • Orange: Task execution
  • Green: Transfer completed
  • Red: Transfer failed

UDMG as Gateway

Pipeline TypeOn StagedOn SentOn ReceivedOn Error
Local FTP(S) Server to Remote Cloud Storage

(only for outbound transfers)

(only for inbound transfers)

Local HTTPS Server to Remote Cloud Storage

(only for outbound transfers)

(only for inbound transfers)

Local SFTP Server to Remote Cloud Storage

(only for outbound transfers)

(only for inbound transfers)

The following diagrams shows the Tasks sequencing during the keys steps of a transfer lifecycle:

Color code
  • Purple: Transfer step
  • Orange: Task execution
  • Green: Transfer completed
  • Red: Transfer failed

Task Instances

Every time a Task is executed, a Record called a Task Instance is created to track that execution.

When a transfer reaches a configured Trigger, UDMG creates one Task Instance for each Task assigned to that Trigger and executes them in sequence.

If a Task fails, the remaining Tasks assigned to the same Trigger are not executed and are marked as Aborted. On Error Tasks are then triggered.

info

For more information about Task Instance statuses, refer to Task Instances.

Transfer Cancellation Behavior

Admins can cancel a transfer only while it is in the Running state.

When a running transfer is cancelled:

  • On Error Tasks are not triggered.
  • Any pending Workflow execution is cancelled.
  • No additional Task Instances are created for later Triggers.
info

For more information about cancelling a transfer, refer to Transfers.

Monitoring Task Instances

Task Instances can be monitored from the Task Instances Dashboard, where you can review status, execution details, and Task output. There are two ways to access it:

From the Sidebar — Click Task Instances and filter the Record Table by the relevant Transfer UUID or Task Name. From the Transfers Dashboard — Click a Transfer Record to open its details, then click the View Workflow button. This redirects to the Task Instances Dashboard with the Record Table pre-filtered for that Transfer.