Evaluation Types
Evaluations are conditions that determine whether actions in an Execute Action Batch should run. Each evaluation compares a Field Name to a specific value using a selected Evaluation Type.
Evaluations allow you to build logic such as:
- "If the sensor value is greater than 100"
- "If this data field is not empty"
- "If the widget state changed in the last 5 minutes"
They are essential for filtering, branching, and conditionally executing actions.
Evaluation Structure
Every evaluation consists of:
-
Field Name:
The value to be evaluated. This can come from:- A trigger (e.g. sensor event or value)
- A sent field from a previous batch
- A widget value
- A data source
-
Evaluation Type:
The rule used to evaluate the field against a target value. (See below) -
Evaluate Against:
The comparison value or source, based on the Evaluation Origin (see next section).
Evaluation Origins
Evaluation origins define where the comparison value comes from. You can choose from:
-
Static:
A constant, manually entered value (e.g.,123,"December"). -
Interactive Widget:
Select a page and a specific widget field (e.g., input field) to compare against. -
Data Field:
Pull a bound field from a Datasource to compare with the Field Name.
The combination of Field Name, Evaluation Type, and Evaluation Origin gives you precise control over logic flow in your action batches.
Evaluation Type Categories
Below are the available evaluation types, grouped by function:
Equality
EqualsDoes Not Equal
Arithmetic
Is Less ThanIs Less Than or EqualIs Greater ThanIs Greater Than or Equal
Existence
Is EmptyIs Not EmptyIs TrueIs FalseContainsDoes Not Contain
Change (Only available in data-bound evaluations)
Has Changed To AnythingHas IncreasedHas Decreased
Regular Expressions
Regular Expression (match)Regular Expression (no match)
Advanced Logic
Call Function
Use a JavaScript-like function to return a custom boolean result.
Time-Based Evaluation Types
Available only if timestamp support is enabled in the context:
Minutes
More than X minutes agoLess than X minutes agoIn less than X minutesIn more than X minutes
Days
More than X days agoLess than X days agoIn less than X daysIn more than X daysTodayNOT Today
Weeks
This weekLast weekNext weekNOT this weekNOT last weekNOT next week
Months
This monthSame monthLast monthNext monthNOT this monthNOT same monthNOT last monthNOT next month
Example
If a temperature sensor sends a value:
- Field Name:
sensor.value - Evaluation Type:
Is Greater Than - Evaluation Origin:
Static - Evaluate Against:
22
Then this action will run only when the sensor value exceeds 22.
Use evaluations to build powerful, conditional flows without writing custom code. You can combine multiple evaluations within a batch to trigger complex logic based on real-time data, user interaction, or system state.