diff --git a/homeassistant/components/discovery.py b/homeassistant/components/discovery.py index 32e1bbd5f6ae..65a5af79bfb4 100644 --- a/homeassistant/components/discovery.py +++ b/homeassistant/components/discovery.py @@ -14,7 +14,7 @@ import voluptuous as vol from homeassistant.const import EVENT_HOMEASSISTANT_START from homeassistant.helpers.discovery import load_platform, discover -REQUIREMENTS = ['netdisco==0.7.2'] +REQUIREMENTS = ['netdisco==0.7.5'] DOMAIN = 'discovery' @@ -33,6 +33,7 @@ SERVICE_HANDLERS = { 'plex_mediaserver': ('media_player', 'plex'), 'roku': ('media_player', 'roku'), 'sonos': ('media_player', 'sonos'), + 'yamaha': ('media_player', 'yamaha'), 'logitech_mediaserver': ('media_player', 'squeezebox'), 'directv': ('media_player', 'directv'), } diff --git a/homeassistant/components/media_player/yamaha.py b/homeassistant/components/media_player/yamaha.py index 027fd6077309..40ca9151e50b 100644 --- a/homeassistant/components/media_player/yamaha.py +++ b/homeassistant/components/media_player/yamaha.py @@ -47,7 +47,18 @@ def setup_platform(hass, config, add_devices, discovery_info=None): source_ignore = config.get(CONF_SOURCE_IGNORE) source_names = config.get(CONF_SOURCE_NAMES) - if host is None: + if discovery_info is not None: + name = discovery_info[0] + model = discovery_info[1] + ctrl_url = discovery_info[2] + desc_url = discovery_info[3] + receivers = rxv.RXV( + ctrl_url, + model_name=model, + friendly_name=name, + unit_desc_url=desc_url).zone_controllers() + _LOGGER.info("Receivers: %s", receivers) + elif host is None: receivers = [] for recv in rxv.find(): receivers.extend(recv.zone_controllers()) @@ -73,8 +84,8 @@ class YamahaDevice(MediaPlayerDevice): self._pwstate = STATE_OFF self._current_source = None self._source_list = None - self._source_ignore = source_ignore - self._source_names = source_names + self._source_ignore = source_ignore or [] + self._source_names = source_names or {} self._reverse_mapping = None self.update() self._name = name diff --git a/requirements_all.txt b/requirements_all.txt index 6528b07fb087..a746d7bbf343 100644 --- a/requirements_all.txt +++ b/requirements_all.txt @@ -271,7 +271,7 @@ mficlient==0.3.0 miflora==0.1.9 # homeassistant.components.discovery -netdisco==0.7.2 +netdisco==0.7.5 # homeassistant.components.sensor.neurio_energy neurio==0.2.10