UNPKG

node-red-contrib-knx-ultimate

Version:

Control your KNX and KNX Secure intallation via Node-Red! A bunch of KNX nodes, with integrated Philips HUE control, ETS group address importer, and KNX routing between interfaces. Easy to use and highly configurable.

158 lines (156 loc) 3.58 kB
[ { "id": "tab_knx_rf_sample", "type": "tab", "label": "KNX Router Filter sample", "disabled": false, "info": "" }, { "id": "cmt_knx_rf_1", "type": "comment", "z": "tab_knx_rf_sample", "name": "This flow simulates RAW telegram objects and shows filtering + rewrite without needing a KNX bus.", "info": "", "x": 390, "y": 40, "wires": [] }, { "id": "inj_knx_rf_allowed", "type": "inject", "z": "tab_knx_rf_sample", "name": "Allowed GA 0/0/7", "props": [ { "p": "topic", "vt": "str" } ], "topic": "", "once": false, "onceDelay": 0.1, "x": 160, "y": 140, "wires": [ [ "fn_knx_rf_build_allowed" ] ] }, { "id": "fn_knx_rf_build_allowed", "type": "function", "z": "tab_knx_rf_sample", "name": "Build RAW telegram (allowed)", "func": "return {\n payload: {\n knx: {\n event: 'GroupValue_Write',\n source: '1.1.10',\n destination: '0/0/7',\n apdu: { data: { type: 'Buffer', data: [1] }, bitlength: 1, hex: '01' },\n cemi: { hex: '' },\n echoed: false\n }\n }\n};", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "x": 390, "y": 140, "wires": [ [ "node_knx_router_filter" ] ] }, { "id": "inj_knx_rf_blocked", "type": "inject", "z": "tab_knx_rf_sample", "name": "Blocked GA 3/3/3", "props": [ { "p": "topic", "vt": "str" } ], "topic": "", "once": false, "onceDelay": 0.1, "x": 160, "y": 200, "wires": [ [ "fn_knx_rf_build_blocked" ] ] }, { "id": "fn_knx_rf_build_blocked", "type": "function", "z": "tab_knx_rf_sample", "name": "Build RAW telegram (blocked)", "func": "return {\n payload: {\n knx: {\n event: 'GroupValue_Write',\n source: '1.1.10',\n destination: '3/3/3',\n apdu: { data: { type: 'Buffer', data: [1] }, bitlength: 1, hex: '01' },\n cemi: { hex: '' },\n echoed: false\n }\n }\n};", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "x": 390, "y": 200, "wires": [ [ "node_knx_router_filter" ] ] }, { "id": "node_knx_router_filter", "type": "knxUltimateRouterFilter", "z": "tab_knx_rf_sample", "name": "Filter + rewrite", "allowWrite": true, "allowResponse": true, "allowRead": true, "gaMode": "allow", "gaPatterns": "0/0/*", "srcMode": "off", "srcPatterns": "", "rewriteGA": true, "gaRewriteRules": "0/0/* => 2/0/*", "rewriteSource": true, "srcRewriteRules": "1.1.* => 1.2.*", "x": 590, "y": 170, "wires": [ [ "dbg_knx_rf_passed" ], [ "dbg_knx_rf_dropped" ] ] }, { "id": "dbg_knx_rf_passed", "type": "debug", "z": "tab_knx_rf_sample", "name": "Passed (check payload.knx + payload.knxRouterFilter)", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "x": 880, "y": 140, "wires": [] }, { "id": "dbg_knx_rf_dropped", "type": "debug", "z": "tab_knx_rf_sample", "name": "Dropped (reason in payload.knxRouterFilter)", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "x": 880, "y": 200, "wires": [] } ]