UNPKG

@george.talusan/node-red-contrib-eufy-robovac

Version:

Node RED plugin wrapper around [eufy-robovac-js](https://github.com/gtalusan/eufy-robovac-js).

482 lines (481 loc) 11.5 kB
[ { "id": "eb6ebf0d1efdab1b", "type": "tab", "label": "vacuum", "disabled": false, "info": "", "env": [] }, { "id": "c8c481c031d288d0", "type": "debug", "z": "eb6ebf0d1efdab1b", "name": "robovac", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "true", "targetType": "full", "statusVal": "", "statusType": "auto", "x": 320, "y": 440, "wires": [] }, { "id": "28d22a5c6cc08c8f", "type": "inject", "z": "eb6ebf0d1efdab1b", "name": "", "props": [ { "p": "payload" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payload": "0,2", "payloadType": "str", "x": 190, "y": 260, "wires": [ [ "9e1287cd0306965b" ] ] }, { "id": "fc6345e71d4a5b39", "type": "inject", "z": "eb6ebf0d1efdab1b", "name": "11:00am", "props": [], "repeat": "", "crontab": "00 11 * * *", "once": false, "onceDelay": 0.1, "topic": "", "x": 200, "y": 320, "wires": [ [ "fb9c693d88bcbb9e" ] ] }, { "id": "b69e25e4903751b9", "type": "ui-gauge", "z": "eb6ebf0d1efdab1b", "name": "Eufy Robovac Battery %", "group": "86ecb07669a235fb", "order": 1, "width": "4", "height": "3", "gtype": "gauge-battery", "gstyle": "needle", "title": "battery %", "units": "units", "icon": "", "prefix": "", "suffix": "", "segments": [ { "from": "0", "color": "#ea5353" }, { "from": "40", "color": "#ffc800" }, { "from": "70", "color": "#5cd65c" } ], "min": 0, "max": "100", "sizeThickness": 16, "sizeGap": 4, "sizeKeyThickness": 8, "styleRounded": true, "styleGlow": false, "className": "", "x": 810, "y": 480, "wires": [] }, { "id": "bd448ad1b528168f", "type": "switch", "z": "eb6ebf0d1efdab1b", "name": "", "property": "payload.command", "propertyType": "msg", "rules": [ { "t": "eq", "v": "battery", "vt": "str" }, { "t": "eq", "v": "hello", "vt": "str" } ], "checkall": "true", "repair": false, "outputs": 2, "x": 310, "y": 500, "wires": [ [ "19293dae010defa2", "d2928f1e9b89d4c8" ], [ "6482eb5a2048c664", "366319dd3f1c7c0b" ] ] }, { "id": "19293dae010defa2", "type": "function", "z": "eb6ebf0d1efdab1b", "name": "battery %", "func": "return { payload: msg.payload.value };", "outputs": 1, "timeout": 0, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 500, "y": 480, "wires": [ [ "b69e25e4903751b9" ] ] }, { "id": "6482eb5a2048c664", "type": "function", "z": "eb6ebf0d1efdab1b", "name": "voltage", "func": "return {\n payload: {\n topic: 'voltage',\n timestamp: Date.now(),\n value: msg.payload.value.HW.V / 1000.0\n }\n};", "outputs": 1, "timeout": 0, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 500, "y": 600, "wires": [ [ "b2aa821e49322dc0" ] ] }, { "id": "b2aa821e49322dc0", "type": "ui-chart", "z": "eb6ebf0d1efdab1b", "group": "86ecb07669a235fb", "name": "Eufy Robovac Power Graph", "label": "battery health", "order": 2, "chartType": "line", "category": "payload.topic", "categoryType": "msg", "xAxisLabel": "time", "xAxisProperty": "timestamp", "xAxisPropertyType": "property", "xAxisType": "time", "xAxisFormat": "", "xAxisFormatType": "auto", "yAxisLabel": "voltage", "yAxisProperty": "value", "ymin": "-5.0", "ymax": "17.0", "action": "append", "stackSeries": false, "pointShape": "circle", "pointRadius": 4, "showLegend": true, "removeOlder": "104", "removeOlderUnit": "604800", "removeOlderPoints": "", "colors": [ "#0095ff", "#ff0000", "#ff7f0e", "#2ca02c", "#a347e1", "#d62728", "#ff9896", "#9467bd", "#c5b0d5" ], "textColor": [ "#666666" ], "textColorDefault": true, "gridColor": [ "#e5e5e5" ], "gridColorDefault": true, "width": "12", "height": "8", "className": "", "x": 820, "y": 560, "wires": [ [ "28a6762c3557d87a" ] ] }, { "id": "366319dd3f1c7c0b", "type": "function", "z": "eb6ebf0d1efdab1b", "name": "current", "func": "return {\n payload: {\n topic: 'current',\n timestamp: Date.now(),\n value: msg.payload.value.HW.I / 1000.0\n }\n};", "outputs": 1, "timeout": 0, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 500, "y": 640, "wires": [ [ "b2aa821e49322dc0" ] ] }, { "id": "d2928f1e9b89d4c8", "type": "function", "z": "eb6ebf0d1efdab1b", "name": "battery %", "func": "return {\n payload: {\n topic: 'battery %',\n timestamp: Date.now(),\n value: msg.payload.value / 100.0 * 15.0\n }\n};", "outputs": 1, "timeout": 0, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 500, "y": 560, "wires": [ [ "b2aa821e49322dc0" ] ] }, { "id": "9e1287cd0306965b", "type": "command", "z": "eb6ebf0d1efdab1b", "config": "2c5e74835590d24a", "name": "clean rooms", "command": "cleanRooms", "x": 390, "y": 260, "wires": [] }, { "id": "fb9c693d88bcbb9e", "type": "command", "z": "eb6ebf0d1efdab1b", "config": "2c5e74835590d24a", "name": "clean", "command": "clean", "x": 410, "y": 320, "wires": [] }, { "id": "0d64b4a2b537c5aa", "type": "event", "z": "eb6ebf0d1efdab1b", "config": "2c5e74835590d24a", "name": "", "output": "event", "x": 110, "y": 480, "wires": [ [ "c8c481c031d288d0", "bd448ad1b528168f" ] ] }, { "id": "28a6762c3557d87a", "type": "json", "z": "eb6ebf0d1efdab1b", "name": "", "property": "payload", "action": "str", "pretty": false, "x": 1030, "y": 560, "wires": [ [ "71047cc79e224ee5" ] ] }, { "id": "71047cc79e224ee5", "type": "file", "z": "eb6ebf0d1efdab1b", "name": "", "filename": "main-robovac.json", "filenameType": "str", "appendNewline": true, "createDir": false, "overwriteFile": "false", "encoding": "none", "x": 1210, "y": 560, "wires": [ [] ] }, { "id": "2be0f876de4979ed", "type": "inject", "z": "eb6ebf0d1efdab1b", "name": "", "props": [], "repeat": "", "crontab": "", "once": true, "onceDelay": 0.1, "topic": "", "x": 110, "y": 720, "wires": [ [ "46db56e6691da5cd" ] ] }, { "id": "46db56e6691da5cd", "type": "file in", "z": "eb6ebf0d1efdab1b", "name": "", "filename": "main-robovac.json", "filenameType": "str", "format": "lines", "chunk": false, "sendError": false, "encoding": "none", "allProps": false, "x": 310, "y": 720, "wires": [ [ "0bbc91b403bd4284" ] ] }, { "id": "0bbc91b403bd4284", "type": "json", "z": "eb6ebf0d1efdab1b", "name": "", "property": "payload", "action": "obj", "pretty": false, "x": 510, "y": 720, "wires": [ [ "b2aa821e49322dc0" ] ] }, { "id": "86ecb07669a235fb", "type": "ui-group", "name": "Vacuum", "page": "97df5425b55f5140", "width": "12", "height": "1", "order": 1, "showTitle": true, "className": "", "visible": "true", "disabled": "false" }, { "id": "2c5e74835590d24a", "type": "eufy-robovac-config", "ip": "10.0.1.69", "deviceId": "[YOUR DEVICE ID]", "localKey": "[YOUR LOCAL KEY]" }, { "id": "97df5425b55f5140", "type": "ui-page", "name": "Vacuum", "ui": "afddb1fa69affa7c", "path": "/vacuum", "icon": "home", "layout": "grid", "theme": "94ab46f62e6190ad", "order": 1, "className": "", "visible": "true", "disabled": "false" }, { "id": "afddb1fa69affa7c", "type": "ui-base", "name": "My Dashboard", "path": "/dashboard", "includeClientData": true, "acceptsClientConfig": [ "ui-notification", "ui-control" ], "showPathInSidebar": false, "showPageTitle": true, "navigationStyle": "default", "titleBarStyle": "default" }, { "id": "94ab46f62e6190ad", "type": "ui-theme", "name": "Default Theme", "colors": { "surface": "#000000", "primary": "#0094ce", "bgPage": "#000000", "groupBg": "#000000", "groupOutline": "#cccccc" }, "sizes": { "density": "default", "pagePadding": "12px", "groupGap": "12px", "groupBorderRadius": "4px", "widgetGap": "12px" } } ]