LinkPlay Integration

Yes i’ve tried that, but it’s the same thing

Unfortunately I don’t own an AudioPro, thus I can’t test.

Can I help you with the testing in some way?

Restart all speakers.
In configuration.yaml, set this:

logger:
  default: warn
  logs:
    custom_components.linkplay: debug

Restart HA.
Do some successful multiroom connections, and do some that fail.
Post the contents of home-assistant.log.

> 2020-10-20 09:35:33 WARNING (MainThread) [homeassistant.loader] You are using a custom integration for hacs which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant.
> 2020-10-20 09:35:33 WARNING (MainThread) [homeassistant.loader] You are using a custom integration for aarlo which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant.
> 2020-10-20 09:35:36 WARNING (MainThread) [homeassistant.loader] You are using a custom integration for linkplay which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant.
> 2020-10-20 09:35:40 WARNING (MainThread) [homeassistant.loader] You are using a custom integration for feedparser which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant.
> 2020-10-20 09:35:53 ERROR (MainThread) [homeassistant.components.sensor] Error while setting up upnp platform for sensor
> Traceback (most recent call last):
>   File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 193, in _async_setup_platform
>     await asyncio.shield(task)
>   File "/usr/src/homeassistant/homeassistant/components/upnp/sensor.py", line 93, in async_setup_entry
>     device: Device = hass.data[DOMAIN][DOMAIN_DEVICES][udn]
> KeyError: 'uuid:3ddcd1d3-2380-45f5-b069-54a050e1bb30'
> 2020-10-20 09:36:00 DEBUG (SyncWorker_52) [custom_components.linkplay.media_player] Error 'Document is empty, line 1, column 1 (<string>, line 1)' for http://192.168.1.13:5000/ssdp/desc-DSM-eth0.xml
> 2020-10-20 09:36:00 DEBUG (SyncWorker_41) [custom_components.linkplay.media_player] Error 'Document is empty, line 1, column 1 (<string>, line 1)' for http://192.168.1.13:5000/ssdp/desc-DSM-eth0.xml
> 2020-10-20 09:36:00 DEBUG (SyncWorker_12) [custom_components.linkplay.media_player] Error 'Document is empty, line 1, column 1 (<string>, line 1)' for http://192.168.1.13:5000/ssdp/desc-DSM-eth0.xml
> 2020-10-20 09:36:01 DEBUG (SyncWorker_41) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.184:8008/ssdp/notfound' for http://192.168.1.184:8008/ssdp/device-desc.xml
> 2020-10-20 09:36:01 DEBUG (SyncWorker_41) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.184:8008/ssdp/notfound' for http://192.168.1.184:8008/ssdp/device-desc.xml
> 2020-10-20 09:36:01 DEBUG (SyncWorker_52) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.184:8008/ssdp/notfound' for http://192.168.1.184:8008/ssdp/device-desc.xml
> 2020-10-20 09:36:01 DEBUG (SyncWorker_41) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.184:8008/ssdp/notfound' for http://192.168.1.184:8008/ssdp/device-desc.xml
> 2020-10-20 09:36:01 DEBUG (SyncWorker_52) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.184:8008/ssdp/notfound' for http://192.168.1.184:8008/ssdp/device-desc.xml
> 2020-10-20 09:36:01 DEBUG (SyncWorker_12) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.184:8008/ssdp/notfound' for http://192.168.1.184:8008/ssdp/device-desc.xml
> 2020-10-20 09:36:01 DEBUG (SyncWorker_41) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.184:8008/ssdp/notfound' for http://192.168.1.184:8008/ssdp/device-desc.xml
> 2020-10-20 09:36:01 DEBUG (SyncWorker_52) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.184:8008/ssdp/notfound' for http://192.168.1.184:8008/ssdp/device-desc.xml
> 2020-10-20 09:36:02 DEBUG (SyncWorker_12) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.184:8008/ssdp/notfound' for http://192.168.1.184:8008/ssdp/device-desc.xml
> 2020-10-20 09:36:02 DEBUG (SyncWorker_41) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.230:8008/ssdp/notfound' for http://192.168.1.230:8008/ssdp/device-desc.xml
> 2020-10-20 09:36:02 DEBUG (SyncWorker_52) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.184:8008/ssdp/notfound' for http://192.168.1.184:8008/ssdp/device-desc.xml
> 2020-10-20 09:36:02 DEBUG (SyncWorker_12) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.184:8008/ssdp/notfound' for http://192.168.1.184:8008/ssdp/device-desc.xml
> 2020-10-20 09:36:02 DEBUG (SyncWorker_41) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.230:8008/ssdp/notfound' for http://192.168.1.230:8008/ssdp/device-desc.xml
> 2020-10-20 09:36:02 DEBUG (SyncWorker_12) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.184:8008/ssdp/notfound' for http://192.168.1.184:8008/ssdp/device-desc.xml
> 2020-10-20 09:36:02 DEBUG (SyncWorker_41) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.230:8008/ssdp/notfound' for http://192.168.1.230:8008/ssdp/device-desc.xml
> 2020-10-20 09:36:02 DEBUG (SyncWorker_41) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.230:8008/ssdp/notfound' for http://192.168.1.230:8008/ssdp/device-desc.xml
> 2020-10-20 09:36:02 DEBUG (SyncWorker_52) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.230:8008/ssdp/notfound' for http://192.168.1.230:8008/ssdp/device-desc.xml
> 2020-10-20 09:36:02 DEBUG (SyncWorker_12) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.230:8008/ssdp/notfound' for http://192.168.1.230:8008/ssdp/device-desc.xml
> 2020-10-20 09:36:02 DEBUG (SyncWorker_52) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.230:8008/ssdp/notfound' for http://192.168.1.230:8008/ssdp/device-desc.xml
> 2020-10-20 09:36:02 DEBUG (SyncWorker_12) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.230:8008/ssdp/notfound' for http://192.168.1.230:8008/ssdp/device-desc.xml
> 2020-10-20 09:36:02 DEBUG (SyncWorker_52) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.230:8008/ssdp/notfound' for http://192.168.1.230:8008/ssdp/device-desc.xml
> 2020-10-20 09:36:02 DEBUG (SyncWorker_12) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.230:8008/ssdp/notfound' for http://192.168.1.230:8008/ssdp/device-desc.xml
> 2020-10-20 09:36:02 DEBUG (SyncWorker_52) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.230:8008/ssdp/notfound' for http://192.168.1.230:8008/ssdp/device-desc.xml
> 2020-10-20 09:36:02 DEBUG (SyncWorker_12) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.230:8008/ssdp/notfound' for http://192.168.1.230:8008/ssdp/device-desc.xml
> 2020-10-20 09:36:04 DEBUG (SyncWorker_41) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.232:8008/ssdp/notfound' for http://192.168.1.232:8008/ssdp/device-desc.xml
> 2020-10-20 09:36:04 DEBUG (SyncWorker_52) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.232:8008/ssdp/notfound' for http://192.168.1.232:8008/ssdp/device-desc.xml
> 2020-10-20 09:36:04 DEBUG (SyncWorker_12) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.232:8008/ssdp/notfound' for http://192.168.1.232:8008/ssdp/device-desc.xml
> 2020-10-20 09:36:04 DEBUG (SyncWorker_41) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.232:8008/ssdp/notfound' for http://192.168.1.232:8008/ssdp/device-desc.xml
> 2020-10-20 09:36:04 DEBUG (SyncWorker_52) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.232:8008/ssdp/notfound' for http://192.168.1.232:8008/ssdp/device-desc.xml
> 2020-10-20 09:36:04 DEBUG (SyncWorker_12) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.232:8008/ssdp/notfound' for http://192.168.1.232:8008/ssdp/device-desc.xml
> 2020-10-20 09:36:04 DEBUG (SyncWorker_41) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.232:8008/ssdp/notfound' for http://192.168.1.232:8008/ssdp/device-desc.xml
> 2020-10-20 09:36:04 DEBUG (SyncWorker_52) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.232:8008/ssdp/notfound' for http://192.168.1.232:8008/ssdp/device-desc.xml
> 2020-10-20 09:36:04 DEBUG (SyncWorker_12) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.232:8008/ssdp/notfound' for http://192.168.1.232:8008/ssdp/device-desc.xml
> 2020-10-20 09:36:04 DEBUG (SyncWorker_41) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.232:8008/ssdp/notfound' for http://192.168.1.232:8008/ssdp/device-desc.xml
> 2020-10-20 09:36:04 DEBUG (SyncWorker_52) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.232:8008/ssdp/notfound' for http://192.168.1.232:8008/ssdp/device-desc.xml
> 2020-10-20 09:36:04 DEBUG (SyncWorker_12) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.232:8008/ssdp/notfound' for http://192.168.1.232:8008/ssdp/device-desc.xml
> 2020-10-20 09:36:34 DEBUG (SyncWorker_46) [custom_components.linkplay] service_handle from id: ['media_player.harman_kardon']
> 2020-10-20 09:36:34 DEBUG (SyncWorker_46) [custom_components.linkplay] **JOIN** set clients ['media_player.harman_kardon'] for master media_player.kok
> 2020-10-20 09:36:45 ERROR (MainThread) [homeassistant.components.light] Platform mqtt does not generate unique IDs. ID light.plejd.fönster already exists - ignoring light.fonster
> 2020-10-20 09:36:48 DEBUG (SyncWorker_15) [custom_components.linkplay] service_handle from id: ['media_player.harman_kardon']
> 2020-10-20 09:36:48 DEBUG (SyncWorker_15) [custom_components.linkplay] **UNJOIN** entities: [<Entity Harman kardon [Kök]: idle>]
> 2020-10-20 09:37:13 DEBUG (SyncWorker_14) [custom_components.linkplay] service_handle from id: ['media_player.harman_kardon']
> 2020-10-20 09:37:13 DEBUG (SyncWorker_14) [custom_components.linkplay] **JOIN** set clients ['media_player.harman_kardon'] for master media_player.kok
> 2020-10-20 09:37:29 DEBUG (SyncWorker_38) [custom_components.linkplay] service_handle from id: ['media_player.harman_kardon']
> 2020-10-20 09:37:29 DEBUG (SyncWorker_38) [custom_components.linkplay] **UNJOIN** entities: [<Entity Harman kardon [Kök]: idle>]
> 2020-10-20 09:37:55 DEBUG (SyncWorker_44) [custom_components.linkplay] service_handle from id: ['media_player.lilla']
> 2020-10-20 09:37:55 DEBUG (SyncWorker_44) [custom_components.linkplay] **JOIN** set clients ['media_player.lilla'] for master media_player.kok
> 2020-10-20 09:38:14 DEBUG (SyncWorker_19) [custom_components.linkplay] service_handle from id: ['media_player.lilla']
> 2020-10-20 09:38:14 DEBUG (SyncWorker_19) [custom_components.linkplay] **JOIN** set clients ['media_player.lilla'] for master media_player.kok
> 2020-10-20 09:38:19 DEBUG (SyncWorker_25) [custom_components.linkplay] service_handle from id: ['media_player.lilla']
> 2020-10-20 09:38:19 DEBUG (SyncWorker_25) [custom_components.linkplay] **JOIN** set clients ['media_player.lilla'] for master media_player.kok
> 2020-10-20 09:38:37 DEBUG (SyncWorker_20) [custom_components.linkplay] service_handle from id: ['media_player.lilla']
> 2020-10-20 09:38:37 DEBUG (SyncWorker_20) [custom_components.linkplay] **JOIN** set clients ['media_player.lilla'] for master media_player.kok
> 2020-10-20 09:38:41 DEBUG (SyncWorker_36) [custom_components.linkplay] service_handle from id: ['media_player.lilla']
> 2020-10-20 09:38:41 DEBUG (SyncWorker_36) [custom_components.linkplay] **JOIN** set clients ['media_player.lilla'] for master media_player.kok
> 2020-10-20 09:38:50 DEBUG (SyncWorker_11) [custom_components.linkplay] service_handle from id: ['media_player.lilla']
> 2020-10-20 09:38:50 DEBUG (SyncWorker_11) [custom_components.linkplay] **JOIN** set clients ['media_player.lilla'] for master media_player.kok
> 2020-10-20 09:38:54 DEBUG (SyncWorker_41) [custom_components.linkplay] service_handle from id: ['media_player.lilla']
> 2020-10-20 09:38:54 DEBUG (SyncWorker_41) [custom_components.linkplay] **JOIN** set clients ['media_player.lilla'] for master media_player.kok
> 2020-10-20 09:39:01 DEBUG (SyncWorker_32) [custom_components.linkplay] service_handle from id: ['media_player.lilla']
> 2020-10-20 09:39:01 DEBUG (SyncWorker_32) [custom_components.linkplay] **JOIN** set clients ['media_player.lilla'] for master media_player.kok
> 2020-10-20 09:39:02 DEBUG (SyncWorker_19) [custom_components.linkplay] service_handle from id: ['media_player.lilla']
> 2020-10-20 09:39:02 DEBUG (SyncWorker_19) [custom_components.linkplay] **UNJOIN** entities: [<Entity None: idle>]
> 2020-10-20 09:39:02 DEBUG (SyncWorker_39) [custom_components.linkplay] service_handle from id: ['media_player.lilla']
> 2020-10-20 09:39:02 DEBUG (SyncWorker_39) [custom_components.linkplay] **UNJOIN** entities: [<Entity Lilla: idle>]
> 2020-10-20 09:39:02 DEBUG (SyncWorker_48) [custom_components.linkplay] service_handle from id: ['media_player.lilla']
> 2020-10-20 09:39:02 DEBUG (SyncWorker_48) [custom_components.linkplay] **UNJOIN** entities: [<Entity Lilla: idle>]
> 2020-10-20 09:39:02 DEBUG (SyncWorker_5) [custom_components.linkplay] service_handle from id: ['media_player.lilla']
> 2020-10-20 09:39:02 DEBUG (SyncWorker_5) [custom_components.linkplay] **UNJOIN** entities: [<Entity Lilla: idle>]
> 2020-10-20 09:39:03 DEBUG (SyncWorker_30) [custom_components.linkplay] service_handle from id: ['media_player.lilla']
> 2020-10-20 09:39:03 DEBUG (SyncWorker_30) [custom_components.linkplay] **UNJOIN** entities: [<Entity Lilla: idle>]

Here is the log. “Harman kardon” works, and “lilla” doesn’t.

Grab this testing version, replace it in custom components, restart HA and post logs again, based on the same tests.

2020-10-20 12:12:17 WARNING (MainThread) [homeassistant.loader] You are using a custom integration for hacs which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant.
2020-10-20 12:12:17 WARNING (MainThread) [homeassistant.loader] You are using a custom integration for aarlo which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant.
2020-10-20 12:12:21 WARNING (MainThread) [homeassistant.loader] You are using a custom integration for linkplay which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant.
2020-10-20 12:12:24 WARNING (MainThread) [homeassistant.loader] You are using a custom integration for feedparser which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant.
2020-10-20 12:12:25 WARNING (MainThread) [homeassistant.components.webhook] Received message for unregistered webhook b8d4e1438e2b644bd0d39bdb702ce929bd9643bfef83de65e80276bf8d7543dc from 192.168.1.1
2020-10-20 12:12:37 ERROR (MainThread) [homeassistant.components.sensor] Error while setting up upnp platform for sensor
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 193, in _async_setup_platform
    await asyncio.shield(task)
  File "/usr/src/homeassistant/homeassistant/components/upnp/sensor.py", line 93, in async_setup_entry
    device: Device = hass.data[DOMAIN][DOMAIN_DEVICES][udn]
KeyError: 'uuid:3ddcd1d3-2380-45f5-b069-54a050e1bb30'
2020-10-20 12:12:43 DEBUG (SyncWorker_3) [custom_components.linkplay.media_player] Error 'Document is empty, line 1, column 1 (<string>, line 1)' for http://192.168.1.13:5000/ssdp/desc-DSM-eth0.xml
2020-10-20 12:12:43 DEBUG (SyncWorker_19) [custom_components.linkplay.media_player] Error 'Document is empty, line 1, column 1 (<string>, line 1)' for http://192.168.1.13:5000/ssdp/desc-DSM-eth0.xml
2020-10-20 12:12:43 DEBUG (SyncWorker_39) [custom_components.linkplay.media_player] Error 'Document is empty, line 1, column 1 (<string>, line 1)' for http://192.168.1.13:5000/ssdp/desc-DSM-eth0.xml
2020-10-20 12:12:44 DEBUG (SyncWorker_3) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.184:8008/ssdp/notfound' for http://192.168.1.184:8008/ssdp/device-desc.xml
2020-10-20 12:12:45 DEBUG (SyncWorker_3) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.184:8008/ssdp/notfound' for http://192.168.1.184:8008/ssdp/device-desc.xml
2020-10-20 12:12:45 DEBUG (SyncWorker_3) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.184:8008/ssdp/notfound' for http://192.168.1.184:8008/ssdp/device-desc.xml
2020-10-20 12:12:45 DEBUG (SyncWorker_19) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.184:8008/ssdp/notfound' for http://192.168.1.184:8008/ssdp/device-desc.xml
2020-10-20 12:12:45 DEBUG (SyncWorker_39) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.184:8008/ssdp/notfound' for http://192.168.1.184:8008/ssdp/device-desc.xml
2020-10-20 12:12:45 DEBUG (SyncWorker_3) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.184:8008/ssdp/notfound' for http://192.168.1.184:8008/ssdp/device-desc.xml
2020-10-20 12:12:45 DEBUG (SyncWorker_19) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.184:8008/ssdp/notfound' for http://192.168.1.184:8008/ssdp/device-desc.xml
2020-10-20 12:12:45 DEBUG (SyncWorker_39) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.184:8008/ssdp/notfound' for http://192.168.1.184:8008/ssdp/device-desc.xml
2020-10-20 12:12:45 DEBUG (SyncWorker_39) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.184:8008/ssdp/notfound' for http://192.168.1.184:8008/ssdp/device-desc.xml
2020-10-20 12:12:45 DEBUG (SyncWorker_19) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.184:8008/ssdp/notfound' for http://192.168.1.184:8008/ssdp/device-desc.xml
2020-10-20 12:12:45 DEBUG (SyncWorker_39) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.184:8008/ssdp/notfound' for http://192.168.1.184:8008/ssdp/device-desc.xml
2020-10-20 12:12:45 DEBUG (SyncWorker_19) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.184:8008/ssdp/notfound' for http://192.168.1.184:8008/ssdp/device-desc.xml
2020-10-20 12:12:45 DEBUG (SyncWorker_3) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.230:8008/ssdp/notfound' for http://192.168.1.230:8008/ssdp/device-desc.xml
2020-10-20 12:12:45 DEBUG (SyncWorker_3) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.230:8008/ssdp/notfound' for http://192.168.1.230:8008/ssdp/device-desc.xml
2020-10-20 12:12:45 DEBUG (SyncWorker_39) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.230:8008/ssdp/notfound' for http://192.168.1.230:8008/ssdp/device-desc.xml
2020-10-20 12:12:45 DEBUG (SyncWorker_3) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.230:8008/ssdp/notfound' for http://192.168.1.230:8008/ssdp/device-desc.xml
2020-10-20 12:12:45 DEBUG (SyncWorker_19) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.230:8008/ssdp/notfound' for http://192.168.1.230:8008/ssdp/device-desc.xml
2020-10-20 12:12:46 DEBUG (SyncWorker_39) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.230:8008/ssdp/notfound' for http://192.168.1.230:8008/ssdp/device-desc.xml
2020-10-20 12:12:46 DEBUG (SyncWorker_3) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.230:8008/ssdp/notfound' for http://192.168.1.230:8008/ssdp/device-desc.xml
2020-10-20 12:12:46 DEBUG (SyncWorker_19) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.230:8008/ssdp/notfound' for http://192.168.1.230:8008/ssdp/device-desc.xml
2020-10-20 12:12:46 DEBUG (SyncWorker_39) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.230:8008/ssdp/notfound' for http://192.168.1.230:8008/ssdp/device-desc.xml
2020-10-20 12:12:46 DEBUG (SyncWorker_19) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.230:8008/ssdp/notfound' for http://192.168.1.230:8008/ssdp/device-desc.xml
2020-10-20 12:12:46 DEBUG (SyncWorker_3) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.232:8008/ssdp/notfound' for http://192.168.1.232:8008/ssdp/device-desc.xml
2020-10-20 12:12:46 DEBUG (SyncWorker_39) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.230:8008/ssdp/notfound' for http://192.168.1.230:8008/ssdp/device-desc.xml
2020-10-20 12:12:46 DEBUG (SyncWorker_19) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.230:8008/ssdp/notfound' for http://192.168.1.230:8008/ssdp/device-desc.xml
2020-10-20 12:12:46 DEBUG (SyncWorker_3) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.232:8008/ssdp/notfound' for http://192.168.1.232:8008/ssdp/device-desc.xml
2020-10-20 12:12:46 DEBUG (SyncWorker_39) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.232:8008/ssdp/notfound' for http://192.168.1.232:8008/ssdp/device-desc.xml
2020-10-20 12:12:46 DEBUG (SyncWorker_19) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.232:8008/ssdp/notfound' for http://192.168.1.232:8008/ssdp/device-desc.xml
2020-10-20 12:12:46 DEBUG (SyncWorker_3) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.232:8008/ssdp/notfound' for http://192.168.1.232:8008/ssdp/device-desc.xml
2020-10-20 12:12:46 DEBUG (SyncWorker_39) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.232:8008/ssdp/notfound' for http://192.168.1.232:8008/ssdp/device-desc.xml
2020-10-20 12:12:46 DEBUG (SyncWorker_3) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.232:8008/ssdp/notfound' for http://192.168.1.232:8008/ssdp/device-desc.xml
2020-10-20 12:12:46 DEBUG (SyncWorker_19) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.232:8008/ssdp/notfound' for http://192.168.1.232:8008/ssdp/device-desc.xml
2020-10-20 12:12:46 DEBUG (SyncWorker_39) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.232:8008/ssdp/notfound' for http://192.168.1.232:8008/ssdp/device-desc.xml
2020-10-20 12:12:46 DEBUG (SyncWorker_39) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.232:8008/ssdp/notfound' for http://192.168.1.232:8008/ssdp/device-desc.xml
2020-10-20 12:12:46 DEBUG (SyncWorker_19) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.232:8008/ssdp/notfound' for http://192.168.1.232:8008/ssdp/device-desc.xml
2020-10-20 12:12:46 DEBUG (SyncWorker_19) [custom_components.linkplay.media_player] Error '404 Client Error: Not Found for url: http://192.168.1.232:8008/ssdp/notfound' for http://192.168.1.232:8008/ssdp/device-desc.xml
2020-10-20 12:12:54 DEBUG (SyncWorker_18) [custom_components.linkplay] service_handle from id: ['media_player.harman_kardon']
2020-10-20 12:12:54 DEBUG (SyncWorker_18) [custom_components.linkplay] **JOIN** set clients ['media_player.harman_kardon'] for master media_player.kok
2020-10-20 12:12:54 DEBUG (SyncWorker_18) [custom_components.linkplay.media_player] Multiroom: Join in multiroom mode. Master: media_player.kok, Slave: media_player.harman_kardon
2020-10-20 12:12:54 DEBUG (SyncWorker_18) [custom_components.linkplay.media_player] Multiroom: command result: OK Master: media_player.kok, Slave: media_player.harman_kardon
2020-10-20 12:13:07 DEBUG (SyncWorker_6) [custom_components.linkplay] service_handle from id: ['media_player.harman_kardon']
2020-10-20 12:13:07 DEBUG (SyncWorker_6) [custom_components.linkplay] **UNJOIN** entities: [<Entity Harman kardon [Kök]: idle>]
2020-10-20 12:13:15 DEBUG (SyncWorker_11) [custom_components.linkplay] service_handle from id: ['media_player.harman_kardon']
2020-10-20 12:13:15 DEBUG (SyncWorker_11) [custom_components.linkplay] **JOIN** set clients ['media_player.harman_kardon'] for master media_player.kok
2020-10-20 12:13:15 DEBUG (SyncWorker_11) [custom_components.linkplay.media_player] Multiroom: Join in multiroom mode. Master: media_player.kok, Slave: media_player.harman_kardon
2020-10-20 12:13:15 DEBUG (SyncWorker_11) [custom_components.linkplay.media_player] Multiroom: command result: OK Master: media_player.kok, Slave: media_player.harman_kardon
2020-10-20 12:13:23 DEBUG (SyncWorker_15) [custom_components.linkplay] service_handle from id: ['media_player.harman_kardon']
2020-10-20 12:13:23 DEBUG (SyncWorker_15) [custom_components.linkplay] **UNJOIN** entities: [<Entity Harman kardon [Kök]: idle>]
2020-10-20 12:13:28 ERROR (MainThread) [homeassistant.components.light] Platform mqtt does not generate unique IDs. ID light.plejd.fönster already exists - ignoring light.fonster
2020-10-20 12:13:31 DEBUG (SyncWorker_2) [custom_components.linkplay] service_handle from id: ['media_player.lilla']
2020-10-20 12:13:31 DEBUG (SyncWorker_2) [custom_components.linkplay] **JOIN** set clients ['media_player.lilla'] for master media_player.kok
2020-10-20 12:13:31 DEBUG (SyncWorker_2) [custom_components.linkplay.media_player] Multiroom: Join in multiroom mode. Master: media_player.kok, Slave: media_player.lilla
2020-10-20 12:13:31 DEBUG (SyncWorker_2) [custom_components.linkplay.media_player] Multiroom: command result: OK Master: media_player.kok, Slave: media_player.lilla
2020-10-20 12:13:42 DEBUG (SyncWorker_52) [custom_components.linkplay] service_handle from id: ['media_player.lilla']
2020-10-20 12:13:42 DEBUG (SyncWorker_52) [custom_components.linkplay] **JOIN** set clients ['media_player.lilla'] for master media_player.kok
2020-10-20 12:13:42 DEBUG (SyncWorker_52) [custom_components.linkplay.media_player] Multiroom: slave already has slave flag set. Unjoining it from where it is. Master: media_player.kok, Slave: media_player.lilla
2020-10-20 12:13:42 DEBUG (SyncWorker_52) [custom_components.linkplay.media_player] Multiroom: Join in multiroom mode. Master: media_player.kok, Slave: media_player.lilla
2020-10-20 12:13:42 DEBUG (SyncWorker_52) [custom_components.linkplay.media_player] Multiroom: command result: OK Master: media_player.kok, Slave: media_player.lilla
2020-10-20 12:13:46 DEBUG (SyncWorker_51) [custom_components.linkplay] service_handle from id: ['media_player.lilla']
2020-10-20 12:13:46 DEBUG (SyncWorker_51) [custom_components.linkplay] **JOIN** set clients ['media_player.lilla'] for master media_player.kok
2020-10-20 12:13:46 DEBUG (SyncWorker_51) [custom_components.linkplay.media_player] Multiroom: slave already has slave flag set. Unjoining it from where it is. Master: media_player.kok, Slave: media_player.lilla
2020-10-20 12:13:46 DEBUG (SyncWorker_51) [custom_components.linkplay.media_player] Multiroom: Join in multiroom mode. Master: media_player.kok, Slave: media_player.lilla
2020-10-20 12:13:46 DEBUG (SyncWorker_51) [custom_components.linkplay.media_player] Multiroom: command result: OK Master: media_player.kok, Slave: media_player.lilla
2020-10-20 12:13:47 DEBUG (SyncWorker_40) [custom_components.linkplay] service_handle from id: ['media_player.lilla']
2020-10-20 12:13:47 DEBUG (SyncWorker_40) [custom_components.linkplay] **JOIN** set clients ['media_player.lilla'] for master media_player.kok
2020-10-20 12:13:47 DEBUG (SyncWorker_40) [custom_components.linkplay.media_player] Multiroom: slave already has slave flag set. Unjoining it from where it is. Master: media_player.kok, Slave: media_player.lilla
2020-10-20 12:13:47 DEBUG (SyncWorker_40) [custom_components.linkplay.media_player] Multiroom: Join in multiroom mode. Master: media_player.kok, Slave: media_player.lilla
2020-10-20 12:13:47 DEBUG (SyncWorker_40) [custom_components.linkplay.media_player] Multiroom: command result: OK Master: media_player.kok, Slave: media_player.lilla
2020-10-20 12:13:49 DEBUG (SyncWorker_32) [custom_components.linkplay] service_handle from id: ['media_player.lilla']
2020-10-20 12:13:49 DEBUG (SyncWorker_32) [custom_components.linkplay] **JOIN** set clients ['media_player.lilla'] for master media_player.kok
2020-10-20 12:13:49 DEBUG (SyncWorker_32) [custom_components.linkplay.media_player] Multiroom: slave already has slave flag set. Unjoining it from where it is. Master: media_player.kok, Slave: media_player.lilla
2020-10-20 12:13:49 DEBUG (SyncWorker_32) [custom_components.linkplay.media_player] Multiroom: Join in multiroom mode. Master: media_player.kok, Slave: media_player.lilla
2020-10-20 12:13:49 DEBUG (SyncWorker_32) [custom_components.linkplay.media_player] Multiroom: command result: OK Master: media_player.kok, Slave: media_player.lilla
2020-10-20 12:13:54 DEBUG (SyncWorker_52) [custom_components.linkplay] service_handle from id: ['media_player.lilla']
2020-10-20 12:13:54 DEBUG (SyncWorker_52) [custom_components.linkplay] **JOIN** set clients ['media_player.lilla'] for master media_player.kok
2020-10-20 12:13:54 DEBUG (SyncWorker_52) [custom_components.linkplay.media_player] Multiroom: slave already has slave flag set. Unjoining it from where it is. Master: media_player.kok, Slave: media_player.lilla
2020-10-20 12:13:54 DEBUG (SyncWorker_52) [custom_components.linkplay.media_player] Multiroom: Join in multiroom mode. Master: media_player.kok, Slave: media_player.lilla
2020-10-20 12:13:54 DEBUG (SyncWorker_52) [custom_components.linkplay.media_player] Multiroom: command result: OK Master: media_player.kok, Slave: media_player.lilla
2020-10-20 12:13:59 DEBUG (SyncWorker_22) [custom_components.linkplay] service_handle from id: ['media_player.lilla']
2020-10-20 12:13:59 DEBUG (SyncWorker_22) [custom_components.linkplay] **JOIN** set clients ['media_player.lilla'] for master media_player.kok
2020-10-20 12:13:59 DEBUG (SyncWorker_22) [custom_components.linkplay.media_player] Multiroom: slave already has slave flag set. Unjoining it from where it is. Master: media_player.kok, Slave: media_player.lilla
2020-10-20 12:13:59 DEBUG (SyncWorker_22) [custom_components.linkplay.media_player] Multiroom: Join in multiroom mode. Master: media_player.kok, Slave: media_player.lilla
2020-10-20 12:13:59 DEBUG (SyncWorker_22) [custom_components.linkplay.media_player] Multiroom: command result: OK Master: media_player.kok, Slave: media_player.lilla
2020-10-20 12:14:01 DEBUG (SyncWorker_36) [custom_components.linkplay] service_handle from id: ['media_player.lilla']
2020-10-20 12:14:01 DEBUG (SyncWorker_36) [custom_components.linkplay] **JOIN** set clients ['media_player.lilla'] for master media_player.kok
2020-10-20 12:14:01 DEBUG (SyncWorker_36) [custom_components.linkplay.media_player] Multiroom: slave already has slave flag set. Unjoining it from where it is. Master: media_player.kok, Slave: media_player.lilla
2020-10-20 12:14:01 DEBUG (SyncWorker_36) [custom_components.linkplay.media_player] Multiroom: Join in multiroom mode. Master: media_player.kok, Slave: media_player.lilla
2020-10-20 12:14:01 DEBUG (SyncWorker_36) [custom_components.linkplay.media_player] Multiroom: command result: OK Master: media_player.kok, Slave: media_player.lilla
2020-10-20 12:14:04 DEBUG (SyncWorker_30) [custom_components.linkplay] service_handle from id: ['media_player.lilla']
2020-10-20 12:14:04 DEBUG (SyncWorker_30) [custom_components.linkplay] **JOIN** set clients ['media_player.lilla'] for master media_player.kok
2020-10-20 12:14:04 DEBUG (SyncWorker_30) [custom_components.linkplay.media_player] Multiroom: slave already has slave flag set. Unjoining it from where it is. Master: media_player.kok, Slave: media_player.lilla
2020-10-20 12:14:04 DEBUG (SyncWorker_30) [custom_components.linkplay.media_player] Multiroom: Join in multiroom mode. Master: media_player.kok, Slave: media_player.lilla
2020-10-20 12:14:04 DEBUG (SyncWorker_30) [custom_components.linkplay.media_player] Multiroom: command result: OK Master: media_player.kok, Slave: media_player.lilla
2020-10-20 12:14:08 DEBUG (SyncWorker_11) [custom_components.linkplay] service_handle from id: ['media_player.lilla']
2020-10-20 12:14:08 DEBUG (SyncWorker_11) [custom_components.linkplay] **JOIN** set clients ['media_player.lilla'] for master media_player.kok
2020-10-20 12:14:08 DEBUG (SyncWorker_11) [custom_components.linkplay.media_player] Multiroom: slave already has slave flag set. Unjoining it from where it is. Master: media_player.kok, Slave: media_player.lilla
2020-10-20 12:14:08 DEBUG (SyncWorker_11) [custom_components.linkplay.media_player] Multiroom: Join in multiroom mode. Master: media_player.kok, Slave: media_player.lilla
2020-10-20 12:14:08 DEBUG (SyncWorker_11) [custom_components.linkplay.media_player] Multiroom: command result: OK Master: media_player.kok, Slave: media_player.lilla
2020-10-20 12:14:10 DEBUG (SyncWorker_40) [custom_components.linkplay] service_handle from id: ['media_player.lilla']
2020-10-20 12:14:10 DEBUG (SyncWorker_40) [custom_components.linkplay] **JOIN** set clients ['media_player.lilla'] for master media_player.kok
2020-10-20 12:14:10 DEBUG (SyncWorker_40) [custom_components.linkplay.media_player] Multiroom: slave already has slave flag set. Unjoining it from where it is. Master: media_player.kok, Slave: media_player.lilla
2020-10-20 12:14:10 DEBUG (SyncWorker_40) [custom_components.linkplay.media_player] Multiroom: Join in multiroom mode. Master: media_player.kok, Slave: media_player.lilla
2020-10-20 12:14:10 DEBUG (SyncWorker_40) [custom_components.linkplay.media_player] Multiroom: command result: OK Master: media_player.kok, Slave: media_player.lilla
2020-10-20 12:14:11 DEBUG (SyncWorker_15) [custom_components.linkplay] service_handle from id: ['media_player.lilla']
2020-10-20 12:14:11 DEBUG (SyncWorker_15) [custom_components.linkplay] **UNJOIN** entities: [<Entity None: idle>]

Here you go

As Christian_Hollbjar said, it works when joining is made in the app. Then everything looks ok on the mini-media-player card, but it doesn’t work unjoining by unchecking the box, I have to press the button below called unjoin for it to work.

It looks like it’s a problem of mini-media-player card, because instead of triggering unjoin, it triggers joining again - as can be seen from the logs. The Linkplay component works as expected.

I Will try to take some logs to. Been busy with kids and work so i have not had the time to debug it yet

Do not use checkboxes/links in mini media player to unjoin. Use only buttons below them.

2020-10-20 18:58:15 DEBUG (SyncWorker_10) [custom_components.linkplay] service_handle from id: ['media_player.lilla']
2020-10-20 18:58:15 DEBUG (SyncWorker_10) [custom_components.linkplay] **JOIN** set clients ['media_player.lilla'] for master media_player.kok
2020-10-20 18:58:15 DEBUG (SyncWorker_10) [custom_components.linkplay.media_player] Multiroom: Join in multiroom mode. Master: media_player.kok, Slave: media_player.lilla
2020-10-20 18:58:15 DEBUG (SyncWorker_10) [custom_components.linkplay.media_player] Multiroom: command result: OK Master: media_player.kok, Slave: media_player.lilla
2020-10-20 18:58:59 DEBUG (SyncWorker_7) [custom_components.linkplay] service_handle from id: ['media_player.kok']
2020-10-20 18:58:59 DEBUG (SyncWorker_7) [custom_components.linkplay] **UNJOIN** entities: [<Entity Kök: idle>]
2020-10-20 18:59:22 DEBUG (SyncWorker_1) [custom_components.linkplay] service_handle from id: ['media_player.lilla']
2020-10-20 18:59:22 DEBUG (SyncWorker_1) [custom_components.linkplay] **UNJOIN** entities: [<Entity None: idle>]
2020-10-20 19:00:06 DEBUG (SyncWorker_35) [custom_components.linkplay] service_handle from id: ['media_player.harman_kardon']
2020-10-20 19:00:06 DEBUG (SyncWorker_35) [custom_components.linkplay] **JOIN** set clients ['media_player.harman_kardon'] for master media_player.kok
2020-10-20 19:00:06 DEBUG (SyncWorker_35) [custom_components.linkplay.media_player] Multiroom: Join in multiroom mode. Master: media_player.kok, Slave: media_player.harman_kardon
2020-10-20 19:00:06 DEBUG (SyncWorker_35) [custom_components.linkplay.media_player] Multiroom: command result: OK Master: media_player.kok, Slave: media_player.harman_kardon

It doesn’t work calling the service (linkplay.join) directly from the developer tools menu either. I’ll send the log doing it that way

If you see in the log Multiroom: command result: OK while it doesn’t do what it’s supposed to, there’s not much that can be done unless I get my hands on such a speaker physically. There’s a bug in the firmware, related to http api intrerface.

Wow! Awesome, thanks a lot!

Aha too bad. Maybe Christian_Hollbjar has something to add?

Thanks for an awesome integration anyways!!

Added support for the new repeat_set service, available in media_player entities starting from Home Assistant v0.117.

Thanks so much for your work so far!
I’m having issues pausing a Spotify stream. I can stop it by calling the service manually, but if I press pause on mini media player, the progress bar retracts back for a bit and then the song continues.

image

I’m using version,2.0.26 installed via HACS

That’s some weirdness of mini-media-player, as it tries to combine pause and stop functionality in the same button, wrongly. It can be overridden in Lovelace config:

    hide:
      play_pause: true
      play_stop: false
1 Like

Thanks man, that’s worked. :slight_smile:

So how do I add some Spotify album/song selection into the card?
Currently I have to use the spotify card to select songs or playlists.

Also, I can’t start playback from the mini card, I can only stop it.

There’s no way to do that (read previous posts on this). It will stop working after a while even with the Spotify card, unless you use Spotify’s original app from time to time.