Wetter auf Dashboard und MQTT
Auslesen von Wetterdetails (openweather) für NM
Anzeige auf node-red dashboard
Wetterkenndaten über MQTT senden
FritzBox : DynDNS + Portfreigabe (port für mosquitto server: 1883)
Copy JSON
Note: some third-party nodes may appear with blank styling, and not as they appear in the Node-RED Editor.
Copy [{"id":"e5aa864d.e97bd","type":"tab","label":"Wetter mit Dashboard","disabled":false,"info":"Unterschiedliche Wetter input mit MQTT vernetzt;\nVerlinkung/ Darstellung in dashboard\nWetter: \n- DWD (Unwetter)\n- OpenWeatherMap\n- DWD Wetter Station\n\nTrue/ False switch (Flow weiter unten)"},{"id":"5b9bcb1f.ec7624","type":"mqtt in","z":"e5aa864d.e97bd","name":"","topic":"/Wetter/Temperatur","qos":"0","datatype":"utf8","broker":"d8d4adf0.7d5a2","x":130,"y":1660,"wires":[["9da52488.e6216"]]},{"id":"9da52488.e6216","type":"ui_gauge","z":"e5aa864d.e97bd","name":"Temperatur","group":"2e3f5201.a75896","order":2,"width":0,"height":0,"gtype":"gage","title":"Aktuelle Temperatur","label":"° C","format":"{{value | number:0}}","min":"-30","max":"40","colors":["#7ddeec","#e6e600","#ca3838"],"seg1":"","seg2":"","x":470,"y":1660,"wires":[]},{"id":"edd3fff.309da8","type":"openweathermap in","z":"e5aa864d.e97bd","name":"Neumarkt","wtype":"current","lon":"11.46","lat":"49.292","city":"","country":"","language":"de","x":60,"y":440,"wires":[["d6e649ef.077b48","9117773a.2389b","b42eb128.ad9af8"]]},{"id":"d6e649ef.077b48","type":"debug","z":"e5aa864d.e97bd","name":"NM Openweather","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":470,"y":440,"wires":[]},{"id":"6914c3ca.844b14","type":"function","z":"e5aa864d.e97bd","name":"Temperatur extrahieren","func":"return {payload: msg.payload.tempc + \" °C\"};","outputs":1,"noerr":0,"initialize":"","finalize":"","x":310,"y":640,"wires":[["7acea043.2b448","cd8e85fb.923ac"]]},{"id":"7acea043.2b448","type":"mqtt out","z":"e5aa864d.e97bd","name":"/Wetter/Temperatur","topic":"/Wetter/Temperatur","qos":"0","retain":"true","broker":"d8d4adf0.7d5a2","x":950,"y":660,"wires":[]},{"id":"cd8e85fb.923ac","type":"debug","z":"e5aa864d.e97bd","name":"Temperatur","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":930,"y":620,"wires":[]},{"id":"2c197b0e.a8bfb4","type":"function","z":"e5aa864d.e97bd","name":"Wind","func":"return {payload: msg.payload.windspeed *3.6+ \" km/h\"}; \n","outputs":1,"noerr":0,"initialize":"","finalize":"","x":250,"y":760,"wires":[["4b4813d8.45eb9c","e7c8d113.457468"]]},{"id":"4b4813d8.45eb9c","type":"mqtt out","z":"e5aa864d.e97bd","name":"/Wetter/Wind","topic":"/Wetter/Wind","qos":"0","retain":"true","broker":"d8d4adf0.7d5a2","x":930,"y":760,"wires":[]},{"id":"bd2669a4.4404b","type":"function","z":"e5aa864d.e97bd","name":"Luftfeuchtigkeit ","func":"return {payload: msg.payload.humidity + \" %\"};","outputs":1,"noerr":0,"initialize":"","finalize":"","x":280,"y":980,"wires":[["271e2bc8.712b24","243173db.68f4bc"]]},{"id":"271e2bc8.712b24","type":"mqtt out","z":"e5aa864d.e97bd","name":"/Wetter/Luftfeuchtigkeit","topic":"/Wetter/Luftfeuchtigkeit","qos":"0","retain":"true","broker":"d8d4adf0.7d5a2","x":970,"y":980,"wires":[]},{"id":"b8539203.e24fd8","type":"ui_gauge","z":"e5aa864d.e97bd","name":"Luftfeuchtigkeit","group":"2e3f5201.a75896","order":1,"width":0,"height":0,"gtype":"gage","title":"Luftfeuchtigkeit","label":"%","format":"{{value}}","min":"0","max":"100","colors":["#ec1007","#e69713","#087eca"],"seg1":"","seg2":"","x":480,"y":1840,"wires":[]},{"id":"5bd16612.a8106","type":"mqtt in","z":"e5aa864d.e97bd","name":"/Wetter/Wind","topic":"/Wetter/Wind","qos":"0","datatype":"utf8","broker":"d8d4adf0.7d5a2","x":110,"y":1780,"wires":[["4a4c2c35.78d75c"]]},{"id":"5ef7fbed.e3992c","type":"mqtt in","z":"e5aa864d.e97bd","name":"/Wetter/Luftfeuchtigkeit","topic":"/Wetter/Luftfeuchtigkeit","qos":"0","datatype":"utf8","broker":"d8d4adf0.7d5a2","x":140,"y":1840,"wires":[["b8539203.e24fd8"]]},{"id":"104ec1cf.14ca86","type":"function","z":"e5aa864d.e97bd","name":"Sunrise","func":"{payload: msg.payload.sunrise};\nvar options = { hour: 'numeric', minute: 'numeric', second: 'numeric'};\nvar myTime = new Date(); //new date object\nmyTime.setTime(msg.payload.sunrise * 1000); //set linux time\nvar myTimeString = myTime.toLocaleDateString('de-DE', options); //convert to string\nnode.status({fill:\"green\",shape:\"dot\",text:myTimeString});\n// dd:mm:jj\n//msg.payload = myTime.toLocaleDateString(); //convert to string\n// dd:mm:jj hh:mm:ss\nmsg.payload = myTimeString;\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":260,"y":1040,"wires":[["51c587ef.931a3"]]},{"id":"5c2708b1.292bd8","type":"function","z":"e5aa864d.e97bd","name":"Sunset","func":"{payload: msg.payload.sunset};\nvar options = { hour: 'numeric', minute: 'numeric', second: 'numeric'};\nvar myTime = new Date(); //new date object\nmyTime.setTime(msg.payload.sunset * 1000); //set linux time\nvar myTimeString = myTime.toLocaleDateString('de-DE', options); //convert to string\nnode.status({fill:\"green\",shape:\"dot\",text:myTimeString});\n// dd:mm:jj\n//msg.payload = myTime.toLocaleDateString(); //convert to string\n// dd:mm:jj hh:mm:ss\nmsg.payload = myTimeString;\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":260,"y":1100,"wires":[["ee3da0cd.6faa28"]]},{"id":"51c587ef.931a3","type":"mqtt out","z":"e5aa864d.e97bd","name":"/Wetter/Sunrise","topic":"/Wetter/Sunrise","qos":"0","retain":"true","broker":"d8d4adf0.7d5a2","x":940,"y":1040,"wires":[]},{"id":"ee3da0cd.6faa28","type":"mqtt out","z":"e5aa864d.e97bd","name":"/Wetter/Sunset","topic":"/Wetter/Sunset","qos":"0","retain":"true","broker":"d8d4adf0.7d5a2","x":940,"y":1100,"wires":[]},{"id":"c91bdcd4.97429","type":"mqtt in","z":"e5aa864d.e97bd","name":"/Wetter/Sunrise","topic":"/Wetter/Sunrise","qos":"0","datatype":"utf8","broker":"d8d4adf0.7d5a2","x":120,"y":1900,"wires":[["cb12734f.c40ee"]]},{"id":"4a547b0a.ffea84","type":"mqtt in","z":"e5aa864d.e97bd","name":"/Wetter/Sunset","topic":"/Wetter/Sunset","qos":"0","datatype":"utf8","broker":"d8d4adf0.7d5a2","x":120,"y":1960,"wires":[["b26bd00b.8ce6a8"]]},{"id":"9cf0188d.659e38","type":"mqtt in","z":"e5aa864d.e97bd","name":"/Wetter/Detail","topic":"/Wetter/Detail","qos":"0","datatype":"utf8","broker":"d8d4adf0.7d5a2","x":110,"y":1600,"wires":[["41600129.f5ed78"]]},{"id":"282c56e.d10fe2a","type":"mqtt in","z":"e5aa864d.e97bd","name":"","topic":"/Home/Datum","qos":"0","datatype":"auto","broker":"d8d4adf0.7d5a2","x":110,"y":1460,"wires":[["29d77880.e261a"]]},{"id":"d3d7db9b.947148","type":"inject","z":"e5aa864d.e97bd","name":"Testing true","props":[{"p":"payload"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"true","payloadType":"bool","x":110,"y":2100,"wires":[["737672af.f28684"]]},{"id":"737672af.f28684","type":"mqtt out","z":"e5aa864d.e97bd","name":"Testing MQTT","topic":"/Home/Testing","qos":"0","retain":"false","broker":"d8d4adf0.7d5a2","x":560,"y":2080,"wires":[]},{"id":"c3dc381b.4d7cd","type":"debug","z":"e5aa864d.e97bd","name":"Testing output","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":780,"y":2240,"wires":[]},{"id":"623b2467.6f585c","type":"mqtt in","z":"e5aa864d.e97bd","name":"Testing MQTT","topic":"/Home/Testing","qos":"0","datatype":"utf8","broker":"d8d4adf0.7d5a2","x":90,"y":2320,"wires":[["578d8fbe.f501b","fc46dc83.67148"]]},{"id":"804f7ad4.34c238","type":"inject","z":"e5aa864d.e97bd","name":"Testing false","props":[{"p":"payload"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"false","payloadType":"bool","x":110,"y":2180,"wires":[["737672af.f28684"]]},{"id":"578d8fbe.f501b","type":"switch","z":"e5aa864d.e97bd","name":"true / false switch","property":"payload","propertyType":"msg","rules":[{"t":"eq","v":"true","vt":"str"},{"t":"eq","v":"false","vt":"str"}],"checkall":"true","repair":false,"outputs":2,"x":310,"y":2320,"wires":[["71041268.8165c4","9d547ca8.125968"],["a296642a.b5ad58","502b2048.e069"]]},{"id":"71041268.8165c4","type":"change","z":"e5aa864d.e97bd","name":"set to true","rules":[{"t":"set","p":"payload","pt":"msg","to":"1","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":550,"y":2300,"wires":[["c3dc381b.4d7cd"]]},{"id":"a296642a.b5ad58","type":"change","z":"e5aa864d.e97bd","name":"set to false","rules":[{"t":"set","p":"payload","pt":"msg","to":"0","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":550,"y":2360,"wires":[["c3dc381b.4d7cd"]]},{"id":"fc46dc83.67148","type":"debug","z":"e5aa864d.e97bd","name":"output 1","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":274,"y":2219,"wires":[]},{"id":"b26bd00b.8ce6a8","type":"ui_text","z":"e5aa864d.e97bd","group":"2e3f5201.a75896","order":4,"width":0,"height":0,"name":"Sunset","label":"Sonnenuntergang","format":"{{msg.payload}}","layout":"col-center","x":460,"y":1960,"wires":[]},{"id":"cb12734f.c40ee","type":"ui_text","z":"e5aa864d.e97bd","group":"2e3f5201.a75896","order":5,"width":0,"height":0,"name":"Sunrise","label":"Sonnenaufgang","format":"{{msg.payload}}","layout":"col-center","x":460,"y":1900,"wires":[]},{"id":"502b2048.e069","type":"debug","z":"e5aa864d.e97bd","name":"output 2.2","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":490,"y":2400,"wires":[]},{"id":"9d547ca8.125968","type":"debug","z":"e5aa864d.e97bd","name":"output 2.1","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":490,"y":2260,"wires":[]},{"id":"243173db.68f4bc","type":"debug","z":"e5aa864d.e97bd","name":"Humidity","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":920,"y":940,"wires":[]},{"id":"9117773a.2389b","type":"delay","z":"e5aa864d.e97bd","name":"1Msg/ 60 min","pauseType":"rate","timeout":"5","timeoutUnits":"seconds","rate":"1","nbRateUnits":"10","rateUnits":"minute","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":true,"x":100,"y":540,"wires":[["6914c3ca.844b14","2c197b0e.a8bfb4","bd2669a4.4404b","104ec1cf.14ca86","5c2708b1.292bd8","ee4ef728.a286d8","6d535c40.9b56f4"]],"info":"msg = msg.payload,\nreturn msg;"},{"id":"ee4ef728.a286d8","type":"function","z":"e5aa864d.e97bd","name":"Wetter Detail ","func":"return {payload: msg.payload.detail};","outputs":1,"noerr":0,"initialize":"","finalize":"","x":290,"y":540,"wires":[["5eefe252.a9f5b4","72f7177c.4de3a"]]},{"id":"5eefe252.a9f5b4","type":"debug","z":"e5aa864d.e97bd","name":"Detail","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":910,"y":500,"wires":[]},{"id":"72f7177c.4de3a","type":"mqtt out","z":"e5aa864d.e97bd","name":"/Wetter/Detail","topic":"/Wetter/Detail","qos":"0","retain":"true","broker":"d8d4adf0.7d5a2","x":940,"y":540,"wires":[]},{"id":"c6612965.5abcf8","type":"inject","z":"e5aa864d.e97bd","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":80,"y":360,"wires":[["edd3fff.309da8"]]},{"id":"6d535c40.9b56f4","type":"function","z":"e5aa864d.e97bd","name":"Winddirection","func":"return {payload: msg.payload.winddirection}; ","outputs":1,"noerr":0,"initialize":"","finalize":"","x":280,"y":860,"wires":[["fc2c0a62.e01708","b354c20f.dbeb58"]]},{"id":"b354c20f.dbeb58","type":"debug","z":"e5aa864d.e97bd","name":"Winddirection","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":940,"y":880,"wires":[]},{"id":"45d568c2.dec49","type":"mqtt in","z":"e5aa864d.e97bd","name":"/Wetter/Winddirection","topic":"/Wetter/Winddirection","qos":"0","datatype":"utf8","broker":"d8d4adf0.7d5a2","x":140,"y":1720,"wires":[["eb7ef2b2.af2e98"]]},{"id":"b8f11913.736d","type":"ui_gauge","z":"e5aa864d.e97bd","name":"Windrichtung","group":"3bf74b01.4b4afc","order":2,"width":0,"height":0,"gtype":"compass","title":"Windrichtung","label":"{{msg.payload.description}}","format":"","min":0,"max":"360","colors":["#00b500","#e6e600","#ca3838"],"seg1":"0","seg2":"360","x":870,"y":1720,"wires":[]},{"id":"fc2c0a62.e01708","type":"mqtt out","z":"e5aa864d.e97bd","name":"/Wetter/Winddirection","topic":"/Wetter/Winddirection","qos":"0","retain":"true","broker":"d8d4adf0.7d5a2","x":960,"y":820,"wires":[]},{"id":"4a4c2c35.78d75c","type":"ui_gauge","z":"e5aa864d.e97bd","name":"Windstärke","group":"3bf74b01.4b4afc","order":1,"width":0,"height":0,"gtype":"gage","title":"Windstärke","label":"km/h","format":"{{value | number:1}}","min":"0","max":"200","colors":["#7ddeec","#e6e600","#ca3838"],"seg1":"","seg2":"","x":470,"y":1780,"wires":[]},{"id":"41600129.f5ed78","type":"ui_text","z":"e5aa864d.e97bd","group":"2e3f5201.a75896","order":3,"width":0,"height":0,"name":"Wetter Details","label":"Detail","format":"{{msg.payload}}","layout":"row-center","x":480,"y":1600,"wires":[]},{"id":"eb7ef2b2.af2e98","type":"compass-point","z":"e5aa864d.e97bd","direction":"toCompass","subset":"secondary","language":"de","inputField":"payload","outputField":"payload","name":"Change to compass point","x":510,"y":1720,"wires":[["5398213c.e5b258","b8f11913.736d","8180b631.750378","70802c8f.343ef4"]]},{"id":"e2d9ff9b.23a3","type":"debug","z":"e5aa864d.e97bd","name":"Richtung_neu","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":980,"y":1560,"wires":[]},{"id":"5398213c.e5b258","type":"function","z":"e5aa864d.e97bd","name":"Winddirection","func":"return {payload: msg.payload.direction}; ","outputs":1,"noerr":0,"initialize":"","finalize":"","x":760,"y":1560,"wires":[["e2d9ff9b.23a3"]]},{"id":"8180b631.750378","type":"debug","z":"e5aa864d.e97bd","name":"Compass Point","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":880,"y":1640,"wires":[]},{"id":"329286fe.e5c412","type":"mqtt out","z":"e5aa864d.e97bd","name":"","topic":"/Wetter/Wind_Richtung","qos":"0","retain":"true","broker":"d8d4adf0.7d5a2","x":890,"y":1460,"wires":[]},{"id":"70802c8f.343ef4","type":"function","z":"e5aa864d.e97bd","name":"Winddirection","func":"return {payload: msg.payload.description}; ","outputs":1,"noerr":0,"initialize":"","finalize":"","x":640,"y":1460,"wires":[["329286fe.e5c412"]]},{"id":"e7c8d113.457468","type":"debug","z":"e5aa864d.e97bd","name":"Wind Speed","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":930,"y":720,"wires":[]},{"id":"29d77880.e261a","type":"ui_text","z":"e5aa864d.e97bd","group":"25bd9d50.87fe6a","order":1,"width":0,"height":0,"name":"Datum","label":"Datum Uhrzeit ","format":"{{msg.payload}}","layout":"col-center","x":450,"y":1460,"wires":[]},{"id":"9feaf799.eba44","type":"mqtt out","z":"e5aa864d.e97bd","name":"","topic":"/Home/Datum","qos":"0","retain":"true","broker":"9fa2607d.99f8d","x":940,"y":360,"wires":[]},{"id":"d3296092.8c92d","type":"debug","z":"e5aa864d.e97bd","name":"Datum","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":910,"y":320,"wires":[]},{"id":"b42eb128.ad9af8","type":"function","z":"e5aa864d.e97bd","name":"Datum in ISO Format","func":"// (1) wandelt timestamp ins ISO Datumformat um\n//msg.timestamp= new Date().toISOString()\n\n// (2) beliebiges Datum festlegbar: hier: YYYY-MM-DD HH:MM.SS\n// (Ausgabeformat wird danz am Ende zusammengestellt)\nvar now = new Date(); \nvar year = now.getFullYear();\nvar month = now.getMonth()+1; \nvar day = now.getDate();\nvar hour = now.getHours();\nvar minute = now.getMinutes();\nif(month.toString().length == 1) {\nvar month = '0'+month;\n}\nif(day.toString().length == 1) {\nvar day = '0'+day;\n} \nif(hour.toString().length == 1) {\nvar hour = '0'+hour;\n}\nif(minute.toString().length == 1) {\nvar minute = '0'+minute;\n}\n\n// Variante1: wenn z.B. nicht ein vorhandener Payload\n// überschrieben werden soll, sondern um ein\n// Datum ergänzt werden soll. \n\n//msg.timestamp = year+'-'+month+'-'+day+' '+hour+':'+minute+':'+second;\n\n// Variante 2: Function gibt die aktuelle Zeit als payload aus\nnow = day+'-'+month+'-'+year+' '+hour+':'+minute;\n\n// JSON Antwort parsen\nvar weather=(msg.payload);\n \n// Neue Nachricht mit Payload erstellen\nvar newMsg = { payload:now};\n// Zurückgeben der Nachricht\nreturn [newMsg];","outputs":1,"noerr":0,"initialize":"","finalize":"","x":480,"y":360,"wires":[["d3296092.8c92d","9feaf799.eba44"]]},{"id":"d8d4adf0.7d5a2","type":"mqtt-broker","z":"","name":"","broker":"localhost","port":"1883","clientid":"","usetls":false,"compatmode":false,"keepalive":"60","cleansession":true,"birthTopic":"","birthQos":"0","birthPayload":"","closeTopic":"","closeQos":"0","closePayload":"","willTopic":"","willQos":"0","willPayload":""},{"id":"2e3f5201.a75896","type":"ui_group","z":"","name":"Wetterdaten Neumarkt i.d.OPf.","tab":"e92767a.242f218","order":1,"disp":true,"width":"6","collapse":false},{"id":"3bf74b01.4b4afc","type":"ui_group","z":"","name":"Wind","tab":"e92767a.242f218","order":2,"disp":true,"width":"7","collapse":false},{"id":"25bd9d50.87fe6a","type":"ui_group","z":"","name":"Datum","tab":"e92767a.242f218","order":4,"disp":true,"width":"6","collapse":false},{"id":"9fa2607d.99f8d","type":"mqtt-broker","z":"","name":"Raspi","broker":"localhost","port":"1883","clientid":"","usetls":false,"compatmode":false,"keepalive":"60","cleansession":true,"birthTopic":"","birthQos":"0","birthPayload":"","closeTopic":"","closeQos":"0","closePayload":"","willTopic":"","willQos":"0","willPayload":""},{"id":"e92767a.242f218","type":"ui_tab","z":"","name":"Home","icon":"/Home/Wetter","disabled":false,"hidden":false}]