### The problem
Recently thermostats through TCC become unavailable (daily). Er…rors in log indicate trouble logging-in in despite username/password is unchanged. The only way to restore system functionality is to reload the TCC integration. The request here is for graceful handling of the login errors and an automatic recovery.
### What version of Home Assistant Core has the issue?
2023.3.6
### What was the last working version of Home Assistant Core?
_No response_
### What type of installation are you running?
Home Assistant OS
### Integration causing the issue
integration: honeywell
### Link to integration documentation on our website
https://www.home-assistant.io/integrations/honeywell#climate
### Diagnostics information
Home Assistant Core
Login as [email protected] failed
4:57:36 AM – (ERROR) components/honeywell/climate.py
401 Error at update (Key expired?).
4:57:35 AM – (ERROR) components/honeywell/climate.py - message first occurred at 2:30:32 AM and shows up 4 times
[139929708047584] Disconnected: Did not receive auth message within 10 seconds
2:53:33 AM – (WARNING) Home Assistant WebSocket API - message first occurred at 12:45:07 AM and shows up 2 times
Update for climate.bedroom_suite fails
2:30:11 AM – (ERROR) components/honeywell/climate.py - message first occurred at 2:30:11 AM and shows up 3 times
Update of climate.bedroom_suite is taking over 10 seconds
2:30:11 AM – (WARNING) helpers/entity.py - message first occurred at 2:30:11 AM and shows up 3 times
### Example YAML snippet
_No response_
### Anything in the logs that might be useful for us?
```txt
2023-04-03 02:30:11.738 WARNING (MainThread) [homeassistant.helpers.entity] Update of climate.bedroom_suite is taking over 10 seconds
2023-04-03 02:30:11.742 WARNING (MainThread) [homeassistant.helpers.entity] Update of climate.guest_floor is taking over 10 seconds
2023-04-03 02:30:11.744 WARNING (MainThread) [homeassistant.helpers.entity] Update of climate.main_floor is taking over 10 seconds
2023-04-03 02:30:11.765 ERROR (MainThread) [homeassistant.helpers.entity] Update for climate.bedroom_suite fails
Traceback (most recent call last):
File "/usr/local/lib/python3.10/site-packages/aiohttp/connector.py", line 1152, in _create_direct_connection
hosts = await asyncio.shield(host_resolved)
File "/usr/local/lib/python3.10/site-packages/aiohttp/connector.py", line 874, in _resolve_host
addrs = await self._resolver.resolve(host, port, family=self._family)
File "/usr/local/lib/python3.10/site-packages/aiohttp/resolver.py", line 33, in resolve
infos = await self._loop.getaddrinfo(
File "/usr/local/lib/python3.10/asyncio/base_events.py", line 863, in getaddrinfo
return await self.run_in_executor(
File "/usr/local/lib/python3.10/concurrent/futures/thread.py", line 58, in run
result = self.fn(*self.args, **self.kwargs)
File "/usr/local/lib/python3.10/socket.py", line 955, in getaddrinfo
for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
socket.gaierror: [Errno -3] Try again
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 541, in async_update_ha_state
await self.async_device_update()
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 747, in async_device_update
await task
File "/usr/src/homeassistant/homeassistant/components/honeywell/climate.py", line 430, in async_update
await self._data.client.login()
File "/usr/local/lib/python3.10/site-packages/aiohttp/client.py", line 536, in _request
conn = await self._connector.connect(
File "/usr/local/lib/python3.10/site-packages/aiohttp/connector.py", line 540, in connect
proto = await self._create_connection(req, traces, timeout)
File "/usr/local/lib/python3.10/site-packages/aiohttp/connector.py", line 901, in _create_connection
_, proto = await self._create_direct_connection(req, traces, timeout)
File "/usr/local/lib/python3.10/site-packages/aiohttp/connector.py", line 1166, in _create_direct_connection
raise ClientConnectorError(req.connection_key, exc) from exc
aiohttp.client_exceptions.ClientConnectorError: Cannot connect to host www.mytotalconnectcomfort.com:443 ssl:default [Try again]
2023-04-03 02:30:11.777 ERROR (MainThread) [homeassistant.helpers.entity] Update for climate.guest_floor fails
Traceback (most recent call last):
File "/usr/local/lib/python3.10/site-packages/aiohttp/connector.py", line 1152, in _create_direct_connection
hosts = await asyncio.shield(host_resolved)
File "/usr/local/lib/python3.10/site-packages/aiohttp/connector.py", line 1152, in _create_direct_connection
hosts = await asyncio.shield(host_resolved)
File "/usr/local/lib/python3.10/site-packages/aiohttp/connector.py", line 874, in _resolve_host
addrs = await self._resolver.resolve(host, port, family=self._family)
File "/usr/local/lib/python3.10/site-packages/aiohttp/resolver.py", line 33, in resolve
infos = await self._loop.getaddrinfo(
File "/usr/local/lib/python3.10/asyncio/base_events.py", line 863, in getaddrinfo
return await self.run_in_executor(
File "/usr/local/lib/python3.10/concurrent/futures/thread.py", line 58, in run
result = self.fn(*self.args, **self.kwargs)
File "/usr/local/lib/python3.10/socket.py", line 955, in getaddrinfo
for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
socket.gaierror: [Errno -3] Try again
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 541, in async_update_ha_state
await self.async_device_update()
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 747, in async_device_update
await task
File "/usr/src/homeassistant/homeassistant/components/honeywell/climate.py", line 430, in async_update
await self._data.client.login()
File "/usr/local/lib/python3.10/site-packages/aiohttp/client.py", line 536, in _request
conn = await self._connector.connect(
File "/usr/local/lib/python3.10/site-packages/aiohttp/connector.py", line 540, in connect
proto = await self._create_connection(req, traces, timeout)
File "/usr/local/lib/python3.10/site-packages/aiohttp/connector.py", line 901, in _create_connection
_, proto = await self._create_direct_connection(req, traces, timeout)
File "/usr/local/lib/python3.10/site-packages/aiohttp/connector.py", line 1166, in _create_direct_connection
raise ClientConnectorError(req.connection_key, exc) from exc
aiohttp.client_exceptions.ClientConnectorError: Cannot connect to host www.mytotalconnectcomfort.com:443 ssl:default [Try again]
2023-04-03 02:30:11.782 ERROR (MainThread) [homeassistant.helpers.entity] Update for climate.main_floor fails
Traceback (most recent call last):
File "/usr/local/lib/python3.10/site-packages/aiohttp/connector.py", line 1152, in _create_direct_connection
hosts = await asyncio.shield(host_resolved)
File "/usr/local/lib/python3.10/site-packages/aiohttp/connector.py", line 1152, in _create_direct_connection
hosts = await asyncio.shield(host_resolved)
File "/usr/local/lib/python3.10/site-packages/aiohttp/connector.py", line 874, in _resolve_host
addrs = await self._resolver.resolve(host, port, family=self._family)
File "/usr/local/lib/python3.10/site-packages/aiohttp/resolver.py", line 33, in resolve
infos = await self._loop.getaddrinfo(
File "/usr/local/lib/python3.10/asyncio/base_events.py", line 863, in getaddrinfo
return await self.run_in_executor(
File "/usr/local/lib/python3.10/concurrent/futures/thread.py", line 58, in run
result = self.fn(*self.args, **self.kwargs)
File "/usr/local/lib/python3.10/socket.py", line 955, in getaddrinfo
for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
socket.gaierror: [Errno -3] Try again
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 541, in async_update_ha_state
await self.async_device_update()
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 747, in async_device_update
await task
File "/usr/src/homeassistant/homeassistant/components/honeywell/climate.py", line 430, in async_update
await self._data.client.login()
File "/usr/local/lib/python3.10/site-packages/aiohttp/client.py", line 536, in _request
conn = await self._connector.connect(
File "/usr/local/lib/python3.10/site-packages/aiohttp/connector.py", line 540, in connect
proto = await self._create_connection(req, traces, timeout)
File "/usr/local/lib/python3.10/site-packages/aiohttp/connector.py", line 901, in _create_connection
_, proto = await self._create_direct_connection(req, traces, timeout)
File "/usr/local/lib/python3.10/site-packages/aiohttp/connector.py", line 1166, in _create_direct_connection
raise ClientConnectorError(req.connection_key, exc) from exc
aiohttp.client_exceptions.ClientConnectorError: Cannot connect to host www.mytotalconnectcomfort.com:443 ssl:default [Try again]
2023-04-03 02:30:32.100 ERROR (MainThread) [somecomfort] 401 Error at update (Key expired?).
2023-04-03 02:30:32.111 ERROR (MainThread) [somecomfort] 401 Error at update (Key expired?).
2023-04-03 02:30:32.118 ERROR (MainThread) [somecomfort] 401 Error at update (Key expired?).
```
### Additional information
_No response_