Back to Index

Definition: publish("topic", arg1 [, arg2 ...]) — Allowed: string literal topic and string/numeric args; Not allowed: non-literal topic.

Sends data to the firmware’s publish hook. With one argument it sends a single value; with multiple arguments it auto-builds JSON: alternating string/value pairs become object fields, and unlabeled values become an array.

Special string markers in publish payloads are resolved at send-time: "$NAME", "$MACADDR", "$IPADDR".

Examples

// Single value
publish("plc/temp", temp());

// Key/value JSON
publish("status", "pressure", ain(1), "battery", ain(2));

// Device identity markers (quoted strings)
publish("status", "name", "$NAME", "mac", "$MACADDR", "ip", "$IPADDR");

// Array payload
publish("vals", ain(1), ain(2), ain(3));