Source-tree mirror of EVOLV.wiki.git refactor (27a42ee on wiki.git): - 7 master pages rewritten with clean design (Home, Architecture, Topology-Patterns, Topic-Conventions, Telemetry, Getting-Started, Glossary). Tables and Mermaid for visuals, gitea alert callouts for warnings, shields badges for metadata only. No emoji as decoration. - Archive.md becomes a removal-changelog pointing readers to git history and to the successor pages. - _Sidebar.md updated to navigate the new flat-name layout. - Concept / finding / manual pages: uniform mini-header (badges + "reference page" callout) added without rewriting domain content. - Every internal link now uses the flat naming that resolves on the live gitea wiki (Concept-ASM-Models, Finding-BEP-..., etc.). On wiki.git: 29 Archive-* pages hard-deleted (the git history preserves them; Archive.md documents the removal). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1.4 KiB
1.4 KiB
Node-RED Runtime Node JS Manual (EVOLV Summary)
Note
Reference page. Maintained for context; not regenerated by code. See Home for current top-level navigation.
Based on: https://nodered.org/docs/creating-nodes/node-js
Input Handler Contract
- Node-RED calls runtime handlers as
function(msg, send, done). - For compatibility, custom nodes should support fallback behavior when
sendis not provided. - Use
done()on successful completion anddone(err)on failure.
Output Routing Rules
- For single-output nodes:
send(msg)sends on output 1. - For multi-output nodes: pass an array with one slot per output, for example:
[msg, null, null]=> output 1 only[null, msg, null]=> output 2 only
- Always construct the outbound message first, then send it.
EVOLV Runtime Pattern
Recommended runtime input structure for src/nodeClass.js:
- Normalize
sendfallback. - Wrap
switch(msg.topic)intry/catch. - Route response messages to explicit output index with array format.
- Call
done()/done(err)consistently.
Common Failure Mode
- Sending a bare object in a multi-output context can hide intended port routing.
- In EVOLV nodes with 3 outputs (
process,dbase,parent), use explicit arrays for deterministic wiring behavior.