diff --git a/homeassistant/components/daikin/config_flow.py b/homeassistant/components/daikin/config_flow.py index 43d169e3440..18447c56d18 100644 --- a/homeassistant/components/daikin/config_flow.py +++ b/homeassistant/components/daikin/config_flow.py @@ -5,7 +5,7 @@ from uuid import uuid4 from aiohttp import ClientError, web_exceptions from async_timeout import timeout -from pydaikin.daikin_base import Appliance +from pydaikin.daikin_base import Appliance, DaikinException from pydaikin.discovery import Discovery import voluptuous as vol @@ -88,6 +88,13 @@ class FlowHandler(config_entries.ConfigFlow, domain=DOMAIN): data_schema=self.schema, errors={"base": "invalid_auth"}, ) + except DaikinException as daikin_exp: + _LOGGER.error(daikin_exp) + return self.async_show_form( + step_id="user", + data_schema=self.schema, + errors={"base": "unknown"}, + ) except Exception: # pylint: disable=broad-except _LOGGER.exception("Unexpected error creating device") return self.async_show_form( diff --git a/homeassistant/components/daikin/manifest.json b/homeassistant/components/daikin/manifest.json index f34dc8edc57..2a1619594ba 100644 --- a/homeassistant/components/daikin/manifest.json +++ b/homeassistant/components/daikin/manifest.json @@ -3,7 +3,7 @@ "name": "Daikin AC", "config_flow": true, "documentation": "https://www.home-assistant.io/integrations/daikin", - "requirements": ["pydaikin==2.4.4"], + "requirements": ["pydaikin==2.6.0"], "codeowners": ["@fredrike"], "zeroconf": ["_dkapi._tcp.local."], "quality_scale": "platinum", diff --git a/requirements_all.txt b/requirements_all.txt index f93ee194f9c..71c6135eeae 100644 --- a/requirements_all.txt +++ b/requirements_all.txt @@ -1414,7 +1414,7 @@ pycsspeechtts==1.0.4 # pycups==1.9.73 # homeassistant.components.daikin -pydaikin==2.4.4 +pydaikin==2.6.0 # homeassistant.components.danfoss_air pydanfossair==0.1.0 diff --git a/requirements_test_all.txt b/requirements_test_all.txt index 67765b7a649..c47a70b1a39 100644 --- a/requirements_test_all.txt +++ b/requirements_test_all.txt @@ -829,7 +829,7 @@ pycomfoconnect==0.4 pycoolmasternet-async==0.1.2 # homeassistant.components.daikin -pydaikin==2.4.4 +pydaikin==2.6.0 # homeassistant.components.deconz pydeconz==84 diff --git a/tests/components/daikin/test_config_flow.py b/tests/components/daikin/test_config_flow.py index 91ea79f4aa7..f39d117ed39 100644 --- a/tests/components/daikin/test_config_flow.py +++ b/tests/components/daikin/test_config_flow.py @@ -4,6 +4,7 @@ import asyncio from unittest.mock import PropertyMock, patch from aiohttp import ClientError, web_exceptions +from pydaikin.exceptions import DaikinException import pytest from homeassistant.components.daikin.const import KEY_MAC @@ -85,6 +86,7 @@ async def test_abort_if_already_setup(hass, mock_daikin): (asyncio.TimeoutError, "cannot_connect"), (ClientError, "cannot_connect"), (web_exceptions.HTTPForbidden, "invalid_auth"), + (DaikinException, "unknown"), (Exception, "unknown"), ], )