Universal Agent Support for Universal Extension


Overview

A new dynamic "extension" subsystem, introduced to the Universal Automation Center (UAC) platform, allows developers to implement custom solutions that can be integrated into UAC. These “solutions” could be, for example, a task, trigger, or monitor.

The initial phase of this subsystem focuses on tasks.

This feature provides an easy way for Stonebranch, customers, and/or third party developers with special domain knowledge, to develop new solutions that can be seamlessly integrated into the UAC software stack. This is especially beneficial when the Domain knowledge required for a solution does not exist within the Stonebranch development teams and/or justification does not exist to devote the necessary resources.

Universal Agent has been enhanced to support this new Universal Extension subsystem.  The Extension subsystem will allow various types of functionality to be developed and integrated into the UAC software stack (for example, tasks, triggers, and monitors).

While the Universal Task addresses this issue to some extent, it does not provide the level of integration and customer experience that can be achieved with the Universal Extension concept.

The generic Extension concept supports the development of some primary operation (for example, task, along with an optional set of related secondary/supporting operations (Choice Commands, Dynamic Commands).

The main differentiators between Universal Extensions and Universal Tasks are:

  • Bidirectional communication between the Extension instance and the Controller. This would allow an Extension instance running on an Agent system to dynamically update the associated instance running in the Controller as the state changes. For example, a “Task” type extension could update output fields on a task instance in the Controller (for example, Job ID, Run Status, Distribution Status, and Percentage Complete).

  • Dynamic command definitions to support a complete solution (not just a single script execution). This would allow an Extension solution to do things such as:

    • Provide commands that can help populate task definition form fields (such as is currently done with the PeopleSoft task type),

    • Provide a relative set of commands to be used on a task instance form that can be used to perform actions related to the unit of work that is specific to that task instance (such as is currently done with the SAP task type: Abort SAP job, Interrupt SAP Process Chain, etc.).

  • Dynamic event definition/generation (Universal Events) allow Extension instances to trigger actions in the Controller. Universal Events defined and monitored in the Controller could be raised by an Extension instance on an Agent.

Note

Universal Extension is not intended to replace Universal Task. Universal Task will remain a flexible, and perhaps more accessible, solution for many automation needs.


For detailed information on Universal Extension for both Universal Agent and Universal Controller, see Universal Extension in the Universal Controller documentation.