Skip to content

Taskdefinition

Version: v1 (minor version 2) Scope: per-tenant Owning service: actions-library

A Taskdefinition describes an automated ESL flash task: a rule-driven action that causes matching ESLs to flash their LED indicator in a specific color, pattern, and duration. Tasks are defined by a Conditions block that identifies which items (and therefore which ESLs) qualify, and a FlashAction that specifies the LED color, flash pattern intensity, and how long the flash should run. Tasks can be enabled or disabled without deletion. The conditions are evaluated using the shared pricer.evo.dtos.shared.Conditions type, which supports both structured rules and raw CEL expressions.

ID pattern

t/{tenantid}/tasks/{taskid}

Segment Meaning
t/{tenantid} Tenant scope — tasks are defined per tenant
tasks Fixed collection name
{taskid} Opaque identifier assigned by actions-library

Schema

Field Type Description
id string Full resource name following the ID pattern above
name string Human-readable name shown in the management UI (e.g. Flash Expiring Items)
enabled bool Whether the task is currently active. Disabled tasks are not evaluated.
condition Conditions The condition that determines which items this task applies to. See shared Conditions type below.
action Action The action to perform on all ESLs linked to matching items. Currently only flash_action is supported.
last_modified google.protobuf.Timestamp Timestamp of the last update to this task definition. The nanos field should not be used.

Action message

Action is a oneof container:

Variant Type Description
flash_action FlashAction Causes the ESL LED to flash

FlashAction message

Field Type Description
color LedColor enum The LED color to activate
pattern FlashPattern enum The flash intensity/frequency pattern
duration_seconds uint32 How long the flash should run, in seconds

LedColor enum

Value Meaning
LED_COLOR_UNSPECIFIED (0) Unset
GREEN (1) Green LED
RED (2) Red LED
BLUE (3) Blue LED
CYAN (4) Cyan LED
MAGENTA (5) Magenta LED
YELLOW (6) Yellow LED
WHITE (7) White LED

FlashPattern enum

The numeric values are intentionally spaced to allow future intermediate patterns to be inserted.

Value Meaning
FLASH_PATTERN_UNSPECIFIED (0) Unset
LOW (10) Slow, low-intensity flash
SEMI_LOW (20) Moderately slow flash
SEMI_STRONG_STROBE (30) Moderate strobe
STRONG_STROBE (40) Fast, strong strobe
STRONG (50) Continuous strong flash

Shared Conditions type

condition uses the shared pricer.evo.dtos.shared.Conditions message from proto-template/pricer/evo/dtos/shared/conditions.proto:

Field Type Description
rule_match_type MatchType enum AND — all rules must match; OR — any rule must match
rules repeated Rule Flat list of Rule messages to evaluate
cel_expression string A CEL (Common Expression Language) expression. May stand alone or be an equivalent representation of rule_match_type + rules.

Each Rule specifies a property (item field name), a source (e.g. item or link), and one of: StringRule, NumericRule, RangeRule, ListRule, or NoValueRule — matching the condition variants supported by the Studio UI rule builder.

Consumed by

Service Why
actions-library (formerly platform-plaza-actions-task) Stores and manages task definitions; evaluates conditions against store items to trigger flash commands
Studio management UI Displays and edits task definitions
  • communicationpack — also uses the shared Conditions type for scenario matching, but targets design selection rather than LED actions
  • storeitemvalues — item property values are the data source evaluated against task conditions