-
-
Notifications
You must be signed in to change notification settings - Fork 7.6k
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
Add Bang & Olufsen custom action examples #36404
Add Bang & Olufsen custom action examples #36404
Conversation
✅ Deploy Preview for home-assistant-docs ready!
To edit notification comments on pull requests, go to your Netlify site configuration. |
📝 Walkthrough📝 WalkthroughWalkthroughThe pull request updates the Bang & Olufsen integration documentation for Home Assistant, specifically enhancing the section on custom actions related to Beolink. It introduces five new actions: Changes
Sequence DiagramsequenceDiagram
participant User
participant HomeAssistant
participant BeoDevice
User->>HomeAssistant: Invoke Beolink Action
alt Join Beolink
HomeAssistant->>BeoDevice: bang_olufsen.beolink_join
else Expand Beolink
HomeAssistant->>BeoDevice: bang_olufsen.beolink_expand
else Unexpand Beolink
HomeAssistant->>BeoDevice: bang_olufsen.beolink_unexpand
else Leave Beolink
HomeAssistant->>BeoDevice: bang_olufsen.beolink_leave
else All Standby
HomeAssistant->>BeoDevice: bang_olufsen.beolink_allstandby
end
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
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.
Actionable comments posted: 0
🧹 Nitpick comments (4)
source/_integrations/bang_olufsen.markdown (4)
290-292
: Fix compound word spellingFor consistency with the linked documentation, "multi-room" should be written as "multiroom".
-The Bang & Olufsen integration additionally supports different custom actions for Beolink. - -[Beolink](https://support.bang-olufsen.com/hc/en-us/articles/4411572883089-What-is-Beolink-Multiroom) is Bang & Olufsen's advanced multi-room audio solution. This integration supports Home Assistant's `media_player` grouping, but to fully benefit from Beolink, such as being able to join legacy devices not added in Home Assistant, custom actions have been defined. +The Bang & Olufsen integration additionally supports different custom actions for Beolink. + +[Beolink](https://support.bang-olufsen.com/hc/en-us/articles/4411572883089-What-is-Beolink-Multiroom) is Bang & Olufsen's advanced multiroom audio solution. This integration supports Home Assistant's `media_player` grouping, but to fully benefit from Beolink, such as being able to join legacy devices not added in Home Assistant, custom actions have been defined.🧰 Tools
🪛 LanguageTool
[misspelling] ~292-~292: This word is normally spelled as one.
Context: ...Multiroom) is Bang & Olufsen's advanced multi-room audio solution. This integration suppor...(EN_COMPOUNDS_MULTI_ROOM)
🪛 Markdownlint (0.37.0)
290-290: Expected: 0 or 2; Actual: 1
Trailing spaces(MD009, no-trailing-spaces)
324-324
: Remove trailing punctuation from headingRemove the colon from the heading to follow markdown style guidelines.
-##### Join a currently active beolink experience or device playing compatible source: +##### Join a currently active beolink experience or device playing compatible source🧰 Tools
🪛 Markdownlint (0.37.0)
324-324: Punctuation: ':'
Trailing punctuation in heading(MD026, no-trailing-punctuation)
366-366
: Remove trailing punctuation from headingsRemove the colons from these headings to follow markdown style guidelines.
-##### Expand an active Beolink experience to all other devices discovered by the defined device: +##### Expand an active Beolink experience to all other devices discovered by the defined device -##### Expand an active Beolink experience to a specific device: +##### Expand an active Beolink experience to a specific device -##### Expand an active Beolink experience to specific devices: +##### Expand an active Beolink experience to specific devicesAlso applies to: 376-376, 398-398
🧰 Tools
🪛 Markdownlint (0.37.0)
366-366: Punctuation: ':'
Trailing punctuation in heading(MD026, no-trailing-punctuation)
430-430
: Remove trailing punctuation from headingsRemove the colons from these headings to follow markdown style guidelines.
-##### Remove a device from an active Beolink experience: +##### Remove a device from an active Beolink experience -##### Remove devices from an active Beolink experience: +##### Remove devices from an active Beolink experienceAlso applies to: 441-441
🧰 Tools
🪛 Markdownlint (0.37.0)
430-430: Punctuation: ':'
Trailing punctuation in heading(MD026, no-trailing-punctuation)
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
source/_integrations/bang_olufsen.markdown
(5 hunks)
🧰 Additional context used
🪛 LanguageTool
source/_integrations/bang_olufsen.markdown
[misspelling] ~292-~292: This word is normally spelled as one.
Context: ...Multiroom) is Bang & Olufsen's advanced multi-room audio solution. This integration suppor...
(EN_COMPOUNDS_MULTI_ROOM)
🪛 Markdownlint (0.37.0)
source/_integrations/bang_olufsen.markdown
290-290: Expected: 0 or 2; Actual: 1
Trailing spaces
(MD009, no-trailing-spaces)
323-323: Expected: 1; Actual: 2
Multiple consecutive blank lines
(MD012, no-multiple-blanks)
324-324: Punctuation: ':'
Trailing punctuation in heading
(MD026, no-trailing-punctuation)
334-334: Punctuation: ':'
Trailing punctuation in heading
(MD026, no-trailing-punctuation)
365-365: Expected: 1; Actual: 2
Multiple consecutive blank lines
(MD012, no-multiple-blanks)
366-366: Punctuation: ':'
Trailing punctuation in heading
(MD026, no-trailing-punctuation)
376-376: Punctuation: ':'
Trailing punctuation in heading
(MD026, no-trailing-punctuation)
398-398: Punctuation: ':'
Trailing punctuation in heading
(MD026, no-trailing-punctuation)
453-453: Expected: 1; Actual: 2
Multiple consecutive blank lines
(MD012, no-multiple-blanks)
474-474: Expected: 1; Actual: 2
Multiple consecutive blank lines
(MD012, no-multiple-blanks)
487-487: Expected: 1; Actual: 2
Multiple consecutive blank lines
(MD012, no-multiple-blanks)
430-430: Punctuation: ':'
Trailing punctuation in heading
(MD026, no-trailing-punctuation)
441-441: Punctuation: ':'
Trailing punctuation in heading
(MD026, no-trailing-punctuation)
🔇 Additional comments (4)
source/_integrations/bang_olufsen.markdown (4)
Line range hint 303-355
: Documentation looks great!
The beolink_join documentation is comprehensive and well-structured:
- Clear parameter descriptions
- Good coverage of examples
- Helpful platform compatibility table
🧰 Tools
🪛 Markdownlint (0.37.0)
323-323: Expected: 1; Actual: 2
Multiple consecutive blank lines
(MD012, no-multiple-blanks)
324-324: Punctuation: ':'
Trailing punctuation in heading
(MD026, no-trailing-punctuation)
334-334: Punctuation: ':'
Trailing punctuation in heading
(MD026, no-trailing-punctuation)
365-421
: Documentation looks great!
The beolink_expand documentation is thorough and well-structured:
- Clear parameter descriptions
- Good coverage of examples
- Helpful explanation of media_player.join equivalence
🧰 Tools
🪛 Markdownlint (0.37.0)
365-365: Expected: 1; Actual: 2
Multiple consecutive blank lines
(MD012, no-multiple-blanks)
366-366: Punctuation: ':'
Trailing punctuation in heading
(MD026, no-trailing-punctuation)
376-376: Punctuation: ':'
Trailing punctuation in heading
(MD026, no-trailing-punctuation)
398-398: Punctuation: ':'
Trailing punctuation in heading
(MD026, no-trailing-punctuation)
430-473
: Documentation looks great!
Both beolink_unexpand and beolink_leave documentation sections are well-structured:
- Clear parameter descriptions
- Good coverage of examples
- Helpful explanation of media_player.unjoin equivalence
🧰 Tools
🪛 Markdownlint (0.37.0)
453-453: Expected: 1; Actual: 2
Multiple consecutive blank lines
(MD012, no-multiple-blanks)
430-430: Punctuation: ':'
Trailing punctuation in heading
(MD026, no-trailing-punctuation)
441-441: Punctuation: ':'
Trailing punctuation in heading
(MD026, no-trailing-punctuation)
479-486
: Documentation looks great!
The beolink_allstandby documentation is concise and clear with a good example.
Change multi-room to multiroom
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.
Actionable comments posted: 1
🧹 Nitpick comments (3)
source/_integrations/bang_olufsen.markdown (3)
290-290
: Remove trailing spaceThere's a trailing space at the end of line 290.
-The Bang & Olufsen integration additionally supports different custom actions for Beolink. +The Bang & Olufsen integration additionally supports different custom actions for Beolink.🧰 Tools
🪛 Markdownlint (0.37.0)
290-290: Expected: 0 or 2; Actual: 1
Trailing spaces(MD009, no-trailing-spaces)
Line range hint
303-355
: Consider improving table readabilityThe documentation is comprehensive, but the
source_id
description in the action data table could be more readable if split into multiple rows or reformatted.Consider restructuring like this:
| Action data attribute | Optional | Description | | --------------------- | -------- | ------------ | | `beolink_jid` | yes | Manually specify Beolink JID to join. | | `source_id` | yes | Specify which source to join. Behavior varies between hardware platforms:<br>- Source names prefaced by platform name can only be used with that platform<br>- Example: "ASE Beoradio" only works with ASE devices<br>- Example: "ASE / Mozart Deezer" works with both ASE and Mozart devices<br>- A defined Beolink JID is required |🧰 Tools
🪛 Markdownlint (0.37.0)
323-323: Expected: 1; Actual: 2
Multiple consecutive blank lines(MD012, no-multiple-blanks)
323-323
: Fix consecutive blank linesThere are multiple instances of consecutive blank lines that should be reduced to a single blank line for consistent formatting.
Remove the extra blank lines at:
- Line 323
- Line 365
- Line 453
- Line 474
- Line 487
Also applies to: 365-365, 453-453, 474-474, 487-487
🧰 Tools
🪛 Markdownlint (0.37.0)
323-323: Expected: 1; Actual: 2
Multiple consecutive blank lines(MD012, no-multiple-blanks)
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
source/_integrations/bang_olufsen.markdown
(5 hunks)
🧰 Additional context used
🪛 Markdownlint (0.37.0)
source/_integrations/bang_olufsen.markdown
290-290: Expected: 0 or 2; Actual: 1
Trailing spaces
(MD009, no-trailing-spaces)
323-323: Expected: 1; Actual: 2
Multiple consecutive blank lines
(MD012, no-multiple-blanks)
365-365: Expected: 1; Actual: 2
Multiple consecutive blank lines
(MD012, no-multiple-blanks)
453-453: Expected: 1; Actual: 2
Multiple consecutive blank lines
(MD012, no-multiple-blanks)
474-474: Expected: 1; Actual: 2
Multiple consecutive blank lines
(MD012, no-multiple-blanks)
487-487: Expected: 1; Actual: 2
Multiple consecutive blank lines
(MD012, no-multiple-blanks)
🔇 Additional comments (1)
source/_integrations/bang_olufsen.markdown (1)
Line range hint 290-487
: Documentation is well-structured and comprehensive
The documentation for Beolink custom actions is well-organized, with clear examples and good cross-referencing to standard Home Assistant actions. The platform compatibility information and various usage scenarios are thoroughly covered.
🧰 Tools
🪛 Markdownlint (0.37.0)
365-365: Expected: 1; Actual: 2
Multiple consecutive blank lines
(MD012, no-multiple-blanks)
action: bang_olufsen.beolink_expand | ||
target: |
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.
Fix incorrect action name in examples
The examples in the beolink_unexpand
section incorrectly use bang_olufsen.beolink_expand
instead of bang_olufsen.beolink_unexpand
.
-action: bang_olufsen.beolink_expand
+action: bang_olufsen.beolink_unexpand
Also applies to: 444-445
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.
Actionable comments posted: 0
🧹 Nitpick comments (1)
source/_integrations/bang_olufsen.markdown (1)
Line range hint
293-354
: Consider adding error handling informationWhile the documentation is comprehensive, it would be helpful to add information about:
- What happens if the specified device is not available
- How to handle connection timeouts
- Common error scenarios and their solutions
🧰 Tools
🪛 LanguageTool
[uncategorized] ~301-~301: Possible missing comma found.
Context: ...d when connecting to that platform. For example "ASE Beoradio" can only be used when jo...(AI_HYDRA_LEO_MISSING_COMMA)
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
source/_integrations/bang_olufsen.markdown
(5 hunks)
🔇 Additional comments (5)
source/_integrations/bang_olufsen.markdown (5)
290-292
: LGTM!
The introduction clearly explains Beolink and its relationship with Home Assistant's media player grouping functionality.
Line range hint 355-419
: LGTM!
The documentation effectively covers:
- Parameter descriptions
- Multiple usage examples
- Equivalence with media_player.join action
Line range hint 420-450
: LGTM!
The documentation correctly uses the action name bang_olufsen.beolink_unexpand
in all examples, addressing the previous review comment.
455-470
: LGTM!
The documentation clearly explains the action usage and its equivalence with media_player.unjoin.
475-482
: LGTM!
The documentation provides a clear example for this straightforward action.
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.
Actionable comments posted: 0
🧹 Nitpick comments (2)
source/_integrations/bang_olufsen.markdown (2)
348-354
: Improve table formatting consistencyThe source compatibility table could be more readable with consistent formatting:
| Hardware platform | Compatible source_ids | | --------------------- | ------------------------------------------ | -| ASE | `beoradio` | -| ASE and Mozart | `deezer`, `spotify` | -| Mozart | `tidal` | -| Beolink Converter NL/ML | `radio`, `tp1`, `tp2`, `cd`, `aux_a`, `ph` | +| ASE | `beoradio` | +| ASE and Mozart | `deezer`, `spotify` | +| Mozart | `tidal` | +| Beolink Converter NL/ML| `radio`, `tp1`, `tp2`, `cd`, `aux_a`, `ph`|
475-482
: Consider adding clarification about action scopeWhile the action is documented correctly, it would be helpful to clarify whether this affects only devices in the current Beolink experience or all discovered devices.
Set all connected Beolink devices to standby. + +This action will set all devices that are part of the current Beolink experience to standby mode.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
source/_integrations/bang_olufsen.markdown
(5 hunks)
🔇 Additional comments (4)
source/_integrations/bang_olufsen.markdown (4)
290-294
: LGTM! Clear introduction to Beolink custom actions.
The introduction effectively explains Beolink's purpose and its relationship with Home Assistant's media player grouping functionality.
364-419
: LGTM! Comprehensive documentation of beolink_expand action.
The documentation effectively covers all use cases with clear examples, including the relationship with the standard media_player.join action.
428-450
: LGTM! Documentation correctly uses beolink_unexpand action name.
The examples and explanations are clear and accurate. Previous issues with action names have been resolved.
455-470
: LGTM! Clear documentation of beolink_leave action.
The documentation effectively explains the action and its relationship with the standard media_player.unjoin action.
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 👍
../Frenck
Proposed change
Add usage examples to all custom Beolink actions, as well as some explanatory text where needed in the Bang & Olufsen integration.
This PR expands upon example action usage defined in #36174 which is why the
next
branch is used.Type of change
current
branch).current
branch).next
branch).next
branch).Additional information
Checklist
current
branch.next
branch.Summary by CodeRabbit
bang_olufsen.beolink_join
,bang_olufsen.beolink_expand
,bang_olufsen.beolink_unexpand
,bang_olufsen.beolink_leave
, andbang_olufsen.beolink_allstandby
.