rand256 / valetudo

Valetudo RE - experimental vacuum software, cloud free
Apache License 2.0
667 stars 73 forks source link

Enhancement request: Set finish point in dependant of zone #323

Closed snowwiddow closed 3 years ago

snowwiddow commented 3 years ago

Hi,

in the web interface I can define a target point, where the cleaner goes when it has finished the cleaning process. Because I have different maps (one for each floor) it would be great to set a target point corresponding to each map.

Different example: If I select the cleaning zones "kitchen" and "living room" the robot should go to coordinate [x,y] at the finish. BUT if i select ONLY cleaning zone "kitchen" the robot should go to the finish coordinates [a,b].

I control the robot via MQTT so my idea (realized in my home automation software) is: 1.) Select cleaning zones 2) In dependancy of the selected zones the robot goes to different end points 3) Set the specific endpoint via API (or mqtt) 4) Start cleaning

Oh I've seen the the target point is in the config.json as "spot". So another possibility would be to define the target point with the custom-mqtt-command:

custom_command {"command":"zoned_cleanup","zone_ids":["living","dining","kitchen"],"waiting":"[spot]"}

"waiting# would an optional parameter of "zoned_cleanup" If "waiting" is not defined or [spot] is empty (like []) the robot returns to dock. If it is defined the robot run to the defined spot after the last cleaned zone.

Would it be possible to enhance the mqtt-code? This would be great.

Greetings Frank