roborock: add Q7 map image entity and segment-clean handling#164439
roborock: add Q7 map image entity and segment-clean handling#164439arduano wants to merge 3 commits intohome-assistant:devfrom
Conversation
|
Please take a look at the requested changes, and use the Ready for review button when you are done, thanks 👍 |
|
Hey there @Lash-L, @allenporter, mind taking a look at this pull request as it has been labeled with an integration ( Code owner commandsCode owners of
|
|
Hey, just a draft PR I'm scrapping together with my openclaw instance This is for a Q7T+ that a family member recently purchased, and I was sad to find out that their purchase isn't compatible with my HASS so I decided to go fix it myself |
There was a problem hiding this comment.
Pull request overview
This PR updates the Roborock integration to improve segment/room cleaning support for Q7 models by wiring Q7 devices into Home Assistant’s area-cleaning feature set and normalizing common “segment clean” command payloads.
Changes:
- Add
VacuumEntityFeature.CLEAN_AREAand a Q7-specificasync_clean_segmentsimplementation that normalizes segment identifiers to room IDs. - Route
send_commandpayloads using the"app_segment_clean"alias into the Q7 segment-clean path. - Extend/adjust Roborock Q7 test fixtures and add new tests for the new behavior.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
homeassistant/components/roborock/vacuum.py |
Enables CLEAN_AREA for Q7, adds segment-id normalization and alias routing in async_send_command. |
tests/components/roborock/test_vacuum.py |
Adds Q7 tests for clean-area and alias routing; extends failure test coverage. |
tests/components/roborock/conftest.py |
Extends Q7 trait mock with clean_segments. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 29d2f1a47e
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
Ignore this PR until this one's merged: Python-roborock/python-roborock#774 |
There was a problem hiding this comment.
Appreciate the work to improve roborock. Initial high level thoughts:
(1) Please review https://developers.home-assistant.io/docs/core/entity/image/ for how to implement image entities properly.
(2) Image and segment handling should be separate PRs for separate features/platforms.
(I know you said to ignore the PR until the other is merged, but also want to get ahead of these fundamental things)
|
I will close this PR for now. I know there's more activity, but as this PR currently requires more work and things like the PR template is not filled in and the CLA is not signed, I think it's better to close it until the rest is ready. Feel free to continue whenever you feel like picking this up again |
Summary
VacuumEntityFeature.CLEAN_AREAforRoborockQ7Vacuumasync_clean_segments()for Q7 and normalize segment ids (e.g."10","1_10")send_commandaliasapp_segment_cleanto the Q7 segment-clean pathimage.roborock_q7_current_map) using librarymap_content.refresh()Dependency
Depends on
python-roborockPR #774 for Q7map_contentsupport.Testing