Calculate Value Over Time Span for UID Node – Configuration Guide

Performs time-based aggregation of a payload field grouped by unique identifier (UID), typically per UID.

What It Does

This node calculates an aggregation (currently only sum) over a time window for each unique UID — usually per UID (UID). It is used to consolidate data streams into a single result, allowing device-level performance evaluation.

The node is intended for scenarios where individual devices emit multiple payloads over time, and those values need to be accumulated into a rolling total. This is useful for:

  • Device-level diagnostics and health metrics

  • Short-term flow rate or energy consumption monitoring

  • Rolling value accumulation for alerting or logic branching

  • Enabling precise, per-device aggregation in multi-source environments

Internally, the node maintains a sliding window of recent values per UID and calculates the defined metric over that window.


 Configuration Options

Field Required Description
Node name Internal label for the node
JSON key Field in the payload to be aggregated
Calculation Aggregation function to use (currently only Sum)
Calculation time span Numeric duration of the sliding time window
Calculation ends Window cutoff. Set to Up to current timestamp
Calculation time span units Units for the time window (Seconds, Minutes, Hours, Days)
Output JSON key Field in the outgoing payload where result is stored
How many up Optional Controls how many values to output (typically 1)
Decimal places Optional Number of decimal places in the output (e.g., 2)
 

 Step-by-Step: How to Configure the Node

  1. Add the Node
    Place the node into the workflow where time-based accumulation is required.

  2. Node Name
    Assign a descriptive name (e.g., SumFlow10min).

  3. Select JSON Key
    Choose the field in the payload to sum (e.g., flowRate).

  4. Set Calculation
    Choose Sum.

  5. Define Time Window

    • Set Calculation time span (e.g., 10)

    • Select Units (e.g., minutes)

    • Set Calculation ends to Up to current timestamp

  6. Set Output Key
    Enter a name like flowRate10minSum to store the result.

  7. Set Decimal Precision
    Optional — use 2 for typical numeric rounding.


 Example Configurations

Example 1: Aggregate flow rate over last 10 minutes per device

Field Value
JSON key flowRate
Calculation Sum
Time span 10
Time units Minutes
Output JSON key flowRate10Min
Decimal places 2
 

Example 2: Aggregate energy per hour per device

| JSON key | kWh |
| UID | deviceId (implicit) |
| Calculation | Sum |
| Time span | 1 |
| Time units | Hours |
| Output key | hourlyEnergy |
| Decimal places | 3 |


Q&A

Q: How is UID determined?
A: UID is inferred from UID or equivalent grouping key. Each UID gets its own rolling window.

Q: Does this node use the payload timestamp or processing time?
A: The node uses the payload timestamp for time-window logic.

Q: What happens if no values exist within the window?
A: The result is 0.

Q: Can I change the aggregation method?
A: No. Only Sum is currently supported.

Q: Can I use it for non-numeric fields?
A: No. Only numeric aggregation is supported.