Differenze tra le versioni di "Action engine"

Da itm wiki.
(Simple Event Handler)
(incomeParameters usage)
Riga 158: Riga 158:
 
  * function main(event, incomeParameters)
 
  * function main(event, incomeParameters)
 
  * {
 
  * {
  * var message = " event: " + event.getClass().getSimpleName();
+
  * var message = " event: " + event.getClass().getSimpleName();
 
  *
 
  *
  * var entries = incomeParameters.entrySet().toArray();
+
  * var entries = incomeParameters.entrySet().toArray();
  * for each (var obj in entries)
+
  * for each (var obj in entries)
 
  * {
 
  * {
  * message = message
+
  * message = message
  * + "\n"
+
  * + "\n"
  * + "key:" + obj.getKey() + "\n"
+
  * + "key:" + obj.getKey() + "\n"
  * + "value:" + (obj.getValue().getValue() != null ? obj.getValue().getValue() : "null");
+
  * + "value:" + (obj.getValue().getValue() != null ? obj.getValue().getValue() : "null");
 
  * }
 
  * }
 
  * //suppose we have parameter under "ticket" name
 
  * //suppose we have parameter under "ticket" name
 
  * //lets retrieve it
 
  * //lets retrieve it
  * var value = incomeParameters.getObjectValue("ticket");
+
  * var value = incomeParameters.getObjectValue("ticket");
  * message = message
+
  * message = message
 
  * + "\n"
 
  * + "\n"
 
  * + "ticket:" + value;
 
  * + "ticket:" + value;
 
  * //lets retrieve type of incomeParameters.getObjectValue("ticket")
 
  * //lets retrieve type of incomeParameters.getObjectValue("ticket")
  * var type = incomeParameters.getParameterTypeModel("ticket");
+
  * var type = incomeParameters.getParameterTypeModel("ticket");
  * message = message
+
  * message = message
  * + "\n"
+
  * + "\n"
  * + "ticket:" + type.getName();
+
  * + "ticket:" + type.getName();
 
  *
 
  *
  * taskRuntime.addWarning(message);
+
  * taskRuntime.addWarning(message);
 
  * }
 
  * }

Versione delle 16:11, 2 nov 2017

Action Engine Configuration

Action Engine enabled the user to configured an Action and the activation condition. An action is composed by:

  • General Information
  • Trigger and Activation condition
  • Parameters
  • Tasks to execute

General

The following images shown the action' user interface and provide some more detail about this functionality

Action Configuration

Parameters

TBC

Events Managed

Category / Class General Project Service Ticket
LDAP Events LDAP Message N/A N/A N/A
MB Scheduler Reporting distribution by mail

Resource on project association

Upload relations Resource-Projects

N/A N/A N/A
User Note Events User Note Created

User Note Updated

N/A N/A N/A
Internal System Events N/A Project Created

Project Updated

Service Created

Service Updated

Ticket Activity Created

Ticket Activity Updated

Ticket Created

Ticket Updated

Workflow Button

External System Events N/A N/A N/A Incoming Message
OCE Events N/A N/A N/A Trigger Value Reached
LDAP Message

TBC

Reporting distribution by mail

TBC

Resource on project association

TBC

Upload relations Resource-Projects

TBC

User Note Created

TBC

User Note Updated

TBC

Project Created

TBC

Project Updated

TBC

Service Created

TBC

Service Updated

TBC

Ticket Activity Created

TBC

Ticket Activity Updated

TBC

Ticket Created

TBC

Ticket Updated

TBC

Workflow Button

TBC

Incoming Message

When the incoming message is validated by EEM, the informations are sent to MB (Message Bus) that dispatch it to the itmSUITE® Action engine and a configured Action is activated.

Trigger Value Reched

TBC

VCE Condition

Condition'tab enable the user to define a Boolean condition that should be verify before activate the action' . Generally the conditions works on input Parameter.

Action Configuration

Task

Tasks tab enable the user to define one or more task that will be executed sequentially if the condition is valid. The system manage different type of task, the most flexible and powerful is Scripting task, based on Javascript framework, enable the user to call itmSUITE® primitive

Action Task Configuration

Basic Task

TBC

Scripting Task

TBC

Outbound Comunication

itmSUITE® module can send information towards third parties software using scripting tasks. This can be performed:

  • Sending a preformatted mail
  • Calling a third parties web services
Action Task Configuration

Scripting Task Tutorial

Simple Event Handler

We need to define a function main, which accept two arguments:

  • event
  • incomeParameters
Empty Task Handler
* 1. print as warning event name and Task Income Parameters
* 2. accessing to income parameter by name
* @param event
* @param incomeParameters
incomeParameters usage
* 1. print as warning event name and Task Income Parameters
* 2. accessing to income parameter by name
* @param event
* @param incomeParameters
* 
* function main(event, incomeParameters)
* {
*  var message = " event: " + event.getClass().getSimpleName();
*
*  var entries = incomeParameters.entrySet().toArray();
*  for each (var obj in entries)
* {
*  message = message
*  + "\n"
*  + "key:" + obj.getKey() + "\n"
*  + "value:" + (obj.getValue().getValue() != null ? obj.getValue().getValue() : "null");
* }
* //suppose we have parameter under "ticket" name
* //lets retrieve it
*  var value = incomeParameters.getObjectValue("ticket");
*  message = message
* + "\n"
* + "ticket:" + value;
* //lets retrieve type of incomeParameters.getObjectValue("ticket")
*  var type = incomeParameters.getParameterTypeModel("ticket");
*  message = message
*  + "\n"
*  + "ticket:" + type.getName();
*
*  taskRuntime.addWarning(message);
* }