Triggers
You can use triggers to create services, and to define whether the orchestration must be time-driven or event-driven
When controlling the processing of workflows and tasks in workflows using triggers, you can create services, and you can also define if the orchestration must be time-driven or event-driven. You can add triggers to workflows both from the Orchestration CLI and the UI.
Services
A service can be enabled when defining workflows. Users can log in to the Self-Service Catalog interface to start the services linked to the workflows. By simply launching a service, mobile users can submit the linked workflows. For information about this feature see Self-Service Catalog.
Time-driven orchestration
- Run cycles
- A run cycle specifies the days and times when a workflow is scheduled to run. Run cycles and event triggers are mutually exclusive.
- Excluding run cycles
- An excluding run cycle specifies the days and times when a workflow must not run. Excluding run cycles take precedence over run cycles.
- iCalendar RRule generation
-
In the Rule section of the trigger Properties panel, you can select the iCalendar RRule type and then enter an expression or generate one by clicking Generate RRule. The Create Recurring Event panel appears, and you can define the following parameters:
Basic parameters Meaning Description FREQFrequency Defines the core interval of time for the recurrence. The available frequency values are: - Secondly
- Minutely
- Hourly
- Daily
- Daily by freedays
- Daily by working days
- Weekly
- Monthly
- Yearly
Note: If you set the frequency toDAILY BY FREEDAYSorDAILY BY WORKING DAYS, the only other parameter that you can define for the recurring event isINTERVAL.INTERVALInterval Defines how often the FREQrepeats (from 0 to 2,147,483,647).BYDAYDay of the week Specifies one or more days of the week, for example: MO,TU.BYMONTHMonth of the year Specifies one or more months of the year, for example: 1for January.BYMONTHDAYDay of the month Specifies the specific day of the month (from -31 to 31). For example: BYMONTHDAY=1is the first day of the month.WKSTWeek start Specifies the start day of the week. This parameter is supported only when the frequency is set to WEEKLY.Advanced parameters Meaning Description UNTILEnd date Sets a specific date or time for the recurrence to stop. COUNTOccurrences Sets the total number of times the event repeats (from 0 to 2,147,483,647). BYSETPOSSet position Filters the complete set of occurrences generated by the other rules to keep only specific positions. For example, BYSETPOS=-1restricts the schedule to only the last occurrence in the set; all other potential dates in that period are excluded.BYWEEKNOWeek number Specifies the week of the year: - Standard years: Values range from -52 to 52.
- Leap years: Values range from -53 to 53.
BYYEARDAYYear day Specifies the day of the year: - Standard years: Values range from -365 to 365.
- Leap years: Values range from -366 to 366.
BYHOURHour Specifies the hour of the day (from 0 to 23). BYMINUTEMinute Specifies the minute of the hour (from 0 to 59). BYSECONDSecond Specifies the second of the minute (from 0 to 59).
- Cron expressions arguments
-
HCL Universal Orchestrator accepts both Crontab and CronTrigger expressions, but when you enter a Crontab expression, it is converted into a CronTrigger expression.
Crontab and CronTrigger expressions have different structures, and sometimes the differences might change the original meaning of the expression:- Specifying month and week days
- In CronTrigger expressions, you cannot define both the day of the month and the day of the week, while in Crontab expressions you can define both.
- Day of week
- Both CronTrigger and Crontab expressions accept the 3 characters day name format and the number of the day format.
Event-driven orchestration
- Event triggers
-
Before you can add event triggers to your workflows, you need to define at least one event source.
Event triggers can contain either a single event or a collection of sequential or unordered events, for which can be specified correlations and timeouts. If you set a correlation among events in an event trigger, all the received events must have the same value in the specified common fields to satisfy the event trigger and trigger the launch of the workflow. An event trigger can contain events from different event sources. All the events within an event trigger contain the conditions that determine if a matching event is received or not. When an event trigger is satisfied, the workflow is submitted. Event triggers are mutually exclusive with run cycles and excluding run cycles.- Single event in event trigger
- When an event trigger contains a single event, the reception of the event submits the workflow, which proceeds to READY status and it is launched.
- Multiple events in event trigger
- When an event trigger contains multiple events, the workflow is submitted upon the reception of the first event from the event source, and it is set to ADD status. If a timeout time is specified, a workflows in ADD changes status to SUPPR if all the events in the event trigger are not received by the timeout time. If all the events are received before the timeout, the workflows proceeds to READY status and is launched. If the trigger on timeout option is selected and the a timeout time is specified, the workflow is launched if the events in the event triggers are not satisfied within the specified timeout.
Note: When defining event conditions, all the relative fields are case insensitive.- Plug-in event types
- These are types of plug-in events that can be defined in an event trigger: