Open FeikoJoosten opened 3 years ago
I'll have a look into this the next days.
Sorry for the late reply, I am very busy at the moment. Unfortunately this will take a bit more time, as right now the account handling isn't designed to be changed dynamically.
Np, can understand that might be a big change. As you'll have to go through the initialization process again on account swap haha.
One suggestion: Is it possible that you put the cards for the different accounts on multiple tabs? This way, we don't have to change a lot of the code and it's seems right now you are the only person with this request :)
Unfortunately no, I'm planning to use this card for the tablet in the living room. The purpose of that tablet is to generalize everything. But if it's not possible for now that's no biggy. There's no haste to this 😉
Ok, than i'll try to implement this 👍
Thanks! And just take your time!
First of all, thank you for creating this card - I really love it 🙏 ❤️
I wanted to offer a workaround that I am currently using to switch between spotify users for this card. While I would also appreciate a native dropdown within the card, I solved it with a separate input_select
and conditional cards in my dashboard.
This way, I get a different spotify card depending on which user is currently selected:
Example code:
# configuration.yaml
input_select:
spotify_user_selection:
name: Spotify User
options:
- Sandra
- Peter
initial: Sandra
spotcast:
sp_dc: !secret spotcast_sp_dc_peter
sp_key: !secret spotcast_sp_key_peter
accounts:
sandra:
sp_dc: !secret spotcast_sp_dc_sandra
sp_key: !secret spotcast_sp_key_sandra
# Dashboard code
views:
- panel: true
path: rutzheim
badges: []
cards:
- type: vertical-stack
cards:
- type: conditional
conditions:
- entity: input_select.spotify_user_selection
state: Peter
card:
type: 'custom:spotify-card'
limit: 10
spotify_entity: media_player.spotify_peter_juras
account: default
always_play_random_song: true
grid_covers_per_row: 5
display_style: grid
default_device: Wohnzimmer speaker
playlist_type: discover-weekly
- type: conditional
conditions:
- entity: input_select.spotify_user_selection
state: Sandra
card:
type: 'custom:spotify-card'
limit: 10
spotify_entity: media_player.spotify_peter_juras
always_play_random_song: true
grid_covers_per_row: 5
display_style: grid
default_device: Wohnzimmer speaker
account: sandra
playlist_type: discover-weekly
- type: entities
entities:
- entity: input_select.spotify_user_selection
icon: 'hass:spotify'
name: Spotify User
show_header_toggle: false
state_color: false
@peterjuras your idea peaked my interest and I came up with the following card:
type: entities
entities:
- entity: input_select.spotify_user_selection
icon: none
name: ' '
style: |-
ha-paper-dropdown-menu {
padding-left: 20%;
padding-right: 2%;
padding-bottom: 3%;
z-index: 1;
margin-top: -4%;
}
- type: 'custom:state-switch'
style: |-
spotify-card {
margin-top: -15%;
}
entity: input_select.spotify_user_selection
states:
Feiko:
type: 'custom:spotify-card'
display_style: grid
limit: 10
spotify_entity: media_player.spotify_feiko_joosten
playlist_type: default
grid_covers_per_row: 5
account: feiko
Meta:
type: 'custom:spotify-card'
display_style: grid
limit: 10
spotify_entity: media_player.spotify_feiko_joosten
playlist_type: default
grid_covers_per_row: 5
account: meta
Which gave me my desired result!
This achieves what I wanted to achieve, so @FL550 if you want to, you can close this. Although native support would be a nice to have option.
Wow, this looks really nice! To my shame, I have to say that I haven't found time to look further into this. If this solution suits your needs for now, I am happy I can take a bit more time. I leave this request open, until I can say if it's worth the time to implement this.
Had to do some funky stuff to get it to work properly with different screen resolutions, but for now it looks good enough on my phone, tablet and phones haha. So I'm satisfied!
Had to do some funky stuff to get it to work properly with different screen resolutions, but for now it looks good enough on my phone, tablet and phones haha. So I'm satisfied!
Could you elaborate on the - type: 'custom:state-switch' portion. I'm trying to emulate this and I'm running into an issue here.
Of course. It's a custom card called state switch. Which is what I've used to achieve this.
Of course. It's a custom card called state switch. Which is what I've used to achieve this.
I was just typing a reply that I had found it, when I saw this update. Thank you for the quick reply. Looks great!!
@FL550 There does seem to be an issue with my implementation. (Nothing major).
Somehow when both users are playing a song, only the song title from the second user is shown. (See gif).
Obviously my workaround is not something officially supported. But figured you'd might find this interesting.
Ok, I see. So in the long term, the native solution is favored by you :) I'm very busy at the moment, so this will take still a bit longer.
If you are able to contribute this by yourself, feel free :)
@FeikoJoosten I tried to utilize your card in a dashboard that I created but I'm getting a type unknown error for entities. Any idea why?
- title: Media
icon: 'mdi:play-circle'
panel: true
badges: []
cards:
- elements:
- artwork: full-cover
entity: input_select.spotify_user_selection
icon: spotify
hide:
power: true
progress: false
runtime: false
volume: true
style: |
:host {
left: 46% !important;
top: 50% !important;
width: 33% !important;
height: 62.3% !important;
}
ha-card{
border-radius: 1vw !important;
overflow: hidden !important;
height: 100%;
}
:host #primaryProgress{
background: #474A52 !important;
}
type: 'custom:mini-media-player'
- artwork: full-cover
entity: input_select.spotify_user_selection
hide:
power: true
progress: false
runtime: false
volume: true
idle_view:
after: 0.1
when_idle: true
when_paused: true
when_standby: true
hide:
name: true
icon: true
style: |
:host {
left: 46% !important;
top: 50% !important;
width: 33% !important;
height: 62.3% !important;
}
ha-card{
border-radius: 1vw !important;
overflow: hidden !important;
height: 100%;
}
}
ha-card.--inactive .mmp-player{
opacity: 0 !important;
}
ha-card.--inactive div.mmp__bg{
background: none;
}
:host #primaryProgress{
background: #474A52 !important;
}
type: 'custom:mini-media-player'
- entities:
- entity: input_select.spotify_user_selection
icon: none
name: ' '
style: |-
ha-paper-dropdown-menu {
padding-left: 20%;
padding-right: 2%;
padding-bottom: 3%;
z-index: 1;
margin-top: -4%;
}
- type: 'custom:state-switch'
style: |-
spotify-card {
margin-top: -15%;
}
entity: input_select.spotify_user_selection
states:
Kayla:
type: 'custom:spotify-card'
display_style: grid
limit: 10
spotify_entity: media_player.spotify_kayla_mckenzee_siemon
playlist_type: default
grid_covers_per_row: 5
account: Kayla
Lauren:
type: 'custom:spotify-card'
display_style: grid
limit: 10
spotify_entity: media_player.spotify_lauren
playlist_type: default
grid_covers_per_row: 5
account: Lauren
type: entities
@KaylaSiemon I'm pretty sure the type: entities
on your very last line is incorrectly positioned. Try placing it on the very first line like this: - type: entities
and remove the -
from your current first line. (So change - title: Media
to title: Media
). Tip take another look at my example 😉
@FeikoJoosten The - title is due to it being within a view with multiple different screen i.e. titles.
I tried to copy your example exactly and got the unknown type encountered: entities... Am I crazy?
- title: Media
icon: 'mdi:play-circle'
panel: true
badges: []
cards:
- elements:
- artwork: full-cover
entity: media_player.spotify_kayla_mckenzee_siemon
icon: spotify
hide:
power: true
progress: false
runtime: false
volume: true
style: |
:host {
left: 46% !important;
top: 50% !important;
width: 33% !important;
height: 62.3% !important;
}
ha-card{
border-radius: 1vw !important;
overflow: hidden !important;
height: 100%;
}
:host #primaryProgress{
background: #474A52 !important;
}
type: 'custom:mini-media-player'
- artwork: full-cover
entity: media_player.spotify_lauren
hide:
power: true
progress: false
runtime: false
volume: true
idle_view:
after: 0.1
when_idle: true
when_paused: true
when_standby: true
hide:
name: true
icon: true
style: |
:host {
left: 46% !important;
top: 50% !important;
width: 33% !important;
height: 62.3% !important;
}
ha-card{
border-radius: 1vw !important;
overflow: hidden !important;
height: 100%;
}
}
ha-card.--inactive .mmp-player{
opacity: 0 !important;
}
ha-card.--inactive div.mmp__bg{
background: none;
}
:host #primaryProgress{
background: #474A52 !important;
}
type: 'custom:mini-media-player'
- type: entities
entities:
- entity: input_select.spotify_user_selection
icon: none
name: ' '
style: |-
ha-paper-dropdown-menu {
padding-left: 20%;
padding-right: 2%;
padding-bottom: 3%;
z-index: 1;
margin-top: -4%;
}
- type: 'custom:state-switch'
style: |-
spotify-card {
margin-top: -15%;
}
entity: input_select.spotify_user_selection
states:
Kayla:
type: 'custom:spotify-card'
display_style: grid
limit: 10
spotify_entity: media_player.spotify_kayla_mckenzee_siemon
playlist_type: default
grid_covers_per_row: 5
account: Kayla
Lauren:
type: 'custom:spotify-card'
display_style: grid
limit: 10
spotify_entity: media_player.spotify_lauren
playlist_type: default
grid_covers_per_row: 5
account: Lauren
@KaylaSiemon You're probably better off asking on Discord.
Is this something someone is working on? If so it should be a pull request
I don`t have the programming skills, but it would be great if there is a simple "button" or "switch" on the Card to trigger an external boolean , so you can use two conditional cards based on an input_boolean and simply switch between two Spotify-cards. This is working fine and without delay for me, but with an aditional entity-switch on the page you cant use ist in a 1-Panel-Card. A workaround ist the Vertikal-Stack-Card with all "three" cards included. It would be great if someone can implement this feature! I Know, this is only good for 2 Accounts, but it is simple and better than nothing
I don`t have the programming skills, but it would be great if there is a simple "button" or "switch" on the Card to trigger an external boolean , so you can use two conditional cards based on an input_boolean and simply switch between two Spotify-cards. This is working fine and without delay for me, but with an aditional entity-switch on the page you cant use ist in a 1-Panel-Card. A workaround ist the Vertikal-Stack-Card with all "three" cards included. It would be great if someone can implement this feature! I Know, this is only good for 2 Accounts, but it is simple and better than nothing
I did it for me, with the custom layout-card and some dirty Card-settings, i was able to place a button without boarders and Background onto the card. Now i can switch the accounts for me and my wife. For sure, this view works only with my Wallpanel and ist not responsive. Something native like that would be nice:
Note: This PoC-Config refers to an old version of the Layout-Card. Due to some breaking Changes, i was not yet able to migrate this to the latest Version.
type: custom:layout-card column_width: 100% cards:
Hi @FeikoJoosten ,
I was excited to read your post on the 'multi-user' approach on spotcast :-) I've been trying whole night to get it configured in my dashboard and I succeeded to get the state-switch, the spotcast integration, the grid with my playlists...
EXCEPT: When I select the second family member, the grid keep stuck on 'loading'. I integrated the other member using spotcast and the dc & key fields from spotcast. The other member is part of the family member subscription
Any idea what might be wrong ?
`
# ha-paper-dropdown-menu {
# padding-left: 20%;
# padding-right: 2%;
# padding-bottom: 3%;
# z-index: 1;
# margin-top: -4%;
# }
# spotify-card {
# margin-top: -15%;
# }
entity: input_select.spotify_user_selection
states:
Bart:
type: 'custom:spotify-card'
display_style: grid
limit: 8
known_connect_devices:
- name: Badkamer
entity_id: media_player.badkamer
- name: Keuken
entity_id: media_player.keuken
playlist_type: default
grid_covers_per_row: 4
account: bart
Joos:
type: 'custom:spotify-card'
display_style: grid
limit: 8
playlist_type: default
grid_covers_per_row: 5
account: joos
known_connect_devices:
- name: Badkamer
entity_id: media_player.badkamer
- name: Keuken
entity_id: media_player.keuken
'
Thanks in advance,
Kr,
Bart
Hi Bart,
I had similar issues with the stuck "loading" state once in a while. I would suggest you to fully log out of spotify, log in for that particular user and copy new sp_dc
& sp_key
values for that user and checking again after a home assistant restart.
Hi @peterjuras,
I logged out of my spotify webinterfaces and logged in for that particular user, got my sp_dc & sp_key values (they change when loggin' in back to spotify) and restarted HA. I got the same result as before. Stuck @loading
checkin' a few things:
spotcast: sp_dc: !secret spotifyD_Bart sp_key: !secret spotifyK_Bart accounts: joos: sp_dc: !secret spotifyD_joos sp_key: !secret spotifyK_joos
Hmm, yes I do it very similarly and my config also looks like this. Then it might be a different problem, it appears to be working for me. :/
Hi @peterjuras , @fondberg , @mcfly2283 , @FeikoJoosten
I've configured a 3rd spotify profile into spotcast using the sp_key & sp_dc, but the same issue when trying to switch to her profile in the card. For both accounts, they keep loading & no grid is visualised.
What's also odd: When I take my (spotcast default) name in the selector, I see my grid of playlists, including a list of known devices (standard). When I open one of the other accounts, It's not possible to open the list of devices, it is empty. Strange, not ?
Kr,
Bart
Ps: I enabled debug for spotcast, this is the result:
` 2022-02-06 16:21:19 DEBUG (SyncWorker_43) [custom_components.spotcast.spotcast_controller] setting up with account default 2022-02-06 16:21:19 DEBUG (SyncWorker_51) [custom_components.spotcast.spotcast_controller] setting up with account joos 2022-02-06 16:21:19 DEBUG (SyncWorker_27) [custom_components.spotcast.spotcast_controller] setting up with account jessie 2022-02-06 16:21:19 DEBUG (SyncWorker_27) [custom_components.spotcast.spotcast_controller] expires: 1644162508 time: 1644160879.9679215 2022-02-06 16:21:19 DEBUG (SyncWorker_43) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160879.9737787 2022-02-06 16:21:19 DEBUG (SyncWorker_51) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160879.9763584 2022-02-06 16:21:20 DEBUG (SyncWorker_43) [custom_components.spotcast.helpers] get_spotify_devices: media_player.spotify_bart_weemaels: Spotify Bart Weemaels: [] 2022-02-06 16:21:20 DEBUG (SyncWorker_43) [custom_components.spotcast.helpers] get_spotify_devices: {'devices': []} 2022-02-06 16:21:20 DEBUG (SyncWorker_60) [custom_components.spotcast] websocket_handle_player msg: {'type': 'spotcast/player', 'account': 'default', 'id': 41} 2022-02-06 16:21:20 DEBUG (SyncWorker_60) [custom_components.spotcast.spotcast_controller] setting up with account default 2022-02-06 16:21:20 DEBUG (SyncWorker_60) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160880.1703537 2022-02-06 16:21:20 DEBUG (MainThread) [custom_components.spotcast] websocket_handle_castdevices msg: {'type': 'spotcast/castdevices', 'id': 42} 2022-02-06 16:21:20 DEBUG (MainThread) [custom_components.spotcast.helpers] get_cast_devices: media_player.nest_hub_woonkamer: Nest Hub Woonkamer cast info: ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='host', data=('192.168.2.250', 8009)), ServiceInfo(type='mdns', data='google-nest-hub-8c6876b91f9c77a29d0c9db1a8270784._googlecast._tcp.local.')}, uuid=UUID('8c6876b9-1f9c-77a2-9d0c-9db1a8270784'), model_name='Google Nest Hub', friendly_name='Nest Hub Woonkamer', host='192.168.2.250', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None) 2022-02-06 16:21:20 DEBUG (MainThread) [custom_components.spotcast.helpers] get_cast_devices: media_player.nest_hub_bart: Nest HUB Bart cast info: ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='google-nest-hub-4cfbe9a164e742eae73abe3df776f048._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.2.166', 8009))}, uuid=UUID('4cfbe9a1-64e7-42ea-e73a-be3df776f048'), model_name='Google Nest Hub', friendly_name='Nest HUB Bart', host='192.168.2.166', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None) 2022-02-06 16:21:20 DEBUG (MainThread) [custom_components.spotcast.helpers] get_cast_devices: media_player.chromecast3215: TV Living cast info: ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='Chromecast-dea65b160ea8a6c85da49fd30c1c0346._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.1.106', 8009))}, uuid=UUID('dea65b16-0ea8-a6c8-5da4-9fd30c1c0346'), model_name='Chromecast', friendly_name='TV Living', host='192.168.1.106', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None) 2022-02-06 16:21:20 DEBUG (MainThread) [custom_components.spotcast.helpers] get_cast_devices: media_player.tv_kamer: TV Kamer cast info: ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='host', data=('192.168.1.140', 8009)), ServiceInfo(type='mdns', data='Chromecast-d93ad6be46ad72af93c6ed9d144e495f._googlecast._tcp.local.')}, uuid=UUID('d93ad6be-46ad-72af-93c6-ed9d144e495f'), model_name='Chromecast', friendly_name='TV Kamer', host='192.168.1.140', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None) 2022-02-06 16:21:20 DEBUG (MainThread) [custom_components.spotcast.helpers] get_cast_devices: media_player.nest_hub_jessie: Nest HUB Jessie cast info: ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='google-nest-hub-72278a24163d87bab8e1e4538917b2fb._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.2.81', 8009))}, uuid=UUID('72278a24-163d-87ba-b8e1-e4538917b2fb'), model_name='Google Nest Hub', friendly_name='Nest HUB Jessie', host='192.168.2.81', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None) 2022-02-06 16:21:20 DEBUG (MainThread) [custom_components.spotcast] [ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='host', data=('192.168.2.250', 8009)), ServiceInfo(type='mdns', data='google-nest-hub-8c6876b91f9c77a29d0c9db1a8270784._googlecast._tcp.local.')}, uuid=UUID('8c6876b9-1f9c-77a2-9d0c-9db1a8270784'), model_name='Google Nest Hub', friendly_name='Nest Hub Woonkamer', host='192.168.2.250', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None), ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='google-nest-hub-4cfbe9a164e742eae73abe3df776f048._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.2.166', 8009))}, uuid=UUID('4cfbe9a1-64e7-42ea-e73a-be3df776f048'), model_name='Google Nest Hub', friendly_name='Nest HUB Bart', host='192.168.2.166', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None), ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='Chromecast-dea65b160ea8a6c85da49fd30c1c0346._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.1.106', 8009))}, uuid=UUID('dea65b16-0ea8-a6c8-5da4-9fd30c1c0346'), model_name='Chromecast', friendly_name='TV Living', host='192.168.1.106', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None), ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='host', data=('192.168.1.140', 8009)), ServiceInfo(type='mdns', data='Chromecast-d93ad6be46ad72af93c6ed9d144e495f._googlecast._tcp.local.')}, uuid=UUID('d93ad6be-46ad-72af-93c6-ed9d144e495f'), model_name='Chromecast', friendly_name='TV Kamer', host='192.168.1.140', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None), ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='google-nest-hub-72278a24163d87bab8e1e4538917b2fb._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.2.81', 8009))}, uuid=UUID('72278a24-163d-87ba-b8e1-e4538917b2fb'), model_name='Google Nest Hub', friendly_name='Nest HUB Jessie', host='192.168.2.81', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None)] 2022-02-06 16:21:20 DEBUG (SyncWorker_7) [custom_components.spotcast] websocket_handle_playlists msg: {'type': 'spotcast/playlists', 'playlist_type': 'default', 'account': 'default', 'limit': 8, 'id': 43} 2022-02-06 16:21:20 DEBUG (SyncWorker_7) [custom_components.spotcast.spotcast_controller] setting up with account default 2022-02-06 16:21:20 DEBUG (SyncWorker_7) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160880.2950737 2022-02-06 16:21:21 DEBUG (SyncWorker_0) [custom_components.spotcast] websocket_handle_playlists msg: {'type': 'spotcast/playlists', 'playlist_type': 'default', 'account': 'default', 'limit': 8, 'id': 44} 2022-02-06 16:21:21 DEBUG (SyncWorker_0) [custom_components.spotcast.spotcast_controller] setting up with account default 2022-02-06 16:21:21 DEBUG (SyncWorker_0) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160881.0522892 2022-02-06 16:21:21 DEBUG (SyncWorker_8) [custom_components.spotcast.spotcast_controller] setting up with account joos 2022-02-06 16:21:21 DEBUG (SyncWorker_8) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160881.0534008 2022-02-06 16:21:21 DEBUG (SyncWorker_35) [custom_components.spotcast.spotcast_controller] setting up with account jessie 2022-02-06 16:21:21 DEBUG (SyncWorker_35) [custom_components.spotcast.spotcast_controller] expires: 1644162508 time: 1644160881.055 2022-02-06 16:21:22 DEBUG (SyncWorker_62) [custom_components.spotcast] websocket_handle_playlists msg: {'type': 'spotcast/playlists', 'playlist_type': 'default', 'account': 'default', 'limit': 8, 'id': 47} 2022-02-06 16:21:22 DEBUG (SyncWorker_62) [custom_components.spotcast.spotcast_controller] setting up with account default 2022-02-06 16:21:22 DEBUG (SyncWorker_62) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160882.4890654 2022-02-06 16:21:22 DEBUG (SyncWorker_6) [custom_components.spotcast.spotcast_controller] setting up with account joos 2022-02-06 16:21:22 DEBUG (SyncWorker_6) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160882.4903944 2022-02-06 16:21:22 DEBUG (SyncWorker_55) [custom_components.spotcast.spotcast_controller] setting up with account jessie 2022-02-06 16:21:22 DEBUG (SyncWorker_55) [custom_components.spotcast.spotcast_controller] expires: 1644162508 time: 1644160882.491667 2022-02-06 16:21:23 DEBUG (SyncWorker_41) [custom_components.spotcast] websocket_handle_playlists msg: {'type': 'spotcast/playlists', 'playlist_type': 'default', 'account': 'default', 'limit': 8, 'id': 50} 2022-02-06 16:21:23 DEBUG (SyncWorker_41) [custom_components.spotcast.spotcast_controller] setting up with account default 2022-02-06 16:21:23 DEBUG (SyncWorker_41) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160883.5444667 2022-02-06 16:21:23 DEBUG (SyncWorker_34) [custom_components.spotcast.spotcast_controller] setting up with account joos 2022-02-06 16:21:23 DEBUG (SyncWorker_34) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160883.5454216 2022-02-06 16:21:23 DEBUG (SyncWorker_1) [custom_components.spotcast.spotcast_controller] setting up with account jessie 2022-02-06 16:21:23 DEBUG (SyncWorker_1) [custom_components.spotcast.spotcast_controller] expires: 1644162508 time: 1644160883.5464206 2022-02-06 16:21:24 DEBUG (SyncWorker_12) [custom_components.spotcast.spotcast_controller] setting up with account default 2022-02-06 16:21:24 DEBUG (SyncWorker_12) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160884.9515214 2022-02-06 16:21:24 DEBUG (SyncWorker_3) [custom_components.spotcast.spotcast_controller] setting up with account joos 2022-02-06 16:21:24 DEBUG (SyncWorker_3) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160884.952355 2022-02-06 16:21:24 DEBUG (SyncWorker_5) [custom_components.spotcast.spotcast_controller] setting up with account jessie 2022-02-06 16:21:24 DEBUG (SyncWorker_5) [custom_components.spotcast.spotcast_controller] expires: 1644162508 time: 1644160884.9531834 2022-02-06 16:21:25 DEBUG (SyncWorker_12) [custom_components.spotcast.helpers] get_spotify_devices: media_player.spotify_bart_weemaels: Spotify Bart Weemaels: [] 2022-02-06 16:21:25 DEBUG (SyncWorker_12) [custom_components.spotcast.helpers] get_spotify_devices: {'devices': []} 2022-02-06 16:21:25 DEBUG (SyncWorker_26) [custom_components.spotcast] websocket_handle_player msg: {'type': 'spotcast/player', 'account': 'default', 'id': 57} 2022-02-06 16:21:25 DEBUG (SyncWorker_26) [custom_components.spotcast.spotcast_controller] setting up with account default 2022-02-06 16:21:25 DEBUG (SyncWorker_26) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160885.1372406 2022-02-06 16:21:25 DEBUG (MainThread) [custom_components.spotcast] websocket_handle_castdevices msg: {'type': 'spotcast/castdevices', 'id': 58} 2022-02-06 16:21:25 DEBUG (MainThread) [custom_components.spotcast.helpers] get_cast_devices: media_player.nest_hub_woonkamer: Nest Hub Woonkamer cast info: ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='host', data=('192.168.2.250', 8009)), ServiceInfo(type='mdns', data='google-nest-hub-8c6876b91f9c77a29d0c9db1a8270784._googlecast._tcp.local.')}, uuid=UUID('8c6876b9-1f9c-77a2-9d0c-9db1a8270784'), model_name='Google Nest Hub', friendly_name='Nest Hub Woonkamer', host='192.168.2.250', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None) 2022-02-06 16:21:25 DEBUG (MainThread) [custom_components.spotcast.helpers] get_cast_devices: media_player.nest_hub_bart: Nest HUB Bart cast info: ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='google-nest-hub-4cfbe9a164e742eae73abe3df776f048._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.2.166', 8009))}, uuid=UUID('4cfbe9a1-64e7-42ea-e73a-be3df776f048'), model_name='Google Nest Hub', friendly_name='Nest HUB Bart', host='192.168.2.166', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None) 2022-02-06 16:21:25 DEBUG (MainThread) [custom_components.spotcast.helpers] get_cast_devices: media_player.chromecast3215: TV Living cast info: ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='Chromecast-dea65b160ea8a6c85da49fd30c1c0346._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.1.106', 8009))}, uuid=UUID('dea65b16-0ea8-a6c8-5da4-9fd30c1c0346'), model_name='Chromecast', friendly_name='TV Living', host='192.168.1.106', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None) 2022-02-06 16:21:25 DEBUG (MainThread) [custom_components.spotcast.helpers] get_cast_devices: media_player.tv_kamer: TV Kamer cast info: ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='host', data=('192.168.1.140', 8009)), ServiceInfo(type='mdns', data='Chromecast-d93ad6be46ad72af93c6ed9d144e495f._googlecast._tcp.local.')}, uuid=UUID('d93ad6be-46ad-72af-93c6-ed9d144e495f'), model_name='Chromecast', friendly_name='TV Kamer', host='192.168.1.140', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None) 2022-02-06 16:21:25 DEBUG (MainThread) [custom_components.spotcast.helpers] get_cast_devices: media_player.nest_hub_jessie: Nest HUB Jessie cast info: ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='google-nest-hub-72278a24163d87bab8e1e4538917b2fb._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.2.81', 8009))}, uuid=UUID('72278a24-163d-87ba-b8e1-e4538917b2fb'), model_name='Google Nest Hub', friendly_name='Nest HUB Jessie', host='192.168.2.81', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None) 2022-02-06 16:21:25 DEBUG (MainThread) [custom_components.spotcast] [ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='host', data=('192.168.2.250', 8009)), ServiceInfo(type='mdns', data='google-nest-hub-8c6876b91f9c77a29d0c9db1a8270784._googlecast._tcp.local.')}, uuid=UUID('8c6876b9-1f9c-77a2-9d0c-9db1a8270784'), model_name='Google Nest Hub', friendly_name='Nest Hub Woonkamer', host='192.168.2.250', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None), ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='google-nest-hub-4cfbe9a164e742eae73abe3df776f048._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.2.166', 8009))}, uuid=UUID('4cfbe9a1-64e7-42ea-e73a-be3df776f048'), model_name='Google Nest Hub', friendly_name='Nest HUB Bart', host='192.168.2.166', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None), ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='Chromecast-dea65b160ea8a6c85da49fd30c1c0346._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.1.106', 8009))}, uuid=UUID('dea65b16-0ea8-a6c8-5da4-9fd30c1c0346'), model_name='Chromecast', friendly_name='TV Living', host='192.168.1.106', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None), ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='host', data=('192.168.1.140', 8009)), ServiceInfo(type='mdns', data='Chromecast-d93ad6be46ad72af93c6ed9d144e495f._googlecast._tcp.local.')}, uuid=UUID('d93ad6be-46ad-72af-93c6-ed9d144e495f'), model_name='Chromecast', friendly_name='TV Kamer', host='192.168.1.140', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None), ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='google-nest-hub-72278a24163d87bab8e1e4538917b2fb._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.2.81', 8009))}, uuid=UUID('72278a24-163d-87ba-b8e1-e4538917b2fb'), model_name='Google Nest Hub', friendly_name='Nest HUB Jessie', host='192.168.2.81', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None)] 2022-02-06 16:21:25 DEBUG (SyncWorker_32) [custom_components.spotcast] websocket_handle_playlists msg: {'type': 'spotcast/playlists', 'playlist_type': 'default', 'account': 'default', 'limit': 8, 'id': 59} 2022-02-06 16:21:25 DEBUG (SyncWorker_32) [custom_components.spotcast.spotcast_controller] setting up with account default 2022-02-06 16:21:25 DEBUG (SyncWorker_32) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160885.2917082 2022-02-06 16:21:26 DEBUG (SyncWorker_27) [custom_components.spotcast] websocket_handle_playlists msg: {'type': 'spotcast/playlists', 'playlist_type': 'default', 'account': 'default', 'limit': 8, 'id': 60} 2022-02-06 16:21:26 DEBUG (SyncWorker_27) [custom_components.spotcast.spotcast_controller] setting up with account default 2022-02-06 16:21:26 DEBUG (SyncWorker_27) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160886.5698745 2022-02-06 16:21:26 DEBUG (SyncWorker_51) [custom_components.spotcast.spotcast_controller] setting up with account joos 2022-02-06 16:21:26 DEBUG (SyncWorker_51) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160886.5707426 2022-02-06 16:21:26 DEBUG (SyncWorker_43) [custom_components.spotcast.spotcast_controller] setting up with account jessie 2022-02-06 16:21:26 DEBUG (SyncWorker_43) [custom_components.spotcast.spotcast_controller] expires: 1644162508 time: 1644160886.5716548 2022-02-06 16:21:29 DEBUG (SyncWorker_35) [custom_components.spotcast.spotcast_controller] setting up with account default 2022-02-06 16:21:29 DEBUG (SyncWorker_35) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160889.0718212 2022-02-06 16:21:29 DEBUG (SyncWorker_0) [custom_components.spotcast.spotcast_controller] setting up with account joos 2022-02-06 16:21:29 DEBUG (SyncWorker_0) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160889.072903 2022-02-06 16:21:29 DEBUG (SyncWorker_49) [custom_components.spotcast.spotcast_controller] setting up with account jessie 2022-02-06 16:21:29 DEBUG (SyncWorker_49) [custom_components.spotcast.spotcast_controller] expires: 1644162508 time: 1644160889.073774 2022-02-06 16:21:29 DEBUG (SyncWorker_35) [custom_components.spotcast.helpers] get_spotify_devices: media_player.spotify_bart_weemaels: Spotify Bart Weemaels: [] 2022-02-06 16:21:29 DEBUG (SyncWorker_35) [custom_components.spotcast.helpers] get_spotify_devices: {'devices': []} 2022-02-06 16:21:29 DEBUG (SyncWorker_37) [custom_components.spotcast] websocket_handle_player msg: {'type': 'spotcast/player', 'account': 'default', 'id': 36} 2022-02-06 16:21:29 DEBUG (SyncWorker_37) [custom_components.spotcast.spotcast_controller] setting up with account default 2022-02-06 16:21:29 DEBUG (SyncWorker_37) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160889.5018365 2022-02-06 16:21:29 DEBUG (MainThread) [custom_components.spotcast] websocket_handle_castdevices msg: {'type': 'spotcast/castdevices', 'id': 37} 2022-02-06 16:21:29 DEBUG (MainThread) [custom_components.spotcast.helpers] get_cast_devices: media_player.nest_hub_woonkamer: Nest Hub Woonkamer cast info: ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='host', data=('192.168.2.250', 8009)), ServiceInfo(type='mdns', data='google-nest-hub-8c6876b91f9c77a29d0c9db1a8270784._googlecast._tcp.local.')}, uuid=UUID('8c6876b9-1f9c-77a2-9d0c-9db1a8270784'), model_name='Google Nest Hub', friendly_name='Nest Hub Woonkamer', host='192.168.2.250', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None) 2022-02-06 16:21:29 DEBUG (MainThread) [custom_components.spotcast.helpers] get_cast_devices: media_player.nest_hub_bart: Nest HUB Bart cast info: ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='google-nest-hub-4cfbe9a164e742eae73abe3df776f048._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.2.166', 8009))}, uuid=UUID('4cfbe9a1-64e7-42ea-e73a-be3df776f048'), model_name='Google Nest Hub', friendly_name='Nest HUB Bart', host='192.168.2.166', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None) 2022-02-06 16:21:29 DEBUG (MainThread) [custom_components.spotcast.helpers] get_cast_devices: media_player.chromecast3215: TV Living cast info: ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='Chromecast-dea65b160ea8a6c85da49fd30c1c0346._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.1.106', 8009))}, uuid=UUID('dea65b16-0ea8-a6c8-5da4-9fd30c1c0346'), model_name='Chromecast', friendly_name='TV Living', host='192.168.1.106', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None) 2022-02-06 16:21:29 DEBUG (MainThread) [custom_components.spotcast.helpers] get_cast_devices: media_player.tv_kamer: TV Kamer cast info: ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='host', data=('192.168.1.140', 8009)), ServiceInfo(type='mdns', data='Chromecast-d93ad6be46ad72af93c6ed9d144e495f._googlecast._tcp.local.')}, uuid=UUID('d93ad6be-46ad-72af-93c6-ed9d144e495f'), model_name='Chromecast', friendly_name='TV Kamer', host='192.168.1.140', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None) 2022-02-06 16:21:29 DEBUG (MainThread) [custom_components.spotcast.helpers] get_cast_devices: media_player.nest_hub_jessie: Nest HUB Jessie cast info: ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='google-nest-hub-72278a24163d87bab8e1e4538917b2fb._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.2.81', 8009))}, uuid=UUID('72278a24-163d-87ba-b8e1-e4538917b2fb'), model_name='Google Nest Hub', friendly_name='Nest HUB Jessie', host='192.168.2.81', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None) 2022-02-06 16:21:29 DEBUG (MainThread) [custom_components.spotcast] [ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='host', data=('192.168.2.250', 8009)), ServiceInfo(type='mdns', data='google-nest-hub-8c6876b91f9c77a29d0c9db1a8270784._googlecast._tcp.local.')}, uuid=UUID('8c6876b9-1f9c-77a2-9d0c-9db1a8270784'), model_name='Google Nest Hub', friendly_name='Nest Hub Woonkamer', host='192.168.2.250', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None), ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='google-nest-hub-4cfbe9a164e742eae73abe3df776f048._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.2.166', 8009))}, uuid=UUID('4cfbe9a1-64e7-42ea-e73a-be3df776f048'), model_name='Google Nest Hub', friendly_name='Nest HUB Bart', host='192.168.2.166', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None), ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='Chromecast-dea65b160ea8a6c85da49fd30c1c0346._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.1.106', 8009))}, uuid=UUID('dea65b16-0ea8-a6c8-5da4-9fd30c1c0346'), model_name='Chromecast', friendly_name='TV Living', host='192.168.1.106', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None), ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='host', data=('192.168.1.140', 8009)), ServiceInfo(type='mdns', data='Chromecast-d93ad6be46ad72af93c6ed9d144e495f._googlecast._tcp.local.')}, uuid=UUID('d93ad6be-46ad-72af-93c6-ed9d144e495f'), model_name='Chromecast', friendly_name='TV Kamer', host='192.168.1.140', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None), ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='google-nest-hub-72278a24163d87bab8e1e4538917b2fb._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.2.81', 8009))}, uuid=UUID('72278a24-163d-87ba-b8e1-e4538917b2fb'), model_name='Google Nest Hub', friendly_name='Nest HUB Jessie', host='192.168.2.81', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None)] 2022-02-06 16:21:29 DEBUG (SyncWorker_39) [custom_components.spotcast] websocket_handle_playlists msg: {'type': 'spotcast/playlists', 'playlist_type': 'default', 'account': 'default', 'limit': 8, 'id': 38} 2022-02-06 16:21:29 DEBUG (SyncWorker_39) [custom_components.spotcast.spotcast_controller] setting up with account default 2022-02-06 16:21:29 DEBUG (SyncWorker_39) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160889.616986 2022-02-06 16:21:30 DEBUG (SyncWorker_41) [custom_components.spotcast] websocket_handle_playlists msg: {'type': 'spotcast/playlists', 'playlist_type': 'default', 'account': 'default', 'limit': 8, 'id': 39} 2022-02-06 16:21:30 DEBUG (SyncWorker_41) [custom_components.spotcast.spotcast_controller] setting up with account default 2022-02-06 16:21:30 DEBUG (SyncWorker_41) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160890.0051033 2022-02-06 16:21:30 DEBUG (SyncWorker_4) [custom_components.spotcast.spotcast_controller] setting up with account joos 2022-02-06 16:21:30 DEBUG (SyncWorker_4) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160890.0064468 2022-02-06 16:21:30 DEBUG (SyncWorker_50) [custom_components.spotcast.spotcast_controller] setting up with account jessie 2022-02-06 16:21:30 DEBUG (SyncWorker_50) [custom_components.spotcast.spotcast_controller] expires: 1644162508 time: 1644160890.0080206 2022-02-06 16:21:31 DEBUG (SyncWorker_29) [custom_components.spotcast] websocket_handle_playlists msg: {'type': 'spotcast/playlists', 'playlist_type': 'default', 'account': 'default', 'limit': 8, 'id': 42} 2022-02-06 16:21:31 DEBUG (SyncWorker_29) [custom_components.spotcast.spotcast_controller] setting up with account default 2022-02-06 16:21:31 DEBUG (SyncWorker_29) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160891.1729324 2022-02-06 16:21:31 DEBUG (SyncWorker_26) [custom_components.spotcast.spotcast_controller] setting up with account joos 2022-02-06 16:21:31 DEBUG (SyncWorker_26) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160891.1740673 2022-02-06 16:21:31 DEBUG (SyncWorker_9) [custom_components.spotcast.spotcast_controller] setting up with account jessie 2022-02-06 16:21:31 DEBUG (SyncWorker_9) [custom_components.spotcast.spotcast_controller] expires: 1644162508 time: 1644160891.175431 2022-02-06 16:21:32 DEBUG (SyncWorker_22) [custom_components.spotcast] websocket_handle_playlists msg: {'type': 'spotcast/playlists', 'playlist_type': 'default', 'account': 'default', 'limit': 8, 'id': 45} 2022-02-06 16:21:32 DEBUG (SyncWorker_22) [custom_components.spotcast.spotcast_controller] setting up with account default 2022-02-06 16:21:32 DEBUG (SyncWorker_22) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160892.4638855 2022-02-06 16:21:32 DEBUG (SyncWorker_32) [custom_components.spotcast.spotcast_controller] setting up with account joos 2022-02-06 16:21:32 DEBUG (SyncWorker_32) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160892.4649441 2022-02-06 16:21:32 DEBUG (SyncWorker_11) [custom_components.spotcast.spotcast_controller] setting up with account jessie 2022-02-06 16:21:32 DEBUG (SyncWorker_11) [custom_components.spotcast.spotcast_controller] expires: 1644162508 time: 1644160892.4659739 2022-02-06 16:21:33 DEBUG (SyncWorker_28) [custom_components.spotcast.spotcast_controller] setting up with account default 2022-02-06 16:21:33 DEBUG (SyncWorker_28) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160893.8241348 2022-02-06 16:21:33 DEBUG (SyncWorker_48) [custom_components.spotcast.spotcast_controller] setting up with account joos 2022-02-06 16:21:33 DEBUG (SyncWorker_48) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160893.824383 2022-02-06 16:21:33 DEBUG (SyncWorker_63) [custom_components.spotcast.spotcast_controller] setting up with account jessie 2022-02-06 16:21:33 DEBUG (SyncWorker_63) [custom_components.spotcast.spotcast_controller] expires: 1644162508 time: 1644160893.8257995 2022-02-06 16:21:33 DEBUG (SyncWorker_28) [custom_components.spotcast.helpers] get_spotify_devices: media_player.spotify_bart_weemaels: Spotify Bart Weemaels: [] 2022-02-06 16:21:34 DEBUG (SyncWorker_28) [custom_components.spotcast.helpers] get_spotify_devices: {'devices': []} 2022-02-06 16:21:34 DEBUG (SyncWorker_15) [custom_components.spotcast] websocket_handle_player msg: {'type': 'spotcast/player', 'account': 'default', 'id': 51} 2022-02-06 16:21:34 DEBUG (SyncWorker_15) [custom_components.spotcast.spotcast_controller] setting up with account default 2022-02-06 16:21:34 DEBUG (SyncWorker_15) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160894.0092325 2022-02-06 16:21:34 DEBUG (MainThread) [custom_components.spotcast] websocket_handle_castdevices msg: {'type': 'spotcast/castdevices', 'id': 52} 2022-02-06 16:21:34 DEBUG (MainThread) [custom_components.spotcast.helpers] get_cast_devices: media_player.nest_hub_woonkamer: Nest Hub Woonkamer cast info: ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='host', data=('192.168.2.250', 8009)), ServiceInfo(type='mdns', data='google-nest-hub-8c6876b91f9c77a29d0c9db1a8270784._googlecast._tcp.local.')}, uuid=UUID('8c6876b9-1f9c-77a2-9d0c-9db1a8270784'), model_name='Google Nest Hub', friendly_name='Nest Hub Woonkamer', host='192.168.2.250', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None) 2022-02-06 16:21:34 DEBUG (MainThread) [custom_components.spotcast.helpers] get_cast_devices: media_player.nest_hub_bart: Nest HUB Bart cast info: ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='google-nest-hub-4cfbe9a164e742eae73abe3df776f048._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.2.166', 8009))}, uuid=UUID('4cfbe9a1-64e7-42ea-e73a-be3df776f048'), model_name='Google Nest Hub', friendly_name='Nest HUB Bart', host='192.168.2.166', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None) 2022-02-06 16:21:34 DEBUG (MainThread) [custom_components.spotcast.helpers] get_cast_devices: media_player.chromecast3215: TV Living cast info: ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='Chromecast-dea65b160ea8a6c85da49fd30c1c0346._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.1.106', 8009))}, uuid=UUID('dea65b16-0ea8-a6c8-5da4-9fd30c1c0346'), model_name='Chromecast', friendly_name='TV Living', host='192.168.1.106', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None) 2022-02-06 16:21:34 DEBUG (MainThread) [custom_components.spotcast.helpers] get_cast_devices: media_player.tv_kamer: TV Kamer cast info: ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='host', data=('192.168.1.140', 8009)), ServiceInfo(type='mdns', data='Chromecast-d93ad6be46ad72af93c6ed9d144e495f._googlecast._tcp.local.')}, uuid=UUID('d93ad6be-46ad-72af-93c6-ed9d144e495f'), model_name='Chromecast', friendly_name='TV Kamer', host='192.168.1.140', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None) 2022-02-06 16:21:34 DEBUG (MainThread) [custom_components.spotcast.helpers] get_cast_devices: media_player.nest_hub_jessie: Nest HUB Jessie cast info: ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='google-nest-hub-72278a24163d87bab8e1e4538917b2fb._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.2.81', 8009))}, uuid=UUID('72278a24-163d-87ba-b8e1-e4538917b2fb'), model_name='Google Nest Hub', friendly_name='Nest HUB Jessie', host='192.168.2.81', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None) 2022-02-06 16:21:34 DEBUG (MainThread) [custom_components.spotcast] [ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='host', data=('192.168.2.250', 8009)), ServiceInfo(type='mdns', data='google-nest-hub-8c6876b91f9c77a29d0c9db1a8270784._googlecast._tcp.local.')}, uuid=UUID('8c6876b9-1f9c-77a2-9d0c-9db1a8270784'), model_name='Google Nest Hub', friendly_name='Nest Hub Woonkamer', host='192.168.2.250', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None), ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='google-nest-hub-4cfbe9a164e742eae73abe3df776f048._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.2.166', 8009))}, uuid=UUID('4cfbe9a1-64e7-42ea-e73a-be3df776f048'), model_name='Google Nest Hub', friendly_name='Nest HUB Bart', host='192.168.2.166', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None), ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='Chromecast-dea65b160ea8a6c85da49fd30c1c0346._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.1.106', 8009))}, uuid=UUID('dea65b16-0ea8-a6c8-5da4-9fd30c1c0346'), model_name='Chromecast', friendly_name='TV Living', host='192.168.1.106', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None), ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='host', data=('192.168.1.140', 8009)), ServiceInfo(type='mdns', data='Chromecast-d93ad6be46ad72af93c6ed9d144e495f._googlecast._tcp.local.')}, uuid=UUID('d93ad6be-46ad-72af-93c6-ed9d144e495f'), model_name='Chromecast', friendly_name='TV Kamer', host='192.168.1.140', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None), ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='google-nest-hub-72278a24163d87bab8e1e4538917b2fb._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.2.81', 8009))}, uuid=UUID('72278a24-163d-87ba-b8e1-e4538917b2fb'), model_name='Google Nest Hub', friendly_name='Nest HUB Jessie', host='192.168.2.81', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None)] 2022-02-06 16:21:34 DEBUG (SyncWorker_42) [custom_components.spotcast] websocket_handle_playlists msg: {'type': 'spotcast/playlists', 'playlist_type': 'default', 'account': 'default', 'limit': 8, 'id': 53} 2022-02-06 16:21:34 DEBUG (SyncWorker_42) [custom_components.spotcast.spotcast_controller] setting up with account default 2022-02-06 16:21:34 DEBUG (SyncWorker_42) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160894.1398377 2022-02-06 16:21:35 DEBUG (SyncWorker_7) [custom_components.spotcast] websocket_handle_playlists msg: {'type': 'spotcast/playlists', 'playlist_type': 'default', 'account': 'default', 'limit': 8, 'id': 54} 2022-02-06 16:21:35 DEBUG (SyncWorker_7) [custom_components.spotcast.spotcast_controller] setting up with account default 2022-02-06 16:21:35 DEBUG (SyncWorker_7) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160895.6504912 2022-02-06 16:21:35 DEBUG (SyncWorker_25) [custom_components.spotcast.spotcast_controller] setting up with account joos 2022-02-06 16:21:35 DEBUG (SyncWorker_25) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160895.6509824 2022-02-06 16:21:35 DEBUG (SyncWorker_20) [custom_components.spotcast.spotcast_controller] setting up with account jessie 2022-02-06 16:21:35 DEBUG (SyncWorker_20) [custom_components.spotcast.spotcast_controller] expires: 1644162508 time: 1644160895.6530337 2022-02-06 16:21:36 DEBUG (SyncWorker_31) [custom_components.spotcast] websocket_handle_playlists msg: {'type': 'spotcast/playlists', 'playlist_type': 'default', 'account': 'default', 'limit': 8, 'id': 57} 2022-02-06 16:21:36 DEBUG (SyncWorker_31) [custom_components.spotcast.spotcast_controller] setting up with account default 2022-02-06 16:21:36 DEBUG (SyncWorker_31) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160896.8728125 2022-02-06 16:21:36 DEBUG (SyncWorker_37) [custom_components.spotcast.spotcast_controller] setting up with account joos 2022-02-06 16:21:36 DEBUG (SyncWorker_37) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160896.874234 2022-02-06 16:21:36 DEBUG (SyncWorker_19) [custom_components.spotcast.spotcast_controller] setting up with account jessie 2022-02-06 16:21:36 DEBUG (SyncWorker_19) [custom_components.spotcast.spotcast_controller] expires: 1644162508 time: 1644160896.8753867 2022-02-06 16:21:37 DEBUG (SyncWorker_53) [custom_components.spotcast] websocket_handle_playlists msg: {'type': 'spotcast/playlists', 'playlist_type': 'default', 'account': 'default', 'limit': 8, 'id': 60} 2022-02-06 16:21:37 DEBUG (SyncWorker_53) [custom_components.spotcast.spotcast_controller] setting up with account default 2022-02-06 16:21:37 DEBUG (SyncWorker_53) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160897.821448 2022-02-06 16:21:37 DEBUG (SyncWorker_3) [custom_components.spotcast.spotcast_controller] setting up with account joos 2022-02-06 16:21:37 DEBUG (SyncWorker_3) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160897.822304 2022-02-06 16:21:37 DEBUG (SyncWorker_38) [custom_components.spotcast.spotcast_controller] setting up with account jessie 2022-02-06 16:21:37 DEBUG (SyncWorker_38) [custom_components.spotcast.spotcast_controller] expires: 1644162508 time: 1644160897.8232477 2022-02-06 16:21:38 DEBUG (SyncWorker_5) [custom_components.spotcast.spotcast_controller] setting up with account default 2022-02-06 16:21:38 DEBUG (SyncWorker_5) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160898.6630335 2022-02-06 16:21:38 DEBUG (SyncWorker_18) [custom_components.spotcast.spotcast_controller] setting up with account joos 2022-02-06 16:21:38 DEBUG (SyncWorker_18) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160898.664076 2022-02-06 16:21:38 DEBUG (SyncWorker_56) [custom_components.spotcast.spotcast_controller] setting up with account jessie 2022-02-06 16:21:38 DEBUG (SyncWorker_56) [custom_components.spotcast.spotcast_controller] expires: 1644162508 time: 1644160898.664828 2022-02-06 16:21:38 DEBUG (SyncWorker_5) [custom_components.spotcast.helpers] get_spotify_devices: media_player.spotify_bart_weemaels: Spotify Bart Weemaels: [] 2022-02-06 16:21:38 DEBUG (SyncWorker_5) [custom_components.spotcast.helpers] get_spotify_devices: {'devices': []} 2022-02-06 16:21:38 DEBUG (SyncWorker_23) [custom_components.spotcast] websocket_handle_player msg: {'type': 'spotcast/player', 'account': 'default', 'id': 66} 2022-02-06 16:21:38 DEBUG (SyncWorker_23) [custom_components.spotcast.spotcast_controller] setting up with account default 2022-02-06 16:21:38 DEBUG (SyncWorker_23) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160898.828036 2022-02-06 16:21:38 DEBUG (MainThread) [custom_components.spotcast] websocket_handle_castdevices msg: {'type': 'spotcast/castdevices', 'id': 67} 2022-02-06 16:21:38 DEBUG (MainThread) [custom_components.spotcast.helpers] get_cast_devices: media_player.nest_hub_woonkamer: Nest Hub Woonkamer cast info: ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='host', data=('192.168.2.250', 8009)), ServiceInfo(type='mdns', data='google-nest-hub-8c6876b91f9c77a29d0c9db1a8270784._googlecast._tcp.local.')}, uuid=UUID('8c6876b9-1f9c-77a2-9d0c-9db1a8270784'), model_name='Google Nest Hub', friendly_name='Nest Hub Woonkamer', host='192.168.2.250', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None) 2022-02-06 16:21:38 DEBUG (MainThread) [custom_components.spotcast.helpers] get_cast_devices: media_player.nest_hub_bart: Nest HUB Bart cast info: ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='google-nest-hub-4cfbe9a164e742eae73abe3df776f048._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.2.166', 8009))}, uuid=UUID('4cfbe9a1-64e7-42ea-e73a-be3df776f048'), model_name='Google Nest Hub', friendly_name='Nest HUB Bart', host='192.168.2.166', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None) 2022-02-06 16:21:38 DEBUG (MainThread) [custom_components.spotcast.helpers] get_cast_devices: media_player.chromecast3215: TV Living cast info: ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='Chromecast-dea65b160ea8a6c85da49fd30c1c0346._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.1.106', 8009))}, uuid=UUID('dea65b16-0ea8-a6c8-5da4-9fd30c1c0346'), model_name='Chromecast', friendly_name='TV Living', host='192.168.1.106', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None) 2022-02-06 16:21:38 DEBUG (MainThread) [custom_components.spotcast.helpers] get_cast_devices: media_player.tv_kamer: TV Kamer cast info: ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='host', data=('192.168.1.140', 8009)), ServiceInfo(type='mdns', data='Chromecast-d93ad6be46ad72af93c6ed9d144e495f._googlecast._tcp.local.')}, uuid=UUID('d93ad6be-46ad-72af-93c6-ed9d144e495f'), model_name='Chromecast', friendly_name='TV Kamer', host='192.168.1.140', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None) 2022-02-06 16:21:38 DEBUG (MainThread) [custom_components.spotcast.helpers] get_cast_devices: media_player.nest_hub_jessie: Nest HUB Jessie cast info: ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='google-nest-hub-72278a24163d87bab8e1e4538917b2fb._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.2.81', 8009))}, uuid=UUID('72278a24-163d-87ba-b8e1-e4538917b2fb'), model_name='Google Nest Hub', friendly_name='Nest HUB Jessie', host='192.168.2.81', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None) 2022-02-06 16:21:38 DEBUG (MainThread) [custom_components.spotcast] [ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='host', data=('192.168.2.250', 8009)), ServiceInfo(type='mdns', data='google-nest-hub-8c6876b91f9c77a29d0c9db1a8270784._googlecast._tcp.local.')}, uuid=UUID('8c6876b9-1f9c-77a2-9d0c-9db1a8270784'), model_name='Google Nest Hub', friendly_name='Nest Hub Woonkamer', host='192.168.2.250', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None), ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='google-nest-hub-4cfbe9a164e742eae73abe3df776f048._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.2.166', 8009))}, uuid=UUID('4cfbe9a1-64e7-42ea-e73a-be3df776f048'), model_name='Google Nest Hub', friendly_name='Nest HUB Bart', host='192.168.2.166', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None), ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='Chromecast-dea65b160ea8a6c85da49fd30c1c0346._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.1.106', 8009))}, uuid=UUID('dea65b16-0ea8-a6c8-5da4-9fd30c1c0346'), model_name='Chromecast', friendly_name='TV Living', host='192.168.1.106', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None), ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='host', data=('192.168.1.140', 8009)), ServiceInfo(type='mdns', data='Chromecast-d93ad6be46ad72af93c6ed9d144e495f._googlecast._tcp.local.')}, uuid=UUID('d93ad6be-46ad-72af-93c6-ed9d144e495f'), model_name='Chromecast', friendly_name='TV Kamer', host='192.168.1.140', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None), ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='google-nest-hub-72278a24163d87bab8e1e4538917b2fb._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.2.81', 8009))}, uuid=UUID('72278a24-163d-87ba-b8e1-e4538917b2fb'), model_name='Google Nest Hub', friendly_name='Nest HUB Jessie', host='192.168.2.81', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None)] 2022-02-06 16:21:38 DEBUG (SyncWorker_17) [custom_components.spotcast] websocket_handle_playlists msg: {'type': 'spotcast/playlists', 'playlist_type': 'default', 'account': 'default', 'limit': 8, 'id': 68} 2022-02-06 16:21:38 DEBUG (SyncWorker_17) [custom_components.spotcast.spotcast_controller] setting up with account default 2022-02-06 16:21:38 DEBUG (SyncWorker_17) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160898.95655 2022-02-06 16:21:39 DEBUG (SyncWorker_59) [custom_components.spotcast] websocket_handle_playlists msg: {'type': 'spotcast/playlists', 'playlist_type': 'default', 'account': 'default', 'limit': 8, 'id': 69} 2022-02-06 16:21:39 DEBUG (SyncWorker_59) [custom_components.spotcast.spotcast_controller] setting up with account default 2022-02-06 16:21:39 DEBUG (SyncWorker_59) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160899.683282 2022-02-06 16:21:39 DEBUG (SyncWorker_13) [custom_components.spotcast.spotcast_controller] setting up with account joos 2022-02-06 16:21:39 DEBUG (SyncWorker_13) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160899.6844552 2022-02-06 16:21:39 DEBUG (SyncWorker_32) [custom_components.spotcast.spotcast_controller] setting up with account jessie 2022-02-06 16:21:39 DEBUG (SyncWorker_32) [custom_components.spotcast.spotcast_controller] expires: 1644162508 time: 1644160899.6853945 2022-02-06 16:21:41 DEBUG (SyncWorker_45) [custom_components.spotcast] websocket_handle_playlists msg: {'type': 'spotcast/playlists', 'playlist_type': 'default', 'account': 'default', 'limit': 8, 'id': 72} 2022-02-06 16:21:41 DEBUG (SyncWorker_45) [custom_components.spotcast.spotcast_controller] setting up with account default 2022-02-06 16:21:41 DEBUG (SyncWorker_45) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160901.074423 2022-02-06 16:21:41 DEBUG (SyncWorker_21) [custom_components.spotcast.spotcast_controller] setting up with account joos 2022-02-06 16:21:41 DEBUG (SyncWorker_21) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160901.0757594 2022-02-06 16:21:41 DEBUG (SyncWorker_2) [custom_components.spotcast.spotcast_controller] setting up with account jessie 2022-02-06 16:21:41 DEBUG (SyncWorker_2) [custom_components.spotcast.spotcast_controller] expires: 1644162508 time: 1644160901.0767393 2022-02-06 16:21:42 DEBUG (SyncWorker_60) [custom_components.spotcast] websocket_handle_playlists msg: {'type': 'spotcast/playlists', 'playlist_type': 'default', 'account': 'default', 'limit': 8, 'id': 75} 2022-02-06 16:21:42 DEBUG (SyncWorker_60) [custom_components.spotcast.spotcast_controller] setting up with account default 2022-02-06 16:21:42 DEBUG (SyncWorker_60) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160902.3254914 2022-02-06 16:21:42 DEBUG (SyncWorker_57) [custom_components.spotcast.spotcast_controller] setting up with account joos 2022-02-06 16:21:42 DEBUG (SyncWorker_57) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160902.3272045 2022-02-06 16:21:42 DEBUG (SyncWorker_52) [custom_components.spotcast.spotcast_controller] setting up with account jessie 2022-02-06 16:21:42 DEBUG (SyncWorker_52) [custom_components.spotcast.spotcast_controller] expires: 1644162508 time: 1644160902.3281426 2022-02-06 16:21:43 DEBUG (SyncWorker_46) [custom_components.spotcast.spotcast_controller] setting up with account default 2022-02-06 16:21:43 DEBUG (SyncWorker_46) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160903.618362 2022-02-06 16:21:43 DEBUG (SyncWorker_7) [custom_components.spotcast.spotcast_controller] setting up with account joos 2022-02-06 16:21:43 DEBUG (SyncWorker_7) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160903.6192007 2022-02-06 16:21:43 DEBUG (SyncWorker_61) [custom_components.spotcast.spotcast_controller] setting up with account jessie 2022-02-06 16:21:43 DEBUG (SyncWorker_61) [custom_components.spotcast.spotcast_controller] expires: 1644162508 time: 1644160903.6204388 2022-02-06 16:21:43 DEBUG (SyncWorker_46) [custom_components.spotcast.helpers] get_spotify_devices: media_player.spotify_bart_weemaels: Spotify Bart Weemaels: [] 2022-02-06 16:21:43 DEBUG (SyncWorker_46) [custom_components.spotcast.helpers] get_spotify_devices: {'devices': []} 2022-02-06 16:21:43 DEBUG (SyncWorker_40) [custom_components.spotcast] websocket_handle_player msg: {'type': 'spotcast/player', 'account': 'default', 'id': 81} 2022-02-06 16:21:43 DEBUG (SyncWorker_40) [custom_components.spotcast.spotcast_controller] setting up with account default 2022-02-06 16:21:43 DEBUG (SyncWorker_40) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160903.7976227 2022-02-06 16:21:43 DEBUG (MainThread) [custom_components.spotcast] websocket_handle_castdevices msg: {'type': 'spotcast/castdevices', 'id': 82} 2022-02-06 16:21:43 DEBUG (MainThread) [custom_components.spotcast.helpers] get_cast_devices: media_player.nest_hub_woonkamer: Nest Hub Woonkamer cast info: ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='host', data=('192.168.2.250', 8009)), ServiceInfo(type='mdns', data='google-nest-hub-8c6876b91f9c77a29d0c9db1a8270784._googlecast._tcp.local.')}, uuid=UUID('8c6876b9-1f9c-77a2-9d0c-9db1a8270784'), model_name='Google Nest Hub', friendly_name='Nest Hub Woonkamer', host='192.168.2.250', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None) 2022-02-06 16:21:43 DEBUG (MainThread) [custom_components.spotcast.helpers] get_cast_devices: media_player.nest_hub_bart: Nest HUB Bart cast info: ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='google-nest-hub-4cfbe9a164e742eae73abe3df776f048._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.2.166', 8009))}, uuid=UUID('4cfbe9a1-64e7-42ea-e73a-be3df776f048'), model_name='Google Nest Hub', friendly_name='Nest HUB Bart', host='192.168.2.166', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None) 2022-02-06 16:21:43 DEBUG (MainThread) [custom_components.spotcast.helpers] get_cast_devices: media_player.chromecast3215: TV Living cast info: ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='Chromecast-dea65b160ea8a6c85da49fd30c1c0346._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.1.106', 8009))}, uuid=UUID('dea65b16-0ea8-a6c8-5da4-9fd30c1c0346'), model_name='Chromecast', friendly_name='TV Living', host='192.168.1.106', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None) 2022-02-06 16:21:43 DEBUG (MainThread) [custom_components.spotcast.helpers] get_cast_devices: media_player.tv_kamer: TV Kamer cast info: ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='host', data=('192.168.1.140', 8009)), ServiceInfo(type='mdns', data='Chromecast-d93ad6be46ad72af93c6ed9d144e495f._googlecast._tcp.local.')}, uuid=UUID('d93ad6be-46ad-72af-93c6-ed9d144e495f'), model_name='Chromecast', friendly_name='TV Kamer', host='192.168.1.140', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None) 2022-02-06 16:21:43 DEBUG (MainThread) [custom_components.spotcast.helpers] get_cast_devices: media_player.nest_hub_jessie: Nest HUB Jessie cast info: ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='google-nest-hub-72278a24163d87bab8e1e4538917b2fb._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.2.81', 8009))}, uuid=UUID('72278a24-163d-87ba-b8e1-e4538917b2fb'), model_name='Google Nest Hub', friendly_name='Nest HUB Jessie', host='192.168.2.81', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None) 2022-02-06 16:21:43 DEBUG (MainThread) [custom_components.spotcast] [ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='host', data=('192.168.2.250', 8009)), ServiceInfo(type='mdns', data='google-nest-hub-8c6876b91f9c77a29d0c9db1a8270784._googlecast._tcp.local.')}, uuid=UUID('8c6876b9-1f9c-77a2-9d0c-9db1a8270784'), model_name='Google Nest Hub', friendly_name='Nest Hub Woonkamer', host='192.168.2.250', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None), ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='google-nest-hub-4cfbe9a164e742eae73abe3df776f048._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.2.166', 8009))}, uuid=UUID('4cfbe9a1-64e7-42ea-e73a-be3df776f048'), model_name='Google Nest Hub', friendly_name='Nest HUB Bart', host='192.168.2.166', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None), ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='Chromecast-dea65b160ea8a6c85da49fd30c1c0346._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.1.106', 8009))}, uuid=UUID('dea65b16-0ea8-a6c8-5da4-9fd30c1c0346'), model_name='Chromecast', friendly_name='TV Living', host='192.168.1.106', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None), ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='host', data=('192.168.1.140', 8009)), ServiceInfo(type='mdns', data='Chromecast-d93ad6be46ad72af93c6ed9d144e495f._googlecast._tcp.local.')}, uuid=UUID('d93ad6be-46ad-72af-93c6-ed9d144e495f'), model_name='Chromecast', friendly_name='TV Kamer', host='192.168.1.140', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None), ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='google-nest-hub-72278a24163d87bab8e1e4538917b2fb._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.2.81', 8009))}, uuid=UUID('72278a24-163d-87ba-b8e1-e4538917b2fb'), model_name='Google Nest Hub', friendly_name='Nest HUB Jessie', host='192.168.2.81', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None)] 2022-02-06 16:21:43 DEBUG (SyncWorker_49) [custom_components.spotcast] websocket_handle_playlists msg: {'type': 'spotcast/playlists', 'playlist_type': 'default', 'account': 'default', 'limit': 8, 'id': 83} 2022-02-06 16:21:43 DEBUG (SyncWorker_49) [custom_components.spotcast.spotcast_controller] setting up with account default 2022-02-06 16:21:43 DEBUG (SyncWorker_49) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160903.9203794 2022-02-06 16:21:44 DEBUG (SyncWorker_39) [custom_components.spotcast] websocket_handle_playlists msg: {'type': 'spotcast/playlists', 'playlist_type': 'default', 'account': 'default', 'limit': 8, 'id': 84} 2022-02-06 16:21:44 DEBUG (SyncWorker_39) [custom_components.spotcast.spotcast_controller] setting up with account default 2022-02-06 16:21:44 DEBUG (SyncWorker_39) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160904.9842668 2022-02-06 16:21:44 DEBUG (SyncWorker_37) [custom_components.spotcast.spotcast_controller] setting up with account joos 2022-02-06 16:21:44 DEBUG (SyncWorker_37) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160904.9858816 2022-02-06 16:21:44 DEBUG (SyncWorker_19) [custom_components.spotcast.spotcast_controller] setting up with account jessie 2022-02-06 16:21:44 DEBUG (SyncWorker_19) [custom_components.spotcast.spotcast_controller] expires: 1644162508 time: 1644160904.9875662 2022-02-06 16:22:08 DEBUG (SyncWorker_25) [custom_components.spotcast.spotcast_controller] setting up with account default 2022-02-06 16:22:08 DEBUG (SyncWorker_25) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160928.1366248 2022-02-06 16:22:08 DEBUG (SyncWorker_52) [custom_components.spotcast.spotcast_controller] setting up with account joos 2022-02-06 16:22:08 DEBUG (SyncWorker_52) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160928.137661 2022-02-06 16:22:08 DEBUG (SyncWorker_60) [custom_components.spotcast.spotcast_controller] setting up with account jessie 2022-02-06 16:22:08 DEBUG (SyncWorker_60) [custom_components.spotcast.spotcast_controller] expires: 1644162508 time: 1644160928.1384952 2022-02-06 16:22:08 DEBUG (SyncWorker_25) [custom_components.spotcast.helpers] get_spotify_devices: media_player.spotify_bart_weemaels: Spotify Bart Weemaels: [] 2022-02-06 16:22:08 DEBUG (SyncWorker_25) [custom_components.spotcast.helpers] get_spotify_devices: {'devices': []} 2022-02-06 16:22:08 DEBUG (SyncWorker_57) [custom_components.spotcast] websocket_handle_player msg: {'type': 'spotcast/player', 'account': 'default', 'id': 90} 2022-02-06 16:22:08 DEBUG (SyncWorker_57) [custom_components.spotcast.spotcast_controller] setting up with account default 2022-02-06 16:22:08 DEBUG (SyncWorker_57) [custom_components.spotcast.spotcast_controller] expires: 1644161738 time: 1644160928.2911952 2022-02-06 16:22:08 DEBUG (MainThread) [custom_components.spotcast] websocket_handle_castdevices msg: {'type': 'spotcast/castdevices', 'id': 91} 2022-02-06 16:22:08 DEBUG (MainThread) [custom_components.spotcast.helpers] get_cast_devices: media_player.nest_hub_woonkamer: Nest Hub Woonkamer cast info: ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='host', data=('192.168.2.250', 8009)), ServiceInfo(type='mdns', data='google-nest-hub-8c6876b91f9c77a29d0c9db1a8270784._googlecast._tcp.local.')}, uuid=UUID('8c6876b9-1f9c-77a2-9d0c-9db1a8270784'), model_name='Google Nest Hub', friendly_name='Nest Hub Woonkamer', host='192.168.2.250', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None) 2022-02-06 16:22:08 DEBUG (MainThread) [custom_components.spotcast.helpers] get_cast_devices: media_player.nest_hub_bart: Nest HUB Bart cast info: ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='google-nest-hub-4cfbe9a164e742eae73abe3df776f048._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.2.166', 8009))}, uuid=UUID('4cfbe9a1-64e7-42ea-e73a-be3df776f048'), model_name='Google Nest Hub', friendly_name='Nest HUB Bart', host='192.168.2.166', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None) 2022-02-06 16:22:08 DEBUG (MainThread) [custom_components.spotcast.helpers] get_cast_devices: media_player.chromecast3215: TV Living cast info: ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='Chromecast-dea65b160ea8a6c85da49fd30c1c0346._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.1.106', 8009))}, uuid=UUID('dea65b16-0ea8-a6c8-5da4-9fd30c1c0346'), model_name='Chromecast', friendly_name='TV Living', host='192.168.1.106', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None) 2022-02-06 16:22:08 DEBUG (MainThread) [custom_components.spotcast.helpers] get_cast_devices: media_player.tv_kamer: TV Kamer cast info: ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='host', data=('192.168.1.140', 8009)), ServiceInfo(type='mdns', data='Chromecast-d93ad6be46ad72af93c6ed9d144e495f._googlecast._tcp.local.')}, uuid=UUID('d93ad6be-46ad-72af-93c6-ed9d144e495f'), model_name='Chromecast', friendly_name='TV Kamer', host='192.168.1.140', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None) 2022-02-06 16:22:08 DEBUG (MainThread) [custom_components.spotcast.helpers] get_cast_devices: media_player.nest_hub_jessie: Nest HUB Jessie cast info: ChromecastInfo(cast_info=CastInfo(services={ServiceInfo(type='mdns', data='google-nest-hub-72278a24163d87bab8e1e4538917b2fb._googlecast._tcp.local.'), ServiceInfo(type='host', data=('192.168.2.81', 8009))}, uuid=UUID('72278a24-163d-87ba-b8e1-e4538917b2fb'), model_name='Google Nest Hub', friendly_name='Nest HUB Jessie', host='192.168.2.81', port=8009, cast_type='cast', manufacturer='Google Inc.'), is_dynamic_group=None)
Would be really great if a dropdown could be added which'll allow you to easily switch between users. This allows me to reuse the same card on my tablet for all the people in the house.
Example mockup![image](https://user-images.githubusercontent.com/10920052/97977464-8a8d9300-1dcc-11eb-8062-6c8de87ec614.png)