mirror of
https://github.com/home-assistant/core.git
synced 2025-07-23 13:17:32 +00:00
Support for playing radio preset by Onkyo media_player (#16258)
* Added support to play radio preset by play media * Switch radio station by preset for Onkyo * added SUPPORT_PLAY_MEDIA
This commit is contained in:
parent
cd473643fe
commit
00cba29ae1
@ -14,7 +14,7 @@ import voluptuous as vol
|
||||
from homeassistant.components.media_player import (
|
||||
SUPPORT_TURN_OFF, SUPPORT_TURN_ON, SUPPORT_VOLUME_MUTE, SUPPORT_VOLUME_SET,
|
||||
SUPPORT_VOLUME_STEP, SUPPORT_SELECT_SOURCE, SUPPORT_PLAY,
|
||||
MediaPlayerDevice, PLATFORM_SCHEMA)
|
||||
SUPPORT_PLAY_MEDIA, MediaPlayerDevice, PLATFORM_SCHEMA)
|
||||
from homeassistant.const import (STATE_OFF, STATE_ON, CONF_HOST, CONF_NAME)
|
||||
import homeassistant.helpers.config_validation as cv
|
||||
|
||||
@ -30,17 +30,19 @@ SUPPORTED_MAX_VOLUME = 80
|
||||
|
||||
SUPPORT_ONKYO = SUPPORT_VOLUME_SET | SUPPORT_VOLUME_MUTE | \
|
||||
SUPPORT_VOLUME_STEP | SUPPORT_TURN_ON | SUPPORT_TURN_OFF | \
|
||||
SUPPORT_SELECT_SOURCE | SUPPORT_PLAY
|
||||
SUPPORT_SELECT_SOURCE | SUPPORT_PLAY | SUPPORT_PLAY_MEDIA
|
||||
|
||||
SUPPORT_ONKYO_WO_VOLUME = SUPPORT_TURN_ON | SUPPORT_TURN_OFF | \
|
||||
SUPPORT_SELECT_SOURCE | SUPPORT_PLAY
|
||||
SUPPORT_SELECT_SOURCE | SUPPORT_PLAY | SUPPORT_PLAY_MEDIA
|
||||
|
||||
KNOWN_HOSTS = [] # type: List[str]
|
||||
DEFAULT_SOURCES = {'tv': 'TV', 'bd': 'Bluray', 'game': 'Game', 'aux1': 'Aux1',
|
||||
'video1': 'Video 1', 'video2': 'Video 2',
|
||||
'video3': 'Video 3', 'video4': 'Video 4',
|
||||
'video5': 'Video 5', 'video6': 'Video 6',
|
||||
'video7': 'Video 7'}
|
||||
'video7': 'Video 7', 'fm': 'Radio'}
|
||||
|
||||
DEFAULT_PLAYABLE_SOURCES = ("fm", "am", "tuner")
|
||||
|
||||
PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend({
|
||||
vol.Optional(CONF_HOST): cv.string,
|
||||
@ -266,6 +268,13 @@ class OnkyoDevice(MediaPlayerDevice):
|
||||
source = self._reverse_mapping[source]
|
||||
self.command('input-selector {}'.format(source))
|
||||
|
||||
def play_media(self, media_type, media_id, **kwargs):
|
||||
"""Play radio station by preset number."""
|
||||
source = self._reverse_mapping[self._current_source]
|
||||
if (media_type.lower() == 'radio' and
|
||||
source in DEFAULT_PLAYABLE_SOURCES):
|
||||
self.command('preset {}'.format(media_id))
|
||||
|
||||
|
||||
class OnkyoDeviceZone(OnkyoDevice):
|
||||
"""Representation of an Onkyo device's extra zone."""
|
||||
|
Loading…
x
Reference in New Issue
Block a user