diff --git a/homeassistant/components/discovery/__init__.py b/homeassistant/components/discovery/__init__.py index 246a66eb9a1..7f05c70653c 100644 --- a/homeassistant/components/discovery/__init__.py +++ b/homeassistant/components/discovery/__init__.py @@ -52,7 +52,6 @@ SERVICE_XIAOMI_GW = 'xiaomi_gw' CONFIG_ENTRY_HANDLERS = { SERVICE_DAIKIN: 'daikin', SERVICE_DECONZ: 'deconz', - 'esphome': 'esphome', 'google_cast': 'cast', SERVICE_HEOS: 'heos', SERVICE_HUE: 'hue', diff --git a/homeassistant/components/esphome/config_flow.py b/homeassistant/components/esphome/config_flow.py index f6b8bb9abd7..96ea8012bd4 100644 --- a/homeassistant/components/esphome/config_flow.py +++ b/homeassistant/components/esphome/config_flow.py @@ -69,8 +69,8 @@ class EsphomeFlowHandler(config_entries.ConfigFlow): description_placeholders={'name': self._name}, ) - async def async_step_discovery(self, user_input: ConfigType): - """Handle discovery.""" + async def async_step_zeroconf(self, user_input: ConfigType): + """Handle zeroconf discovery.""" address = user_input['properties'].get( 'address', user_input['hostname'][:-1]) for entry in self._async_current_entries(): diff --git a/homeassistant/components/esphome/manifest.json b/homeassistant/components/esphome/manifest.json index b50d11dbd12..71d233fee2e 100644 --- a/homeassistant/components/esphome/manifest.json +++ b/homeassistant/components/esphome/manifest.json @@ -7,6 +7,7 @@ "aioesphomeapi==2.0.1" ], "dependencies": [], + "zeroconf": ["_esphomelib._tcp.local."], "codeowners": [ "@OttoWinter" ] diff --git a/homeassistant/generated/zeroconf.py b/homeassistant/generated/zeroconf.py index 08c520b3816..f009132228c 100644 --- a/homeassistant/generated/zeroconf.py +++ b/homeassistant/generated/zeroconf.py @@ -7,5 +7,8 @@ To update, run python3 -m hassfest SERVICE_TYPES = { "_axis-video._tcp.local.": [ "axis" + ], + "_esphomelib._tcp.local.": [ + "esphome" ] } diff --git a/tests/components/esphome/test_config_flow.py b/tests/components/esphome/test_config_flow.py index 076ec0066a6..d27d449eb50 100644 --- a/tests/components/esphome/test_config_flow.py +++ b/tests/components/esphome/test_config_flow.py @@ -202,7 +202,7 @@ async def test_discovery_initiation(hass, mock_client): mock_client.device_info.return_value = mock_coro( MockDeviceInfo(False, "test8266")) - result = await flow.async_step_discovery(user_input=service_info) + result = await flow.async_step_zeroconf(user_input=service_info) assert result['type'] == 'form' assert result['step_id'] == 'discovery_confirm' assert result['description_placeholders']['name'] == 'test8266' @@ -229,7 +229,7 @@ async def test_discovery_already_configured_hostname(hass, mock_client): 'hostname': 'test8266.local.', 'properties': {} } - result = await flow.async_step_discovery(user_input=service_info) + result = await flow.async_step_zeroconf(user_input=service_info) assert result['type'] == 'abort' assert result['reason'] == 'already_configured' @@ -251,6 +251,6 @@ async def test_discovery_already_configured_ip(hass, mock_client): "address": "192.168.43.183" } } - result = await flow.async_step_discovery(user_input=service_info) + result = await flow.async_step_zeroconf(user_input=service_info) assert result['type'] == 'abort' assert result['reason'] == 'already_configured' diff --git a/tests/components/zeroconf/test_init.py b/tests/components/zeroconf/test_init.py index b3257f57714..0596d5e0ed5 100644 --- a/tests/components/zeroconf/test_init.py +++ b/tests/components/zeroconf/test_init.py @@ -36,5 +36,5 @@ async def test_setup(hass): hass, zeroconf.DOMAIN, {zeroconf.DOMAIN: {}}) await hass.async_block_till_done() - assert len(MockServiceBrowser.mock_calls) == 1 - assert len(mock_config_flow.mock_calls) == 1 + assert len(MockServiceBrowser.mock_calls) == 2 + assert len(mock_config_flow.mock_calls) == 2