From a8797a08c6c7f24f63a295d2edafea9a18a0616a Mon Sep 17 00:00:00 2001 From: emontnemery Date: Mon, 24 Dec 2018 14:28:26 +0100 Subject: [PATCH] Improve handling of MQTT light discovery (#19436) --- homeassistant/components/mqtt/discovery.py | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/homeassistant/components/mqtt/discovery.py b/homeassistant/components/mqtt/discovery.py index 564840f27b2..2bd21f06b3c 100644 --- a/homeassistant/components/mqtt/discovery.py +++ b/homeassistant/components/mqtt/discovery.py @@ -41,9 +41,10 @@ CONFIG_ENTRY_COMPONENTS = [ ] DEPRECATED_PLATFORM_TO_SCHEMA = { - 'mqtt': 'basic', - 'mqtt_json': 'json', - 'mqtt_template': 'template', + 'light': { + 'mqtt_json': 'json', + 'mqtt_template': 'template', + } } @@ -207,10 +208,11 @@ async def async_start(hass: HomeAssistantType, discovery_topic, hass_config, discovery_hash = (component, discovery_id) if payload: - if CONF_PLATFORM in payload: + if CONF_PLATFORM in payload and 'schema' not in payload: platform = payload[CONF_PLATFORM] - if platform in DEPRECATED_PLATFORM_TO_SCHEMA: - schema = DEPRECATED_PLATFORM_TO_SCHEMA[platform] + if (component in DEPRECATED_PLATFORM_TO_SCHEMA and + platform in DEPRECATED_PLATFORM_TO_SCHEMA[component]): + schema = DEPRECATED_PLATFORM_TO_SCHEMA[component][platform] payload['schema'] = schema _LOGGER.warning('"platform": "%s" is deprecated, ' 'replace with "schema":"%s"',