Renders a workflow simulation interface with a dynamic input form (supporting scheduler, web form, and webhook modes) combined with an MQTT event flow view of recent workflow runs.
WORKFLOWSIM — set as ReportType in def_report.
def Render(self, Param1="", Param2="", Param3="") -> str:
Param1 — workflow name (required).Param2 — optional header/title override.Param3 — comma-separated list of simulation modes to show: scheduler, form, webhook (default: all three).Returns a combined HTML block with:
layout option.RpcGettable(data)Returns the MQTT event panel HTML for a specific event_guid, used to refresh the flow view for a selected run.
RpcEnsurewebhook(data)Creates an entry in def_webhook for the workflow if one does not exist, enabling webhook-mode simulation.
Options read from self._Options JSON (top-level or nested under mqtt_options):
| Key | Default | Effect |
|---|---|---|
layout |
"flow" |
Display mode for event nodes: flow, cards, or table. |
refresh_default |
60 |
Initial auto-refresh interval in seconds. |
refresh_choices |
[0,5,15,30,60] |
Options shown in the refresh selector. |
recent_runs |
5 |
Number of recent run tabs shown. |
max_rows |
200 |
Maximum event rows to display. |
max_columns |
40 |
Maximum columns in table layout. |
color_map |
— | Custom mapping of state keywords to Bootstrap colour classes. |
resource.modules/config/*.yaml (preferred), from ObjWorkflowEdit input AVRO, or defaulted to param1/param2/param3.event_workflow_{workflowname} and event_workflow_{workflowname}_transit tables.event_calc_{workflowname}_event_step.ACL, GATE, GUI, CALC, DONE, etc.).