Panel idle dimming, panel display settings stored in the project file, Node-RED support and an events API. A large part of the rest is controls, macros and triggers showing the actual result instead of showing success.
-- with no handle. This is separate from the v0.32.0 unreachable mark. min_platform_version 0.33.0; at_atdm_0604a 2.3.0 is the first driver using it. Device 'x' not found is returned only when the device is absent. A driver's own failure is reported as one, writing an undeclared setting names the setting, and retrying a device that is not an orphan returns 409. DELETE /api/devices/{id} returns a references object naming the groups, macro steps, triggers, bound controls, master elements and scripts that still name the device. The delete confirmation lists the same. completed, failed, cancelled or skipped, and the IDE's Test button shows which. A clean run is completed where it was executed. GET /api/triggers returns last_outcome and last_error, and a trigger.completed WebSocket message covers each fire. POST /api/triggers/{id}/test returns an outcome instead of fired. NaN and Infinity are refused on numbers. macro.skipped covers an overlap or cooldown refusal, and macro.cancel over the WebSocket stops a run. system.abandoned_script_loads. set_input to the PJLink projector, so source selection works. @open-avc/node-red-openavc on npm, with docs/node-red.md. This is the release the event nodes need; state, commands, macros and variables work against any server. A flow announces itself with ?name=<name>, which holds system.integration.<name>.connected while the socket is open. ?events=custom.*,ui.press.* or an event.subscribe message; emit with event.emit or POST /api/events, restricted to custom.* for outside clients. OPENAVC_PROGRAMMER_PASSWORD and OPENAVC_API_KEY. completed instead of executed, and POST /api/triggers/{id}/test returns an outcome instead of fired. offline_reason and offline_detail on a sub-unit are unset rather than an empty string, matching a device. A trigger comparing one to an empty string should compare it to nothing set.