-
-
Notifications
You must be signed in to change notification settings - Fork 31.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Roborock Add vacuum_goto service #133994
Roborock Add vacuum_goto service #133994
Conversation
Hey there @Lash-L, mind taking a look at this pull request as it has been labeled with an integration ( Code owner commandsCode owners of
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Merry Christmas/ happy holidays! Looks good to me - but I'll defer to a core dev for a review
Makes sense to have a command to send the robot vacuum to a specific place. However, I could use some help understanding how users are expected to know the coordinate system. How do I as a user figure this out? The documentation is pretty minimal, and even then just wondering in practice how this will work. (e.g. do we also need to provide things like coordinates of the base, or current coordinates, to make this actually useful in automations) |
@allenporter |
Of course :) sorry I missed this. Can get back to working with you on this now... |
No rush! Appreciate your help on that one Allen. But I think to get the coordinates in a sane way requires some more refactoring so it doesn't make sense to refactor while refactoring. But it also doesn't make sense to make that pr even bigger! Should this pr hold off until we get a means of displaying coordinates? |
I would say yes. I don't think we should add services to consume coordinates when we haven't specified how coordinators work yet. |
Please understand this as feedback and not as criticism: If anyone wants to understand why people prefer maintaining HACS duplicates of integrations rather than improving the proper core integrations (and I see this multiple times in my HA installation), they only need to look at the process here. I absolutely agree that we need something for coordinates, and the current method of guessing, triggering actions, and checking in the app where the pin landed is not ideal. However, please don’t forget that this is simply an exact replica of the behavior of the Xiaomi integration. This doesn’t motivate me as a contributor to submit further commits when such small additions are endlessly debated. |
I understand the frustration- but 2 points
Those are just my thoughts! |
Yes we have a higher bar here. This is working as intended. The goal isn't to just copy features, but actually solve the harder problem of making them usable for a broader audience which requires more design work. We are all robock users here on this PR and motivated to add new features, and help you with contributing. |
@Lash-L @allenporter I’ve now added a “Roborock: Get current position” service, which works perfectly for me without any delay. We can switch it over later once there’s a cached map in place; however, for this particular use case, the direct call might still be the optimal approach. You’ll have to decide that, though, since I’m not too familiar with the Roborock API. |
Please take a look at the requested changes, and use the Ready for review button when you are done, thanks 👍 |
@gjohansson-ST The actions have now been renamed to |
Co-authored-by: G Johansson <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks @RaHehl 👍
Breaking change
Proposed change
Unlike the Xiaomi integration and the HACS Roborock integration, the Roborock integration lacks a goto service. I personally need it because my Roborock is under the stairs, and I have to drive it out to change the mop.
Type of change
Additional information
Checklist
ruff format homeassistant tests
)If user exposed functionality or configuration variables are added/changed:
If the code communicates with devices, web services, or third-party tools:
Updated and included derived files by running:
python3 -m script.hassfest
.requirements_all.txt
.Updated by running
python3 -m script.gen_requirements_all
.To help with the load of incoming pull requests: