music-assistant / hass-music-assistant

Turn your Home Assistant instance into a jukebox, hassle free streaming of your favorite media to Home Assistant media players.
Apache License 2.0
1.39k stars 51 forks source link

'NoneType' object has no attribute 'split' when pressing "play" #2771

Closed udochrist closed 3 months ago

udochrist commented 3 months ago

What version of Music Assistant has the issue?

2.2.0b8

What version of the Home Assistant Integration have you got installed?

2024.9.0

Have you tried everything in the Troubleshooting FAQ and reviewed the Open and Closed Issues and Discussions to resolve this yourself?

The problem

Each time I try to play a song after the update to the given version I only get an error popup of "'NoneType' object has no attribute 'split'". Last version worked without issues.

How to reproduce

Select a song press play.

Music Providers

Apple Music. This is the only provider I have (and which worked before the update)

Player Providers

Only AirPlay in this case. worked before the last beta update

Full log output

music-assistant.log

Additional information

No response

What version of Home Assistant Core are your running

2024.8.2

What type of installation are you running?

Home Assistant OS

On what type of hardware are you running?

Raspberry Pi

OzGav commented 3 months ago

Please roll back using your backup to confirm it works ok there.

ian27ukish commented 3 months ago

It works fine in b6. I got the same error as above on b7 and b8.

OzGav commented 3 months ago

@ian27ukish Are you using Apple Music as well?

udochrist commented 3 months ago

The b6 is working ok. I don‘t have b7 to restore to.

chasut commented 3 months ago

Same here on b9. Apple Music/Airplay. Restored back to b6 (previous) and everything is fine.

ian27ukish commented 3 months ago

@ian27ukish Are you using Apple Music as well?

Yep

magurac commented 3 months ago

We are also seeing the same thing. Apple Music (only provider). Started sometime yesterday (08/17) afternoon. We installed two, maybe three MA updates since then.

OzGav commented 3 months ago

@MarvinSchenkel

MarvinSchenkel commented 3 months ago

Fixed in https://github.com/music-assistant/server/pull/1574. Keep an eye out for the next beta

chasut commented 3 months ago

Looks good. Just updated to b10 and did a quick test of this and no longer getting the error. It also feels snappier ;)

udochrist commented 3 months ago

Fixed by b10

magurac commented 3 months ago

Perfect! - Thanks to the team for a quick fix. Listening via MA as I type. Screenshot 2024-08-18 at 17 00 59

udochrist commented 3 months ago

Closed too soon. While I now can play individual songs the same error happens when I try to play a playlist that is created in MA using tracks from Apple Music. Looking at the list I can play the tracks but not the list

OzGav commented 3 months ago

@udochrist Have you tried recreating the playlist? Try with just one track then multiple.

udochrist commented 3 months ago

Yes. Creating a new playlist works. Also working is refreshing the playlist which I find strange. Playlists seem to behave strangely: adding new items also only show up after explicitly refreshing the playlist. While testing this I waited about an hour for the server to add the item to the list and it did not show up. Only refreshing showed it (and seems it fixed the issue too)

OzGav commented 3 months ago

Then I would guess there is something wrong with the way the playlist was originally created. So delete the first one and use the one that works. Having to refresh the view to show the added items is normal. What is broken is the refresh icon should have a red dot on it to show you need to refresh. That is being tracked here https://github.com/music-assistant/hass-music-assistant/issues/2669

So I think this can be closed again?

udochrist commented 3 months ago

Ok. Accepted and closed. on the related note: why would you show a red dot indicating a refresh is needed instead of refreshing it….

OzGav commented 3 months ago

Because MA can't tell when all the things that are getting updated in the frontend are finished. So the red dot is added when things first start getting updated and then when the user gets around to pressing it everything should be done.