diff --git a/custom_components/nvidia_shield/media_player.py b/custom_components/nvidia_shield/media_player.py index 83c5dec..480602f 100644 --- a/custom_components/nvidia_shield/media_player.py +++ b/custom_components/nvidia_shield/media_player.py @@ -825,7 +825,16 @@ class NvidiaShieldMediaPlayer(MediaPlayerEntity): } ) + @property def extra_state_attributes(self) -> dict: + """Extra state attributes — a PROPERTY, as HA requires (t40 blocker). + + ``Entity.__async_calculate_state`` merges them with + ``attr |= self.extra_state_attributes``; declaring this as a plain + method made every state write raise + ``TypeError: 'method' object is not iterable``, so the entity could + never render on a live install. + """ # Now playing: prefer Jellyfin, fall back to ADB media session, # then the foreground tier (P3-3a). now_playing = self._get_now_playing()