hallo,
das ist der flow, den ich benutzt habe, um nur bestimmte werte zu uebertragen:
[
{
“id”: “5d1392c88d08c0dd”,
“type”: “mqtt in”,
“z”: “f47eab9119cf0ef8”,
“d”: true,
“name”: “”,
“topic”: “N/#”,
“qos”: “2”,
“datatype”: “auto-detect”,
“broker”: “488978ebf5ad2352”,
“nl”: false,
“rap”: true,
“rh”: 0,
“inputs”: 0,
“x”: 150,
“y”: 160,
“wires”: [
[
“e379a5150e1f6308”
]
]
},
{
“id”: “e379a5150e1f6308”,
“type”: “function”,
“z”: “f47eab9119cf0ef8”,
“name”: “mqtt filtern und aufbereiten master”,
“func”: “var SUCH = ["current","voltage","power","soc","S","V","I","P","Yield/System","Yield/User","AcPowerSetpoint","BatteryOperationalLimits"];\nglobal.set("SUCH",SUCH);\n//node.warn(msg.payload);\nvar ST=false;\nvar L = SUCH.length;\nvar N,T,S,A;\nT=msg.topic;\n//node.warn(T);\nfor (N=0;N<L && !ST;N++) {\n S=new RegExp("/"+SUCH[N]+"$","i");\n// S=/current/i;\n A=T.match(S);\n// node.warn(A+" "+S+" "+T);\n ST=A!=null && A.length>0;\n}\nmsg.payload=msg.payload.value;\nif (msg.payload==null || !ST) return;\nif (context.TOPIC == msg.topic && context.WERT == msg.payload) return;\ncontext.TOPIC=msg.topic;\ncontext.WERT=msg.payload;\nreturn msg;”,
“outputs”: 1,
“timeout”: 0,
“noerr”: 0,
“initialize”: “// Der Code hier wird ausgeführt,\n// wenn der Node gestartet wird\ncontext.TOPIC="";\ncontext.WERT="";”,
“finalize”: “”,
“libs”: ,
“x”: 420,
“y”: 200,
“wires”: [
[
“580ca1bac9bf3f2d”
]
]
},
{
“id”: “580ca1bac9bf3f2d”,
“type”: “mqtt out”,
“z”: “f47eab9119cf0ef8”,
“name”: “”,
“topic”: “”,
“qos”: “”,
“retain”: “”,
“respTopic”: “”,
“contentType”: “”,
“userProps”: “”,
“correl”: “”,
“expiry”: “”,
“broker”: “d74c8a65d39f9a38”,
“x”: 670,
“y”: 280,
“wires”:
},
{
“id”: “488978ebf5ad2352”,
“type”: “mqtt-broker”,
“name”: “cerbo-1”,
“broker”: “192.168.13.100”,
“port”: “1883”,
“clientid”: “”,
“autoConnect”: true,
“usetls”: false,
“protocolVersion”: “4”,
“keepalive”: “60”,
“cleansession”: true,
“autoUnsubscribe”: true,
“birthTopic”: “”,
“birthQos”: “0”,
“birthRetain”: “false”,
“birthPayload”: “”,
“birthMsg”: {},
“closeTopic”: “”,
“closeQos”: “0”,
“closeRetain”: “false”,
“closePayload”: “”,
“closeMsg”: {},
“willTopic”: “”,
“willQos”: “0”,
“willRetain”: “false”,
“willPayload”: “”,
“willMsg”: {},
“userProps”: “”,
“sessionExpiry”: “”
},
{
“id”: “d74c8a65d39f9a38”,
“type”: “mqtt-broker”,
“name”: “m1”,
“broker”: “127.0.0.1”,
“port”: “1883”,
“clientid”: “”,
“autoConnect”: true,
“usetls”: false,
“protocolVersion”: “4”,
“keepalive”: “60”,
“cleansession”: true,
“autoUnsubscribe”: true,
“birthTopic”: “”,
“birthQos”: “0”,
“birthRetain”: “false”,
“birthPayload”: “”,
“birthMsg”: {},
“closeTopic”: “”,
“closeQos”: “0”,
“closeRetain”: “false”,
“closePayload”: “”,
“closeMsg”: {},
“willTopic”: “”,
“willQos”: “0”,
“willRetain”: “false”,
“willPayload”: “”,
“willMsg”: {},
“userProps”: “”,
“sessionExpiry”: “”
}
]