Struct TriggerInfo

Struct Documentation

struct TriggerInfo

Full trigger descriptor persisted in the store.

Public Members

std::string id

Server-generated ID (e.g. “trig_001”)

std::string entity_id

Target entity (e.g. “temp_sensor”)

std::string entity_type

“apps” | “components” | “areas” | “functions”

std::string resource_uri

Full URI (e.g. “/api/v1/apps/temp_sensor/data/temperature”)

std::string collection

Parsed collection segment (e.g. “data”)

std::string resource_path

Parsed resource name (e.g. “/temperature”)

std::string resolved_topic_name

Full ROS 2 topic (e.g. “/sensor/temperature”), empty if unresolved.

std::string path

JSON Pointer within the resource (e.g. “/data”)

std::string condition_type

“OnChange”, “LeaveRange”, “x-custom”, etc.

nlohmann::json condition_params

e.g. {“lower_bound”:20, “upper_bound”:30}

std::string protocol

Delivery protocol (e.g. “sse”)

bool multishot = {false}

false = fire once then terminate

bool persistent = {false}

Survives gateway restart.

std::optional<int> lifetime_sec

Optional TTL in seconds.

std::optional<nlohmann::json> log_settings

Optional logging configuration.

TriggerStatus status = {TriggerStatus::ACTIVE}
std::chrono::system_clock::time_point created_at
std::optional<std::chrono::system_clock::time_point> expires_at