[text] CTC_FLOW

Viewer

copydownloadembedprintName: CTC_FLOW
  1. [
  2.     {
  3.         "id": "41926d3a3c661803",
  4.         "type": "tab",
  5.         "label": "RFID_Project",
  6.         "disabled": false,
  7.         "info": "",
  8.         "env": []
  9.     },
  10.     {
  11.         "id": "ce2ee15a2f0d125e",
  12.         "type": "tab",
  13.         "label": "Hello World",
  14.         "disabled": false,
  15.         "info": "",
  16.         "env": []
  17.     },
  18.     {
  19.         "id": "1cc46b7de036ee06",
  20.         "type": "tab",
  21.         "label": "Count chars and words",
  22.         "disabled": false,
  23.         "info": "",
  24.         "env": []
  25.     },
  26.     {
  27.         "id": "0cf2ae9e184ef779",
  28.         "type": "tab",
  29.         "label": "Celsius to Farhanheit",
  30.         "disabled": false,
  31.         "info": "",
  32.         "env": []
  33.     },
  34.     {
  35.         "id": "f4ac5258b53676b6",
  36.         "type": "tab",
  37.         "label": "AC & Light control",
  38.         "disabled": false,
  39.         "info": "",
  40.         "env": []
  41.     },
  42.     {
  43.         "id": "714c7b87ef42d921",
  44.         "type": "tab",
  45.         "label": "Calculator using 2 numbers",
  46.         "disabled": false,
  47.         "info": "",
  48.         "env": []
  49.     },
  50.     {
  51.         "id": "235a9f7bdda75b2d",
  52.         "type": "tab",
  53.         "label": "OpenWeathermap",
  54.         "disabled": false,
  55.         "info": "",
  56.         "env": []
  57.     },
  58.     {
  59.         "id": "3758f9118f762f53",
  60.         "type": "tab",
  61.         "label": "hivemq",
  62.         "disabled": false,
  63.         "info": "",
  64.         "env": []
  65.     },
  66.     {
  67.         "id": "6e2a90a83fc5b027",
  68.         "type": "tab",
  69.         "label": "HTTP",
  70.         "disabled": false,
  71.         "info": "",
  72.         "env": []
  73.     },
  74.     {
  75.         "id": "32db33e18f3b95b7",
  76.         "type": "tab",
  77.         "label": "Automatic door and light control",
  78.         "disabled": false,
  79.         "info": "",
  80.         "env": []
  81.     },
  82.     {
  83.         "id": "c4ac0eaa5c5dbdc6",
  84.         "type": "tab",
  85.         "label": "Flow 1",
  86.         "disabled": false,
  87.         "info": "",
  88.         "env": []
  89.     },
  90.     {
  91.         "id": "940823eccfda4529",
  92.         "type": "tab",
  93.         "label": "Flow 2",
  94.         "disabled": false,
  95.         "info": "",
  96.         "env": []
  97.     },
  98.     {
  99.         "id": "5b634678967f4056",
  100.         "type": "ui_group",
  101.         "name": "IOT",
  102.         "tab": "",
  103.         "disp": true,
  104.         "width": "6",
  105.         "collapse": false,
  106.         "className": ""
  107.     },
  108.     {
  109.         "id": "37904b3e3e545c4e",
  110.         "type": "mqtt-broker",
  111.         "name": "",
  112.         "broker": "http://broker.mqtt-dashboard.com",
  113.         "port": "8884",
  114.         "clientid": "",
  115.         "autoConnect": true,
  116.         "usetls": false,
  117.         "protocolVersion": "4",
  118.         "keepalive": "60",
  119.         "cleansession": true,
  120.         "autoUnsubscribe": true,
  121.         "birthTopic": "topic",
  122.         "birthQos": "0",
  123.         "birthRetain": "false",
  124.         "birthPayload": "",
  125.         "birthMsg": {},
  126.         "closeTopic": "",
  127.         "closeQos": "0",
  128.         "closeRetain": "false",
  129.         "closePayload": "",
  130.         "closeMsg": {},
  131.         "willTopic": "",
  132.         "willQos": "0",
  133.         "willRetain": "false",
  134.         "willPayload": "",
  135.         "willMsg": {},
  136.         "userProps": "",
  137.         "sessionExpiry": ""
  138.     },
  139.     {
  140.         "id": "47d3564b5f34c36d",
  141.         "type": "ui_base",
  142.         "theme": {
  143.             "name": "theme-light",
  144.             "lightTheme": {
  145.                 "default": "#0094CE",
  146.                 "baseColor": "#0094CE",
  147.                 "baseFont": "-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif",
  148.                 "edited": true,
  149.                 "reset": false
  150.             },
  151.             "darkTheme": {
  152.                 "default": "#097479",
  153.                 "baseColor": "#097479",
  154.                 "baseFont": "-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif",
  155.                 "edited": false
  156.             },
  157.             "customTheme": {
  158.                 "name": "Untitled Theme 1",
  159.                 "default": "#4B7930",
  160.                 "baseColor": "#4B7930",
  161.                 "baseFont": "-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif"
  162.             },
  163.             "themeState": {
  164.                 "base-color": {
  165.                     "default": "#0094CE",
  166.                     "value": "#0094CE",
  167.                     "edited": false
  168.                 },
  169.                 "page-titlebar-backgroundColor": {
  170.                     "value": "#0094CE",
  171.                     "edited": false
  172.                 },
  173.                 "page-backgroundColor": {
  174.                     "value": "#fafafa",
  175.                     "edited": false
  176.                 },
  177.                 "page-sidebar-backgroundColor": {
  178.                     "value": "#ffffff",
  179.                     "edited": false
  180.                 },
  181.                 "group-textColor": {
  182.                     "value": "#1bbfff",
  183.                     "edited": false
  184.                 },
  185.                 "group-borderColor": {
  186.                     "value": "#ffffff",
  187.                     "edited": false
  188.                 },
  189.                 "group-backgroundColor": {
  190.                     "value": "#ffffff",
  191.                     "edited": false
  192.                 },
  193.                 "widget-textColor": {
  194.                     "value": "#111111",
  195.                     "edited": false
  196.                 },
  197.                 "widget-backgroundColor": {
  198.                     "value": "#0094ce",
  199.                     "edited": false
  200.                 },
  201.                 "widget-borderColor": {
  202.                     "value": "#ffffff",
  203.                     "edited": false
  204.                 },
  205.                 "base-font": {
  206.                     "value": "-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif"
  207.                 }
  208.             },
  209.             "angularTheme": {
  210.                 "primary": "indigo",
  211.                 "accents": "blue",
  212.                 "warn": "red",
  213.                 "background": "grey",
  214.                 "palette": "light"
  215.             }
  216.         },
  217.         "site": {
  218.             "name": "Node-RED Dashboard",
  219.             "hideToolbar": "false",
  220.             "allowSwipe": "false",
  221.             "lockMenu": "false",
  222.             "allowTempTheme": "true",
  223.             "dateFormat": "DD/MM/YYYY",
  224.             "sizes": {
  225.                 "sx": 48,
  226.                 "sy": 48,
  227.                 "gx": 6,
  228.                 "gy": 6,
  229.                 "cx": 6,
  230.                 "cy": 6,
  231.                 "px": 0,
  232.                 "py": 0
  233.             }
  234.         }
  235.     },
  236.     {
  237.         "id": "aa6f18c102a28853",
  238.         "type": "ui_group",
  239.         "name": "Group 1",
  240.         "tab": "",
  241.         "order": 1,
  242.         "disp": true,
  243.         "width": "6",
  244.         "collapse": false,
  245.         "className": ""
  246.     },
  247.     {
  248.         "id": "a6b365329fd2f00a",
  249.         "type": "ui_group",
  250.         "name": "Group 2",
  251.         "tab": "",
  252.         "order": 2,
  253.         "disp": true,
  254.         "width": 6
  255.     },
  256.     {
  257.         "id": "205971f27c08bd86",
  258.         "type": "ui_group",
  259.         "name": "Group 3",
  260.         "tab": "",
  261.         "order": 3,
  262.         "disp": true,
  263.         "width": 6
  264.     },
  265.     {
  266.         "id": "7b4df4ab067ff50d",
  267.         "type": "ui_group",
  268.         "name": "Group 4",
  269.         "tab": "",
  270.         "order": 4,
  271.         "disp": true,
  272.         "width": 6
  273.     },
  274.     {
  275.         "id": "1ebaae31a6a9852c",
  276.         "type": "ui_tab",
  277.         "name": "Tab 1",
  278.         "icon": "dashboard",
  279.         "order": 1,
  280.         "disabled": false,
  281.         "hidden": false
  282.     },
  283.     {
  284.         "id": "809d226772e7b298",
  285.         "type": "ui_group",
  286.         "name": "Group 1",
  287.         "tab": "1ebaae31a6a9852c",
  288.         "order": 1,
  289.         "disp": true,
  290.         "width": "6",
  291.         "collapse": false,
  292.         "className": ""
  293.     },
  294.     {
  295.         "id": "24af98fc20927339",
  296.         "type": "ui_spacer",
  297.         "z": "ce2ee15a2f0d125e",
  298.         "name": "spacer",
  299.         "group": "809d226772e7b298",
  300.         "order": 1,
  301.         "width": 1,
  302.         "height": 1
  303.     },
  304.     {
  305.         "id": "67120247d418b814",
  306.         "type": "ui_spacer",
  307.         "z": "ce2ee15a2f0d125e",
  308.         "name": "spacer",
  309.         "group": "809d226772e7b298",
  310.         "order": 2,
  311.         "width": 1,
  312.         "height": 1
  313.     },
  314.     {
  315.         "id": "3d2e85f49e83fdc3",
  316.         "type": "serial-port",
  317.         "name": "",
  318.         "serialport": "",
  319.         "serialbaud": "57600",
  320.         "databits": "8",
  321.         "parity": "none",
  322.         "stopbits": "1",
  323.         "waitfor": "",
  324.         "dtr": "none",
  325.         "rts": "none",
  326.         "cts": "none",
  327.         "dsr": "none",
  328.         "newline": "\\n",
  329.         "bin": "false",
  330.         "out": "char",
  331.         "addchar": "",
  332.         "responsetimeout": "10000"
  333.     },
  334.     {
  335.         "id": "ecec01c9b7ecd1b1",
  336.         "type": "ui_tab",
  337.         "name": "Tab 2",
  338.         "icon": "dashboard",
  339.         "order": 2
  340.     },
  341.     {
  342.         "id": "8ddf37774f55c8cf",
  343.         "type": "ui_group",
  344.         "name": "Group 1",
  345.         "tab": "ecec01c9b7ecd1b1",
  346.         "order": 1,
  347.         "disp": true,
  348.         "width": 6
  349.     },
  350.     {
  351.         "id": "45147d7e.9b5d4",
  352.         "type": "serial-port",
  353.         "name": "",
  354.         "serialport": "COM6",
  355.         "serialbaud": "9600",
  356.         "databits": "8",
  357.         "parity": "none",
  358.         "stopbits": "1",
  359.         "waitfor": "",
  360.         "newline": "\\n",
  361.         "bin": "false",
  362.         "out": "char",
  363.         "addchar": "false",
  364.         "responsetimeout": ""
  365.     },
  366.     {
  367.         "id": "a998f1f7a01f8062",
  368.         "type": "ui_group",
  369.         "name": "CPS",
  370.         "tab": "1ebaae31a6a9852c",
  371.         "order": 2,
  372.         "disp": true,
  373.         "width": "6",
  374.         "collapse": false,
  375.         "className": ""
  376.     },
  377.     {
  378.         "id": "mqttBroker",
  379.         "type": "mqtt-broker",
  380.         "name": "",
  381.         "broker": "mqtt://localhost",
  382.         "port": "1883",
  383.         "clientid": "",
  384.         "usetls": false,
  385.         "compatmode": true,
  386.         "keepalive": "60",
  387.         "cleansession": true,
  388.         "birthTopic": "",
  389.         "birthQos": "0",
  390.         "birthPayload": "",
  391.         "closeTopic": "",
  392.         "closeQos": "0",
  393.         "closePayload": "",
  394.         "willTopic": "",
  395.         "willQos": "0",
  396.         "willPayload": ""
  397.     },
  398.     {
  399.         "id": "e35cb18996903762",
  400.         "type": "serial in",
  401.         "z": "41926d3a3c661803",
  402.         "name": "Arduino",
  403.         "serial": "45147d7e.9b5d4",
  404.         "x": 250,
  405.         "y": 240,
  406.         "wires": [
  407.             [
  408.                 "8ef48017d3f13ce0"
  409.             ]
  410.         ]
  411.     },
  412.     {
  413.         "id": "8ef48017d3f13ce0",
  414.         "type": "function",
  415.         "z": "41926d3a3c661803",
  416.         "name": "Process Serial Data",
  417.         "func": "var serialData = msg.payload;\nvar accessStatus, uid;\nif (serialData.includes(\"Authorized access\")) {\n    accessStatus = \"Authorized access\";\n} else if (serialData.includes(\"Access denied\")) {\n    accessStatus = \"Access denied\";\n} \n\nif (serialData.includes(\"UID tag:\")) {\n    var startIndex = serialData.indexOf(\"UID tag:\") + 9;\n    var endIndex = serialData.indexOf(\"\\n\", startIndex);\n    uid = serialData.substring(startIndex, endIndex).trim();\n}\n\nvar payload = {\n    \"access_status\": accessStatus,\n    \"uid\": uid\n};\n\nmsg.payload = payload;\nreturn msg;",
  418.         "outputs": 1,
  419.         "noerr": 0,
  420.         "initialize": "",
  421.         "finalize": "",
  422.         "libs": [],
  423.         "x": 500,
  424.         "y": 240,
  425.         "wires": [
  426.             [
  427.                 "70e6596932a64634"
  428.             ]
  429.         ]
  430.     },
  431.     {
  432.         "id": "70e6596932a64634",
  433.         "type": "http request",
  434.         "z": "41926d3a3c661803",
  435.         "name": "Send to ThingsBoard",
  436.         "method": "POST",
  437.         "ret": "obj",
  438.         "paytoqs": "ignore",
  439.         "url": "https://demo.thingsboard.io/api/v1/4xElebfTnUTn4AGgO9Il/telemetry",
  440.         "tls": "",
  441.         "persist": false,
  442.         "proxy": "",
  443.         "insecureHTTPParser": false,
  444.         "authType": "",
  445.         "senderr": false,
  446.         "headers": [],
  447.         "x": 740,
  448.         "y": 240,
  449.         "wires": [
  450.             [
  451.                 "0986a592e8dd360a"
  452.             ]
  453.         ]
  454.     },
  455.     {
  456.         "id": "0986a592e8dd360a",
  457.         "type": "debug",
  458.         "z": "41926d3a3c661803",
  459.         "name": "",
  460.         "active": true,
  461.         "tosidebar": true,
  462.         "console": false,
  463.         "tostatus": false,
  464.         "complete": "payload",
  465.         "targetType": "msg",
  466.         "statusVal": "",
  467.         "statusType": "auto",
  468.         "x": 950,
  469.         "y": 240,
  470.         "wires": []
  471.     },
  472.     {
  473.         "id": "1b68fcab6c957932",
  474.         "type": "inject",
  475.         "z": "41926d3a3c661803",
  476.         "name": "Test Data",
  477.         "props": [
  478.             {
  479.                 "p": "payload",
  480.                 "v": "UID tag: 01 23 45 67 Authorized access",
  481.                 "vt": "str"
  482.             }
  483.         ],
  484.         "repeat": "",
  485.         "crontab": "",
  486.         "once": false,
  487.         "onceDelay": 0.1,
  488.         "topic": "",
  489.         "payload": "UID tag: 01 23 45 67 Authorized access",
  490.         "payloadType": "str",
  491.         "x": 280,
  492.         "y": 320,
  493.         "wires": [
  494.             [
  495.                 "8ef48017d3f13ce0"
  496.             ]
  497.         ]
  498.     },
  499.     {
  500.         "id": "084f541bf65e7832",
  501.         "type": "inject",
  502.         "z": "41926d3a3c661803",
  503.         "name": "Test Data",
  504.         "props": [
  505.             {
  506.                 "p": "payload",
  507.                 "v": "UID tag: 89 AB CD EF Access denied",
  508.                 "vt": "str"
  509.             }
  510.         ],
  511.         "repeat": "",
  512.         "crontab": "",
  513.         "once": false,
  514.         "onceDelay": 0.1,
  515.         "topic": "",
  516.         "payload": "UID tag: 89 AB CD EF Access denied",
  517.         "payloadType": "str",
  518.         "x": 280,
  519.         "y": 360,
  520.         "wires": [
  521.             [
  522.                 "8ef48017d3f13ce0"
  523.             ]
  524.         ]
  525.     },
  526.     {
  527.         "id": "03acc6ebb83e4c78",
  528.         "type": "inject",
  529.         "z": "ce2ee15a2f0d125e",
  530.         "name": "",
  531.         "props": [
  532.             {
  533.                 "p": "payload"
  534.             },
  535.             {
  536.                 "p": "topic",
  537.                 "vt": "str"
  538.             }
  539.         ],
  540.         "repeat": "",
  541.         "crontab": "",
  542.         "once": false,
  543.         "onceDelay": 0.1,
  544.         "topic": "",
  545.         "payload": "Hello World",
  546.         "payloadType": "str",
  547.         "x": 250,
  548.         "y": 240,
  549.         "wires": [
  550.             [
  551.                 "85da90aac498b39d"
  552.             ]
  553.         ]
  554.     },
  555.     {
  556.         "id": "85da90aac498b39d",
  557.         "type": "debug",
  558.         "z": "ce2ee15a2f0d125e",
  559.         "name": "debug 1",
  560.         "active": true,
  561.         "tosidebar": true,
  562.         "console": false,
  563.         "tostatus": false,
  564.         "complete": "false",
  565.         "statusVal": "",
  566.         "statusType": "auto",
  567.         "x": 520,
  568.         "y": 240,
  569.         "wires": []
  570.     },
  571.     {
  572.         "id": "055e3a442c20e9b1",
  573.         "type": "inject",
  574.         "z": "1cc46b7de036ee06",
  575.         "name": "",
  576.         "props": [
  577.             {
  578.                 "p": "payload"
  579.             },
  580.             {
  581.                 "p": "topic",
  582.                 "vt": "str"
  583.             }
  584.         ],
  585.         "repeat": "",
  586.         "crontab": "",
  587.         "once": false,
  588.         "onceDelay": 0.1,
  589.         "topic": "",
  590.         "payload": "Hello World",
  591.         "payloadType": "str",
  592.         "x": 210,
  593.         "y": 180,
  594.         "wires": [
  595.             [
  596.                 "c9395b4592c196c0"
  597.             ]
  598.         ]
  599.     },
  600.     {
  601.         "id": "c9395b4592c196c0",
  602.         "type": "function",
  603.         "z": "1cc46b7de036ee06",
  604.         "name": "function 1",
  605.         "func": "let inputString = msg.payload;\n\n// Function to count words and characters\nfunction countWordsAndChars(inputString) {\n    // Counting number of characters\n    let numChars = inputString.length;\n\n    // Counting number of words\n    let words = inputString.match(/\\S+/g) || [];\n    let numWords = words.length;\n\n    return { numChars, numWords };\n}\n\nlet counts = countWordsAndChars(inputString);\n\nmsg.payload = {\n    inputString: inputString,\n    numChars: counts.numChars,\n    numWords: counts.numWords\n};\n\nreturn msg;",
  606.         "outputs": 1,
  607.         "timeout": 0,
  608.         "noerr": 0,
  609.         "initialize": "",
  610.         "finalize": "",
  611.         "libs": [],
  612.         "x": 400,
  613.         "y": 260,
  614.         "wires": [
  615.             [
  616.                 "e030baa677f5577b"
  617.             ]
  618.         ]
  619.     },
  620.     {
  621.         "id": "e030baa677f5577b",
  622.         "type": "debug",
  623.         "z": "1cc46b7de036ee06",
  624.         "name": "debug 2",
  625.         "active": true,
  626.         "tosidebar": true,
  627.         "console": false,
  628.         "tostatus": false,
  629.         "complete": "false",
  630.         "statusVal": "",
  631.         "statusType": "auto",
  632.         "x": 620,
  633.         "y": 320,
  634.         "wires": []
  635.     },
  636.     {
  637.         "id": "75a5e0e77fcc6ac2",
  638.         "type": "inject",
  639.         "z": "0cf2ae9e184ef779",
  640.         "name": "",
  641.         "props": [
  642.             {
  643.                 "p": "payload"
  644.             },
  645.             {
  646.                 "p": "topic",
  647.                 "vt": "str"
  648.             }
  649.         ],
  650.         "repeat": "",
  651.         "crontab": "",
  652.         "once": false,
  653.         "onceDelay": 0.1,
  654.         "topic": "",
  655.         "payload": "42",
  656.         "payloadType": "num",
  657.         "x": 230,
  658.         "y": 160,
  659.         "wires": [
  660.             [
  661.                 "71694c7005595439"
  662.             ]
  663.         ]
  664.     },
  665.     {
  666.         "id": "23bf0cfa1c6dd7d0",
  667.         "type": "debug",
  668.         "z": "0cf2ae9e184ef779",
  669.         "name": "debug 3",
  670.         "active": true,
  671.         "tosidebar": true,
  672.         "console": false,
  673.         "tostatus": false,
  674.         "complete": "false",
  675.         "statusVal": "",
  676.         "statusType": "auto",
  677.         "x": 820,
  678.         "y": 280,
  679.         "wires": []
  680.     },
  681.     {
  682.         "id": "71694c7005595439",
  683.         "type": "function",
  684.         "z": "0cf2ae9e184ef779",
  685.         "name": "function 2",
  686.         "func": "let celsiusTemperature = msg.payload; // Assuming the input payload contains the temperature in degrees Celsius\n\n// Convert Celsius to Fahrenheit using the formula and round the result to 2 decimal places\nlet fahrenheitTemperature = ((celsiusTemperature * 9/5) + 32).toFixed(2);\n\n// Create a new message object to pass the converted temperature to the next node\nmsg.payload = {\n    celsius: celsiusTemperature,\n    fahrenheit: parseFloat(fahrenheitTemperature) // Parsing to float to remove any trailing zeros\n};\n\nreturn msg;",
  687.         "outputs": 1,
  688.         "timeout": 0,
  689.         "noerr": 0,
  690.         "initialize": "",
  691.         "finalize": "",
  692.         "libs": [],
  693.         "x": 500,
  694.         "y": 220,
  695.         "wires": [
  696.             [
  697.                 "23bf0cfa1c6dd7d0"
  698.             ]
  699.         ]
  700.     },
  701.     {
  702.         "id": "d2b79dc1.6a8f6",
  703.         "type": "inject",
  704.         "z": "f4ac5258b53676b6",
  705.         "name": "Sensor 1",
  706.         "props": [
  707.             {
  708.                 "p": "payload"
  709.             },
  710.             {
  711.                 "p": "topic",
  712.                 "vt": "str"
  713.             }
  714.         ],
  715.         "repeat": "",
  716.         "crontab": "",
  717.         "once": false,
  718.         "onceDelay": 0.1,
  719.         "topic": "",
  720.         "payload": "0",
  721.         "payloadType": "num",
  722.         "x": 260,
  723.         "y": 220,
  724.         "wires": [
  725.             [
  726.                 "7c8a362f.837d88"
  727.             ]
  728.         ]
  729.     },
  730.     {
  731.         "id": "7c8a362f.837d88",
  732.         "type": "function",
  733.         "z": "f4ac5258b53676b6",
  734.         "name": "AC Control",
  735.         "func": "if (msg.payload === 1) {\n    msg.payload = \"AC is ON\";\n} else {\n    msg.payload = \"AC is OFF\";\n}\nreturn msg;",
  736.         "outputs": 1,
  737.         "timeout": "",
  738.         "noerr": 0,
  739.         "initialize": "",
  740.         "finalize": "",
  741.         "libs": [],
  742.         "x": 440,
  743.         "y": 220,
  744.         "wires": [
  745.             [
  746.                 "a67c744f.598f88",
  747.                 "ee84e59f.117f18"
  748.             ]
  749.         ]
  750.     },
  751.     {
  752.         "id": "a67c744f.598f88",
  753.         "type": "debug",
  754.         "z": "f4ac5258b53676b6",
  755.         "name": "AC",
  756.         "active": true,
  757.         "tosidebar": true,
  758.         "console": false,
  759.         "tostatus": false,
  760.         "complete": "payload",
  761.         "targetType": "msg",
  762.         "statusVal": "",
  763.         "statusType": "auto",
  764.         "x": 620,
  765.         "y": 180,
  766.         "wires": []
  767.     },
  768.     {
  769.         "id": "ee84e59f.117f18",
  770.         "type": "join",
  771.         "z": "f4ac5258b53676b6",
  772.         "name": "",
  773.         "mode": "custom",
  774.         "build": "string",
  775.         "property": "payload",
  776.         "propertyType": "msg",
  777.         "key": "topic",
  778.         "joiner": "\\n",
  779.         "joinerType": "str",
  780.         "accumulate": false,
  781.         "timeout": "",
  782.         "count": "2",
  783.         "reduceRight": false,
  784.         "reduceExp": "",
  785.         "reduceInit": "",
  786.         "reduceInitType": "",
  787.         "reduceFixup": "",
  788.         "x": 800,
  789.         "y": 260,
  790.         "wires": [
  791.             [
  792.                 "9f5fbb9f.60a048"
  793.             ]
  794.         ]
  795.     },
  796.     {
  797.         "id": "9f5fbb9f.60a048",
  798.         "type": "debug",
  799.         "z": "f4ac5258b53676b6",
  800.         "name": "Combined",
  801.         "active": true,
  802.         "tosidebar": true,
  803.         "console": false,
  804.         "tostatus": false,
  805.         "complete": "payload",
  806.         "targetType": "msg",
  807.         "statusVal": "",
  808.         "statusType": "auto",
  809.         "x": 970,
  810.         "y": 260,
  811.         "wires": []
  812.     },
  813.     {
  814.         "id": "9b2f3cdd.64d0d",
  815.         "type": "inject",
  816.         "z": "f4ac5258b53676b6",
  817.         "name": "Sensor 2",
  818.         "props": [
  819.             {
  820.                 "p": "payload"
  821.             },
  822.             {
  823.                 "p": "topic",
  824.                 "vt": "str"
  825.             }
  826.         ],
  827.         "repeat": "",
  828.         "crontab": "",
  829.         "once": false,
  830.         "onceDelay": 0.1,
  831.         "topic": "",
  832.         "payload": "1",
  833.         "payloadType": "num",
  834.         "x": 260,
  835.         "y": 300,
  836.         "wires": [
  837.             [
  838.                 "6b623c89.949c44"
  839.             ]
  840.         ]
  841.     },
  842.     {
  843.         "id": "6b623c89.949c44",
  844.         "type": "function",
  845.         "z": "f4ac5258b53676b6",
  846.         "name": "Light Control",
  847.         "func": "if (msg.payload === 1) {\n    msg.payload = \"LIGHT is ON\";\n} else {\n    msg.payload = \"LIGHT is OFF\";\n}\nreturn msg;",
  848.         "outputs": 1,
  849.         "timeout": "",
  850.         "noerr": 0,
  851.         "initialize": "",
  852.         "finalize": "",
  853.         "libs": [],
  854.         "x": 440,
  855.         "y": 300,
  856.         "wires": [
  857.             [
  858.                 "b7a4dd8f.48db2",
  859.                 "ee84e59f.117f18"
  860.             ]
  861.         ]
  862.     },
  863.     {
  864.         "id": "b7a4dd8f.48db2",
  865.         "type": "debug",
  866.         "z": "f4ac5258b53676b6",
  867.         "name": "Light",
  868.         "active": true,
  869.         "tosidebar": true,
  870.         "console": false,
  871.         "tostatus": false,
  872.         "complete": "payload",
  873.         "targetType": "msg",
  874.         "statusVal": "",
  875.         "statusType": "auto",
  876.         "x": 620,
  877.         "y": 340,
  878.         "wires": []
  879.     },
  880.     {
  881.         "id": "f1",
  882.         "type": "function",
  883.         "z": "714c7b87ef42d921",
  884.         "name": "Calculator",
  885.         "func": "var num1 = msg.payload1;\nvar num2 = msg.payload2;\n\nvar sum = num1 + num2;\nvar difference = num1 - num2;\nvar product = num1 * num2;\nvar quotient = num1 / num2;\n\nmsg.payload = `Sum: ${sum}, Difference: ${difference}, Product: ${product}, Quotient: ${quotient}`;\nreturn msg;",
  886.         "outputs": 1,
  887.         "timeout": "",
  888.         "noerr": 0,
  889.         "initialize": "",
  890.         "finalize": "",
  891.         "libs": [],
  892.         "x": 540,
  893.         "y": 240,
  894.         "wires": [
  895.             [
  896.                 "d1"
  897.             ]
  898.         ]
  899.     },
  900.     {
  901.         "id": "i1",
  902.         "type": "inject",
  903.         "z": "714c7b87ef42d921",
  904.         "name": "",
  905.         "props": [
  906.             {
  907.                 "p": "payload1",
  908.                 "v": "5",
  909.                 "vt": "num"
  910.             },
  911.             {
  912.                 "p": "payload2",
  913.                 "v": "7",
  914.                 "vt": "num"
  915.             },
  916.             {
  917.                 "p": "topic",
  918.                 "vt": "str"
  919.             }
  920.         ],
  921.         "repeat": "",
  922.         "crontab": "",
  923.         "once": false,
  924.         "onceDelay": 0.1,
  925.         "topic": "",
  926.         "x": 310,
  927.         "y": 240,
  928.         "wires": [
  929.             [
  930.                 "f1"
  931.             ]
  932.         ]
  933.     },
  934.     {
  935.         "id": "d1",
  936.         "type": "debug",
  937.         "z": "714c7b87ef42d921",
  938.         "name": "",
  939.         "active": true,
  940.         "tosidebar": true,
  941.         "console": false,
  942.         "tostatus": false,
  943.         "complete": "payload",
  944.         "targetType": "msg",
  945.         "statusVal": "",
  946.         "statusType": "auto",
  947.         "x": 720,
  948.         "y": 240,
  949.         "wires": []
  950.     },
  951.     {
  952.         "id": "05ea7e03b5a630b1",
  953.         "type": "inject",
  954.         "z": "235a9f7bdda75b2d",
  955.         "name": "",
  956.         "props": [
  957.             {
  958.                 "p": "payload"
  959.             },
  960.             {
  961.                 "p": "topic",
  962.                 "vt": "str"
  963.             }
  964.         ],
  965.         "repeat": "",
  966.         "crontab": "",
  967.         "once": false,
  968.         "onceDelay": 0.1,
  969.         "topic": "",
  970.         "payload": "",
  971.         "payloadType": "date",
  972.         "x": 80,
  973.         "y": 340,
  974.         "wires": [
  975.             [
  976.                 "7b3d034fbab7a9a2"
  977.             ]
  978.         ]
  979.     },
  980.     {
  981.         "id": "7b3d034fbab7a9a2",
  982.         "type": "openweathermap",
  983.         "z": "235a9f7bdda75b2d",
  984.         "name": "",
  985.         "wtype": "current",
  986.         "lon": "",
  987.         "lat": "",
  988.         "city": "Kolkata",
  989.         "country": "India",
  990.         "language": "en",
  991.         "x": 240,
  992.         "y": 340,
  993.         "wires": [
  994.             [
  995.                 "bb6f5631cf45f898",
  996.                 "4a2d5bd000949177",
  997.                 "037f82cc6ab8cea9",
  998.                 "67976486089fbe52",
  999.                 "04249040714e5f05"
  1000.             ]
  1001.         ]
  1002.     },
  1003.     {
  1004.         "id": "bb6f5631cf45f898",
  1005.         "type": "function",
  1006.         "z": "235a9f7bdda75b2d",
  1007.         "name": "Temp",
  1008.         "func": "msg.payload=msg.payload.tempc\nreturn msg;",
  1009.         "outputs": 1,
  1010.         "timeout": 0,
  1011.         "noerr": 0,
  1012.         "initialize": "",
  1013.         "finalize": "",
  1014.         "libs": [],
  1015.         "x": 470,
  1016.         "y": 280,
  1017.         "wires": [
  1018.             [
  1019.                 "a70ed0faca5e5571"
  1020.             ]
  1021.         ]
  1022.     },
  1023.     {
  1024.         "id": "04249040714e5f05",
  1025.         "type": "function",
  1026.         "z": "235a9f7bdda75b2d",
  1027.         "name": "Humidity",
  1028.         "func": "msg.payload=msg.payload.humidity\nreturn msg;",
  1029.         "outputs": 1,
  1030.         "timeout": 0,
  1031.         "noerr": 0,
  1032.         "initialize": "",
  1033.         "finalize": "",
  1034.         "libs": [],
  1035.         "x": 520,
  1036.         "y": 480,
  1037.         "wires": [
  1038.             [
  1039.                 "9f13061b6736f02d"
  1040.             ]
  1041.         ]
  1042.     },
  1043.     {
  1044.         "id": "4a2d5bd000949177",
  1045.         "type": "debug",
  1046.         "z": "235a9f7bdda75b2d",
  1047.         "name": "debug 4",
  1048.         "active": true,
  1049.         "tosidebar": true,
  1050.         "console": false,
  1051.         "tostatus": false,
  1052.         "complete": "false",
  1053.         "statusVal": "",
  1054.         "statusType": "auto",
  1055.         "x": 480,
  1056.         "y": 340,
  1057.         "wires": []
  1058.     },
  1059.     {
  1060.         "id": "67976486089fbe52",
  1061.         "type": "ui_text",
  1062.         "z": "235a9f7bdda75b2d",
  1063.         "group": "a998f1f7a01f8062",
  1064.         "order": 2,
  1065.         "width": 0,
  1066.         "height": 0,
  1067.         "name": "",
  1068.         "label": "text",
  1069.         "format": "",
  1070.         "layout": "row-spread",
  1071.         "className": "",
  1072.         "style": false,
  1073.         "font": "",
  1074.         "fontSize": 16,
  1075.         "color": "#000000",
  1076.         "x": 530,
  1077.         "y": 440,
  1078.         "wires": []
  1079.     },
  1080.     {
  1081.         "id": "037f82cc6ab8cea9",
  1082.         "type": "ui_gauge",
  1083.         "z": "235a9f7bdda75b2d",
  1084.         "name": "",
  1085.         "group": "a998f1f7a01f8062",
  1086.         "order": 1,
  1087.         "width": 0,
  1088.         "height": 0,
  1089.         "gtype": "gage",
  1090.         "title": "gauge",
  1091.         "label": "units",
  1092.         "format": "{{value}}",
  1093.         "min": 0,
  1094.         "max": "200",
  1095.         "colors": [
  1096.             "#00b500",
  1097.             "#e6e600",
  1098.             "#ca3838"
  1099.         ],
  1100.         "seg1": "",
  1101.         "seg2": "",
  1102.         "diff": false,
  1103.         "className": "",
  1104.         "x": 530,
  1105.         "y": 400,
  1106.         "wires": []
  1107.     },
  1108.     {
  1109.         "id": "9f13061b6736f02d",
  1110.         "type": "ui_numeric",
  1111.         "z": "235a9f7bdda75b2d",
  1112.         "name": "",
  1113.         "label": "numeric",
  1114.         "tooltip": "",
  1115.         "group": "a998f1f7a01f8062",
  1116.         "order": 3,
  1117.         "width": 0,
  1118.         "height": 0,
  1119.         "wrap": false,
  1120.         "passthru": true,
  1121.         "topic": "topic",
  1122.         "topicType": "msg",
  1123.         "format": "{{value}}",
  1124.         "min": 0,
  1125.         "max": "200",
  1126.         "step": 1,
  1127.         "className": "",
  1128.         "x": 720,
  1129.         "y": 480,
  1130.         "wires": [
  1131.             []
  1132.         ]
  1133.     },
  1134.     {
  1135.         "id": "a70ed0faca5e5571",
  1136.         "type": "ui_chart",
  1137.         "z": "235a9f7bdda75b2d",
  1138.         "name": "",
  1139.         "group": "a998f1f7a01f8062",
  1140.         "order": 0,
  1141.         "width": 0,
  1142.         "height": 0,
  1143.         "label": "chart",
  1144.         "chartType": "line",
  1145.         "legend": "false",
  1146.         "xformat": "HH:mm:ss",
  1147.         "interpolate": "linear",
  1148.         "nodata": "",
  1149.         "dot": false,
  1150.         "ymin": "",
  1151.         "ymax": "",
  1152.         "removeOlder": 1,
  1153.         "removeOlderPoints": "",
  1154.         "removeOlderUnit": "3600",
  1155.         "cutout": 0,
  1156.         "useOneColor": false,
  1157.         "useUTC": false,
  1158.         "colors": [
  1159.             "#1f77b4",
  1160.             "#aec7e8",
  1161.             "#ff7f0e",
  1162.             "#2ca02c",
  1163.             "#98df8a",
  1164.             "#d62728",
  1165.             "#ff9896",
  1166.             "#9467bd",
  1167.             "#c5b0d5"
  1168.         ],
  1169.         "outputs": 1,
  1170.         "useDifferentColor": false,
  1171.         "className": "",
  1172.         "x": 630,
  1173.         "y": 240,
  1174.         "wires": [
  1175.             [
  1176.                 "0456c1f99cf2dd57"
  1177.             ]
  1178.         ]
  1179.     },
  1180.     {
  1181.         "id": "0456c1f99cf2dd57",
  1182.         "type": "debug",
  1183.         "z": "235a9f7bdda75b2d",
  1184.         "name": "debug 5",
  1185.         "active": true,
  1186.         "tosidebar": true,
  1187.         "console": false,
  1188.         "tostatus": false,
  1189.         "complete": "false",
  1190.         "statusVal": "",
  1191.         "statusType": "auto",
  1192.         "x": 760,
  1193.         "y": 300,
  1194.         "wires": []
  1195.     },
  1196.     {
  1197.         "id": "6cc5c49618ba875c",
  1198.         "type": "mqtt in",
  1199.         "z": "3758f9118f762f53",
  1200.         "name": "",
  1201.         "topic": "pabak",
  1202.         "qos": "2",
  1203.         "datatype": "auto-detect",
  1204.         "broker": "37904b3e3e545c4e",
  1205.         "nl": false,
  1206.         "rap": true,
  1207.         "rh": 0,
  1208.         "inputs": 0,
  1209.         "x": 170,
  1210.         "y": 260,
  1211.         "wires": [
  1212.             [
  1213.                 "521c37c8a94ee177"
  1214.             ]
  1215.         ]
  1216.     },
  1217.     {
  1218.         "id": "521c37c8a94ee177",
  1219.         "type": "json",
  1220.         "z": "3758f9118f762f53",
  1221.         "name": "",
  1222.         "property": "payload",
  1223.         "action": "",
  1224.         "pretty": false,
  1225.         "x": 370,
  1226.         "y": 260,
  1227.         "wires": [
  1228.             [
  1229.                 "4816533c5b3d9027"
  1230.             ]
  1231.         ]
  1232.     },
  1233.     {
  1234.         "id": "4816533c5b3d9027",
  1235.         "type": "debug",
  1236.         "z": "3758f9118f762f53",
  1237.         "name": "debug 6",
  1238.         "active": true,
  1239.         "tosidebar": true,
  1240.         "console": false,
  1241.         "tostatus": false,
  1242.         "complete": "false",
  1243.         "statusVal": "",
  1244.         "statusType": "auto",
  1245.         "x": 580,
  1246.         "y": 260,
  1247.         "wires": []
  1248.     },
  1249.     {
  1250.         "id": "e222c07d50534297",
  1251.         "type": "mqtt out",
  1252.         "z": "3758f9118f762f53",
  1253.         "name": "",
  1254.         "topic": "pabak",
  1255.         "qos": "2",
  1256.         "retain": "",
  1257.         "respTopic": "",
  1258.         "contentType": "",
  1259.         "userProps": "",
  1260.         "correl": "",
  1261.         "expiry": "",
  1262.         "broker": "37904b3e3e545c4e",
  1263.         "x": 610,
  1264.         "y": 400,
  1265.         "wires": []
  1266.     },
  1267.     {
  1268.         "id": "14dbfa7778c94be1",
  1269.         "type": "json",
  1270.         "z": "3758f9118f762f53",
  1271.         "name": "",
  1272.         "property": "payload",
  1273.         "action": "",
  1274.         "pretty": false,
  1275.         "x": 390,
  1276.         "y": 400,
  1277.         "wires": [
  1278.             [
  1279.                 "e222c07d50534297"
  1280.             ]
  1281.         ]
  1282.     },
  1283.     {
  1284.         "id": "b6e7071a01ede5e0",
  1285.         "type": "inject",
  1286.         "z": "3758f9118f762f53",
  1287.         "name": "",
  1288.         "props": [
  1289.             {
  1290.                 "p": "payload"
  1291.             },
  1292.             {
  1293.                 "p": "topic",
  1294.                 "vt": "str"
  1295.             }
  1296.         ],
  1297.         "repeat": "",
  1298.         "crontab": "",
  1299.         "once": false,
  1300.         "onceDelay": 0.1,
  1301.         "topic": "",
  1302.         "payload": "{\"Name\":\"Pabak\",\"Age\":21}",
  1303.         "payloadType": "json",
  1304.         "x": 170,
  1305.         "y": 400,
  1306.         "wires": [
  1307.             [
  1308.                 "14dbfa7778c94be1"
  1309.             ]
  1310.         ]
  1311.     },
  1312.     {
  1313.         "id": "3eaaa554f6eae82f",
  1314.         "type": "inject",
  1315.         "z": "6e2a90a83fc5b027",
  1316.         "name": "Sensor1",
  1317.         "props": [
  1318.             {
  1319.                 "p": "payload"
  1320.             },
  1321.             {
  1322.                 "p": "topic",
  1323.                 "vt": "str"
  1324.             }
  1325.         ],
  1326.         "repeat": "",
  1327.         "crontab": "",
  1328.         "once": false,
  1329.         "onceDelay": 0.1,
  1330.         "topic": "",
  1331.         "payload": "{\"Humidity\":800,\"Temperature\":210}",
  1332.         "payloadType": "json",
  1333.         "x": 240,
  1334.         "y": 180,
  1335.         "wires": [
  1336.             [
  1337.                 "1bae99dfedeb0fc8"
  1338.             ]
  1339.         ]
  1340.     },
  1341.     {
  1342.         "id": "ebed3ef342829bef",
  1343.         "type": "inject",
  1344.         "z": "6e2a90a83fc5b027",
  1345.         "name": "Sensor2",
  1346.         "props": [
  1347.             {
  1348.                 "p": "payload"
  1349.             },
  1350.             {
  1351.                 "p": "topic",
  1352.                 "vt": "str"
  1353.             }
  1354.         ],
  1355.         "repeat": "",
  1356.         "crontab": "",
  1357.         "once": false,
  1358.         "onceDelay": 0.1,
  1359.         "topic": "",
  1360.         "payload": "{\"Temperature\":21,\"Humidity\":81}",
  1361.         "payloadType": "json",
  1362.         "x": 240,
  1363.         "y": 400,
  1364.         "wires": [
  1365.             [
  1366.                 "1bae99dfedeb0fc8"
  1367.             ]
  1368.         ]
  1369.     },
  1370.     {
  1371.         "id": "1bae99dfedeb0fc8",
  1372.         "type": "http request",
  1373.         "z": "6e2a90a83fc5b027",
  1374.         "name": "",
  1375.         "method": "POST",
  1376.         "ret": "txt",
  1377.         "paytoqs": "ignore",
  1378.         "url": "http://thingsboard.cloud/api/v1/U4wD5YWWV4986k9GPwMK/telemetry",
  1379.         "tls": "",
  1380.         "persist": false,
  1381.         "proxy": "",
  1382.         "insecureHTTPParser": false,
  1383.         "authType": "",
  1384.         "senderr": false,
  1385.         "headers": [],
  1386.         "x": 510,
  1387.         "y": 280,
  1388.         "wires": [
  1389.             [
  1390.                 "893ce39bc3fd2b08"
  1391.             ]
  1392.         ]
  1393.     },
  1394.     {
  1395.         "id": "893ce39bc3fd2b08",
  1396.         "type": "debug",
  1397.         "z": "6e2a90a83fc5b027",
  1398.         "name": "debug 7",
  1399.         "active": true,
  1400.         "tosidebar": true,
  1401.         "console": false,
  1402.         "tostatus": false,
  1403.         "complete": "false",
  1404.         "statusVal": "",
  1405.         "statusType": "auto",
  1406.         "x": 760,
  1407.         "y": 280,
  1408.         "wires": []
  1409.     },
  1410.     {
  1411.         "id": "sensorData",
  1412.         "type": "mqtt in",
  1413.         "z": "32db33e18f3b95b7",
  1414.         "name": "Receive Sensor Data",
  1415.         "topic": "sensor/data",
  1416.         "qos": "2",
  1417.         "datatype": "auto-detect",
  1418.         "broker": "37904b3e3e545c4e",
  1419.         "nl": false,
  1420.         "rap": false,
  1421.         "inputs": 0,
  1422.         "x": 280,
  1423.         "y": 300,
  1424.         "wires": [
  1425.             [
  1426.                 "f1e114f615f81371"
  1427.             ]
  1428.         ]
  1429.     },
  1430.     {
  1431.         "id": "processData",
  1432.         "type": "function",
  1433.         "z": "32db33e18f3b95b7",
  1434.         "name": "Process Data",
  1435.         "func": "var data = JSON.parse(msg.payload);\nif (data.doorOpen && data.lightLevel < 50) {\n    return [{ payload: 'ON' }, { payload: 'OPEN' }];\n} else {\n    return [{ payload: 'OFF' }, { payload: 'CLOSE' }];\n}",
  1436.         "outputs": 2,
  1437.         "timeout": "",
  1438.         "noerr": 0,
  1439.         "initialize": "",
  1440.         "finalize": "",
  1441.         "libs": [],
  1442.         "x": 580,
  1443.         "y": 300,
  1444.         "wires": [
  1445.             [
  1446.                 "controlLight"
  1447.             ],
  1448.             [
  1449.                 "controlDoor"
  1450.             ]
  1451.         ]
  1452.     },
  1453.     {
  1454.         "id": "controlLight",
  1455.         "type": "mqtt out",
  1456.         "z": "32db33e18f3b95b7",
  1457.         "name": "Control Light",
  1458.         "topic": "light/control",
  1459.         "qos": "2",
  1460.         "retain": "",
  1461.         "respTopic": "",
  1462.         "contentType": "",
  1463.         "userProps": "",
  1464.         "correl": "",
  1465.         "expiry": "",
  1466.         "broker": "37904b3e3e545c4e",
  1467.         "x": 830,
  1468.         "y": 220,
  1469.         "wires": []
  1470.     },
  1471.     {
  1472.         "id": "controlDoor",
  1473.         "type": "mqtt out",
  1474.         "z": "32db33e18f3b95b7",
  1475.         "name": "Control Door",
  1476.         "topic": "door/control",
  1477.         "qos": "2",
  1478.         "retain": "",
  1479.         "respTopic": "",
  1480.         "contentType": "",
  1481.         "userProps": "",
  1482.         "correl": "",
  1483.         "expiry": "",
  1484.         "broker": "37904b3e3e545c4e",
  1485.         "x": 830,
  1486.         "y": 360,
  1487.         "wires": []
  1488.     },
  1489.     {
  1490.         "id": "f1e114f615f81371",
  1491.         "type": "json",
  1492.         "z": "32db33e18f3b95b7",
  1493.         "name": "",
  1494.         "property": "payload",
  1495.         "action": "",
  1496.         "pretty": false,
  1497.         "x": 430,
  1498.         "y": 380,
  1499.         "wires": [
  1500.             [
  1501.                 "processData"
  1502.             ]
  1503.         ]
  1504.     },
  1505.     {
  1506.         "id": "1ed46e1a54716e85",
  1507.         "type": "debug",
  1508.         "z": "c4ac0eaa5c5dbdc6",
  1509.         "name": "debug 8",
  1510.         "active": true,
  1511.         "tosidebar": true,
  1512.         "console": false,
  1513.         "tostatus": false,
  1514.         "complete": "false",
  1515.         "statusVal": "",
  1516.         "statusType": "auto",
  1517.         "x": 760,
  1518.         "y": 220,
  1519.         "wires": []
  1520.     },
  1521.     {
  1522.         "id": "bf7857b242de28eb",
  1523.         "type": "fileinput",
  1524.         "z": "c4ac0eaa5c5dbdc6",
  1525.         "name": "",
  1526.         "datatype": "str",
  1527.         "stream": "yes",
  1528.         "property": "payload",
  1529.         "propertyType": "msg",
  1530.         "x": 120,
  1531.         "y": 240,
  1532.         "wires": [
  1533.             [
  1534.                 "9f8bcb18c1bc213a"
  1535.             ]
  1536.         ]
  1537.     },
  1538.     {
  1539.         "id": "58506c6ff0451610",
  1540.         "type": "ui_table",
  1541.         "z": "c4ac0eaa5c5dbdc6",
  1542.         "group": "aa6f18c102a28853",
  1543.         "name": "",
  1544.         "order": 4,
  1545.         "width": 0,
  1546.         "height": 0,
  1547.         "columns": [],
  1548.         "outputs": 0,
  1549.         "cts": false,
  1550.         "x": 770,
  1551.         "y": 320,
  1552.         "wires": []
  1553.     },
  1554.     {
  1555.         "id": "9f8bcb18c1bc213a",
  1556.         "type": "csv",
  1557.         "z": "c4ac0eaa5c5dbdc6",
  1558.         "name": "",
  1559.         "sep": ",",
  1560.         "hdrin": "",
  1561.         "hdrout": "none",
  1562.         "multi": "one",
  1563.         "ret": "\\n",
  1564.         "temp": "",
  1565.         "skip": "0",
  1566.         "strings": true,
  1567.         "include_empty_strings": "",
  1568.         "include_null_values": "",
  1569.         "x": 430,
  1570.         "y": 240,
  1571.         "wires": [
  1572.             [
  1573.                 "1ed46e1a54716e85",
  1574.                 "58506c6ff0451610"
  1575.             ]
  1576.         ]
  1577.     },
  1578.     {
  1579.         "id": "httpInNode",
  1580.         "type": "http in",
  1581.         "z": "940823eccfda4529",
  1582.         "name": "Receive CSV File",
  1583.         "url": "http://127.0.0.1:1880/",
  1584.         "method": "post",
  1585.         "upload": true,
  1586.         "swaggerDoc": "",
  1587.         "x": 240,
  1588.         "y": 320,
  1589.         "wires": [
  1590.             [
  1591.                 "csvNode"
  1592.             ]
  1593.         ]
  1594.     },
  1595.     {
  1596.         "id": "csvNode",
  1597.         "type": "csv",
  1598.         "z": "940823eccfda4529",
  1599.         "name": "Parse CSV",
  1600.         "sep": ",",
  1601.         "hdrin": true,
  1602.         "hdrout": "",
  1603.         "multi": "one",
  1604.         "ret": "\\n",
  1605.         "temp": "",
  1606.         "skip": "0",
  1607.         "strings": true,
  1608.         "include_empty_strings": "",
  1609.         "include_null_values": "",
  1610.         "x": 430,
  1611.         "y": 240,
  1612.         "wires": [
  1613.             [
  1614.                 "functionNode"
  1615.             ]
  1616.         ]
  1617.     },
  1618.     {
  1619.         "id": "functionNode",
  1620.         "type": "function",
  1621.         "z": "940823eccfda4529",
  1622.         "name": "Convert to JSON",
  1623.         "func": "msg.payload = JSON.stringify(msg.payload);\nreturn msg;",
  1624.         "outputs": 1,
  1625.         "timeout": "",
  1626.         "noerr": 0,
  1627.         "initialize": "",
  1628.         "finalize": "",
  1629.         "libs": [],
  1630.         "x": 670,
  1631.         "y": 460,
  1632.         "wires": [
  1633.             [
  1634.                 "httpResponseNode"
  1635.             ]
  1636.         ]
  1637.     },
  1638.     {
  1639.         "id": "httpResponseNode",
  1640.         "type": "http response",
  1641.         "z": "940823eccfda4529",
  1642.         "name": "Send Response",
  1643.         "statusCode": "",
  1644.         "headers": {},
  1645.         "x": 860,
  1646.         "y": 240,
  1647.         "wires": []
  1648.     }
  1649. ]

Editor

You can edit this paste and save as new:


File Description
  • CTC_FLOW
  • Paste Code
  • 29 Apr-2024
  • 41.16 Kb
You can Share it: