-
Notifications
You must be signed in to change notification settings - Fork 31
/
Copy pathdashboard_2_0.json
1 lines (1 loc) · 57.3 KB
/
dashboard_2_0.json
1
[{"id":"0e3249ddee2000e3","type":"tab","label":"Dashboard 2.0","disabled":false,"info":"","env":[]},{"id":"4e46174a2a2313f6","type":"ui-text","z":"0e3249ddee2000e3","group":"3cfe8b4c394b63c1","order":0,"width":0,"height":0,"name":"","label":"Temperature","format":"{{msg.payload}}","layout":"row-spread","style":false,"font":"","fontSize":16,"color":"#717171","className":"","x":450,"y":120,"wires":[]},{"id":"0147e900bd508b5d","type":"mqtt in","z":"0e3249ddee2000e3","name":"","topic":"weatherstation/temperature","qos":"0","datatype":"auto","broker":"cea5258a.b34038","inputs":0,"x":170,"y":120,"wires":[["4e46174a2a2313f6","26c3176df2ad086a"]]},{"id":"9c7555f58ad0a1b9","type":"mqtt in","z":"0e3249ddee2000e3","name":"","topic":"weatherstation/humidity","qos":"0","datatype":"auto","broker":"cea5258a.b34038","inputs":0,"x":160,"y":160,"wires":[["34bb3e6f812ca8f3","1ee3986702bf6f07"]]},{"id":"1fa904bc369c7bea","type":"mqtt in","z":"0e3249ddee2000e3","name":"","topic":"weatherstation/pressure","qos":"0","datatype":"auto","broker":"cea5258a.b34038","inputs":0,"x":160,"y":200,"wires":[["bfb9ca419242d2da"]]},{"id":"172caedf09bb5644","type":"mqtt in","z":"0e3249ddee2000e3","name":"","topic":"weatherstation/infrared","qos":"0","datatype":"auto","broker":"cea5258a.b34038","inputs":0,"x":160,"y":240,"wires":[["093a7ddbec24151e"]]},{"id":"df93bfc75f38f2d9","type":"comment","z":"0e3249ddee2000e3","name":"Simple form in a Grid page layout","info":"","x":170,"y":60,"wires":[]},{"id":"34bb3e6f812ca8f3","type":"ui-text","z":"0e3249ddee2000e3","group":"3cfe8b4c394b63c1","order":0,"width":0,"height":0,"name":"","label":"Humidity","format":"{{msg.payload}}","layout":"row-spread","style":false,"font":"Tahoma,Geneva,sans-serif","fontSize":16,"color":"#717171","className":"","x":440,"y":160,"wires":[]},{"id":"bfb9ca419242d2da","type":"ui-text","z":"0e3249ddee2000e3","group":"3cfe8b4c394b63c1","order":0,"width":0,"height":0,"name":"","label":"Pressure","format":"{{msg.payload}}","layout":"row-spread","style":false,"font":"Tahoma,Geneva,sans-serif","fontSize":16,"color":"#717171","className":"","x":440,"y":200,"wires":[]},{"id":"093a7ddbec24151e","type":"ui-text","z":"0e3249ddee2000e3","group":"3cfe8b4c394b63c1","order":0,"width":0,"height":0,"name":"","label":"Infrared","format":"{{msg.payload}}","layout":"row-spread","style":false,"font":"Tahoma,Geneva,sans-serif","fontSize":16,"color":"#717171","className":"","x":440,"y":240,"wires":[]},{"id":"94c1cf0c79929193","type":"ui-chart","z":"0e3249ddee2000e3","group":"435081056382462b","name":"","label":"Last 24 hours","order":9007199254740991,"chartType":"line","category":"topic","categoryType":"msg","xAxisProperty":"","xAxisPropertyType":"msg","xAxisType":"time","yAxisProperty":"","ymin":"","ymax":"","action":"append","pointShape":"circle","pointRadius":4,"showLegend":true,"removeOlder":1,"removeOlderUnit":"86400","removeOlderPoints":"","colors":["#1f77b4","#aec7e8","#ff7f0e","#2ca02c","#98df8a","#d62728","#ff9896","#9467bd","#c5b0d5"],"width":6,"height":8,"className":"","x":700,"y":320,"wires":[[]]},{"id":"26c3176df2ad086a","type":"change","z":"0e3249ddee2000e3","name":"Change series name","rules":[{"t":"set","p":"topic","pt":"msg","to":"Temperature","tot":"str"},{"t":"set","p":"payload","pt":"msg","to":"$floor($number(msg.payload))","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":360,"y":320,"wires":[["47cde5d1a290a59c"]]},{"id":"1ee3986702bf6f07","type":"change","z":"0e3249ddee2000e3","name":"Change series name","rules":[{"t":"set","p":"topic","pt":"msg","to":"Humidity","tot":"str"},{"t":"set","p":"payload","pt":"msg","to":"$floor($number(msg.payload))","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":360,"y":360,"wires":[["47cde5d1a290a59c"]]},{"id":"950de8cc3401f4dd","type":"comment","z":"0e3249ddee2000e3","name":"Data Entry Form","info":"","x":940,"y":60,"wires":[]},{"id":"f4e2621e69bbf74e","type":"ui-dropdown","z":"0e3249ddee2000e3","group":"d80f278151a1092c","name":"","label":"Select Title:","tooltip":"","order":0,"width":0,"height":0,"passthru":false,"multiple":false,"options":[{"label":"Mr.","value":"Mr.","type":"str"},{"label":"Mrs.","value":"Mrs.","type":"str"}],"payload":"","topic":"title","topicType":"str","className":"","x":950,"y":120,"wires":[["e7f18029de91174d"]]},{"id":"2fe238dae7d13f84","type":"ui-text-input","z":"0e3249ddee2000e3","group":"d80f278151a1092c","name":"","label":"First name","order":0,"width":0,"height":0,"topic":"firstname","topicType":"str","mode":"text","delay":300,"passthru":true,"sendOnDelay":false,"sendOnBlur":true,"sendOnEnter":true,"className":"","x":950,"y":160,"wires":[["e7f18029de91174d"]]},{"id":"f67bf507f4c5009c","type":"ui-text-input","z":"0e3249ddee2000e3","group":"d80f278151a1092c","name":"","label":"Last name","order":0,"width":0,"height":0,"topic":"lastname","topicType":"str","mode":"text","delay":300,"passthru":true,"sendOnDelay":false,"sendOnBlur":true,"sendOnEnter":true,"className":"","x":950,"y":200,"wires":[["e7f18029de91174d"]]},{"id":"e7f18029de91174d","type":"function","z":"0e3249ddee2000e3","name":"Store data","func":"let details = flow.get(\"details\") ?? {};\n\ndetails[msg.topic] = msg.payload;\n\nflow.set(\"details\", details);\nreturn msg;","outputs":1,"timeout":0,"noerr":0,"initialize":"","finalize":"","libs":[],"x":1190,"y":160,"wires":[[]]},{"id":"ca56b8e7bdcf5836","type":"ui-text-input","z":"0e3249ddee2000e3","group":"d80f278151a1092c","name":"","label":"Birth Date","order":0,"width":0,"height":0,"topic":"birthdate","topicType":"str","mode":"date","delay":300,"passthru":true,"sendOnDelay":false,"sendOnBlur":true,"sendOnEnter":true,"className":"","x":940,"y":240,"wires":[["e7f18029de91174d"]]},{"id":"d4017500718c67ee","type":"ui-radio-group","z":"0e3249ddee2000e3","group":"d80f278151a1092c","name":"","label":"Select Level:","order":0,"width":0,"height":0,"columns":1,"passthru":false,"options":[{"label":"Beginner","value":"Beginner","type":"str"},{"label":"Intermediate","value":"Intermediate","type":"str"},{"label":"Expert","value":"Expert","type":"str"},{"label":"Guru","value":"Guru","type":"str"}],"payload":"","topic":"level","topicType":"str","className":"","x":950,"y":280,"wires":[["e7f18029de91174d"]]},{"id":"8e1448d799e4df38","type":"ui-slider","z":"0e3249ddee2000e3","group":"d80f278151a1092c","name":"","label":"Age","tooltip":"","order":0,"width":0,"height":0,"passthru":false,"outs":"end","topic":"age","topicType":"str","thumbLabel":true,"min":"30","max":"70","step":1,"className":"","x":930,"y":320,"wires":[["e7f18029de91174d"]]},{"id":"1fa325e872c7b40e","type":"ui-button","z":"0e3249ddee2000e3","group":"d80f278151a1092c","name":"","label":"Update","order":0,"width":0,"height":0,"passthru":false,"tooltip":"","color":"","bgcolor":"","className":"","icon":"","payload":"","payloadType":"str","topic":"topic","topicType":"msg","x":940,"y":380,"wires":[["49df7159586b28f1"]]},{"id":"49df7159586b28f1","type":"change","z":"0e3249ddee2000e3","name":"Get details","rules":[{"t":"set","p":"payload","pt":"msg","to":"details","tot":"flow"}],"action":"","property":"","from":"","to":"","reg":false,"x":1120,"y":380,"wires":[["ac177bfbacfbd59e"]]},{"id":"ac177bfbacfbd59e","type":"ui-markdown","z":"0e3249ddee2000e3","group":"ea8ede65a3d3c823","name":"","order":0,"width":0,"height":0,"content":"# Title\n\n## Heading 1\n\n### Hello {{ msg.payload.title }} {{ msg.payload.firstname }} {{ msg.payload.lastname }}\n\nParagraph here...\n\ninline `<code-example />` with other text either side\n\n```js\n// multiline\nfunction () {\n console.log('hello world')\n}\n```\n\n- Birthdate: {{ msg.payload.birthdate }}\n- Age: {{ msg.payload.age }}\n- List Item 1\n- List Item 1\n\n[Hyperlink](https://news.bbc.co.uk)\n\n---\n\n> Lorum Ipsum Quotation Over two lines \n\n| Header 1 | Header 2 |\n|-|-|\n| `msg.payload` | {{ msg.payload || 'Placeholder' }} |\n\n\n### Chart 1\n\n```mermaid\ngraph TD;\n A-->B;\n A-->C;\n B-->D;\n C-->D;\n```\n\n### Chart 2\n\n```mermaid\npie title Some silly chart\n \"Your age\" : {{ msg.payload.age }}\n \"Time to retire\" : 50\n```","className":"","x":1310,"y":380,"wires":[[]]},{"id":"47cde5d1a290a59c","type":"rbe","z":"0e3249ddee2000e3","name":"","func":"rbe","gap":"","start":"","inout":"out","septopics":true,"property":"payload","topi":"topic","x":550,"y":320,"wires":[["94c1cf0c79929193"]]},{"id":"149a2f7f76c9bc82","type":"ui-notification","z":"0e3249ddee2000e3","ui":"cb79bc4520925e32","position":"top right","colorDefault":true,"color":"#000000","displayTime":"3","showCountdown":true,"outputs":0,"allowDismiss":true,"dismissText":"Close","raw":false,"className":"","name":"","x":630,"y":480,"wires":[]},{"id":"efc16cd6fca36228","type":"comment","z":"0e3249ddee2000e3","name":"Notifications","info":"","x":110,"y":420,"wires":[]},{"id":"eaf862dce5e60c4e","type":"ui-button","z":"0e3249ddee2000e3","group":"50d5cd7eaf84dd96","name":"","label":"Simple notification","order":0,"width":0,"height":0,"passthru":false,"tooltip":"","color":"","bgcolor":"","className":"","icon":"","payload":"This is a simple notification","payloadType":"str","topic":"topic","topicType":"msg","x":170,"y":480,"wires":[["149a2f7f76c9bc82"]]},{"id":"275f0b19149a58ef","type":"ui-notification","z":"0e3249ddee2000e3","ui":"cb79bc4520925e32","position":"center center","colorDefault":true,"color":"#000000","displayTime":"5","showCountdown":true,"outputs":0,"allowDismiss":true,"dismissText":"Close","raw":false,"className":"","name":"","x":630,"y":520,"wires":[]},{"id":"c86e617698407c78","type":"ui-button","z":"0e3249ddee2000e3","group":"50d5cd7eaf84dd96","name":"","label":"Centre notification","order":0,"width":0,"height":0,"passthru":false,"tooltip":"","color":"","bgcolor":"","className":"","icon":"","payload":"Your server is offline","payloadType":"str","topic":"topic","topicType":"msg","x":170,"y":520,"wires":[["275f0b19149a58ef"]]},{"id":"4b90cdd529d234f8","type":"ui-button","z":"0e3249ddee2000e3","group":"50d5cd7eaf84dd96","name":"","label":"Bottom notification","order":0,"width":0,"height":0,"passthru":false,"tooltip":"","color":"","bgcolor":"","className":"","icon":"","payload":"New data is available","payloadType":"str","topic":"topic","topicType":"msg","x":170,"y":560,"wires":[["5f65f62a50eb474e"]]},{"id":"5f65f62a50eb474e","type":"ui-notification","z":"0e3249ddee2000e3","ui":"cb79bc4520925e32","position":"top center","colorDefault":true,"color":"#000000","displayTime":"4","showCountdown":true,"outputs":0,"allowDismiss":true,"dismissText":"Close","raw":false,"className":"","name":"","x":630,"y":560,"wires":[]},{"id":"9cb0a7e0836937de","type":"comment","z":"0e3249ddee2000e3","name":"Fixed Layout","info":"","x":110,"y":620,"wires":[]},{"id":"654e10c265a68378","type":"function","z":"0e3249ddee2000e3","name":"data","func":"let last = context.get(\"last\") ?? 100;\n\nlast += Math.floor(Math.random()*10);\n\nvar m = [\n {topic:\"Temperature 1\", payload:last},\n { topic: \"Temperature 2\", payload: last+20 },\n { topic: \"Temperature 3\", payload: last+35 },\n { topic: \"Temperature 4\", payload: last+45 },\n { topic: \"Temperature 5\", payload: last+55 },\n ];\nreturn [m];","outputs":1,"timeout":"","noerr":0,"initialize":"","finalize":"","libs":[],"x":380,"y":720,"wires":[["715fb828731a5152","b7d65dfc91cb9df5","d87deb25c708bcae"]]},{"id":"d08d7ecc728e8c02","type":"ui-button","z":"0e3249ddee2000e3","group":"e34f02960db254a3","name":"","label":"Clear All","order":0,"width":0,"height":0,"passthru":false,"tooltip":"","color":"","bgcolor":"","className":"","icon":"","payload":"[]","payloadType":"json","topic":"topic","topicType":"msg","x":380,"y":680,"wires":[["715fb828731a5152","b7d65dfc91cb9df5","d87deb25c708bcae","c82db44f205b279f"]]},{"id":"715fb828731a5152","type":"ui-chart","z":"0e3249ddee2000e3","group":"20b8fd9847d6a484","name":"","label":"Live Value","order":9007199254740991,"chartType":"line","category":"topic","categoryType":"msg","xAxisProperty":"","xAxisPropertyType":"msg","xAxisType":"time","yAxisProperty":"","ymin":"","ymax":"","action":"append","pointShape":"circle","pointRadius":4,"showLegend":true,"removeOlder":1,"removeOlderUnit":"3600","removeOlderPoints":"","colors":["#1f77b4","#aec7e8","#ff7f0e","#2ca02c","#98df8a","#d62728","#ff9896","#9467bd","#c5b0d5"],"width":6,"height":8,"className":"","x":610,"y":740,"wires":[[]]},{"id":"241a8298de9549a4","type":"ui-button","z":"0e3249ddee2000e3","group":"e34f02960db254a3","name":"","label":"Topic + Payload","order":0,"width":0,"height":0,"passthru":false,"tooltip":"","color":"","bgcolor":"","className":"","icon":"","payload":"","payloadType":"date","topic":"topic","topicType":"msg","x":190,"y":720,"wires":[["654e10c265a68378"]]},{"id":"b7d65dfc91cb9df5","type":"ui-chart","z":"0e3249ddee2000e3","group":"435081056382462b","name":"","label":"Bar Chart","order":9007199254740991,"chartType":"bar","category":"topic","categoryType":"msg","xAxisProperty":"","xAxisPropertyType":"msg","xAxisType":"category","yAxisProperty":"","ymin":"","ymax":"","action":"append","pointShape":"circle","pointRadius":4,"showLegend":false,"removeOlder":1,"removeOlderUnit":"3600","removeOlderPoints":"","colors":["#1f77b4","#aec7e8","#ff7f0e","#2ca02c","#98df8a","#d62728","#ff9896","#9467bd","#c5b0d5"],"width":6,"height":8,"className":"","x":600,"y":840,"wires":[[]]},{"id":"20af5eb023324fd0","type":"ui-button","z":"0e3249ddee2000e3","group":"e34f02960db254a3","name":"","label":"Topic + y value","order":0,"width":0,"height":0,"passthru":false,"tooltip":"","color":"","bgcolor":"","className":"","icon":"","payload":"","payloadType":"date","topic":"topic","topicType":"msg","x":190,"y":760,"wires":[["159e5cd444a203c9"]]},{"id":"159e5cd444a203c9","type":"function","z":"0e3249ddee2000e3","name":"data","func":"let last = context.get(\"last\") ?? 100;\n\nlast += Math.floor(Math.random()*10)-5;\ncontext.set(\"last\", last);\n\nvar m = [\n {topic:\"Temperature 1\", payload: {y:last}},\n { topic: \"Temperature 2\", payload: { y: last +10 } },\n { topic: \"Temperature 3\", payload: { y: last +25 } },\n { topic: \"Temperature 4\", payload: { y: last +35 } },\n { topic: \"Temperature 5\", payload: { y: last -20 } },\n ];\nreturn [m];","outputs":1,"timeout":"","noerr":0,"initialize":"","finalize":"","libs":[],"x":380,"y":760,"wires":[["715fb828731a5152","b7d65dfc91cb9df5","d87deb25c708bcae"]]},{"id":"11133a65f16c7f44","type":"ui-button","z":"0e3249ddee2000e3","group":"e34f02960db254a3","name":"","label":"Topic + x, y value","order":0,"width":0,"height":0,"passthru":false,"tooltip":"","color":"","bgcolor":"","className":"","icon":"","payload":"","payloadType":"date","topic":"topic","topicType":"msg","x":180,"y":800,"wires":[["b6edd76914382b7a"]]},{"id":"b6edd76914382b7a","type":"function","z":"0e3249ddee2000e3","name":"data","func":"let last = context.get(\"last\") ?? 100;\nlet time = context.get(\"time\") ?? new Date().getTime();\n\nlast += Math.floor(Math.random()*10)-5;\ntime +=1000;\ncontext.set(\"last\", last);\ncontext.set(\"time\", time);\n\nvar m = [\n { topic: \"Temperature 1\", payload: { x: time, y: last } },\n { topic: \"Temperature 2\", payload: { x: time, y: last +10 } },\n { topic: \"Temperature 3\", payload: { x: time, y: last +25 } },\n { topic: \"Temperature 4\", payload: { x: time, y: last +35 } },\n { topic: \"Temperature 5\", payload: { x: time, y: last -20 } },\n ];\nreturn [m];","outputs":1,"timeout":"","noerr":0,"initialize":"","finalize":"","libs":[],"x":380,"y":800,"wires":[["715fb828731a5152","b7d65dfc91cb9df5","d87deb25c708bcae"]]},{"id":"82f8d806120a91ec","type":"ui-button","z":"0e3249ddee2000e3","group":"e34f02960db254a3","name":"","label":"Topic + x, y value multiple","order":0,"width":0,"height":0,"passthru":false,"tooltip":"","color":"","bgcolor":"","className":"","icon":"","payload":"","payloadType":"date","topic":"topic","topicType":"msg","x":160,"y":840,"wires":[["78396c89563d2265"]]},{"id":"78396c89563d2265","type":"function","z":"0e3249ddee2000e3","name":"data","func":"let last = context.get(\"last\") ?? 100;\nlet time = context.get(\"time\") ?? new Date().getTime();\n\nlast += Math.floor(Math.random()*10)-5;\ntime +=1000;\ncontext.set(\"last\", last);\ncontext.set(\"time\", time);\n\nvar m = [\n { topic: \"Temperature 1\", payload: [{ x: time, y: last }, { x: time+500, y: last+1 }] },\n { topic: \"Temperature 2\", payload: { x: time, y: last +10 } },\n { topic: \"Temperature 3\", payload: { x: time, y: last +25 } },\n { topic: \"Temperature 4\", payload: { x: time, y: last +35 } },\n { topic: \"Temperature 5\", payload: { x: time, y: last -20 } },\n ];\nreturn [m];","outputs":1,"timeout":"","noerr":0,"initialize":"","finalize":"","libs":[],"x":380,"y":840,"wires":[["715fb828731a5152","b7d65dfc91cb9df5","d87deb25c708bcae"]]},{"id":"81fa8f9fd56ec620","type":"ui-button","z":"0e3249ddee2000e3","group":"e34f02960db254a3","name":"","label":"Full series","order":0,"width":0,"height":0,"passthru":false,"tooltip":"","color":"","bgcolor":"","className":"","icon":"","payload":"","payloadType":"date","topic":"topic","topicType":"msg","x":120,"y":880,"wires":[["91da619baa8a193a"]]},{"id":"91da619baa8a193a","type":"function","z":"0e3249ddee2000e3","name":"data","func":"\n\nvar m = [\n { \"topic\": \"A\", \"payload\": [{ \"x\": 1504029632890, \"y\": 5 }, { \"x\": 1504029636001, \"y\": 4 }, { \"x\": 1504029638656, \"y\": 2 }] },\n { \"topic\": \"B\", \"payload\": [{ \"x\": 1504029633514, \"y\": 6 }, { \"x\": 1504029636622, \"y\": 7 }, { \"x\": 1504029639539, \"y\": 6 }] },\n { \"topic\": \"C\", \"payload\": [{ \"x\": 1504029634400, \"y\": 7 }, { \"x\": 1504029637959, \"y\": 9 }, { \"x\": 1504029640317, \"y\": 7 }] }\n ];\nreturn [m];","outputs":1,"timeout":"","noerr":0,"initialize":"","finalize":"","libs":[],"x":380,"y":880,"wires":[["715fb828731a5152","b7d65dfc91cb9df5","d87deb25c708bcae"]]},{"id":"d87deb25c708bcae","type":"ui-chart","z":"0e3249ddee2000e3","group":"93fd5cf33974868f","name":"","label":"Scatter Plot","order":9007199254740991,"chartType":"scatter","category":"topic","categoryType":"msg","xAxisProperty":"","xAxisPropertyType":"msg","xAxisType":"time","yAxisProperty":"","ymin":"","ymax":"","action":"append","pointShape":"circle","pointRadius":4,"showLegend":true,"removeOlder":1,"removeOlderUnit":"3600","removeOlderPoints":"","colors":["#1f77b4","#aec7e8","#ff7f0e","#2ca02c","#98df8a","#d62728","#ff9896","#9467bd","#c5b0d5"],"width":6,"height":8,"className":"","x":620,"y":940,"wires":[[]]},{"id":"c82db44f205b279f","type":"ui-chart","z":"0e3249ddee2000e3","group":"257891c351c16cee","name":"","label":"Math functions","order":9007199254740991,"chartType":"scatter","category":"topic","categoryType":"msg","xAxisProperty":"","xAxisPropertyType":"msg","xAxisType":"linear","yAxisProperty":"","ymin":"","ymax":"","action":"append","pointShape":"star","pointRadius":4,"showLegend":true,"removeOlder":1,"removeOlderUnit":"3600","removeOlderPoints":"","colors":["#1f77b4","#aec7e8","#ff7f0e","#2ca02c","#98df8a","#d62728","#ff9896","#9467bd","#c5b0d5"],"width":6,"height":8,"className":"","x":630,"y":1040,"wires":[[]]},{"id":"4a57da87d1a8271d","type":"ui-button","z":"0e3249ddee2000e3","group":"257891c351c16cee","name":"","label":"Add Point","order":0,"width":0,"height":0,"passthru":false,"tooltip":"","color":"","bgcolor":"","className":"","icon":"","payload":"","payloadType":"str","topic":"topic","topicType":"msg","x":150,"y":1040,"wires":[["d14afeb165486c81"]]},{"id":"d14afeb165486c81","type":"function","z":"0e3249ddee2000e3","name":"function 9","func":"let deg = Math.random() * Math.PI * 2;\n\nvar m = [\n { topic: \"Sin\", payload: { x: deg, y: Math.sin(deg) } },\n { topic: \"Cos\", payload: { x: deg, y: Math.cos(deg) } }\n];\nreturn [m];","outputs":1,"timeout":0,"noerr":0,"initialize":"","finalize":"","libs":[],"x":340,"y":1040,"wires":[["c82db44f205b279f"]]},{"id":"e878217b067f4cd8","type":"comment","z":"0e3249ddee2000e3","name":"Different Theme","info":"","x":120,"y":1120,"wires":[]},{"id":"45019298b354e487","type":"ui-text","z":"0e3249ddee2000e3","group":"e5845c8e98027eef","order":0,"width":0,"height":0,"name":"","label":"Temperature","format":"{{msg.payload}}","layout":"row-spread","style":false,"font":"","fontSize":16,"color":"#717171","className":"","x":450,"y":1200,"wires":[]},{"id":"df5507d63d256a31","type":"mqtt in","z":"0e3249ddee2000e3","name":"","topic":"weatherstation/temperature","qos":"0","datatype":"auto","broker":"cea5258a.b34038","inputs":0,"x":170,"y":1200,"wires":[["45019298b354e487"]]},{"id":"998d9f66d734406a","type":"mqtt in","z":"0e3249ddee2000e3","name":"","topic":"weatherstation/humidity","qos":"0","datatype":"auto","broker":"cea5258a.b34038","inputs":0,"x":160,"y":1240,"wires":[["1fad9a2ba910c567"]]},{"id":"241c339e7cb3635f","type":"mqtt in","z":"0e3249ddee2000e3","name":"","topic":"weatherstation/pressure","qos":"0","datatype":"auto","broker":"cea5258a.b34038","inputs":0,"x":160,"y":1280,"wires":[["788b2a43ed89bec2"]]},{"id":"5182102f2ecc21cc","type":"mqtt in","z":"0e3249ddee2000e3","name":"","topic":"weatherstation/infrared","qos":"0","datatype":"auto","broker":"cea5258a.b34038","inputs":0,"x":160,"y":1320,"wires":[["290e4c32fde5c341"]]},{"id":"1fad9a2ba910c567","type":"ui-text","z":"0e3249ddee2000e3","group":"e5845c8e98027eef","order":0,"width":0,"height":0,"name":"","label":"Humidity","format":"{{msg.payload}}","layout":"row-spread","style":false,"font":"Tahoma,Geneva,sans-serif","fontSize":16,"color":"#717171","className":"","x":440,"y":1240,"wires":[]},{"id":"788b2a43ed89bec2","type":"ui-text","z":"0e3249ddee2000e3","group":"e5845c8e98027eef","order":0,"width":0,"height":0,"name":"","label":"Pressure","format":"{{msg.payload}}","layout":"row-spread","style":false,"font":"Tahoma,Geneva,sans-serif","fontSize":16,"color":"#717171","className":"","x":440,"y":1280,"wires":[]},{"id":"290e4c32fde5c341","type":"ui-text","z":"0e3249ddee2000e3","group":"e5845c8e98027eef","order":0,"width":0,"height":0,"name":"","label":"Infrared","format":"{{msg.payload}}","layout":"row-spread","style":false,"font":"Tahoma,Geneva,sans-serif","fontSize":16,"color":"#717171","className":"","x":440,"y":1320,"wires":[]},{"id":"5c51001fdc88508e","type":"inject","z":"0e3249ddee2000e3","name":"People List","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"[{\"name\":\"Keeley Bosco\",\"email\":\"[email protected]\",\"city\":\"Lake Gladysberg\",\"mac\":\"08:fd:0b:cd:77:f7\",\"timestamp\":\"2015-04-25 13:57:36 +0700\",\"creditcard\":\"1228-1221-1221-1431\"},{\"name\":\"Rubye Jerde\",\"email\":\"[email protected]\",\"city\":null,\"mac\":\"90:4d:fa:42:63:a2\",\"timestamp\":\"2015-04-25 09:02:04 +0700\",\"creditcard\":\"1228-1221-1221-1431\"},{\"name\":\"Miss Darian Breitenberg\",\"email\":null,\"city\":null,\"mac\":\"f9:0e:d3:40:cb:e9\",\"timestamp\":\"2015-04-25 13:16:03 +0700\",\"creditcard\":null},{\"name\":\"Celine Ankunding\",\"email\":\"[email protected]\",\"city\":null,\"mac\":\"3a:af:c9:0b:5c:08\",\"timestamp\":\"2015-04-25 14:22:22 +0700\",\"creditcard\":\"1228-1221-1221-1431\"},{\"name\":\"Dr. Araceli Lang\",\"email\":\"[email protected]\",\"city\":\"Yvettemouth\",\"mac\":\"9e:ea:28:41:2a:50\",\"timestamp\":\"2015-04-25 21:02:11 +0700\",\"creditcard\":\"1211-1221-1234-2201\"},{\"name\":\"Esteban Von\",\"email\":null,\"city\":null,\"mac\":\"2d:e4:f0:dd:90:96\",\"timestamp\":\"2015-04-25 21:47:09 +0700\",\"creditcard\":null},{\"name\":\"Everette Swift\",\"email\":\"[email protected]\",\"city\":null,\"mac\":\"29:e0:54:7a:b7:ca\",\"timestamp\":\"2015-04-25 01:42:40 +0700\",\"creditcard\":null},{\"name\":\"Terrell Boyle\",\"email\":\"[email protected]\",\"city\":\"Port Reaganfort\",\"mac\":\"c5:32:09:5a:f7:15\",\"timestamp\":\"2015-04-25 23:03:57 +0700\",\"creditcard\":\"1228-1221-1221-1431\"},{\"name\":\"Miss Emmie Muller\",\"email\":null,\"city\":\"Kaleyhaven\",\"mac\":\"be:dc:d2:57:81:8b\",\"timestamp\":\"2015-04-25 15:48:26 +0700\",\"creditcard\":null},{\"name\":\"Libby Renner\",\"email\":null,\"city\":\"Port Reneeside\",\"mac\":\"9c:63:13:31:c4:ac\",\"timestamp\":\"2015-04-25 08:21:59 +0700\",\"creditcard\":\"1234-2121-1221-1211\"},{\"name\":\"Kris Spencer\",\"email\":null,\"city\":null,\"mac\":\"f9:8a:01:69:aa:63\",\"timestamp\":\"2015-04-25 18:49:00 +0700\",\"creditcard\":null},{\"name\":\"Terrance Schiller\",\"email\":\"[email protected]\",\"city\":null,\"mac\":\"fd:b7:2a:2e:97:8f\",\"timestamp\":\"2015-04-25 02:25:23 +0700\",\"creditcard\":null},{\"name\":\"Alessandro Barton\",\"email\":\"[email protected]\",\"city\":\"South Pearl\",\"mac\":\"1e:44:17:8c:c6:d8\",\"timestamp\":\"2015-04-25 11:21:45 +0700\",\"creditcard\":\"1234-2121-1221-1211\"},{\"name\":\"Dr. Art Grimes\",\"email\":\"[email protected]\",\"city\":null,\"mac\":\"bf:2a:a2:75:a4:38\",\"timestamp\":\"2015-04-25 22:51:21 +0700\",\"creditcard\":\"1211-1221-1234-2201\"},{\"name\":\"Keven Purdy\",\"email\":\"[email protected]\",\"city\":\"Port Marjolaineshire\",\"mac\":\"cd:a7:57:c0:03:50\",\"timestamp\":\"2015-04-25 10:13:00 +0700\",\"creditcard\":\"1211-1221-1234-2201\"},{\"name\":\"William Wisozk DVM\",\"email\":\"[email protected]\",\"city\":\"Rogelioton\",\"mac\":\"9a:6e:08:fe:8d:41\",\"timestamp\":\"2015-04-25 20:57:29 +0700\",\"creditcard\":null},{\"name\":\"Oma Grady\",\"email\":\"[email protected]\",\"city\":\"South Chelsie\",\"mac\":\"9e:60:32:9f:88:9d\",\"timestamp\":\"2015-04-25 04:08:07 +0700\",\"creditcard\":\"1212-1221-1121-1234\"},{\"name\":\"Annie Schamberger\",\"email\":\"[email protected]\",\"city\":\"Marvinville\",\"mac\":\"f0:45:37:1b:d8:19\",\"timestamp\":\"2015-04-25 10:28:07 +0700\",\"creditcard\":null},{\"name\":\"Jazmin Kovacek\",\"email\":\"[email protected]\",\"city\":null,\"mac\":\"13:36:6a:b4:2d:07\",\"timestamp\":\"2015-04-25 19:20:51 +0700\",\"creditcard\":\"1211-1221-1234-2201\"},{\"name\":\"Thomas O'Conner\",\"email\":null,\"city\":\"North Tierramouth\",\"mac\":\"b1:cd:47:c7:ab:82\",\"timestamp\":\"2015-04-25 09:58:01 +0700\",\"creditcard\":null},{\"name\":\"Jordi Jaskolski II\",\"email\":null,\"city\":null,\"mac\":\"e8:32:67:7d:7c:b2\",\"timestamp\":\"2015-04-25 03:19:14 +0700\",\"creditcard\":\"1212-1221-1121-1234\"},{\"name\":\"Willy Beahan III\",\"email\":null,\"city\":\"Port Heloise\",\"mac\":\"a1:ec:ec:06:f3:ad\",\"timestamp\":\"2015-04-25 02:11:16 +0700\",\"creditcard\":\"1212-1221-1121-1234\"},{\"name\":\"Alessandra Nader Sr.\",\"email\":null,\"city\":\"Yasminville\",\"mac\":\"8e:6a:df:fb:35:4a\",\"timestamp\":\"2015-04-25 05:15:08 +0700\",\"creditcard\":\"1211-1221-1234-2201\"},{\"name\":\"Leora Heller\",\"email\":null,\"city\":\"Port Jerad\",\"mac\":\"c6:bf:5a:51:c2:70\",\"timestamp\":\"2015-04-25 13:40:33 +0700\",\"creditcard\":null},{\"name\":\"Crystel Satterfield\",\"email\":\"[email protected]\",\"city\":\"New Ebony\",\"mac\":\"ef:97:12:2e:67:30\",\"timestamp\":\"2015-04-25 12:45:19 +0700\",\"creditcard\":null},{\"name\":\"Neal Nitzsche\",\"email\":null,\"city\":\"Rohanview\",\"mac\":\"f1:6a:f4:2b:bb:d2\",\"timestamp\":\"2015-04-25 22:33:50 +0700\",\"creditcard\":null},{\"name\":\"Ramona Lubowitz\",\"email\":null,\"city\":\"Port Ford\",\"mac\":\"c1:c2:43:0c:e0:d8\",\"timestamp\":\"2015-04-25 16:28:26 +0700\",\"creditcard\":\"1228-1221-1221-1431\"},{\"name\":\"Miss Brock Macejkovic\",\"email\":null,\"city\":null,\"mac\":\"ed:0b:2c:db:a9:6f\",\"timestamp\":\"2015-04-25 01:47:22 +0700\",\"creditcard\":null},{\"name\":\"Mrs. Keyon Bergnaum\",\"email\":null,\"city\":\"Port Alaynaview\",\"mac\":\"f0:df:59:38:62:ba\",\"timestamp\":\"2015-04-25 12:31:33 +0700\",\"creditcard\":null},{\"name\":\"Renee Hand\",\"email\":\"[email protected]\",\"city\":\"Vivienland\",\"mac\":\"71:ba:6e:b6:bb:60\",\"timestamp\":\"2015-04-25 18:23:25 +0700\",\"creditcard\":null},{\"name\":\"Queen Mills\",\"email\":\"[email protected]\",\"city\":\"East Dorothy\",\"mac\":\"25:c4:a2:d7:a3:db\",\"timestamp\":\"2015-04-25 20:20:27 +0700\",\"creditcard\":\"1211-1221-1234-2201\"},{\"name\":\"Alec Howell\",\"email\":\"[email protected]\",\"city\":\"South Hollyport\",\"mac\":\"ca:8c:24:ef:65:98\",\"timestamp\":\"2015-04-25 00:38:05 +0700\",\"creditcard\":\"1234-2121-1221-1211\"},{\"name\":\"Haley Mohr DVM\",\"email\":null,\"city\":\"Russelshire\",\"mac\":\"2d:92:39:7b:a1:da\",\"timestamp\":\"2015-04-25 13:43:27 +0700\",\"creditcard\":null},{\"name\":\"Jailyn Raynor\",\"email\":\"[email protected]\",\"city\":\"North Helen\",\"mac\":\"ab:a7:0a:dd:0f:b3\",\"timestamp\":\"2015-04-25 20:47:17 +0700\",\"creditcard\":null},{\"name\":\"Ms. Yadira Marvin\",\"email\":null,\"city\":\"South Kaylaport\",\"mac\":\"7d:b6:1b:e4:fe:4c\",\"timestamp\":\"2015-04-25 08:33:37 +0700\",\"creditcard\":\"1234-2121-1221-1211\"},{\"name\":\"Mr. Lisette Nolan\",\"email\":null,\"city\":null,\"mac\":\"8d:47:38:e0:c6:81\",\"timestamp\":\"2015-04-25 06:30:28 +0700\",\"creditcard\":\"1228-1221-1221-1431\"},{\"name\":\"Freeda Swaniawski\",\"email\":null,\"city\":\"Homenickburgh\",\"mac\":\"92:ce:9d:1b:67:11\",\"timestamp\":\"2015-04-25 14:17:13 +0700\",\"creditcard\":\"1211-1221-1234-2201\"},{\"name\":\"Ms. Dorcas Reichel\",\"email\":\"[email protected]\",\"city\":\"Port Collinshire\",\"mac\":\"81:b6:22:4e:c1:fd\",\"timestamp\":\"2015-04-25 02:38:06 +0700\",\"creditcard\":null},{\"name\":\"Enola Dicki\",\"email\":\"[email protected]\",\"city\":null,\"mac\":\"89:97:af:8e:7f:cd\",\"timestamp\":\"2015-04-25 22:32:58 +0700\",\"creditcard\":null},{\"name\":\"Keith Wilderman\",\"email\":\"[email protected]\",\"city\":\"West Isaiashaven\",\"mac\":\"0d:78:28:99:a3:c6\",\"timestamp\":\"2015-04-25 02:30:22 +0700\",\"creditcard\":\"1212-1221-1121-1234\"},{\"name\":\"Dayton Gutmann\",\"email\":\"[email protected]\",\"city\":null,\"mac\":\"a9:d9:92:95:20:2a\",\"timestamp\":\"2015-04-25 21:06:16 +0700\",\"creditcard\":\"1212-1221-1121-1234\"},{\"name\":\"Jamey Paucek\",\"email\":\"[email protected]\",\"city\":\"East Geovany\",\"mac\":\"d3:b8:e9:b5:f3:21\",\"timestamp\":\"2015-04-25 17:47:40 +0700\",\"creditcard\":null}]","payloadType":"json","x":160,"y":1420,"wires":[["fb9c4d2775d8fa36","1319969d3a7547b6"]]},{"id":"fb9c4d2775d8fa36","type":"ui-table","z":"0e3249ddee2000e3","group":"f1e4258493f27774","name":"","label":"text","order":0,"width":"24","height":"6","maxrows":"10","autocols":true,"columns":[],"x":350,"y":1420,"wires":[]},{"id":"1319969d3a7547b6","type":"ui-template","z":"0e3249ddee2000e3","group":"c98a8a6843ef132f","page":"","ui":"","name":"","order":0,"width":"24","height":"6","head":"","format":"<template>\n <!-- Provide an input text box to search the content -->\n <v-text-field v-model=\"search\" label=\"Search\" prepend-inner-icon=\"mdi-magnify\" single-line variant=\"outlined\"\n hide-details></v-text-field>\n <v-data-table v-model:search=\"search\" :items=\"msg?.payload\">\n <template v-slot:header.current>\n <!-- Override how we render the header for the \"current\" column -->\n <div class=\"text-center\">Center-Aligned</div>\n </template>\n\n <template v-slot:item.target=\"{ item }\">\n <!-- Add a custom suffix to the value for the \"target\" column -->\n {{ item.target }}°C\n </template>\n\n <template v-slot:item.current=\"{ item }\">\n <!-- Render a Linear Progress Bar for the \"current\" column -->\n <v-progress-linear v-model=\"item.current\" min=\"15\" max=\"25\" height=\"25\" :color=\"getColor(item)\">\n <template v-slot:default=\"{ value }\">\n <strong>{{ item.current }}°C</strong>\n </template>\n </v-progress-linear>\n </template>\n\n </v-data-table>\n</template>\n\n<script>\n export default {\n data () {\n return {\n search: ''\n }\n },\n methods: {\n // add a function to determine the color of the progress bar given the row's item\n getColor: function (item) {\n if (item.current > item.target) {\n return 'red'\n } else {\n return 'green'\n }\n }\n }\n }\n</script>","storeOutMessages":true,"passthru":true,"resendOnRefresh":true,"templateScope":"local","className":"","x":360,"y":1480,"wires":[[]]},{"id":"7f2faaca383c9278","type":"inject","z":"0e3249ddee2000e3","name":"Temperatures","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"[{\"Room\":\"Living Room\",\"id\":\"1234\",\"target\":18.1,\"current\":20},{\"Room\":\"Bathroom Room\",\"id\":\"5678\",\"target\":19.5,\"current\":18},{\"Room\":\"Kitchen Room\",\"id\":\"9101\",\"target\":18.1,\"current\":17.6}]","payloadType":"json","x":170,"y":1480,"wires":[["1319969d3a7547b6","fb9c4d2775d8fa36"]]},{"id":"699d02412e535c20","type":"inject","z":"0e3249ddee2000e3","name":"Image list","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"[{\"description\":\"Lady with a Teddy\",\"url\":\"https://images.pexels.com/photos/3348748/pexels-photo-3348748.jpeg\"},{\"description\":\"Girl with camera\",\"url\":\"https://images.pexels.com/photos/3812944/pexels-photo-3812944.jpeg\"},{\"description\":\"Beautiful Girl with Glasses\",\"url\":\"https://images.pexels.com/photos/2100063/pexels-photo-2100063.jpeg\"},{\"description\":\"Redhead with frackles\",\"url\":\"https://images.pexels.com/photos/3228213/pexels-photo-3228213.jpeg\"},{\"description\":\"Girl in black dress\",\"url\":\"https://images.pexels.com/photos/1385472/pexels-photo-1385472.jpeg\"},{\"description\":\"Girl Sitting on Chair\",\"url\":\"https://images.pexels.com/photos/4725133/pexels-photo-4725133.jpeg\"}]","payloadType":"json","x":140,"y":1640,"wires":[["04305530b4de7aef"]]},{"id":"04305530b4de7aef","type":"ui-template","z":"0e3249ddee2000e3","group":"a4c42b046665f3a3","page":"","ui":"","name":"","order":0,"width":0,"height":0,"head":"","format":"\n<template>\n <v-carousel>\n <v-carousel-item v-for=\"(item,i) in msg.payload\" v-model=\"selection\"\n :key=\"i\"\n :src=\"item.url\"\n cover\n >\n </v-carousel-item>\n </v-carousel>\n\n</template>\n\n<script>\n export default {\n data() {\n // define variables available component-wide\n // (in <template> and component functions)\n return {\n i: 0\n }\n },\n watch: {\n // watch for any changes of \"count\"\n selection:function(){\n this.send({\"payload\": i})\n }\n },\n computed: {\n // automatically compute this variable\n // whenever VueJS deems appropriate\n },\n methods: {\n // expose a method to our <template> and Vue Application\n },\n mounted() {\n // code here when the component is first loaded\n },\n unmounted() {\n // code here when the component is removed from the Dashboard\n // i.e. when the user navigates away from the page\n }\n }\n</script>\n","storeOutMessages":true,"passthru":true,"resendOnRefresh":true,"templateScope":"local","className":"","x":340,"y":1640,"wires":[["905cd998900a2374"]]},{"id":"dd0cb728ad173407","type":"ui-template","z":"0e3249ddee2000e3","group":"d80f278151a1092c","page":"","ui":"","name":"","order":0,"width":0,"height":0,"head":"","format":"<template>\n <div class=\"mss-wrapper\">\n <v-chip variant=\"text\">\n {{label}}\n </v-chip>\n <v-btn-toggle mandatory divided rounded=\"xl\" :variant=\"variant\" :color=\"selectedColor\" v-model=\"selection\">\n <v-btn v-for=\"(option, index) in options\" :key='index' :class=\"option.label ? '' : 'icon-only'\">\n <template v-if=\"option.icon\" v-slot:prepend >\n <v-icon size=\"x-large\"> {{option.icon}} </v-icon>\n </template>\n {{option.label}}\n </v-btn> \n </v-btn-toggle>\n </div>\n</template>\n\n<script>\n export default {\n data() {\n return {\n //define me here\n label:\"Multistate Prototype\", \n options:[\n {label:\"\",value:\"on\",icon:\"mdi-antenna\",color:\"green\"},// label can be empty \n {value:\"off\", icon:\"mdi-basketball\",color:\"red\"},//can omit the label\n {label:\"Auto\",value:\"auto\", color:\"blue\",icon:\"mdi-car-wrench\"},// can omit the icon\n {label:\"Manual\", value:\"manual\", color:\"orange\",icon:\"mdi-car-shift-pattern\"}// can omit color - defaults to theme color\n ],\n // \"outlined\" (if the site bg is white or very light)\"\n // \"default\" (if the site bg is dark)\"\n // (\"text\" or \"plain\" also available but requires some styling)\n look:\"outlined\", \n \n // no need to change those\n selection: null,\n changeByInput:false, // in case of input - render but don't send the msg out\n \n }\n },\n \n watch: {\n msg: function(){ \n if(this.msg.payload != undefined){\n if(typeof this.msg.payload === \"number\"){ \n if(this.isValidIndex(this.msg.payload)){\n this.changeByInput = true\n this.selection = this.msg.payload\n } \n }\n else if(typeof this.msg.payload === \"string\"){\n if(this.isValidValue(this.msg.payload)){\n this.changeByInput = true\n this.selection = this.findOptionIndexByValue(this.msg.payload) // may be null but quarded\n }\n }\n \n }\n },\n selection:function(){ \n if(this.changeByInput == true){\n this.changeByInput = false\n }\n else{\n this.send(this.getOutputMessage())\n }\n }\n },\n\n methods: {\n isValidIndex: function (idx){\n if(idx < 0){\n return false\n }\n if(idx >= this.options.length){\n return false\n }\n return true \n },\n isValidValue:function (val){\n console.log('validate value',val)\n if(val == null){\n return false\n }\n if(val == undefined){\n return false\n }\n if(val == \"\"){\n return false\n }\n if(this.options.findIndex(option => option.value === val ) == -1){\n return false\n }\n return true\n\n },\n findOptionByValue:function(val){\n let opt = this.options.find(option => option.value === val)\n if(opt){\n return opt\n }\n return null\n },\n findOptionIndexByValue:function(val){\n let idx = this.options.findIndex(option => option.value === val) \n if(idx != -1){\n return idx\n }\n return null\n },\n getOutputMessage:function(){ \n return {payload:this.options[this.selection].value,topic:'multistate'} \n }\n },\n \n computed: { \n selectedColor:function(){\n if(this.selection == null){\n return \"\"\n }\n return this.options[this.selection].color ?? \"rgb(var(--v-theme-primary))\"\n },\n variant:function(){\n return this.look == \"default\" ? null : this.look\n }\n }\n }\n</script>\n\n<style>\n .mss-wrapper {\n --v-border-opacity:1; \n display:grid;\n grid-template-columns:1fr 1fr;\n align-items:center;\n}\n.mss-wrapper .v-chip__content{\n white-space:normal;\n}\n.mss-wrapper .v-btn-group{ \n width:max-content; \n border-color:rgba(var(--v-border-color),.3); \n}\n.mss-wrapper .v-btn--variant-elevated, .mss-wrapper .v-btn--variant-outlined{ \n color:#cccccc;\n}\n.mss-wrapper .icon-only .v-btn__prepend{\n margin-inline:0;\n}\n</style>","storeOutMessages":true,"passthru":true,"resendOnRefresh":true,"templateScope":"local","className":"","x":320,"y":1740,"wires":[["4a14410bba1d4a82"]]},{"id":"4a14410bba1d4a82","type":"debug","z":"0e3249ddee2000e3","name":"Selected option","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":500,"y":1740,"wires":[]},{"id":"2693f680c134392c","type":"inject","z":"0e3249ddee2000e3","name":"","props":[{"p":"payload"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"on","payloadType":"str","x":150,"y":1740,"wires":[["dd0cb728ad173407"]]},{"id":"e215342d9239358f","type":"inject","z":"0e3249ddee2000e3","name":"","props":[{"p":"payload"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"off","payloadType":"str","x":150,"y":1780,"wires":[["dd0cb728ad173407"]]},{"id":"b0cc83d57f02f08b","type":"inject","z":"0e3249ddee2000e3","name":"","props":[{"p":"payload"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"auto","payloadType":"str","x":150,"y":1820,"wires":[["dd0cb728ad173407"]]},{"id":"cbe9ae5a47a6d80d","type":"inject","z":"0e3249ddee2000e3","name":"","props":[{"p":"payload"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"manual","payloadType":"str","x":150,"y":1860,"wires":[["dd0cb728ad173407"]]},{"id":"f0fb5d258b4640e1","type":"ui-template","z":"0e3249ddee2000e3","group":"d80f278151a1092c","page":"","ui":"","name":"","order":0,"width":0,"height":0,"head":"","format":"<template>\n <v-btn class=\"button\" ref=\"button\" stacked @click=\"toggle\">\n <div class=\"title\">Living Room Light</div>\n <v-icon class=\"icon\" ref=\"icon\">{{icon}}</v-icon>\n </v-btn>\n</template>\n\n<script>\n export default {\n data() {\n return {\n value: \"OFF\",\n icon: \"mdi-lightbulb-outline\"\n };\n },\n methods: {\n toggle: function () {\n if (this.value === 'ON') {\n this.turnoff();\n } else if (this.value === 'OFF') {\n this.turnon();\n } else {\n this.turnoff();\n }\n },\n turnon: function () {\n this.icon = \"mdi-lightbulb-on-outline\";\n this.$refs.icon.$el.style.color = '#BD9608';\n this.$refs.icon.$el.style.textShadow = '0px 0px 10px #BD9608';\n if (this.value === 'OFF') {\n this.send({ payload: 'ON' });\n this.value = \"ON\"; \n }\n },\n turnoff: function () {\n this.icon = \"mdi-lightbulb-outline\";\n this.$refs.icon.$el.style.color = '#A9A9A9';\n this.$refs.icon.$el.style.textShadow = '0px 0px 0px';\n if (this.value === 'ON') {\n this.send({ payload: 'OFF' });\n this.value = \"OFF\"; \n }\n }\n },\n watch: {\n msg: function(){\n if(this.msg.payload != undefined){\n console.log('got message :',this.msg)\n if (this.msg.payload === \"ON\") {\n this.ligar();\n } else if (this.msg.payload === \"OFF\") {\n this.desligar(); \n }\n }\n }\n }\n }\n</script>\n\n<style>\n .button {\n display: flex; \n flex-direction: column; \n margin: auto; \n height: 100%; \n width: 100%; \n background-color: #4F4F4F; \n color: #000000; \n border: 1px solid #000000; \n ont-size: 14px; \n border-radius: 18px;\"\n }\n .title {\n font-size: 14px;\n }\n .icon {\n font-size: 40px;\n }\n</style>","storeOutMessages":true,"passthru":true,"resendOnRefresh":true,"templateScope":"local","className":"","x":320,"y":1960,"wires":[[]]},{"id":"91dbfd9423d370ce","type":"ui-text","z":"0e3249ddee2000e3","group":"c379df67940f4d25","order":0,"width":0,"height":0,"name":"","label":"One","format":"{{msg.payload}}","layout":"row-spread","style":false,"font":"","fontSize":16,"color":"#717171","className":"","x":450,"y":2080,"wires":[]},{"id":"c9a9ce2e737cf004","type":"ui-text","z":"0e3249ddee2000e3","group":"c379df67940f4d25","order":0,"width":0,"height":0,"name":"","label":"Two","format":"{{msg.payload}}","layout":"row-spread","style":false,"font":"","fontSize":16,"color":"#717171","className":"","x":450,"y":2120,"wires":[]},{"id":"c00466ab0f536dbd","type":"ui-text","z":"0e3249ddee2000e3","group":"c379df67940f4d25","order":0,"width":0,"height":0,"name":"","label":"Three","format":"{{msg.payload}}","layout":"row-spread","style":false,"font":"","fontSize":16,"color":"#717171","className":"","x":450,"y":2160,"wires":[]},{"id":"1c3c50b902f0ce1a","type":"ui-template","z":"0e3249ddee2000e3","group":"15a4ba9c21910ccf","page":"","ui":"","name":"Teal progress ","order":0,"width":"2","height":"2","head":"","format":"<template>\n <v-progress-circular :rotate=\"-90\" :size=\"100\" :width=\"15\" :model-value=\"value\" color=\"teal\">\n <strong>{{value}}%<strong>\n </v-progress-circular>\n</template>\n\n<script>\n export default {\n data() {\n return { \n value: 0 \n }\n },\n watch: {\n msg: function(){ \n if(this.msg.payload != undefined){ \n this.value = this.msg.payload \n }\n }\n }\n }\n</script>","storeOutMessages":true,"passthru":true,"resendOnRefresh":true,"templateScope":"local","className":"","x":600,"y":2300,"wires":[[]]},{"id":"7ca0f74e2ea174b2","type":"inject","z":"0e3249ddee2000e3","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"0.25","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":200,"y":2300,"wires":[["e63f192e812d621c"]]},{"id":"e63f192e812d621c","type":"function","z":"0e3249ddee2000e3","name":"Increase value","func":"let value = context.get(\"value\") ?? 0;\n\nvalue++;\nif (value>100) value=0;\ncontext.set(\"value\", value);\n\nmsg.payload = value;\nreturn msg;","outputs":1,"timeout":0,"noerr":0,"initialize":"","finalize":"","libs":[],"x":390,"y":2300,"wires":[["1c3c50b902f0ce1a","c824f4b3c425f0ec"]]},{"id":"c824f4b3c425f0ec","type":"ui-template","z":"0e3249ddee2000e3","group":"15a4ba9c21910ccf","page":"","ui":"","name":"Red progress ","order":0,"width":"2","height":"2","head":"","format":"<template>\n <v-progress-circular :rotate=\"0\" :size=\"100\" :width=\"15\" :model-value=\"value\" color=\"red\">\n <strong>{{value}}%</strong>\n </v-progress-circular>\n</template>\n\n<script>\n export default {\n data() {\n return { \n value: 0 \n }\n },\n watch: {\n msg: function(){ \n if(this.msg.payload != undefined){ \n this.value = this.msg.payload \n }\n }\n }\n }\n</script>","storeOutMessages":true,"passthru":true,"resendOnRefresh":true,"templateScope":"local","className":"","x":600,"y":2340,"wires":[[]]},{"id":"a582fd617a7b6146","type":"inject","z":"0e3249ddee2000e3","name":"Structure","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"setup","payload":"[{\"id\":1,\"color\":\"grey\",\"icon\":\"mdi-information\",\"text\":\"Prepare data structure\"},{\"id\":2,\"color\":\"grey\",\"icon\":\"mdi-clipboard-alert\",\"text\":\"Remove duplicates\"},{\"id\":3,\"color\":\"grey\",\"icon\":\"mdi-disc-alert\",\"text\":\"Convert to export format\"},{\"id\":4,\"color\":\"grey\",\"icon\":\"mdi-notification-clear-all\",\"text\":\"Save CSV file\"},{\"id\":5,\"color\":\"grey\",\"icon\":\"mdi-bell-cog\",\"text\":\"Send notification emails\"},{\"id\":6,\"color\":\"grey\",\"icon\":\"mdi-shield-car\",\"text\":\"Archive files\"}]","payloadType":"json","x":200,"y":2480,"wires":[["50c8c9c9736202bf"]]},{"id":"390962d2cffc1fb8","type":"ui-template","z":"0e3249ddee2000e3","group":"491136edcf745f59","page":"","ui":"","name":"Timeline","order":0,"width":0,"height":0,"head":"","format":"<template>\n <v-timeline side=\"end\">\n <v-timeline-item\n v-for=\"item in msg.payload\"\n :key=\"item.id\"\n :dot-color=\"item.color\"\n size=\"small\"\n width=\"100%\"\n >\n <v-alert\n :value=\"true\"\n :color=\"item.color\"\n :icon=\"item.icon\"\n >\n {{ item. text }}\n </v-alert>\n </v-timeline-item>\n </v-timeline>\n</template>\n\n<script>\n export default {\n data() {\n // define variables available component-wide\n // (in <template> and component functions)\n return {\n value: 0\n }\n },\n watch: {\n // watch for any changes of \"count\"\n },\n computed: {\n // automatically compute this variable\n // whenever VueJS deems appropriate\n },\n methods: {\n // expose a method to our <template> and Vue Application\n },\n mounted() {\n // code here when the component is first loaded\n },\n unmounted() {\n // code here when the component is removed from the Dashboard\n // i.e. when the user navigates away from the page\n }\n }\n</script>\n","storeOutMessages":true,"passthru":true,"resendOnRefresh":true,"templateScope":"local","className":"","x":700,"y":2480,"wires":[[]]},{"id":"8328e6ae401fa72b","type":"inject","z":"0e3249ddee2000e3","name":"Step","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"5","crontab":"","once":false,"onceDelay":0.1,"topic":"step","payload":"","payloadType":"date","x":190,"y":2540,"wires":[["50c8c9c9736202bf"]]},{"id":"50c8c9c9736202bf","type":"function","z":"0e3249ddee2000e3","name":"Animate","func":"if (msg.topic === \"setup\") {\n context.set(\"steps\", msg.payload);\n context.set(\"current\", 0);\n return msg;\n}\n\nif (context.get(\"current\") === undefined) {\n return;\n}\n\nlet steps = context.get(\"steps\") ?? [];\nlet current = context.get(\"current\") ?? 0;\n\nif (msg.topic === \"step\") {\n if (current > steps.length) {\n current = 0;\n for (let i = 0; i<steps.length; i++) {\n steps[i].color = \"grey\";\n }\n } else {\n if (current > 0) {\n if (current === 2) {\n steps[current-1].color = \"red\";\n } else {\n steps[current-1].color = \"green\";\n }\n }\n if (current < steps.length) {\n steps[current].color = \"yellow\";\n }\n }\n current++;\n}\n\n\ncontext.set(\"current\", current);\ncontext.set(\"steps\", steps);\nmsg.payload = steps;\nreturn msg;","outputs":1,"timeout":0,"noerr":0,"initialize":"","finalize":"","libs":[],"x":440,"y":2480,"wires":[["390962d2cffc1fb8"]]},{"id":"905cd998900a2374","type":"debug","z":"0e3249ddee2000e3","name":"debug 83","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","statusVal":"","statusType":"auto","x":510,"y":1640,"wires":[]},{"id":"3cfe8b4c394b63c1","type":"ui-group","name":"Weather Station","page":"2c21edb84dc2257a","width":"6","height":"1","order":-1,"showTitle":true,"className":"","visible":"true","disabled":"false"},{"id":"cea5258a.b34038","type":"mqtt-broker","name":"","broker":"192.168.1.80","port":"1883","clientid":"node-red","autoConnect":true,"usetls":false,"protocolVersion":"4","keepalive":"60","cleansession":true,"birthTopic":"","birthQos":"0","birthPayload":"","birthMsg":{},"closeTopic":"","closePayload":"","closeMsg":{},"willTopic":"","willQos":"0","willPayload":"","willMsg":{},"sessionExpiry":""},{"id":"435081056382462b","type":"ui-group","name":"Chart","page":"2c21edb84dc2257a","width":"6","height":"1","order":-1,"showTitle":true,"className":"","visible":"true","disabled":"false"},{"id":"d80f278151a1092c","type":"ui-group","name":"Personal Details","page":"dd8d2662278f4f72","width":"6","height":"1","order":-1,"showTitle":true,"className":"","visible":"true","disabled":"false"},{"id":"ea8ede65a3d3c823","type":"ui-group","name":"Template text","page":"dd8d2662278f4f72","width":"6","height":"1","order":-1,"showTitle":true,"className":"","visible":"true","disabled":"false"},{"id":"cb79bc4520925e32","type":"ui-base","name":"My UI","path":"/dashboard","includeClientData":true,"acceptsClientConfig":["ui-notification","ui-control"],"showPathInSidebar":false},{"id":"50d5cd7eaf84dd96","type":"ui-group","name":"Notifications","page":"2c21edb84dc2257a","width":"6","height":"1","order":-1,"showTitle":true,"className":"","visible":"true","disabled":"false"},{"id":"e34f02960db254a3","type":"ui-group","name":"Buttons","page":"632ba0e73dd26ac9","width":"6","height":"1","order":-1,"showTitle":true,"className":"","visible":"true","disabled":"false"},{"id":"20b8fd9847d6a484","type":"ui-group","name":"Line chart","page":"632ba0e73dd26ac9","width":"6","height":"1","order":-1,"showTitle":true,"className":"","visible":"true","disabled":"false"},{"id":"93fd5cf33974868f","type":"ui-group","name":"Scatter","page":"632ba0e73dd26ac9","width":"6","height":"1","order":-1,"showTitle":true,"className":"","visible":"true","disabled":"false"},{"id":"257891c351c16cee","type":"ui-group","name":"Scatter Plot no time","page":"632ba0e73dd26ac9","width":"6","height":"1","order":-1,"showTitle":true,"className":"","visible":"true","disabled":"false"},{"id":"e5845c8e98027eef","type":"ui-group","name":"Weather Station","page":"9679a5446a7b49c8","width":"6","height":"1","order":3,"showTitle":true,"className":"","visible":"true","disabled":"false"},{"id":"f1e4258493f27774","type":"ui-group","name":"Data Table","page":"9679a5446a7b49c8","width":"24","height":"1","order":1,"showTitle":true,"className":"","visible":"true","disabled":"false"},{"id":"c98a8a6843ef132f","type":"ui-group","name":"Formatted Table","page":"9679a5446a7b49c8","width":"24","height":"1","order":2,"showTitle":true,"className":"","visible":"true","disabled":"false"},{"id":"a4c42b046665f3a3","type":"ui-group","name":"Carousel","page":"729ea5699cb6f3ac","width":"12","height":"6","order":-1,"showTitle":true,"className":"","visible":"true","disabled":"false"},{"id":"c379df67940f4d25","type":"ui-group","name":"My Group","page":"f4063f293f6a82bd","width":"6","height":"1","order":-1,"showTitle":true,"className":"","visible":"true","disabled":"false"},{"id":"15a4ba9c21910ccf","type":"ui-group","name":"Progress","page":"f4063f293f6a82bd","width":"6","height":"2","order":-1,"showTitle":true,"className":"","visible":"true","disabled":"false"},{"id":"491136edcf745f59","type":"ui-group","name":"Timeline","page":"f4063f293f6a82bd","width":"6","height":"1","order":-1,"showTitle":true,"className":"","visible":"true","disabled":"false"},{"id":"2c21edb84dc2257a","type":"ui-page","name":"Data Visualization","ui":"cb79bc4520925e32","path":"/page1","icon":"database-eye","layout":"grid","theme":"0d92c765bfad87e6","order":-1,"className":"","visible":"true","disabled":"false"},{"id":"dd8d2662278f4f72","type":"ui-page","name":"Data Entry New","ui":"cb79bc4520925e32","path":"/entry","icon":"note-multiple","layout":"grid","theme":"0d92c765bfad87e6","order":-1,"className":"","visible":"true","disabled":"false"},{"id":"632ba0e73dd26ac9","type":"ui-page","name":"Charts","ui":"cb79bc4520925e32","path":"/page3","icon":"chart-areaspline","layout":"flex","theme":"0d92c765bfad87e6","order":-1,"className":"","visible":"true","disabled":"false"},{"id":"9679a5446a7b49c8","type":"ui-page","name":"New Theme","ui":"cb79bc4520925e32","path":"/theme","icon":"shape","layout":"notebook","theme":"5e4050d40ba9a470","order":-1,"className":"","visible":"true","disabled":"false"},{"id":"729ea5699cb6f3ac","type":"ui-page","name":"Template examples","ui":"cb79bc4520925e32","path":"/templates","icon":"home","layout":"notebook","theme":"0d92c765bfad87e6","order":-1,"className":"","visible":"true","disabled":"false"},{"id":"f4063f293f6a82bd","type":"ui-page","name":"Testing new design","ui":"cb79bc4520925e32","path":"/designtest","icon":"home","layout":"grid","theme":"0d92c765bfad87e6","order":-1,"className":"","visible":"true","disabled":"false"},{"id":"0d92c765bfad87e6","type":"ui-theme","name":"Basic Blue Theme","colors":{"surface":"#4d58ff","primary":"#0094ce","bgPage":"#eeeeee","groupBg":"#ffffff","groupOutline":"#cccccc"},"sizes":{"pagePadding":"12px","groupGap":"12px","groupBorderRadius":"4px","widgetGap":"12px"}},{"id":"5e4050d40ba9a470","type":"ui-theme","name":"Green Theme","colors":{"surface":"#4c5200","primary":"#00803e","bgPage":"#d3eedc","groupBg":"#ffffff","groupOutline":"#a5cfcb"},"sizes":{"pagePadding":"12px","groupGap":"12px","groupBorderRadius":"4px","widgetGap":"12px"}}]