UNPKG

matterbridge-roborock-vacuum-plugin

Version:
251 lines (250 loc) 9.12 kB
{ "title": "Matterbridge Roborock Vacuum Plugin", "description": "matterbridge-roborock-vacuum-plugin v. 1.1.1-rc06 by https://github.com/RinDevJunior", "type": "object", "required": ["username", "password"], "properties": { "name": { "description": "Plugin name", "type": "string", "readOnly": true, "ui:widget": "hidden" }, "type": { "description": "Plugin type", "type": "string", "readOnly": true, "ui:widget": "hidden" }, "whiteList": { "description": "(ONLY SET IF YOU HAVE MULTIPLE VACUUMS) Only THE FIRST ONE device with <Name>-<duid> in the list will be exposed. If the list is empty, THE FIRST device will be exposed.", "type": "array", "items": { "type": "string" }, "uniqueItems": true, "selectFrom": "name" }, "username": { "description": "Roborock username (required for the plugin to work)", "type": "string" }, "password": { "description": "Roborock password (required for the plugin to work)", "type": "string", "ui:widget": "password" }, "refreshInterval": { "description": "Refresh interval in seconds (default: 60)", "type": "number", "default": 60 }, "enableExperimental": { "title": "Enable the experimental feature", "type": "object", "properties": { "enableExperimentalFeature": { "title": "Enable Custom Clean Mode", "type": "boolean", "default": false } }, "allOf": [ { "if": { "properties": { "enableExperimentalFeature": { "const": true } }, "required": ["enableExperimentalFeature"] }, "then": { "properties": { "advancedFeature": { "title": "Enable Advanced Feature", "type": "object", "properties": { "showRoutinesAsRoom": { "title": "Show Routines As Room", "type": "boolean", "default": false }, "includeDockStationStatus": { "title": "Include Dock Station Status", "type": "boolean", "default": false }, "forceRunAtDefault": { "title": "Force Run At Default Implementation", "type": "boolean", "default": false }, "useVacationModeToSendVacuumToDock": { "title": "Use \"Vacation\" Mode To Send Vacuum To Dock", "type": "boolean", "default": false }, "enableServerMode": { "description": "Enable the Robot Vacuum Cleaner in server mode (Each vacuum will have its own server).", "type": "boolean", "default": false }, "alwaysExecuteAuthentication": { "description": "Always execute authentication on startup.", "type": "boolean", "default": false }, "enableMultipleMap": { "description": "Enable multiple maps support.", "type": "boolean", "default": false } } }, "cleanModeSettings": { "title": "Enable Custom Clean Mode", "type": "object", "properties": { "enableCleanModeMapping": { "type": "boolean", "default": false } }, "allOf": [ { "if": { "properties": { "enableCleanModeMapping": { "const": true } }, "required": ["enableCleanModeMapping"] }, "then": { "properties": { "vacuuming": { "title": "Vacuuming only", "type": "object", "properties": { "fanMode": { "$ref": "#/$defs/fanMode", "default": "Balanced" }, "mopRouteMode": { "$ref": "#/$defs/mopRouteMode" } } }, "mopping": { "title": "Mopping only", "type": "object", "properties": { "waterFlowMode": { "$ref": "#/$defs/waterFlowMode" }, "mopRouteMode": { "$ref": "#/$defs/mopRouteMode" } }, "allOf": [ { "if": { "properties": { "waterFlowMode": { "const": "CustomizeWithDistanceOff" } } }, "then": { "properties": { "distanceOff": { "type": "number", "description": "Distance Off - Default = 25", "default": 25 } }, "required": ["distanceOff"] } } ] }, "vacmop": { "title": "Vacuuming and Mopping", "type": "object", "properties": { "fanMode": { "$ref": "#/$defs/fanMode", "default": "Balanced" }, "waterFlowMode": { "$ref": "#/$defs/waterFlowMode" }, "mopRouteMode": { "$ref": "#/$defs/mopRouteMode" } }, "allOf": [ { "if": { "properties": { "waterFlowMode": { "const": "CustomizeWithDistanceOff" } } }, "then": { "properties": { "distanceOff": { "type": "number", "description": "Distance Off - Default = 25", "default": 25 } }, "required": ["distanceOff"] } } ] } } } } ] } } } } ] }, "debug": { "description": "Enable the debug for the plugin (development only)", "type": "boolean", "default": false }, "unregisterOnShutdown": { "description": "Unregister all devices on shutdown (development only)", "type": "boolean", "default": false } }, "$defs": { "fanMode": { "type": "string", "description": "Suction power mode to use (e.g., 'Quiet', 'Balanced', 'Turbo', 'Max', 'MaxPlus').", "enum": ["Quiet", "Balanced", "Turbo", "Max", "MaxPlus"], "default": "Balanced" }, "waterFlowMode": { "type": "string", "description": "Water flow mode to use (e.g., 'Low', 'Medium', 'High', 'CustomizeWithDistanceOff').", "enum": ["Low", "Medium", "High", "CustomizeWithDistanceOff"], "default": "Medium" }, "mopRouteMode": { "type": "string", "description": "Mop route intensity to use (e.g., 'Standard', 'Deep', 'DeepPlus', 'Fast').", "enum": ["Standard", "Deep", "DeepPlus", "Fast"], "default": "Standard" } } }