Files
kkelomatic_home/docs/integration/nodered-flow-check-report.md
nearxos d755d3c1ed Update Node-RED configuration and documentation for room management
- Added node-red/config_files/flows_cred.json to .gitignore to prevent committing sensitive credentials.
- Updated documentation references to the new location of room-config.js in node-red/config_files/ for clarity.
- Removed the obsolete room-config.js file, centralizing configuration management.

This update enhances security and improves the organization of Node-RED configuration files, ensuring better management of room settings.
2026-04-01 14:43:30 +03:00

3.6 KiB
Raw Blame History

Node-RED flow check report (live vs repo)

Checked live flows on 10.20.30.12 (Feb 2026). Summary below.


Updated (match repo) Living Room tab

Node name Status Note
HA to NVL Updated Uses roomConfig, entityToRoom
Zigbee to NVL Updated Uses switchBindings, multi-device payload, v.payload.action
Clear zigbee edge Updated Supports Array.isArray(msg.zigbeeClear)
STATE TO NVL Updated Uses global.get('roomConfig').roomNames
NVL to HA Sync Updated Uses roomConfig.lightEntityMap

You have duplicate nodes in the same tab: some of these names exist twice (or three times), and one copy is old. The flow may be wired to the old instances.


Not updated / needs action

1. Load room config empty

  • Current: The "Load room config" function node contains only return msg; (12 chars).
  • Effect: global.get('roomConfig') is never set from room-config.js, so other nodes may use fallbacks or wrong data.
  • Fix: Paste the full loader code into the "Load room config" function node. Code to paste is in node-red/room-config-loader.js (see below).

2. Duplicate nodes in Living Room

Same tab contains both updated and old versions:

  • HA to NVL: 1 updated, 1 old
  • Zigbee to NVL: 2 updated, 1 old
  • Clear zigbee edge: 1 updated, 1 old
  • NVL to HA Sync: 1 updated, 1 old
  • NVL SEND: 1 node, old (hardcoded roomNames = ['cmd_livingroom'])

If your flow is connected to the old nodes, behaviour will not match the repo. Ensure:

  • Zigbee/HA → updated "Zigbee to NVL" / "HA to NVL" → updated "STATE TO NVL" (or replace "NVL SEND" with STATE TO NVL and wire that) → nvl-send.
  • Delay → updated "Clear zigbee edge" (the one that has Array.isArray(msg.zigbeeClear)).

3. Flow 7

All relevant function nodes there are old (fixed livingRoom, no roomConfig). Update them if you use that tab, or leave as-is if unused.


Code to paste: Load room config

Paste this into the Load room config function node (and connect an Inject “once after 0.5 s” to it):

// Delete cached version so changes to the file are picked up on redeploy
delete require.cache[require.resolve('/root/.node-red/room-config.js')];
const ROOM_CONFIG = require('/root/.node-red/room-config.js');

global.set('roomConfig', ROOM_CONFIG);
node.warn('[Load room config] loaded: ' + ROOM_CONFIG.roomNames.length + ' rooms, ' + ROOM_CONFIG.lightEntityMap.length + ' light mappings');
return null;

Full file: node-red/room-config-loader.js.


room-config.js on server

/root/.node-red/room-config.js is present and contains roomNames, switchBindings, etc. Upload from repo when you change config:
scp node-red/config_files/room-config.js root@nodered.paraskeva.net:/root/.node-red/room-config.js


Checklist

  1. Paste Load room config code (above) into the "Load room config" node and deploy.
  2. In Living Room, confirm wires go to the updated HA to NVL / Zigbee to NVL / Clear zigbee edge (not the old duplicates).
  3. Use STATE TO NVL (roomConfig) in the NVL path, or replace NVL SEND content with state-to-nvl-send-payload.js.
  4. Optionally remove or disable the old duplicate nodes in Living Room to avoid confusion.
  5. After changing room-config.js, upload it and redeploy (or restart Node-RED).