BBC Sounds: Fix Radio 4 station (#2696)
authorKieran Hogg <kieran.hogg@gmail.com>
Thu, 27 Nov 2025 18:41:57 +0000 (18:41 +0000)
committerGitHub <noreply@github.com>
Thu, 27 Nov 2025 18:41:57 +0000 (19:41 +0100)
music_assistant/providers/bbc_sounds/adaptor.py
music_assistant/providers/bbc_sounds/manifest.json
requirements_all.txt

index da3611d45a904c8fe27e9e7c3e899e0eb596d011..77cef39ad3df466f9c7753c5b594e467dc96d29f 100644 (file)
@@ -229,10 +229,7 @@ class StationConverter(BaseConverter):
 
     async def get_stream_details(self, source_obj: Station | LiveStation) -> StreamDetails | None:
         """Convert the source object to a stream."""
-        from music_assistant.providers.bbc_sounds import (  # noqa: PLC0415
-            FEATURES,
-            _Constants,
-        )
+        from music_assistant.providers.bbc_sounds import FEATURES, _Constants  # noqa: PLC0415
 
         # TODO: can't seek this stream
         station = await self.convert(source_obj)
@@ -288,14 +285,14 @@ class StationConverter(BaseConverter):
         image_url = self._get_attr(station, "image_url")
 
         radio = Radio(
-            item_id=station.item_id,
+            item_id=station.id,
             # Add BBC prefix back to station to help identify station within MA
             name=f"BBC {self._get_attr(station, 'title', 'Unknown')}",
             provider=self.context.provider_domain,
             metadata=ImageProvider.create_metadata_with_image(
                 image_url, self.context.provider_domain
             ),
-            provider_mappings={self._create_provider_mapping(station.item_id)},
+            provider_mappings={self._create_provider_mapping(station.id)},
         )
         if station.stream:
             radio.uri = station.stream.uri
@@ -303,18 +300,17 @@ class StationConverter(BaseConverter):
 
     def _convert_live_station(self, station: LiveStation) -> Radio:
         """Convert LiveStation object."""
-        network_id = self._get_attr(station, "network.id")
         name = self._get_attr(station, "network.short_title", "Unknown")
         image_url = self._get_attr(station, "network.logo_url")
 
         return Radio(
-            item_id=network_id,
+            item_id=station.id,
             name=f"BBC {name}",
             provider=self.context.provider_domain,
             metadata=ImageProvider.create_metadata_with_image(
                 image_url, self.context.provider_domain
             ),
-            provider_mappings={self._create_provider_mapping(network_id)},
+            provider_mappings={self._create_provider_mapping(station.id)},
         )
 
     def _convert_station_search_result(self, station: StationSearchResult) -> Radio:
index 4713693d6333ffbb1a45e3500c3b3aa767b40591..82c1966c43455ba2e67a28f27cfef14b1c7cc3ea 100644 (file)
@@ -8,7 +8,7 @@
     "@kieranhogg"
   ],
   "requirements": [
-    "auntie-sounds==1.1.3",
+    "auntie-sounds==1.1.4",
     "pytz==2025.2"
   ],
   "multi_instance": false
index 4698aea8f7da917bf421d583bfdd4207079dacab..1594b1f2eac0eab3578c3f3f221b456d158cc8b5 100644 (file)
@@ -18,7 +18,7 @@ aiovban>=0.6.3
 alexapy==1.29.10
 async-upnp-client==0.45.0
 audible==0.10.0
-auntie-sounds==1.1.3
+auntie-sounds==1.1.4
 bidict==0.23.1
 certifi==2025.11.12
 chardet>=5.2.0