OXRS web app setup

@craigcurtin I saw your post on discord, but thought it would be better to respond here. I'm case there are any others interested.

I have the web demo app setup for testing in NR. OXRS-IO-TouchPanel-WEB-APP

Here is a small flow to serve the files from NR. Just change the file nodes path to match where you are hosting the files.

[{"id":"c7e341a0.381cc","type":"http in","z":"2df9d4297887de0c","name":"","url":"index.html","method":"get","upload":false,"swaggerDoc":"","x":680,"y":1785,"wires":[["2fb1c354.d04e3c"]]},{"id":"2fb1c354.d04e3c","type":"file in","z":"2df9d4297887de0c","name":"","filename":"/home/pi/.node-red/public/OSRX/index.html","filenameType":"str","format":"utf8","encoding":"none","allProps":false,"x":1030,"y":1785,"wires":[["88974243.7768c"]]},{"id":"88974243.7768c","type":"http response","z":"2df9d4297887de0c","name":"","statusCode":"","headers":{"content-type":"text/html; charset=utf-8"},"x":1365,"y":1785,"wires":[]},{"id":"d630c4ad8a88dcf6","type":"http in","z":"2df9d4297887de0c","name":"","url":"/assets/index.js","method":"get","upload":false,"swaggerDoc":"","x":690,"y":1830,"wires":[["bbeb8a46061e4591"]]},{"id":"bbeb8a46061e4591","type":"file in","z":"2df9d4297887de0c","name":"","filename":"/home/pi/.node-red/public/OSRX/assets/index.js","filenameType":"str","format":"utf8","encoding":"utf8","allProps":false,"x":1040,"y":1830,"wires":[["210ff19b92f15a5a"]]},{"id":"210ff19b92f15a5a","type":"http response","z":"2df9d4297887de0c","name":"","statusCode":"","headers":{"content-type":"application/javascript"},"x":1365,"y":1830,"wires":[]},{"id":"113fed623972d915","type":"http in","z":"2df9d4297887de0c","name":"","url":"/assets/TemplateView.css","method":"get","upload":false,"swaggerDoc":"","x":720,"y":1875,"wires":[["5e934e3617bed781"]]},{"id":"5e934e3617bed781","type":"file in","z":"2df9d4297887de0c","name":"","filename":"/home/pi/.node-red/public/OSRX/assets/TemplateView.css","filenameType":"str","format":"utf8","encoding":"none","allProps":false,"x":1070,"y":1875,"wires":[["7bbdd1801bf9a7cd"]]},{"id":"7bbdd1801bf9a7cd","type":"http response","z":"2df9d4297887de0c","name":"","statusCode":"","headers":{"content-type":"text/css"},"x":1365,"y":1875,"wires":[]},{"id":"170784114f0527c4","type":"http in","z":"2df9d4297887de0c","name":"","url":"/assets/TemplateView.js","method":"get","upload":false,"swaggerDoc":"","x":720,"y":1920,"wires":[["beb7d42dc4a65ce5"]]},{"id":"beb7d42dc4a65ce5","type":"file in","z":"2df9d4297887de0c","name":"","filename":"/home/pi/.node-red/public/OSRX/assets/TemplateView.js","filenameType":"str","format":"utf8","encoding":"none","allProps":false,"x":1070,"y":1920,"wires":[["fd2a6e0c7e75866f"]]},{"id":"fd2a6e0c7e75866f","type":"http response","z":"2df9d4297887de0c","name":"","statusCode":"","headers":{"content-type":"application/javascript"},"x":1365,"y":1920,"wires":[]}]

You need to enable Websocket support on the MQTT broker, I just added this section to mosquitto.conf

listener 9001
protocol websockets
socket_domain ipv4

Not sure about the last line but it didn't work for me without it.

Once you have that setup navigate to NRserverIP:1880/index.html and click on settings. If you fill in the blanks to match your setup, but keep the topics, then it should work with my demo flows, which I will post in a short while :wink:

There is also what looks like a selfcontained windows app here OXRS-IO-TouchPanel-WIN-APP but I haven't tried that.

1 Like

Basic flow to provide a demo "playground" -

[{"id":"568511c8093b81a3","type":"inject","z":"8d97cec16eabefaf","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"OXRS/conf/web","payload":"{\"screens\":[{\"screen\":1,\"label\":\"Demo\",\"tiles\":[{\"tile\":1,\"style\":\"colorPickerRgb\",\"icon\":\"_bulb\",\"label\":\"Office light\"},{\"tile\":2,\"style\":\"indicator\",\"label\":\"Temp / Hum\"}]}]}","payloadType":"json","x":380,"y":570,"wires":[["83dc0496a2adf9e7"]]},{"id":"db5727efc6b6174b","type":"mqtt out","z":"8d97cec16eabefaf","name":"","topic":"","qos":"","retain":"false","respTopic":"","contentType":"","userProps":"","correl":"","expiry":"","broker":"","x":1600,"y":555,"wires":[]},{"id":"3a95bb36457a77e1","type":"mqtt in","z":"8d97cec16eabefaf","name":"","topic":"oxrs/stat/oxrs1","qos":"2","datatype":"auto-detect","broker":"","nl":false,"rap":true,"rh":0,"inputs":0,"x":185,"y":375,"wires":[["645b7477715d7dec","3efd94a1d5975a40"]]},{"id":"1149fbc9159e0606","type":"function","z":"8d97cec16eabefaf","name":"Update temp","func":"let environment = global.get(\"environment\")\n\nmsg.topic = \"oxrs/cmnd/oxrs1\" \nmsg.payload =\n{\n    \"tiles\": [\n        {\n            \"screen\": 1,\n            \"tile\": 6,\n            \"number\": {\n                \"value\": environment.lounge.temperature.toString(),\n                \"units\": \"°C\",\n                \"subValue\": environment.lounge.humidity.toString(),\n                \"subUnits\": \"%\"\n            },\n            \"subLabel\": \"Temp / Hum\"\n        }\n    ]\n}\n\nreturn msg;","outputs":1,"timeout":0,"noerr":0,"initialize":"","finalize":"","libs":[],"x":790,"y":660,"wires":[["ae884bd800a07565"]]},{"id":"ee700e286c7f9dc6","type":"inject","z":"8d97cec16eabefaf","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"60","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":395,"y":660,"wires":[["1149fbc9159e0606"]]},{"id":"83dc0496a2adf9e7","type":"function","z":"8d97cec16eabefaf","name":"Setup Screen 1","func":"msg.topic = \"oxrs/conf/oxrs1\"\nmsg.payload =\n{\n    \"screens\": [\n        {\n            \"screen\": 1,\n            \"label\": \"Kitchen\",\n            \"backgroundColorRgb\": { \"r\": 50, \"g\": 50, \"b\": 100 },\n            \"tiles\": [\n                {\n                    \"tile\": 1,\n                    \"style\": \"colorPickerRgbCct\",\n                    \"icon\": \"ledstrip\",\n                    \"label\": \"Kitchen Cupboards\"\n                },\n                {\n                    \"tile\": 2,\n                    \"style\": \"button\",\n                    \"icon\": \"_onoff\",\n                    \"label\": \"Main Light\"\n                }\n                ,\n                {\n                    \"tile\": 3,\n                    \"style\": \"button\",\n                    \"icon\": \"_bulb\",\n                    \"label\": \"Down Light\"\n                },\n                {\n                    \"tile\": 4,\n                    \"style\": \"button\",\n                    \"icon\": \"dishwasher\",\n                    \"label\": \"Dish Washer\"\n                },\n                {\n                    \"tile\": 5,\n                    \"style\": \"button\",\n                    \"icon\": \"washer\",\n                    \"label\": \"Washer Dryer\"\n                },\n                {\n                    \"tile\": 6,\n                    \"style\": \"indicator\",\n                    \"label\": \"Lounge\"\n                },\n                {\n                    \"tile\": 7,\n                    \"style\": \"dropDown\",\n                    \"icon\": \"_music\",\n                    \"label\": \"Select Preset\"\n                }\n            ]\n        }\n    ]\n}\n\n\nreturn msg;\n\n","outputs":1,"timeout":0,"noerr":0,"initialize":"","finalize":"","libs":[],"x":800,"y":570,"wires":[["db5727efc6b6174b"]]},{"id":"2f56c5f2b0ddb989","type":"comment","z":"8d97cec16eabefaf","name":"icons","info":"_3dprint\n_blind\n_bulb\n_ceilingfan\n_coffee\n_door\n_feed\n_locked\n_music\n_onoff\n_pause\n_play\n_remote\n_slider\n_speaker\n_thermometer\n_thermostat\n_unlocked\n_window","x":790,"y":480,"wires":[]},{"id":"c7cb9c86f32cfbdd","type":"function","z":"8d97cec16eabefaf","name":"Custom Icons","func":"\nmsg.topic = \"oxrs/cmnd/oxrs1\"\nmsg.payload =\n\n{\n    \"addIcon\": {\n        \"name\": \"dishwasher\",\n        \"imageBase64\": \"iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAYAAAA6/NlyAAAACXBIWXMAAAsTAAALEwEAmpwYAAADCUlEQVR4nO2aS4wMURSGv2YmRktIhBCbjk7ESEhk2o6NRzw3Hm2FkKDFkkzCxJJg4hHbXre9RywEC4LdWHiNMBvJCEMQMgsRj5KbnE5OrqrqqtJl6k7Xn5xF3XOr+nx9bt2+99yGXLk6RsuAmoN2EOhNAjwKeI7aWBJgz3FLDGyGiSsysebAWcnwFGAfcAHY4OPfKL690ldrOTAIHAGKrmT4kvXO7VK+PZbvogX7XfnuAgUXgD9bULeU77bl+6R8Z30mqIUuAL+wgm4o32XLN6x8Ry2fyfYsF4DXqCy/UlkyKgMjKrurla8ow7gJe0j5Mg1sNB1YBEzlb3WJrwd/lVVmnQFut9oC3MjA+jiqNdoB7DlqOXDUDHfcO1zDHeXAcZRnOCWVgAqwpEW/itgc14d0XT5nqA3x5MBZzrDZSAwAc1vEcw/Y7lMUcC7DnthXoBoST9MeAgsmA7AH/AQ2B8Sj7TkwIy3gopopk1opBPgpcBz4IddvgGk+8ZyzKiKn0wKutGFBX48wS+9X/asB8XQDD+T6g3qfnQQuAB+lbTAknqpqK6cNvDvmUB6OAWz0yKe/Hc8K1daXNnAl5rOGYgL79Y8STw4cR/Y32vcPGfYbopnPcFm1rYv5rNdy3xmXgHuAb9Jmfi+jah7wS+4zh9XOABvdlLaX8lsYRSfknt8tFh6ZBN6i2k9GeMZSYFz6Xwnok2ngAnBDZexUSKZXAW+l77icIjgHjFQcnij/iGzr1gMr5Tz3mnwhzfOfbQQrswsPrdnA1ZAlZNPMH2PWEq6wpaU5Gg2KZ2faS0s/mZP76+o99WRGfgz0AzNpLRv4gHrWjoB4umU/bK7fp7V5CFOX6n+YeNLbwwG1PRwN2B6eB+6oazOPTEgBwIvZv1UBYFPA87U9S7MA8L+AvwRMcjbsfWC+1SdV4JK1BdRDTLfHKeIdC6k76yLe1oko4tUjzNLeZKpL1zsNuBSx2tFKHXfU0k7lwHGUZ7hThrTnqMXWWAaCTmrvkgD3Sg2q5piZmBcnAc6VC/f0BxTZ3v5vasynAAAAAElFTkSuQmCC\"\n    }\n}\n\nnode.send(msg);\n\nmsg.payload =\n\n{\n    \"addIcon\": {\n        \"name\": \"ledstrip\",\n        \"imageBase64\": \"iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAYAAAA6/NlyAAAACXBIWXMAAAsTAAALEwEAmpwYAAAC/0lEQVR4nO2ay2oUQRSGv5mFI4oo7r0sTIy3jTdInHjZzGhINF5fQRAFg8+QRQIGAoILV8l7CAE3OqB5iQER8TojcRFpKTgNh6GnZ6q7YleN/UNDU91Vfb45NadPnWooVaqUA10Frlj2OQPMEKCOAn/kODJknyawBUTAEoHpnBgeyfkgNRRsfDxnRIGbCvYbsKn6Lo0acEPBfgcuAvuBt6F5+rgy2JwP49nz6toBoOWbpyvAbWCsz/XHctjAXgZWZGzvoOfFkI9AzaJfGmxX2l/6CD2lDJlzCBv5Cl0F2mLEuiPYTg+cd9CrYsAPYLdlNDaqAz+l/RdwDdgDvFZwr+TH9SJ6TykDjuX07LTqsxfYKMrTFeAWMNHn+hPgkUPYwqHnBhjGDsBqaA1nXlkItM7IruNQ42KYDbQLWOR6/Oyu9De6IOOadvOc0zkZUx/cScmeioBtOmJMNeDmqMPGMoHrjgSPQbDGOK9hq8A9edWYcxsFB2v0QEW9tiQVBn4kYZFI97knn41SVjxBw8aqyXt3XVLAyCKpCA42CX7sf4HF0UIgTZf63H8W+CLtv4FZClQjVNjDUlyLj7TMybdpfMKywkJdCuQhRuNnanatyQyoDQO8bQHsC6zRQoLdn4BTrqa0T7D6/7+qyksRcBcH8hFWqyqZ4HyGVHh0onHInrWOxiHDZorGocLmisYhwsYqozEOonHTE8+m1b2dqekJbNa6d5CwWeve1p8GbXkCmzRWx/X0vqFC/QfZlUO2MeL2lmxz/Mt0cZi6d2YtK7h3Al2RDau4faMPdF7Yp8DDPtcmJIAl1b0LgZ7OCTuuxp6kAC0qA94DBwX6hWp/A+xztBDYBXyVe80SrxAtD+HplsP/7Jrc33aRSOwktKsANavGG2ZnozDorqNoXJOFQCQBCh+hVzLALkhETpJZ9dwvckoPgsYS9qQawyzkvddiQvS2ica2nw/jm6c3Lf+zQQL3etqm4BYssPa0TTQ+JMX+bTkPTjMZPg2qS3ZWqlQpcukvHk3apnhrkNEAAAAASUVORK5CYII=\"\n    }\n}\n\nnode.send(msg);\n\nmsg.payload =\n\n{\n    \"addIcon\": {\n        \"name\": \"washer\",\n        \"imageBase64\": \"iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAYAAAA6/NlyAAAACXBIWXMAAAsTAAALEwEAmpwYAAADp0lEQVR4nO2bWUhVURSGv7KJJg0azLQyoqcGeyrLxhdpBCltgtAeJMKHBrLspYKihyB7quwlepAGiqIBooFKooIsgsgIooIsjLICm8zM2LAuLU73eq/nXO/dR88PGw/stddev3uftdda+1wIEKBbIgsoAkotbUViY1ywA2gB2ixvv4AKr2SXWkCko22JF8InRUkdMBx7YWx7JrYam13jgSg5iv04KrYam12jVpRUYT+qxFZjs68IzwYKgbQwfZOAVRE8si8JVynnUw9kqL71QKv0fQXy/E44I4zH3an63zn6Lvid8MgohN92NcIGhxWhN0A6/1Dq2NIz6AKEDWaJ00rlf0wEVgKZYfp8S9gtAsJuEKywC/QEpgF7gVvAc3E674F7wAmgHBiHz7d0ClACvOpAplMrGZrvCOdIhqXJfAbOyUpvlGaez0uflq0BJviF8BrgmzL+JrBYVjwSUiSPve34By2wnXAx8EfGfJQzs6NYDTSKjt/AClsJzwWaRd68t+M9zDsWeCG6fgC5thFOE68bLstxi0wVP5u/g2wiXClyLWHSNq+5caiAuM8WwllSMTRyh4g/jojun1F2TsIIl8dokFuMEt1mjs02EH7syE9TpRQzGujhYk4zZozoCGVMF2Mo0CWE8EB1DF0HHjkCCONs9jjy2khIF1lnov9QdLfJXAOSSXhqjCGj2ZLV4oR0ANILmCN9oW0breUkk3ChwxizEmWSxC8HTkvwoGWaJOysk2fdZ2RPActEh9F1wyFTmEzCxcqQ/Agy2XKkNLSzag0iYwKOcMhXsuuSSXihMiRc2UWjDzAf2CbndqU8zwN6RxmbpeYxN4VJI5yjDJlO52Gmmic3mYQHq6CjvTPSK7bKHM3thJgJO4evicwdOg/3ZY4r7cgkjHCZyLRKsBBvTFFn/QYbCKdJ7httBdziquj+BAyxJVvaopzKWuKHEqV3UxTZhBLuBzxVUZXxql6Rp6KvJ0Bf2yoe2cAHFU0VeJh3EfBFdDXGWD1JSk1rrgoXjRPbH+FiOxLMO3pAOakmibWtrlpOBl6rd8+s0C7xtpFg+naLYwqNe9lBr5/UuvQw4Li63tRXoDWSHVXLc71Dxow5Bgz1281DaOXOAt9jSPuMzBnZIW5gBeEQ+osTOwhcBu5KuyRJRIHIeIFVhBOBgLAbBCtsMYIt7Qbd7uPSkz75fHhEvD4fXhJjrdimZi7fPaFC1a1sbsbG7XSjH3lkxotsgAD4B38B4pHXKlNth+4AAAAASUVORK5CYII=\"\n    }\n}\n\n\nreturn msg;\n\n// <img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAYAAAA6/NlyAAAACXBIWXMAAAsTAAALEwEAmpwYAAAC/0lEQVR4nO2ay2oUQRSGv5mFI4oo7r0sTIy3jTdInHjZzGhINF5fQRAFg8+QRQIGAoILV8l7CAE3OqB5iQER8TojcRFpKTgNh6GnZ6q7YleN/UNDU91Vfb45NadPnWooVaqUA10Frlj2OQPMEKCOAn/kODJknyawBUTAEoHpnBgeyfkgNRRsfDxnRIGbCvYbsKn6Lo0acEPBfgcuAvuBt6F5+rgy2JwP49nz6toBoOWbpyvAbWCsz/XHctjAXgZWZGzvoOfFkI9AzaJfGmxX2l/6CD2lDJlzCBv5Cl0F2mLEuiPYTg+cd9CrYsAPYLdlNDaqAz+l/RdwDdgDvFZwr+TH9SJ6TykDjuX07LTqsxfYKMrTFeAWMNHn+hPgkUPYwqHnBhjGDsBqaA1nXlkItM7IruNQ42KYDbQLWOR6/Oyu9De6IOOadvOc0zkZUx/cScmeioBtOmJMNeDmqMPGMoHrjgSPQbDGOK9hq8A9edWYcxsFB2v0QEW9tiQVBn4kYZFI97knn41SVjxBw8aqyXt3XVLAyCKpCA42CX7sf4HF0UIgTZf63H8W+CLtv4FZClQjVNjDUlyLj7TMybdpfMKywkJdCuQhRuNnanatyQyoDQO8bQHsC6zRQoLdn4BTrqa0T7D6/7+qyksRcBcH8hFWqyqZ4HyGVHh0onHInrWOxiHDZorGocLmisYhwsYqozEOonHTE8+m1b2dqekJbNa6d5CwWeve1p8GbXkCmzRWx/X0vqFC/QfZlUO2MeL2lmxz/Mt0cZi6d2YtK7h3Al2RDau4faMPdF7Yp8DDPtcmJIAl1b0LgZ7OCTuuxp6kAC0qA94DBwX6hWp/A+xztBDYBXyVe80SrxAtD+HplsP/7Jrc33aRSOwktKsANavGG2ZnozDorqNoXJOFQCQBCh+hVzLALkhETpJZ9dwvckoPgsYS9qQawyzkvddiQvS2ica2nw/jm6c3Lf+zQQL3etqm4BYssPa0TTQ+JMX+bTkPTjMZPg2qS3ZWqlQpcukvHk3apnhrkNEAAAAASUVORK5CYII=\">\n\n","outputs":1,"timeout":0,"noerr":0,"initialize":"","finalize":"","libs":[],"x":800,"y":525,"wires":[["db5727efc6b6174b"]]},{"id":"645b7477715d7dec","type":"function","z":"8d97cec16eabefaf","name":"toggle switches","func":"msg.topic = \"oxrs/cmnd/oxrs1\"\n\nmsg.payload = {\n    \"tiles\": [\n        {\n            \"screen\": msg.payload.screen,\n            \"tile\": msg.payload.tile,\n            \"state\": msg.payload.state == \"off\" ? \"on\" : \"off\",\n            \"subLabel\": \"\"\n        }\n    ]\n}\n\n\nreturn msg","outputs":1,"timeout":0,"noerr":0,"initialize":"","finalize":"","libs":[],"x":410,"y":390,"wires":[["33065d3ebc2dd869"]]},{"id":"33065d3ebc2dd869","type":"rbe","z":"8d97cec16eabefaf","name":"","func":"rbe","gap":"","start":"","inout":"out","septopics":true,"property":"payload","topi":"topic","x":560,"y":390,"wires":[["2ede5e294e05a833"]]},{"id":"19265a33dc2e8914","type":"function","z":"8d97cec16eabefaf","name":"Setup Screen 2","func":"msg.topic = \"oxrs/conf/oxrs1\"\nmsg.payload =\n{\n    \"screens\": [\n        {\n            \"screen\": 2,\n            \"label\": \"Somewhere\",\n            \"tiles\": [\n                {\n                    \"tile\": 1,\n                    \"style\": \"colorPickerRgb\",\n                    \"icon\": \"_bulb\",\n                    \"label\": \"Kitchen Cupboards\"\n                },\n                {\n                    \"tile\": 2,\n                    \"style\": \"button\",\n                    \"icon\": \"_bulb\",\n                    \"label\": \"Main Light\"\n                }\n                ,\n                {\n                    \"tile\": 3,\n                    \"style\": \"button\",\n                    \"icon\": \"_bulb\",\n                    \"label\": \"Down Light\"\n                },\n                 {\n                    \"tile\": 4,\n                    \"style\": \"button\",\n                    \"icon\": \"dishwasher\",\n                    \"label\": \"Dish Washer\"\n                },\n                 {\n                    \"tile\": 5,\n                    \"style\": \"button\",\n                    \"icon\": \"washer\",\n                    \"label\": \"Washer Dryer\"\n                },\n                {\n                    \"tile\": 6,\n                    \"style\": \"indicator\",\n                    \"label\": \"Temp / Hum\"\n                }\n            ]\n        }\n    ]\n}\n\n\nreturn msg;","outputs":1,"timeout":0,"noerr":0,"initialize":"","finalize":"","libs":[],"x":800,"y":615,"wires":[["db5727efc6b6174b"]]},{"id":"99b23918b84fbb1a","type":"inject","z":"8d97cec16eabefaf","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":385,"y":615,"wires":[["19265a33dc2e8914"]]},{"id":"ddbb0ff67efbe9a2","type":"mqtt in","z":"8d97cec16eabefaf","name":"","topic":"oxrs/stat/oxrs1/lwt","qos":"2","datatype":"auto-detect","broker":"","nl":false,"rap":true,"rh":0,"inputs":0,"x":195,"y":525,"wires":[["db4372e86b15b8ab"]]},{"id":"db4372e86b15b8ab","type":"switch","z":"8d97cec16eabefaf","name":"Restarted","property":"payload.online","propertyType":"msg","rules":[{"t":"true"}],"checkall":"true","repair":false,"outputs":1,"x":375,"y":525,"wires":[["1149fbc9159e0606","c7cb9c86f32cfbdd","83dc0496a2adf9e7","19265a33dc2e8914"]]},{"id":"3efd94a1d5975a40","type":"debug","z":"8d97cec16eabefaf","name":"debug 342","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":400,"y":330,"wires":[]},{"id":"201f3390fbec7ce9","type":"inject","z":"8d97cec16eabefaf","name":"icons","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":620,"y":480,"wires":[["c7cb9c86f32cfbdd"]]},{"id":"772c68ff9e031084","type":"inject","z":"8d97cec16eabefaf","name":"startup","props":[{"p":"payload.online","v":"true","vt":"bool"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","x":380,"y":480,"wires":[["83dc0496a2adf9e7"]]},{"id":"8f2db35ff6f37c4c","type":"http request","z":"8d97cec16eabefaf","name":"","method":"GET","ret":"bin","paytoqs":"ignore","url":"192.168.1.56/api/snapshot.bmp","tls":"","persist":false,"proxy":"","insecureHTTPParser":false,"authType":"","senderr":false,"headers":[],"x":1060,"y":195,"wires":[["78e9b2104c732a7f"]]},{"id":"47c104c750991590","type":"inject","z":"8d97cec16eabefaf","name":"Screen Snapshot","props":[{"p":"payload"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"1","payloadType":"str","x":875,"y":195,"wires":[["8f2db35ff6f37c4c"]]},{"id":"78e9b2104c732a7f","type":"image","z":"8d97cec16eabefaf","name":"","width":"480","data":"payload","dataType":"msg","thumbnail":false,"active":true,"pass":false,"outputs":0,"x":1480,"y":195,"wires":[]},{"id":"c92d2067235fe352","type":"mqtt in","z":"8d97cec16eabefaf","name":"","topic":"oxrs/stat/oxrs1/log","qos":"2","datatype":"auto-detect","broker":"","nl":false,"rap":true,"rh":0,"inputs":0,"x":195,"y":720,"wires":[["37e1627f326b3d50"]]},{"id":"37e1627f326b3d50","type":"debug","z":"8d97cec16eabefaf","name":"LOG","active":true,"tosidebar":true,"console":false,"tostatus":true,"complete":"payload","targetType":"msg","statusVal":"payload","statusType":"auto","x":385,"y":720,"wires":[]},{"id":"2ede5e294e05a833","type":"mqtt out","z":"8d97cec16eabefaf","name":"","topic":"","qos":"","retain":"false","respTopic":"","contentType":"","userProps":"","correl":"","expiry":"","broker":"","x":700,"y":390,"wires":[]},{"id":"beb8d5facac3a714","type":"inject","z":"8d97cec16eabefaf","name":"green Background","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":"1","topic":"oxrs/cmnd/oxrs1","payload":"{\"screens\":[{\"screen\":1,\"backgroundColorRgb\":{\"r\":50,\"g\":100,\"b\":50}}]}","payloadType":"json","x":1055,"y":360,"wires":[["db5727efc6b6174b"]]},{"id":"a8996a20f0304cd1","type":"inject","z":"8d97cec16eabefaf","name":"red Background","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":"1","topic":"oxrs/cmnd/oxrs1","payload":"{\"screens\":[{\"screen\":1,\"backgroundColorRgb\":{\"r\":100,\"g\":50,\"b\":50}}]}","payloadType":"json","x":1045,"y":405,"wires":[["db5727efc6b6174b"]]},{"id":"ae884bd800a07565","type":"delay","z":"8d97cec16eabefaf","name":"","pauseType":"delay","timeout":"1","timeoutUnits":"seconds","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"allowrate":false,"outputs":1,"x":990,"y":660,"wires":[["db5727efc6b6174b"]]},{"id":"ad30570f935b4c7b","type":"inject","z":"8d97cec16eabefaf","name":"Blue Background","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":true,"onceDelay":"1","topic":"oxrs/cmnd/oxrs1","payload":"{\"screens\":[{\"screen\":1,\"backgroundColorRgb\":{\"r\":50,\"g\":50,\"b\":100}}]}","payloadType":"json","x":1055,"y":315,"wires":[["db5727efc6b6174b"]]},{"id":"2f34d75c258c535e","type":"inject","z":"8d97cec16eabefaf","name":"footer","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"oxrs/cmnd/oxrs1","payload":"{\"screens\":[{\"screen\":1,\"footer\":{\"left\":\"Wed 07 Sep\",\"center\":\"center\",\"right\":\"20:49pm\"}}]}","payloadType":"json","x":1015,"y":450,"wires":[["db5727efc6b6174b"]]},{"id":"f4a3173f66fdd21c","type":"inject","z":"8d97cec16eabefaf","name":"footer off","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"oxrs/cmnd/oxrs1","payload":"{\"screens\":[{\"screen\":1,\"footer\":{}}]}","payloadType":"json","x":1025,"y":495,"wires":[["db5727efc6b6174b"]]}]

good man thanks - will try and make a start this weekend

Craig

1 Like

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.