diff --git a/homeassistant/components/media_player/philips_js.py b/homeassistant/components/media_player/philips_js.py index 02e520bb549..29529477894 100644 --- a/homeassistant/components/media_player/philips_js.py +++ b/homeassistant/components/media_player/philips_js.py @@ -9,13 +9,14 @@ from datetime import timedelta import voluptuous as vol -from homeassistant.components.media_player import ( - PLATFORM_SCHEMA, SUPPORT_SELECT_SOURCE, SUPPORT_TURN_OFF, - SUPPORT_VOLUME_STEP, SUPPORT_VOLUME_MUTE, MediaPlayerDevice) -from homeassistant.const import ( - STATE_ON, STATE_OFF, STATE_UNKNOWN, CONF_HOST, CONF_NAME) -from homeassistant.util import Throttle import homeassistant.helpers.config_validation as cv +from homeassistant.components.media_player import ( + PLATFORM_SCHEMA, SUPPORT_NEXT_TRACK, SUPPORT_PREVIOUS_TRACK, + SUPPORT_SELECT_SOURCE, SUPPORT_TURN_OFF, SUPPORT_VOLUME_MUTE, + SUPPORT_VOLUME_STEP, MediaPlayerDevice) +from homeassistant.const import ( + CONF_HOST, CONF_NAME, STATE_OFF, STATE_ON, STATE_UNKNOWN) +from homeassistant.util import Throttle REQUIREMENTS = ['ha-philipsjs==0.0.1'] @@ -24,7 +25,8 @@ _LOGGER = logging.getLogger(__name__) MIN_TIME_BETWEEN_UPDATES = timedelta(seconds=30) SUPPORT_PHILIPS_JS = SUPPORT_TURN_OFF | SUPPORT_VOLUME_STEP | \ - SUPPORT_VOLUME_MUTE | SUPPORT_SELECT_SOURCE + SUPPORT_VOLUME_MUTE | SUPPORT_SELECT_SOURCE | \ + SUPPORT_NEXT_TRACK | SUPPORT_PREVIOUS_TRACK DEFAULT_DEVICE = 'default' DEFAULT_HOST = '127.0.0.1' @@ -141,10 +143,24 @@ class PhilipsTV(MediaPlayerDevice): if not self._tv.on: self._state = STATE_OFF + def media_previous_track(self): + """Send rewind commmand.""" + self._tv.sendKey('Previous') + + def media_next_track(self): + """Send fast forward commmand.""" + self._tv.sendKey('Next') + @property def media_title(self): """Title of current playing media.""" - return self._source + if self._source == 'Watch TV': + if self._channel_name: + return '{} - {}'.format(self._source, self._channel_name) + else: + return self._source + else: + return self._source @Throttle(MIN_TIME_BETWEEN_UPDATES) def update(self): @@ -167,3 +183,10 @@ class PhilipsTV(MediaPlayerDevice): self._state = STATE_ON else: self._state = STATE_OFF + + self._tv.getChannelId() + self._tv.getChannels() + if self._tv.channel_id in self._tv.channels: + self._channel_name = self._tv.channels[self._tv.channel_id]['name'] + else: + self._channel_name = None diff --git a/setup.cfg b/setup.cfg index 6d952083a31..ffb46f62e46 100644 --- a/setup.cfg +++ b/setup.cfg @@ -10,3 +10,10 @@ exclude = .venv,.git,.tox,docs,www_static,venv,bin,lib,deps,build [pydocstyle] match_dir = ^((?!\.|www_static).)*$ + +[isort] +multi_line_output = 4 +indent = " " +forced_separate = homeassistant +known_standard_library = typing +not_skip = __init__.py