home-assistant-libs / pychromecast

Library for Python 3 to communicate with the Google Chromecast.
MIT License
2.52k stars 378 forks source link

BBC Sounds conroller stopped working #752

Closed dunxd closed 9 months ago

dunxd commented 11 months ago

I noticed that my Home Assistant chrome cast scripts to play various BBC radio stations stopped working a couple of weeks ago. I found an issue in Home Assistant core about this that included some workarounds that allow me to replace my scripts for the moment.

I thought I'd take a look to see if it is possible to get the bbcsounds app working again, and found my way here.

I then following the instructions in README.md for exploring a namespace to see if I could figure out if things had changed with the Sounds controller - and I think I found the issue. BBC now requires a sign in to play stations through the Sounds website. I didn't try this previously, but suspect it wasn't required until recently. I couldn't find any JSON in the SOCKET events - it looks like things may now be encrypted. If that is the case, for pychromecast to support BBC Sounds it would need to be updated to allow sending credentials and decrypting. I'm not 100% sure about this - it might make more sense to whoever wrote the BBC Sounds controller originally.

blawford commented 11 months ago

Hello. I have raised a PR to fix this #753.

The issue was just that BBC Sounds have changed their app_id, when I cast a radio station using my voice I get:

Whereas running through this integration:

dunxd commented 11 months ago

That's great to hear, and a relatively quick fix (assuming PRs are being handled for this repo).

I did read on a manufacturer site that BBC are going to require a license agreement to distribute HLS streams at some point in the future. At that point will it be necessary to have a BBC Sounds integration that allows individual login, similar to the Spotify integration?

emontnemery commented 9 months ago

Fixed by #753