-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
TP-Link/Tapo: switch to real device names #27315
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
base: master
Are you sure you want to change the base?
Conversation
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.
Hey - I've left some high level feedback:
- Consider using a consistent style for the
productsentries (either inline{ ... }mappings or the multi-line mapping style) across all tplink/tapo YAML files for readability and uniformity. - In
templates/definition/meter/tplink.yamlyou still use a single genericHS110entry while the charger definition lists all HS* devices explicitly; it might be clearer to align these and explicitly list only models that actually support metering. - Tapo P110 and P115 are now duplicated between
charger/tapo.yamlandmeter/tapo.yaml; if their capabilities differ, consider clarifying that distinction in the descriptions or otherwise structuring the entries to avoid confusion about which definition applies.
Prompt for AI Agents
Please address the comments from this code review:
## Overall Comments
- Consider using a consistent style for the `products` entries (either inline `{ ... }` mappings or the multi-line mapping style) across all tplink/tapo YAML files for readability and uniformity.
- In `templates/definition/meter/tplink.yaml` you still use a single generic `HS110` entry while the charger definition lists all HS* devices explicitly; it might be clearer to align these and explicitly list only models that actually support metering.
- Tapo P110 and P115 are now duplicated between `charger/tapo.yaml` and `meter/tapo.yaml`; if their capabilities differ, consider clarifying that distinction in the descriptions or otherwise structuring the entries to avoid confusion about which definition applies.Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.
|
@andig is a mixture of yaml and json style acceptable? |
|
Yes, no problem |
|
PR is fine for me. 👍 |
|
@naltatis I'm not a big fan of this. Instead of saying "we're supporting P Series" we're now mentioning every device. When a new P-Series device appears it will automatically look unsupported just because it's not mentioned. The config docs do NOT convey any notion of "these are the same config". Imho this is a bad idea that we are continuing to spread. |
|
There is in fact already a new one, the P410M. But I don't know whether this works with the same implementation. Unlike the others, it is explicitly declared as Matter compatible. HS is EOL. |
Mentioning explicit devices has two major benefits.
Agreed, this is extra manual documentation effort and we need to to keep it up to date. But the benefits definitely justify this. |
Even if, we should find a better way than duplicating the config over and over. We could still mention devices while keeping the configuration once. That would generate coherence and signal "all these are the same (and if you have something similar it probably belongs here)" |
|
I for example wasn't so sure whether my HS110 was covered by the H-Series support. So I just tried... |
|
That's irrelevant. It surely isn't P-series and we'll only ever know for any "supported" device if it really works once it has been tested. |
|
Guess that the P100 won't work as meter even though P-Series suggests it is supported. |
|
But that's also relevant. Even if it's not mentioned you still wouldn't know why... |
Not sure what you mean with "configuration". Do you want to extend the product structure by adding another field? Allowing an array for description to keep the templates more dry? Or is your issue, that product entries currently map to flat select entries in the configuration UI? |
|
If I want to test HS110, which config do I try if there's no H-Series? Do I need to try all 5 individual H xyz configs? How do I realize these are all really identical? |
The identical implementation info is not relevant for the user. He only wants a working setup.
Yes, trying a similar device (when mine is not in the list) probably is a thing people would do. This would lead to people reporting success and adding their device to the template as working. Helping all users that follow. We currently dont capture this information. I'm not against keeping the "product series" info, extending - brand: TP-Link
description:
generic: H-Series Smart Plug
+ devices: [HS100, HS103]In many cases (Shelly, Elli) there are no clear and obvious "product series/group" descriptions and being concrete is the best way to avoid confusion. |
That question in mind:
How would that influence documentation or device selection in UI? Specifically, how does that ensure that a user only has to try a "family" of devices that share the identical implementation instead of trying each device individually? Imho we can already do that today without new config, see op: |
This should add more clarity about which devices are supported. I decided to go with separate brand entries for each device. We could also do one entry and add all devices in a single line, like:
/cc @thierolm