Triggers
Triggers enable you to execute your Automation based on specific criteria. You can run Automation on an ad-hoc basis, but if you want to pre-plan your executions, you can configure a particular trigger.
Context Menu Options
You can manage your automation triggers from the Triggers page inside Control Room. You must have appropriate permissions for this entity to access and perform operations on the Triggers page. To manage your automation triggers, go to the Triggers page in the Control Room. Please note that you need permission to access and act on this page.
Permission | Description |
---|---|
View | View all Triggers and their details |
Edit | Edit Trigger details |
Delete | Delete a Trigger |
Enable/Disable | Enable/Disable a Trigger by clicking on this option |
RunNow | This option is shown only for Email Triggers. Select this option to manually activate Email Triggers and verify for new incoming emails. |
Audit | You can audit the operations on Trigger |
Creating a Trigger
You can create a new Trigger from Control Room > Triggers page.
- Click on Toolbar-Menu > button
- New Trigger dialog appears.
- Fill in the required trigger information by following the instructions mentioned in Trigger Tab, Execution Tab, and Parameter Tab.
Trigger Tab
- Type in the Name of the Trigger to identify it easily
- Choose a Process that you want to execute
- Select the Trigger Type from the dropdown
- Fill in the trigger criteria based on the type selected: Time Trigger Criteria | Email Trigger Criteria | File System Trigger Criteria
- Optionally, specify the trigger Start Date. By default, the trigger is initiated immediately after creation.
- Optionally, specify the trigger Expiry Date. If specified, it will stop triggering new jobs after this date. By default, the trigger will never expire.
Execution Target Tab
- In the Execution Target tab, select the specific Smart Buddy that you want to execute the Process.
If you select the Dynamic option, any of the available Smart Buddy will pick up the job for execution
Parameters Tab
- Specify the Log Level for the job executed with this Trigger.
- To submit the necessary input parameters for a selected process, bind them according to the type of trigger chosen. You can find instructions on how to bind Email Trigger Parameters and File System Trigger Parameters by following these links: Binding Email Trigger Parameters | Binding File System Trigger Parameters.
Updating a Trigger
You can update an existing trigger to change the details. You can do this from the Triggers page
- Select a trigger to update
- Select from Context-Menu > Edit option
- Update the details
- Click on Update
Deleting a Trigger
- To remove a trigger, go to the Triggers page and select the one you want to remove.
- Select from Context-Menu > Delete option
- Confirm the operation by selecting Yes
A user with the Administrator role can delete an existing Trigger.
Enabling/Disabling a Trigger
- On the Triggers page, select the trigger to Audit
- You can right-click the Audit option to check all the operations trigger.
- Or select from Context-Menu > Edit option
- Turn on the disabled button
- Click on Update
- Disabling a Trigger will block the execution of Automation.
- Turn off the Disable button to enable the trigger.
Audit a Trigger
- To Audit a trigger, go to the Triggers page and select the one you want to remove.
- Select from Context-Menu > Delete option
- Confirm the operation by selecting Yes
A user with the Administrator role can delete an existing Trigger.
Trigger Types
IntelliBuddies supports the following types of Triggers:
Trigger Type | Description |
---|---|
Time | Schedule a job to run at a specific time according to predetermined criteria. |
Invokes a job when a new email arrives on the specified email box and matches the specified criteria. | |
File System | Invokes a job when a specified file event(s) occur under the specified folder(s) |
List | Invokes a job on data inserted/updated/deleted inside a List matches the specified criteria. |
Time Trigger Criteria
You can specify your time trigger criteria by selecting the appropriate Schedule Types from the dropdown.
Schedule Types
Schedule Type | Description |
---|---|
Daily | Use this schedule type to trigger a job execution on one or more specified schedule(s) daily |
Specific Dates | Use this schedule type to trigger a job execution on one or more specified schedule(s) on all the date(s) specified. |
Weekly | Use this schedule type to trigger a job on one or more specified schedule(s) on all the selected days of the week. |
Monthly | Use this schedule type to trigger a job on one or more specified schedule(s) on all the selected day(s) of the week within the specified month(s) |
Recurring | Use this schedule type to trigger a job repeatedly on the specified time interval |
Email Trigger Criteria
You can specify the email trigger criteria using the following fields.
Field | Description |
---|---|
Email Server Connection | Select a Connection from the available Email Server Connections. |
Test Connection | Select this button to authenticate the credentials associated with the chosen connection. |
New Connection | Click this button to create a new Email Server Connection. |
Incoming Email Filter Options | Check this box to specify a Email Filter while fetching emails from the Server. |
Number of Messages | Specify the count if you want to process only a specific number of emails. If not specified, all the unread emails which satisfy the filter condition will be processed. |
Email Processing Order | Select the order you want to process emails. You can choose between Newest to Oldest to process the latest emails first or Oldest to Newest to process the oldest emails first. |
Message Polling Interval | Specify the time interval in minutes to check emails on the Server. The limit is 10 minutes by default, but users can adjust it as needed. |
In a POP3 type of Email Server Connection, if the email domain is gmail.com, the system will only read a maximum of 255 emails. This limitation is specific to Gmail accounts when using the POP3 protocol.
Email Filters
Users can apply filter criteria to extract the required emails using this multiple-filter option. The user can build the filter expressions.
Email Trigger will mark the message as read for the IMAP server, whereas the POP3 server will delete the processed Email and move it to the trash.
Binding Email Trigger Parameters
Email Trigger provides runtime parameters that specify the trigger event details. These details are necessary for the process to handle its tasks. You can bind these runtime parameters to the corresponding input arguments of the process. Here is the List of runtime parameters provided by Email Trigger.
Name | Type | Description |
---|---|---|
$Email_Message | System.Net.MailMessage | The email message triggered this Process. You can access details such as sender, subject, received date, body text, attachments, and any other information from this parameter. |
Running Email Triggers on demand
You can run any Email Triggers on-demand to check for any new emails and to queue up the job on-demand by following the steps below:
- Select an email trigger to run
- Select from Context-Menu > Run Now option.
File System Trigger Criteria
You can specify the file system trigger criteria using the following fields.
Field | Description |
---|---|
Folder To Monitor | Specify the folder to monitor. You can either specify the local file system path or the network path. For example: C:\MyMonitorFolder or \\file-server\MyMonitorFolder. Ensure that the monitored folder has the appropriate permissions. |
** Filter** | You can specify the wildcard filter based on certain file types only if you want to trigger it. For example, specifying *.pdf here would trigger only when a PDF file is either Created/Modified/Deleted/Renamed under monitored folder(s) |
Include Subfolders | Check this box if you want to monitor all the nested folders under the specified Folder To Monitor |
Events To Monitor | Check the required events to monitor. You have the following options: |
Folder Permissions
For a file system trigger to work, the monitored folder should have at least the following three permissions for user monitoring:
- read,
- read & execute
- list folder contents.
The user here refers to an App Pool Identity User or the Windows User based on how you have deployed your Control Room Server inside IIS.
- If you configure Control Room Server to run under App Pool Identity inside IIS, the corresponding App Pool Identity account should have the appropriate permissions to the monitored folder.
- You can add the corresponding App Pool Identity account by prefixing the IIS AppPool domain before the account. For example, the default App Pool Identity account is represented as IIS AppPool\DefaultAppPool
- This configuration will limit the usage of file system triggers to work only with local system folders.
- If you configure Control Room Server to run under a custom Windows User account inside IIS, the corresponding user should have the appropriate permissions to the monitored folder.
Locate the permissions by right-clicking on the trigger folder and choosing the properties. In the properties dialog, go to the Security tab. Provide the appropriate permission to the user.
It is advisable to configure the Control Room Server within IIS to operate under a custom network domain account. This setup enables the file system trigger to function seamlessly across local folders and network-shared drives.
Binding File System Trigger Parameters
File System Trigger provides runtime parameters that specify the trigger event details. These details are necessary for the process to handle its tasks. You can bind these runtime parameters to the process's corresponding input arguments.
Here is the List of runtime parameters provided by File System Trigger.
Name | Type | Description |
---|---|---|
$File_EventType | System.IO.WatcherChangeTypes | Specifies the type of file event that triggered this process execution. It can be one of the following values
|
$File_Name | System.String | Specifies the Name of the file along with the file extension |
$File_Path | System.String | Specifies the full path, including the folder and file name with extension |
$File_FolderPath | System.String | Specifies the folder path where the file resides |
$File_Extension | System.String | Specifies the extension of the file |
$File_Length | System.Double | Specifies the size of the file |
$File_CreationTime | System.DateTime | Specifies the created date and Time of the file |
$File_LastWriteTime | System.DateTime | Specifies the modified date and Time of the file |
$File_LastAccessTime | System.DateTime | Specifies the last accessed date and Time of the file |
$File_IsReadOnly | System.Boolean | Specifies whether the file is read-only or not. A value of true indicates the file is read-only. |
$File_CreationTime, $File_LastWriteTime, and $File_LastAccessTime store their DateTime values in UTC Standard format.
Converting from UTC: To convert UTC to a specified Timezone, use the TimeZoneInfo.ConvertTimeFromUtc static method.
Converting to UTC: To convert from another Timezone to UTC, use the static TimeZoneInfo.ConvertTimeToUtc method.
You can create the TimeZoneInfo with the help of the TimeZoneInfo.FindSystemTimeZoneById method, in which you need to specify the name of the time zone you want, such as India Standard Time.
List Trigger Criteria
To set your list trigger criteria, choose the fields listed below.
Field | Description |
---|---|
List | Specify the List by its name. |
Events To Monitor | Choose the event to use as a trigger for the job. You have the following options: |
Apply Filters | Toggle or enable this to add a List Trigger Filter. |
Binding List Trigger Parameters
List Trigger offers runtime parameters that contain important details about the trigger event. These details are crucial for the process to perform its tasks. You can link the runtime parameters of the row in the list to the relevant input arguments for the process. Here is the List of default runtime parameters provided by List Trigger.
Name | Type | Description |
---|---|---|
$ListItem.EventType | string | Event for which trigger was fired. |