mirror of
https://github.com/home-assistant/core.git
synced 2025-07-16 01:37:08 +00:00
Use _attr_state in ziggo mediabox xl media player (#82844)
This commit is contained in:
parent
622466b3d3
commit
cee716b892
@ -98,25 +98,24 @@ class ZiggoMediaboxXLDevice(MediaPlayerEntity):
|
||||
"""Initialize the device."""
|
||||
self._mediabox = mediabox
|
||||
self._host = host
|
||||
self._name = name
|
||||
self._available = available
|
||||
self._state = None
|
||||
self._attr_name = name
|
||||
self._attr_available = available
|
||||
|
||||
def update(self) -> None:
|
||||
"""Retrieve the state of the device."""
|
||||
try:
|
||||
if self._mediabox.test_connection():
|
||||
if self._mediabox.turned_on():
|
||||
if self._state != MediaPlayerState.PAUSED:
|
||||
self._state = MediaPlayerState.PLAYING
|
||||
if self.state != MediaPlayerState.PAUSED:
|
||||
self._attr_state = MediaPlayerState.PLAYING
|
||||
else:
|
||||
self._state = MediaPlayerState.OFF
|
||||
self._available = True
|
||||
self._attr_state = MediaPlayerState.OFF
|
||||
self._attr_available = True
|
||||
else:
|
||||
self._available = False
|
||||
self._attr_available = False
|
||||
except OSError:
|
||||
_LOGGER.error("Couldn't fetch state from %s", self._host)
|
||||
self._available = False
|
||||
self._attr_available = False
|
||||
|
||||
def send_keys(self, keys):
|
||||
"""Send keys to the device and handle exceptions."""
|
||||
@ -126,22 +125,7 @@ class ZiggoMediaboxXLDevice(MediaPlayerEntity):
|
||||
_LOGGER.error("Couldn't send keys to %s", self._host)
|
||||
|
||||
@property
|
||||
def name(self):
|
||||
"""Return the name of the device."""
|
||||
return self._name
|
||||
|
||||
@property
|
||||
def state(self):
|
||||
"""Return the state of the device."""
|
||||
return self._state
|
||||
|
||||
@property
|
||||
def available(self):
|
||||
"""Return True if the device is available."""
|
||||
return self._available
|
||||
|
||||
@property
|
||||
def source_list(self):
|
||||
def source_list(self) -> list[str]:
|
||||
"""List of available sources (channels)."""
|
||||
return [
|
||||
self._mediabox.channels()[c]
|
||||
@ -159,30 +143,30 @@ class ZiggoMediaboxXLDevice(MediaPlayerEntity):
|
||||
def media_play(self) -> None:
|
||||
"""Send play command."""
|
||||
self.send_keys(["PLAY"])
|
||||
self._state = MediaPlayerState.PLAYING
|
||||
self._attr_state = MediaPlayerState.PLAYING
|
||||
|
||||
def media_pause(self) -> None:
|
||||
"""Send pause command."""
|
||||
self.send_keys(["PAUSE"])
|
||||
self._state = MediaPlayerState.PAUSED
|
||||
self._attr_state = MediaPlayerState.PAUSED
|
||||
|
||||
def media_play_pause(self) -> None:
|
||||
"""Simulate play pause media player."""
|
||||
self.send_keys(["PAUSE"])
|
||||
if self._state == MediaPlayerState.PAUSED:
|
||||
self._state = MediaPlayerState.PLAYING
|
||||
if self.state == MediaPlayerState.PAUSED:
|
||||
self._attr_state = MediaPlayerState.PLAYING
|
||||
else:
|
||||
self._state = MediaPlayerState.PAUSED
|
||||
self._attr_state = MediaPlayerState.PAUSED
|
||||
|
||||
def media_next_track(self) -> None:
|
||||
"""Channel up."""
|
||||
self.send_keys(["CHAN_UP"])
|
||||
self._state = MediaPlayerState.PLAYING
|
||||
self._attr_state = MediaPlayerState.PLAYING
|
||||
|
||||
def media_previous_track(self) -> None:
|
||||
"""Channel down."""
|
||||
self.send_keys(["CHAN_DOWN"])
|
||||
self._state = MediaPlayerState.PLAYING
|
||||
self._attr_state = MediaPlayerState.PLAYING
|
||||
|
||||
def select_source(self, source):
|
||||
"""Select the channel."""
|
||||
@ -201,4 +185,4 @@ class ZiggoMediaboxXLDevice(MediaPlayerEntity):
|
||||
return
|
||||
|
||||
self.send_keys([f"NUM_{digit}" for digit in str(digits)])
|
||||
self._state = MediaPlayerState.PLAYING
|
||||
self._attr_state = MediaPlayerState.PLAYING
|
||||
|
Loading…
x
Reference in New Issue
Block a user