Skip to main content
Kinetic Community

Task Engine Basics

Background information and requirements

Architecture

Kinetic Task, the engine that runs the task builder and the task trees, runs under the Java Servlet engine specification. Multiple engines can run on one machine, each engine can be configured to run multiple threads. Each engine will have one poller regardless of the number of threads.

 

architecture.jpg

 

Environment Requirements 

(minimums)

  • Servlet Engine, Java 1.5
  • Remedy 6.3
  • Flash 10
  • Java 1.5
  • JRuby 1.4

Components

Task Engine

Processing engine which takes input from applications and walks through a predefined task tree.

Task Builder

Graphical process builder. Allows for simplified configuration and sequencing of business processes. Coordinates messages and tasks using: connectors, sequencing, looping and dependencies.

Task Handler

Standalone specific piece of code designed to be simply configured to perform a business task.

Tasks take parameters, return results and can throw exceptions in the event of an error.

Typical Handlers:

  • Approvals
  •  Assignments
  •  Messages
  •  Provisioning

Task Tree

A Task Tree is a process attached to an input application. It holds the predefined workflow for a given input. The workflow consists of nodes and connectors.

Trigger

Record in Remedy that combines a tree from Kinetic Task with data (a KSR number) to start a run of a Task Tree.

 

Task Engine high-level walk thru

 

  • Request is submitted
  • Filters register that a task was submitted
  • Task Engine – polls for new tickets to process
  • If the engine finds a new trigger
  • Finds associated tree
  • Prepares variables based on the application
  • Walks tree per the request processing the related nodes

Task Engine Specifics

The Task Engine is continuously checking a form in Remedy for Triggers (KS_TSK_Trigger). When it encounters a record in that form that is not set to status Closed, it processes that record. For the Task engine to process a record, it needs the ID of a Tree, and the ID of a Request Submission (KSR Number). One other piece of information is if the Task Engine should process from the Start Node (first node in a tree), or from a deferred node, a node that is paused while another process completes. This is set by the Action Type of the trigger. Root is a Start node, and Update and Complete are used for Deferred nodes. Remedy workflow is used to create the record in the Trigger form.

The other type of interaction that the Task Engine has with Request/Remedy is for a Wait node. A wait node pauses a tree run and then acts at a certain time based on inputs to the node. For example if you want to wait three days before sending a reminder email, a wait node will take the parameters of days and the number three. Behind the scenes a record is created in a Remedy form (KS_TSK_Wait) and a Remedy escalation checks to see if it is time to create a trigger for the task engine.

The Task Engine interacts with the Remedy system using the Remedy API.