4.0 KiB
title, description, ha_category, ha_release, ha_iot_class, ha_config_flow, ha_codeowners, ha_domain
title | description | ha_category | ha_release | ha_iot_class | ha_config_flow | ha_codeowners | ha_domain | ||
---|---|---|---|---|---|---|---|---|---|
RoonLabs music player | Instructions on how to integrate a RoonLabs multi room player into Home Assistant. |
|
0.115 | Local Push | true |
|
roon |
The Roon integration allows you to control RoonLabs music players from Home Assistant.
This integration uses Roon Core, a Roon application that runs on a machine on your network. Via Roon Core, Home Assistant can control all the Roon music players on your network.
To integrate with Roon, you need to provide Home Assistant with the Hostname or IP address of the machine that runs your Roon Core, and then authorize Home Assistant in the Roon application.
If you use an IP address, please assign a static IP address to the machine that runs Roon Core. This ensures that it won't change IP addresses, so you won't have to change the configuration in Home Assistant if it reboots and changes IP address. See your router's manual for details on how to set this up.
Configuration
You need the Hostname or IP address of the machine that runs your Roon Core. This might be a machine name (which can be followed by .local
, e.g., myserver.local
) or can be an IP address.
- From the Home Assistant front-end, navigate to Configuration then Integrations. Under Set up a new integration locate 'Roon' and click Configure.
- Enter the
Hostname
orIP address
for the Roon Core machine and click Submit. - Home Assistant will then contact your Roon Core and ask to be authorized. You will need to enable this extension in the Room Application. Go to Settings and then Extensions, there you will see an entry for Home Assistant with a button next to it. Click Enable.
- Roon core will then provide Home Assistant with the details of your media players.
- In Home Assistant you can then pick an area for each of your music players, and add them to Home Assistant.
Services
Service media_player.play_media
Roon doesn't use file names or URLs to track media and so the roon integration is currently limited in how it supports this call.
Service data attribute | Optional | Description |
---|---|---|
entity_id |
yes | Target a specific media player. To target all media players, use all . |
media_content_id |
no | The text for roon to search for in your library. |
media_content_type |
no | A media type. Currently supported are radio , playlist and genre |
For example to play BBC Radio 4 you would set media_content_type
to radio
and media_content_id
to BBC Radio 4
Service roon.join
Group players together.
Service data attribute | Optional | Description |
---|---|---|
entity_id |
yes | ID of the player that will be the master of the group. |
join_ids |
no | id(s) of the players that will join the master. |
Service roon.unjoin
Remove players from a group.
Service data attribute | Optional | Description |
---|---|---|
entity_id |
yes | ID of the player that is the master of the group. |
unlink_name |
yes | id(s) of the players that will be unjoined from the group. If not specified, all players will be unjoined from the master. |
Service roon.transfer
Transfer playback from one player to another.
Service data attribute | Optional | Description |
---|---|---|
entity_id |
yes | id of the source player. |
transfer_name |
no | id of the destination player. |