-
-
Notifications
You must be signed in to change notification settings - Fork 31.4k
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
Bang & Olufsen add beolink grouping #113438
Bang & Olufsen add beolink grouping #113438
Conversation
Add support for media player grouping via beolink Give media player entity name
Revert naming changes
simplify Beolink attributes
Add unexpand return value Set entity name on initialization
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.
Please split this PR. One for bumping the library (and all changes needed to support that new version (not the changes needed for new features made possible for that version)). Then try to split the services into a separate PR if that makes sense. I haven't checked the media_player diff, but I don't believe adding services would add that much code to media_player.py
Please take a look at the requested changes, and use the Ready for review button when you are done, thanks 👍 |
Of course. As for the custom services, there are 5 in total and they are all "required" for a smooth Beolink experience. These include "join", "expand", "unexpand", "leave" and "allstandby". I could reduce this down to only the "expand" service and remove the extra_state_attributes for the Beolink session, which would retain support for media_player grouping and remove a sizable amount of code, if that would make this PR more digestable. |
Add all_discovered to beolink_expand service Improve beolink_expand response
@mj23000 please don't forget to click the "Ready for review" button when you want the PR to be reviewed |
Please fix the merge conflicts |
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.
A few comments. I've not reviewed the tests.
Fix comment placement Fix group leader group_members rebase error Replace entity_id method call with attribute
Use test JIDs 3 and 4 instead of 2 and 3 to avoid invalid attributes in testing
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.
I think there's another rebase mistake to clear up
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, @mj23000 👍
Proposed change
Add additional media player grouping to the bang_olufsen media_player entity, using Beolink custom actions.
Beolink is not limited to Mozart devices, which means that devices that can't to be added to Home Assistant (with this integration) can be expanded to using the custom actions, which reference the device's unique JID, instead of entity_id.
Additionally extra_state_attributes show Beolink self (name and JID), peers, listeners and leader.
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
..coveragerc
.To help with the load of incoming pull requests: