Skip to content

Commit 3925e12

Browse files
authored
fix: playing state of media player entity (#1552)
1 parent 500ed76 commit 3925e12

2 files changed

Lines changed: 9 additions & 6 deletions

File tree

custom_components/xiaomi_home/media_player.py

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -430,15 +430,16 @@ def __init__(self, miot_device: MIoTDevice,
430430
elif item.name in {'pause', 'paused'}:
431431
self._playing_state_map[
432432
item.value] = MediaPlayerState.PAUSED
433-
self._prop_playing_state = prop
433+
self._prop_playing_state = prop
434434

435435
@property
436436
def state(self) -> Optional[MediaPlayerState]:
437437
"""The current state."""
438-
return (self.get_map_value(map_=self._playing_state_map,
439-
key=self.get_prop_value(
440-
prop=self._prop_playing_state))
441-
if self._prop_playing_state else MediaPlayerState.ON)
438+
current_state = self.get_prop_value(
439+
prop=self._prop_playing_state) if self._prop_playing_state else None
440+
return (MediaPlayerState.ON if
441+
(current_state is None) else self.get_map_value(
442+
map_=self._playing_state_map, key=current_state))
442443

443444

444445
class WifiSpeaker(FeatureVolumeSet, FeatureVolumeMute, FeaturePlay,

custom_components/xiaomi_home/miot/specs/specv2entity.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -325,10 +325,12 @@
325325
},
326326
'play-control': {
327327
'required': {
328+
'properties': {
329+
'playing-state': {'read'}
330+
},
328331
'actions': {'play'}
329332
},
330333
'optional': {
331-
'properties': {'playing-state'},
332334
'actions': {'pause', 'stop', 'next', 'previous'}
333335
}
334336
}

0 commit comments

Comments
 (0)