A lovelace card for Home Assistant to control a forked daapd instance.
This card allow you to control your forked daapd instance through Home Assistant.
The following controls are available: master volume, play/pause, next/previous, on/off, output selection, individual output volume.
This version uses wss and https rather than ws and http to access the daap server, to support HA instances that are accessed via https. Since current versions of forked-daapd do not support SSL, a reverse proxy is required to translate between SSL and non-SSL transports, eg NGINX.
- Forked daapd built with websocket support.
- Forked daapd setup as an media_player (mpd component) in Home Assistant
- Reverse proxy or similar network configuration to translate between SSL/non-SSL
- Copy
forked-daapd-card.jsinto yourconfig/www”folder. - Add a reference to the
forked-daapd-card.jsinside yourui-lovelace.yaml. - Add proxy configuration to your reverse proxy solution of choice.
resources:
- url: /local/forked-daapd-card.js?v=0.0.2
type: module- Clone this repository into your
config/wwwfolder using git.
git clone https://github.com/hhinma/forked-daapd-card.git- Add a reference to the card in your
ui-lovelace.yaml.
resources:
- url: /local/forked-daapd-card/forked-daapd-card.js?v=0.0.2
type: module- Add proxy configuration to your reverse proxy solution of choice.
- Locate your
forked-daapd-card.jsinconfig/wwwor wherever you ended up storing it. - Replace it with the latest version of forked-daapd-card.js.
- Add the new version number to the end of the cards reference url in your
ui-lovelace.yamllike below.
resources:
- url: /local/forked-daapd-card.js?v=0.0.2
type: moduleIf you went the git clone route, just run git pull from inside your config/www/forked-daapd-card/ directory, to get the latest version of the code. Then add the new version number to the end of the card reference url in your ui-lovelace.yaml like below.
resources:
- url: /local/forked-daapd-card/forked-daapd-card.js?v=0.0.2
type: module| Name | Type | Default | Since | Description |
|---|---|---|---|---|
| type | string | required | v0.0.1 | custom:forked-daapd-card. |
| entity | string | required | v0.0.1 | The entity_id of your forked-daapd media_player (mpd) in home assistant. |
| ip | string | required | v0.0.1 | Set the IP address of your forked-daapd server. |
| port | number | 3689 | v0.0.1 | Set the port of your forked-daapd server. |
| ws_port | number | 3688 | v0.0.1 | Set the websocket port of your forked-daapd server. |
| name | string | optional | v0.0.1 | Set a custom friendly_name which is displayed beside the icon. |
| icon | string | optional | v0.0.1 | set a custom icon from any of the available mdi icons. |
| outputs | list | optional | v0.0.1 | If you want to only show specific outputs, include the id of each one in the list. |
- You can find the outputs ids by accessing
http://<forked-daapd-ip>:<port>/api/outputs
- type: "custom:forked-daapd-card"
entity: media_player.multiroom_audio
ip: "192.168.1.5"
name: Multiroom- type: "custom:forked-daapd-card"
entity: media_player.multiroom_audio
ip: "192.168.1.5"
name: Multiroom
outputs:
- "225176710053082"
- "962995053492"
- "24918234768"Make sure you have javascript_version: latest in your configuration.yaml under frontend:.
Make sure you have the latest versions of forked-daapd-card.js.
If you have issues after updating the card, try clearing your browser cache.
This project is under the MIT license.
