{"id":13653,"library":"node-red-node-rbe","title":"Node-RED Report-By-Exception (RBE) Node","description":"The `node-red-node-rbe` package provides a Node-RED node for implementing report-by-exception (RBE) and deadband/narrowband filtering logic within Node-RED flows. It ensures that messages are only passed through if their `msg.payload` changes significantly from the previously sent value, reducing redundant data processing and network traffic. The node can operate in RBE mode (value changes), deadband mode (value changes by more than a fixed amount or percentage), or narrowband mode (blocks if value changes *more* than a threshold, useful for ignoring outliers). It supports filtering on a per-`msg.topic` basis, allowing a single node to manage multiple data streams concurrently. The current stable version is 0.8.0, with releases typically marked as 'Milestone Releases', indicating less frequent, feature-driven updates rather than strict semantic versioning for every change. Its primary differentiation lies in its direct integration into Node-RED's visual programming paradigm for efficient data conditioning.","status":"active","version":"0.5.0","language":"javascript","source_language":"en","source_url":"https://github.com/node-red/node-red-nodes/tree/master/function/rbe","tags":["javascript","node-red","rbe","bandgap","deadband"],"install":[{"cmd":"npm install node-red-node-rbe","lang":"bash","label":"npm"},{"cmd":"yarn add node-red-node-rbe","lang":"bash","label":"yarn"},{"cmd":"pnpm add node-red-node-rbe","lang":"bash","label":"pnpm"}],"dependencies":[],"imports":[{"note":"Users interact with this node directly within the Node-RED flow editor, where it appears in the palette after installation. Attempting to `import` or `require` it in standard JavaScript/TypeScript code will result in an error or undefined behavior.","symbol":"Node-RED RBE Node","correct":"This package is a Node-RED node and does not expose JavaScript symbols for direct `import` or `require` by end-user applications. It is loaded by the Node-RED runtime automatically after installation."}],"quickstart":{"code":"npm install node-red-node-rbe\n# After installation, restart Node-RED to load the new node.\n# node-red-start # or equivalent command\n\n# To use:\n# 1. Drag the 'rbe' node from the Node-RED palette onto your flow.\n# 2. Configure its mode (RBE, deadband, narrowband) and parameters (e.g., percentage, absolute value).\n# 3. Connect an input node (e.g., Inject) to the 'rbe' node, and the 'rbe' node to an output node (e.g., Debug).\n# 4. Deploy the flow and observe how the 'rbe' node filters messages based on your configured logic.","lang":"shell","description":"Installs the RBE node into your Node-RED environment and describes its basic usage within a flow."},"warnings":[{"fix":"Refer to the GitHub repository's commit history and issue tracker for detailed changes and potential breaking impacts when upgrading across 'Milestone Releases'.","message":"The release notes provided for versions 0.5.0, 0.6.0, 0.7.0, and 0.8.0 are very generic ('Milestone Release') and do not detail specific breaking changes or new features, making it challenging to assess upgrade impacts without examining the repository commits.","severity":"gotcha","affected_versions":">=0.5.0"},{"fix":"Ensure `msg.payload` contains a number or a string that can be successfully parsed into a number before it reaches the 'rbe' node when using deadband or narrowband modes. Use a 'function' or 'change' node upstream to pre-process data if necessary.","message":"The deadband and narrowband modes expect numeric payloads or parseable strings (e.g., '18.4 C', '$500'). Non-numeric inputs in these modes may lead to unexpected filtering behavior or block messages entirely.","severity":"gotcha","affected_versions":">=0.1.0"},{"fix":"Ensure unique `msg.topic` values for independent data streams that should be filtered separately. If messages from different sources should be treated distinctly but share a natural topic, consider prepending a unique identifier to `msg.topic` before the RBE node.","message":"The node operates on a per `msg.topic` basis. If different messages arrive with the same `msg.topic` but are intended to be independent, they will share the same state within the RBE node, potentially leading to incorrect filtering.","severity":"gotcha","affected_versions":">=0.1.0"}],"env_vars":null,"search_vec":"'0.8.0':123 'allow':108 'amount':82 'bandgap':171 'basi':107 'block':88 'chang':50,72,76,91,145 'concurr':117 'condit':165 'current':119 'data':59,115,164 'deadband':73,172 'deadband/narrowband':31 'differenti':148 'direct':152 'driven':136 'effici':163 'ensur':40 'everi':144 'except':7,28 'featur':135 'feature-driven':134 'filter':32,102 'fix':81 'flow':38 'frequent':133 'ignor':98 'implement':24 'indic':131 'integr':153 'javascript':166 'less':132 'lie':149 'logic':33 'manag':113 'mark':127 'messag':42 'mileston':129 'mode':70,74,87 'msg.payload':49 'msg.topic':106 'multipl':114 'narrowband':86 'network':62 'node':2,9,12,14,20,22,36,65,111,156,168 'node-r':1,19,35,155,167 'node-red-node-rb':11 'oper':67 'outlier':99 'packag':16 'paradigm':161 'pass':45 'per':105 'percentag':84 'previous':54 'primari':147 'process':60 'program':160 'provid':17 'rather':138 'rbe':8,15,29,69,170 'red':3,13,21,37,157,169 'reduc':57 'redund':58 'releas':125,130 'report':5,26 'report-by-except':4,25 'semant':141 'sent':55 'signific':51 'singl':110 'stabl':120 'stream':116 'strict':140 'support':101 'threshold':95 'traffic':63 'typic':126 'updat':137 'use':96 'valu':56,71,75,90 'version':121,142 'visual':159 'within':34","created_at":"2026-04-20T01:55:37.014942+00:00","updated_at":"2026-04-20T01:55:37.014942+00:00","problems":[{"fix":"Run `npm install node-red-node-rbe` in your Node-RED user directory (typically `~/.node-red`), then restart your Node-RED instance.","cause":"The package was not installed correctly or Node-RED was not restarted after installation.","error":"Error: Cannot find module 'node-red-node-rbe'"},{"fix":"Verify installation by checking `~/.node-red/node_modules/node-red-node-rbe`. If present, restart Node-RED. If not, reinstall with `npm install node-red-node-rbe` and check npm output for errors.","cause":"Node-RED has not rescanned for new nodes, or there was an installation error.","error":"RBE node is not appearing in the Node-RED palette after installation."}],"ecosystem":"npm","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null,"cli_name":"","cli_version":null,"type":"library","homepage":null,"github":"https://github.com/node-red/node-red-nodes","docs":null,"changelog":null,"pypi":null,"npm":"https://www.npmjs.com/package/node-red-node-rbe","openapi_spec":null,"status_page":null,"smithery":null,"categories":["http-networking","data"],"base_url":null,"auth_type":null,"provenance":{"verified_status":null,"verified_at":null,"last_verified":"2026-06-17","next_check":"2026-07-18","install_tag":null}}