Skip to content

Instantly share code, notes, and snippets.

@leedrch
Created January 5, 2019 16:28
Show Gist options
  • Save leedrch/15dce3ff77b2750f03f82734b163d5fd to your computer and use it in GitHub Desktop.
Save leedrch/15dce3ff77b2750f03f82734b163d5fd to your computer and use it in GitHub Desktop.
Node-Red Flow example : Using Chart node & Http node (Restful API)
[{"id":"3e1d705d.6fec7","type":"inject","z":"f2d39e90.e7ae2","name":"2s","topic":"","payload":"","payloadType":"date","repeat":"2","crontab":"","once":false,"onceDelay":0.1,"x":110,"y":120,"wires":[["aaadea1d.ec8e18","c67a3c8e.dee0a"]]},{"id":"aaadea1d.ec8e18","type":"function","z":"f2d39e90.e7ae2","name":"random1","func":"ran = parseInt(Math.random() * 10);\nmsg.topic = \"Random1\";\nmsg.payload = ran;\nreturn msg;","outputs":1,"noerr":0,"x":280,"y":120,"wires":[["2b853b7f.405154"]]},{"id":"2b853b7f.405154","type":"ui_chart","z":"f2d39e90.e7ae2","name":"","group":"8a312ad2.ae3c18","order":0,"width":"6","height":"5","label":"20s(10 points)","chartType":"line","legend":"false","xformat":"HH:mm:ss","interpolate":"linear","nodata":"","dot":false,"ymin":"","ymax":"","removeOlder":"20","removeOlderPoints":"","removeOlderUnit":"1","cutout":0,"useOneColor":false,"colors":["#1f77b4","#aec7e8","#ff7f0e","#2ca02c","#98df8a","#d62728","#ff9896","#9467bd","#c5b0d5"],"useOldStyle":false,"x":500,"y":120,"wires":[["726566b5.225318","273de244.b4683e"],[]]},{"id":"c67a3c8e.dee0a","type":"function","z":"f2d39e90.e7ae2","name":"random2","func":"ran = parseInt(Math.random() * 10);\nmsg.topic = \"Random2\";\nmsg.payload = ran;\nreturn msg;","outputs":1,"noerr":0,"x":280,"y":160,"wires":[["2b853b7f.405154","d900845b.5d5078"]]},{"id":"78423f2c.0259e","type":"inject","z":"f2d39e90.e7ae2","name":"Flush","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":110,"y":200,"wires":[["506d11dd.5a2de"]]},{"id":"506d11dd.5a2de","type":"function","z":"f2d39e90.e7ae2","name":"Flush","func":"msg.payload = [];\nreturn msg;","outputs":1,"noerr":0,"x":270,"y":200,"wires":[["2b853b7f.405154"]]},{"id":"726566b5.225318","type":"function","z":"f2d39e90.e7ae2","name":"Save","func":"flow.set(\"chartarray\",msg.payload);","outputs":1,"noerr":0,"x":670,"y":120,"wires":[[]]},{"id":"fe47c7b8.a0fbc8","type":"inject","z":"f2d39e90.e7ae2","name":"Reload","topic":"","payload":"","payloadType":"date","repeat":"3600","crontab":"","once":false,"onceDelay":0.1,"x":120,"y":240,"wires":[["ff886ae7.559318"]]},{"id":"ff886ae7.559318","type":"function","z":"f2d39e90.e7ae2","name":"Reload","func":"msg.payload = flow.get(\"chartarray\");\nreturn msg;","outputs":1,"noerr":0,"x":280,"y":240,"wires":[["2b853b7f.405154"]]},{"id":"954e6d29.6e32e","type":"comment","z":"f2d39e90.e7ae2","name":"Dashboard Chart Node","info":"","x":150,"y":60,"wires":[]},{"id":"4a705042.22554","type":"http in","z":"f2d39e90.e7ae2","name":"","url":"/random","method":"get","upload":false,"swaggerDoc":"","x":110,"y":400,"wires":[["5ddc8832.715218"]]},{"id":"214703fd.d15b2c","type":"http response","z":"f2d39e90.e7ae2","name":"","statusCode":"","headers":{},"x":730,"y":400,"wires":[]},{"id":"647c3e1f.32342","type":"comment","z":"f2d39e90.e7ae2","name":"Random http://127.0.0.1:1880/random","info":"","x":200,"y":340,"wires":[]},{"id":"5ddc8832.715218","type":"function","z":"f2d39e90.e7ae2","name":"http in","func":"rnum=parseInt(msg.req.query.rnum);\ncount=parseInt(msg.req.query.count);\n\nif (rnum <= 2 && count <= 10) {\n msg.rnum = rnum;\n msg.count = count;\n msg.payload=\"OK\";\n return msg; \n}else{\n msg.payload=\"Error!\";\n return msg; \n} ","outputs":1,"noerr":0,"x":300,"y":400,"wires":[["72104e97.efb8a","ad38e8b1.5fd148"]]},{"id":"72104e97.efb8a","type":"function","z":"f2d39e90.e7ae2","name":"Ok","func":"pay=msg.payload;\nif (pay == \"OK\"){\n return msg;\n}","outputs":1,"noerr":0,"x":450,"y":400,"wires":[["74c07cb6.a49b54"]]},{"id":"74c07cb6.a49b54","type":"function","z":"f2d39e90.e7ae2","name":"Output","func":"var temp=[];\nvar tempmsg = flow.get(\"chartarray\");\nrnum=msg.rnum;\ncount=msg.count;\n\ntemp = \"[\";\nfor(var i = 0; i < rnum; i++){\n temp = temp + \"[\"; \n for(var j = 0; j < count; j++){\n var j2=9-j;\n temp = temp + '{ \"time\" : \"';\n temp = temp + tempmsg[0].data[i][j2].x;\n temp = temp + '\" , \"val\" : \"';\n temp = temp + tempmsg[0].data[i][j2].y;\n temp = temp + '\" }';\n if (j < count-1){ temp = temp + \",\";}\n }\n temp = temp + \"]\";\n if (i < rnum-1){ temp = temp + \",\";}\n}\ntemp = temp + \"]\";\n\nmsg.payload = temp;\nreturn msg;","outputs":1,"noerr":0,"x":590,"y":400,"wires":[["214703fd.d15b2c"]]},{"id":"273de244.b4683e","type":"debug","z":"f2d39e90.e7ae2","name":"","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","x":690,"y":160,"wires":[]},{"id":"d283f503.2a0008","type":"http response","z":"f2d39e90.e7ae2","name":"","statusCode":"","headers":{},"x":730,"y":460,"wires":[]},{"id":"ad38e8b1.5fd148","type":"function","z":"f2d39e90.e7ae2","name":"Error","func":"pay=msg.payload;\nif (pay == \"Error!\"){\n return msg;\n}","outputs":1,"noerr":0,"x":450,"y":460,"wires":[["fe252903.3df158"]]},{"id":"fe252903.3df158","type":"template","z":"f2d39e90.e7ae2","name":"web","field":"payload","fieldType":"msg","format":"handlebars","syntax":"mustache","template":"<html>\n <head></head>\n <body>\n <h1>{{payload}}</h1>\n </body>\n</html>","output":"str","x":590,"y":460,"wires":[["d283f503.2a0008"]]},{"id":"85d583ae.0b01d","type":"inject","z":"f2d39e90.e7ae2","name":"","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":120,"y":580,"wires":[["233555b5.25abaa"]]},{"id":"7cc4da0e.ebd614","type":"debug","z":"f2d39e90.e7ae2","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","x":530,"y":580,"wires":[]},{"id":"233555b5.25abaa","type":"http request","z":"f2d39e90.e7ae2","name":"exchange","method":"GET","ret":"obj","url":"http://earthquake.kr/exchange/","tls":"","x":310,"y":580,"wires":[["7cc4da0e.ebd614"]]},{"id":"9afe258a.840d58","type":"inject","z":"f2d39e90.e7ae2","name":"","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":120,"y":640,"wires":[["649534dd.67577c"]]},{"id":"900ee253.fb8e7","type":"debug","z":"f2d39e90.e7ae2","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","x":530,"y":640,"wires":[]},{"id":"649534dd.67577c","type":"http request","z":"f2d39e90.e7ae2","name":"random","method":"GET","ret":"obj","url":"http://localhost:1880/random?rnum=2&count=5","tls":"","x":310,"y":640,"wires":[["900ee253.fb8e7"]]},{"id":"d900845b.5d5078","type":"ui_template","z":"f2d39e90.e7ae2","group":"8a312ad2.ae3c18","name":"","order":0,"width":0,"height":0,"format":"<div layout=\"row\" layout-align=\"space-between\">\n<p>The number is</p>\n<p ng-style=\"{color: (msg.payload || 0) % 2 === 0 ? 'green' : 'red'}\">\n {{(msg.payload || 0) % 2 === 0 ? 'even' : 'odd'}}\n</p>\n</div>","storeOutMessages":true,"fwdInMessages":true,"templateScope":"local","x":500,"y":180,"wires":[[]]},{"id":"8a312ad2.ae3c18","type":"ui_group","name":"Group 1","tab":"9a7b5679.e3e9e8","order":1,"disp":true,"width":6},{"id":"9a7b5679.e3e9e8","type":"ui_tab","name":"Tab 3","icon":"dashboard","order":1}]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment