mirror of
https://github.com/home-assistant/core.git
synced 2026-09-06 13:32:08 +01:00
Handle Daikin connection errors gracefully in coordinator (#171017)
This commit is contained in:
@@ -4,10 +4,11 @@ from datetime import timedelta
|
||||
import logging
|
||||
|
||||
from pydaikin.daikin_base import Appliance
|
||||
from pydaikin.exceptions import DaikinException
|
||||
|
||||
from homeassistant.config_entries import ConfigEntry
|
||||
from homeassistant.core import HomeAssistant
|
||||
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator
|
||||
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator, UpdateFailed
|
||||
|
||||
from .const import DOMAIN, TIMEOUT_SEC
|
||||
|
||||
@@ -33,4 +34,11 @@ class DaikinCoordinator(DataUpdateCoordinator[None]):
|
||||
self.device = device
|
||||
|
||||
async def _async_update_data(self) -> None:
|
||||
await self.device.update_status()
|
||||
try:
|
||||
await self.device.update_status()
|
||||
except DaikinException as err:
|
||||
raise UpdateFailed(
|
||||
translation_domain=DOMAIN,
|
||||
translation_key="error_communicating",
|
||||
translation_placeholders={"error": str(err)},
|
||||
) from err
|
||||
|
||||
@@ -59,6 +59,9 @@
|
||||
}
|
||||
},
|
||||
"exceptions": {
|
||||
"error_communicating": {
|
||||
"message": "Error communicating with Daikin device: {error}"
|
||||
},
|
||||
"zone_hvac_mode_unsupported": {
|
||||
"message": "Zone temperature can only be changed when the main climate mode is heat or cool."
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user