Skip to content

Add buttons to Home Connect#138792

Merged
MartinHjelmare merged 2 commits intohome-assistant:devfrom
Diegorro98:home_connect/buttons
Feb 22, 2025
Merged

Add buttons to Home Connect#138792
MartinHjelmare merged 2 commits intohome-assistant:devfrom
Diegorro98:home_connect/buttons

Conversation

@Diegorro98
Copy link
Copy Markdown
Contributor

@Diegorro98 Diegorro98 commented Feb 18, 2025

Proposed change

Added button platform with buttons that execute all the commands available* and another button that allows to stop a program.

*: All commands except for "Acknowledge Event", for which I haven't found a really good use case.

Type of change

  • Dependency upgrade
  • Bugfix (non-breaking change which fixes an issue)
  • New integration (thank you!)
  • New feature (which adds functionality to an existing integration)
  • Deprecation (breaking change to happen in the future)
  • Breaking change (fix/feature causing existing functionality to break)
  • Code quality improvements to existing code or addition of tests

Additional information

Checklist

  • The code change is tested and works locally.
  • Local tests pass. Your PR cannot be merged unless tests pass
  • There is no commented out code in this PR.
  • I have followed the development checklist
  • I have followed the perfect PR recommendations
  • The code has been formatted using Ruff (ruff format homeassistant tests)
  • Tests have been added to verify that the new code works.

If user exposed functionality or configuration variables are added/changed:

If the code communicates with devices, web services, or third-party tools:

  • The manifest file has all fields filled out correctly.
    Updated and included derived files by running: python3 -m script.hassfest.
  • New or updated dependencies have been added to requirements_all.txt.
    Updated by running python3 -m script.gen_requirements_all.
  • For the updated dependencies - a link to the changelog, or at minimum a diff between library versions is added to the PR description.

To help with the load of incoming pull requests:

@home-assistant
Copy link
Copy Markdown
Contributor

Hey there @DavidMStraub, @MartinHjelmare, mind taking a look at this pull request as it has been labeled with an integration (home_connect) you are listed as a code owner for? Thanks!

Code owner commands

Code owners of home_connect can trigger bot actions by commenting:

  • @home-assistant close Closes the pull request.
  • @home-assistant rename Awesome new title Renames the pull request.
  • @home-assistant reopen Reopen the pull request.
  • @home-assistant unassign home_connect Removes the current integration label and assignees on the pull request, add the integration domain after the command.
  • @home-assistant add-label needs-more-information Add a label (needs-more-information, problem in dependency, problem in custom component) to the pull request.
  • @home-assistant remove-label needs-more-information Remove a label (needs-more-information, problem in dependency, problem in custom component) on the pull request.

@Diegorro98
Copy link
Copy Markdown
Contributor Author

I'm omitting the documentation because I will prepare a pull request that include information about all the possible entities that the integration can provide, and that includes these button entities.

Comment thread homeassistant/components/home_connect/button.py Outdated
appliance,
# The entity is subscribed to the appliance connected event,
# but it will receive also the disconnected event
ButtonEntityDescription(
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Side note: I think we should refactor how we build the coordinator context and instead have a specific parameter context for that in the HomeConnectEntity. It's confusing to pass an entity description and then not use that as the entity description.

Then we could also refactor this platform and have a single entity class and let the entity description describe how to subscribe for updates, ie what coordinator context to set, and how the press action should call the client.

@MartinHjelmare
Copy link
Copy Markdown
Member

Please at least open a draft docs PR as a placeholder.

@MartinHjelmare MartinHjelmare marked this pull request as draft February 22, 2025 12:53
@Diegorro98
Copy link
Copy Markdown
Contributor Author

As it was easy to add some small description to docs, I decided to add it

Copy link
Copy Markdown
Member

@MartinHjelmare MartinHjelmare left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

@MartinHjelmare MartinHjelmare merged commit 98c6a57 into home-assistant:dev Feb 22, 2025
@Diegorro98 Diegorro98 deleted the home_connect/buttons branch February 22, 2025 20:31
@Diegorro98
Copy link
Copy Markdown
Contributor Author

Should we deprecate the actions that does the same than these buttons?

@MartinHjelmare
Copy link
Copy Markdown
Member

Yes. 👍

@github-actions github-actions Bot locked and limited conversation to collaborators Feb 23, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Stop (cancel) program in Home Connect after deprecating switches

2 participants