Open Shredder5262 opened 1 month ago
Hey there @rdfurman, @mkmer, mind taking a look at this issue as it has been labeled with an integration (honeywell
) you are listed as a code owner for? Thanks!
(message by CodeOwnersMention)
honeywell documentation honeywell source (message by IssueLinks)
Backend is down when you are trying to change the temperature. You need to create some retry logic in the automation to recover or "make sure" the change happens. explained here: https://github.com/home-assistant/core/issues/110500 and here: https://github.com/home-assistant/core/issues/115440
Backend is down when you are trying to change the temperature. You need to create some retry logic in the automation to recover or "make sure" the change happens. explained here: #110500 and here: #115440
I don't even have an automation set up for this integration, this device simply just exists in HA. Between my first post and now, I did discover that there is a slave device for reporting outdoor temperatures on my network that wasn't plugged in for a month, that has been resolved, but i don't think it's related to the error messages being experienced here.
I see another error message for this integration today. There needs to be some error handling put into the code of this integration.
Service Unavailable 500, (<ClientResponse(https://www.mytotalconnectcomfort.com/portal/Device/CheckDataSession/5800342) [302 Found]> <CIMultiDictProxy('Cache-Control': 'private, s-maxage=0', 'Content-Type': 'text/html; charset=utf-8', 'Location': '/portal/Error?aspxerrorpath=/portal/Device/CheckDataSession/5800342', 'Server': 'Microsoft-IIS/8.5', 'ADRUM_0': 'g:61f66c4c-978e-4753-9161-18ecd4a1189e', 'ADRUM_1': 'n:honeywell-prod_f7be1c76-506d-4111-81c5-fc62766aedb7', 'ADRUM_2': 'i:197974', 'ADRUM_3': 'e:134', 'X-Frame-Options': 'DENY', 'X-XSS-Protection': '1; mode=block', 'X-UA-Compatible': 'IE=edge', 'Date': 'Fri, 03 May 2024 20:47:40 GMT', 'Content-Length': '184', 'Set-Cookie': 'NSC_NZUDD-443-WT=ffffffff090ecc1a45525d5f4f58455e445a4a42378b;expires=Fri, 03-May-2024 20:49:41 GMT;path=/;secure;httponly')> ,).
Another one , only a couple hours later, Please Fix First occurred: 5:10:07 PM (1 occurrences) Last logged: 5:10:07 PM
Service Unavailable 200, (<ClientResponse(https://www.mytotalconnectcomfort.com/portal/Device/CheckDataSession/5800342) [302 Found]> <CIMultiDictProxy('Cache-Control': 'private, s-maxage=0', 'Content-Type': 'text/html; charset=utf-8', 'Location': '/portal/Error?aspxerrorpath=/portal/Device/CheckDataSession/5800342', 'Server': 'Microsoft-IIS/8.5', 'ADRUM_0': 'g:7ba95ebd-1924-42bd-988c-9b3016a2231f', 'ADRUM_1': 'n:honeywell-prod_f7be1c76-506d-4111-81c5-fc62766aedb7', 'ADRUM_2': 'i:197974', 'ADRUM_3': 'e:161', 'X-Frame-Options': 'DENY', 'X-XSS-Protection': '1; mode=block', 'X-UA-Compatible': 'IE=edge', 'Date': 'Fri, 03 May 2024 22:10:06 GMT', 'Content-Length': '184', 'Set-Cookie': 'NSC_NZUDD-443-WT=ffffffff090ecc1a45525d5f4f58455e445a4a42378b;expires=Fri, 03-May-2024 22:12:07 GMT;path=/;secure;httponly')> ,).
Perhaps worth mentioning here, today i migrated my entire Home assistant setup from an Oracle VM machine to a VMware workstation player 17 machine (Which was surprisingly and possibly the easiest thing i've ever done in HA) because of machine instability issues with freezing and constantly rebooting for the past couple of years and this is even a new build/setup. Perhaps without the constant reboots that i would see less error messages with integrations.
I have 38 instances of Service Unavailable 200,
for yesterday and one Service Unavailable 500
,
Since midnight I already have 3 Service Unavailable 200
.
There really isn't much I can think of to "change" this behavior on the HA side other than mask the read errors (which we do) for a number of retries.
On the service side, HA doesn't have a built in "retry", so for now we need to add retries into our automation. It should be possible to retry a few times (how many??? and/or for how long) but it starts to get "weird" in the service if you make multiple adjustments on a card or via automation while it's retrying.
I am very open to suggestions to help "bullet" proof it.
I have 5 thermostats. There are no automations running against these thermostats, I believe these errors are caused simply from home assistant fetching the state of the thermostats.
I see hundreds of errors similar to these each day with a mixture of 200s as well as 500s.
Examples:
2024-05-06 15:59:13.603 ERROR (MainThread) [somecomfort] Service Unavailable 200, (<ClientResponse(https://www.mytotalconnectcomfort.com/portal/Device/CheckDataSession/106314) [302 Found]>
2024-05-06 15:58:14.618 ERROR (MainThread) [somecomfort] Service Unavailable 500, (<ClientResponse(https://www.mytotalconnectcomfort.com/portal/Device/CheckDataSession/106310) [302 Found]>
You can prove your theory by turning off polling and triggering it yourself at various rates.
The problem
When setting the temperature on the thermostat card, i get this error . It seems all the integration can do is report the temperature. Any adjustments just throw an error.
2024-04-17 06:57:56.648 ERROR (MainThread) [somecomfort] Service Unavailable 200, (<ClientResponse(https://www.mytotalconnectcomfort.com/portal/Device/SubmitControlScreenChanges) [302 Found]> <CIMultiDictProxy('Cache-Control': 'private, s-maxage=0', 'Content-Type': 'text/html; charset=utf-8', 'Location': '/portal/Error?aspxerrorpath=/portal/Device/SubmitControlScreenChanges', 'Server': 'Microsoft-IIS/8.5', 'ADRUM_0': 'g:37df69c5-87bd-4049-8b08-6c245f26c814', 'ADRUM_1': 'n:honeywell-prod_f7be1c76-506d-4111-81c5-fc62766aedb7', 'ADRUM_2': 'i:197974', 'ADRUM_3': 'e:127', 'X-Frame-Options': 'DENY', 'X-XSS-Protection': '1; mode=block', 'X-UA-Compatible': 'IE=edge', 'Date': 'Wed, 17 Apr 2024 11:57:56 GMT', 'Content-Length': '186', 'Set-Cookie': 'NSC_NZUDD-443-WT=ffffffff090ecc1c45525d5f4f58455e445a4a42378b;expires=Wed, 17-Apr-2024 11:59:56 GMT;path=/;secure;httponly')> ,). 2024-04-17 06:57:56.648 ERROR (MainThread) [homeassistant.components.honeywell.const] Invalid temperature 79.0: ('Service Unavailable %s.', 200) 2024-04-17 06:57:56.649 ERROR (MainThread) [homeassistant.components.websocket_api.http.connection] [140223520598592] Honeywell set temperature failed: invalid temperature: 79.0. Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/components/honeywell/climate.py", line 380, in async_set_temperature await self._device.set_setpoint_cool(temperature) File "/usr/local/lib/python3.12/site-packages/aiosomecomfort/device.py", line 164, in set_setpoint_cool await self._client.set_thermostat_settings( File "/usr/local/lib/python3.12/site-packages/aiosomecomfort/init.py", line 222, in set_thermostat_settings result = await self._post_json(url, json=data) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/aiosomecomfort/init.py", line 180, in _post_json return await self._request_json("post", *args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/aiosomecomfort/init.py", line 169, in _request_json raise ConnectionError("Service Unavailable %s.", resp.status) aiosomecomfort.exceptions.ConnectionError: ('Service Unavailable %s.', 200)
The above exception was the direct cause of the following exception:
Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 239, in handle_call_service response = await hass.services.async_call( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/core.py", line 2543, in async_call response_data = await coro ^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/core.py", line 2580, in _execute_service return await target(service_call) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 971, in entity_service_call single_response = await _handle_entity_call( ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 1043, in _handle_entity_call result = await task ^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/components/climate/init.py", line 917, in async_service_temperature_set await entity.async_set_temperature(*kwargs) File "/usr/src/homeassistant/homeassistant/components/honeywell/climate.py", line 391, in async_set_temperature raise ValueError( ValueError: Honeywell set temperature failed: invalid temperature: 79.0. 2024-04-17 06:58:00.448 ERROR (MainThread) [somecomfort] Service Unavailable 200, (<ClientResponse(https://www.mytotalconnectcomfort.com/portal/Device/SubmitControlScreenChanges) [302 Found]> <CIMultiDictProxy('Cache-Control': 'private, s-maxage=0', 'Content-Type': 'text/html; charset=utf-8', 'Location': '/portal/Error?aspxerrorpath=/portal/Device/SubmitControlScreenChanges', 'Server': 'Microsoft-IIS/8.5', 'ADRUM_0': 'g:9b0b4d5e-c48c-40a3-97a3-ae7313b3543a', 'ADRUM_1': 'n:honeywell-prod_f7be1c76-506d-4111-81c5-fc62766aedb7', 'ADRUM_2': 'i:197974', 'ADRUM_3': 'e:127', 'X-Frame-Options': 'DENY', 'X-XSS-Protection': '1; mode=block', 'X-UA-Compatible': 'IE=edge', 'Date': 'Wed, 17 Apr 2024 11:58:00 GMT', 'Content-Length': '186', 'Set-Cookie': 'NSC_NZUDD-443-WT=ffffffff090ecc1c45525d5f4f58455e445a4a42378b;expires=Wed, 17-Apr-2024 12:00:00 GMT;path=/;secure;httponly')> ,). 2024-04-17 06:58:00.449 ERROR (MainThread) [homeassistant.components.honeywell.const] Invalid temperature 80.0: ('Service Unavailable %s.', 200) 2024-04-17 06:58:00.449 ERROR (MainThread) [homeassistant.components.websocket_api.http.connection] [140223520598592] Honeywell set temperature failed: invalid temperature: 80.0. Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/components/honeywell/climate.py", line 380, in async_set_temperature await self._device.set_setpoint_cool(temperature) File "/usr/local/lib/python3.12/site-packages/aiosomecomfort/device.py", line 164, in set_setpoint_cool await self._client.set_thermostat_settings( File "/usr/local/lib/python3.12/site-packages/aiosomecomfort/init.py", line 222, in set_thermostat_settings result = await self._post_json(url, json=data) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/aiosomecomfort/init.py", line 180, in _post_json return await self._request_json("post", args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/aiosomecomfort/init.py", line 169, in _request_json raise ConnectionError("Service Unavailable %s.", resp.status) aiosomecomfort.exceptions.ConnectionError: ('Service Unavailable %s.', 200)
The above exception was the direct cause of the following exception:
Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 239, in handle_call_service response = await hass.services.async_call( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/core.py", line 2543, in async_call response_data = await coro ^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/core.py", line 2580, in _execute_service return await target(service_call) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 971, in entity_service_call single_response = await _handle_entity_call( ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 1043, in _handle_entity_call result = await task ^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/components/climate/init.py", line 917, in async_service_temperature_set await entity.async_set_temperature(**kwargs) File "/usr/src/homeassistant/homeassistant/components/honeywell/climate.py", line 391, in async_set_temperature raise ValueError( ValueError: Honeywell set temperature failed: invalid temperature: 80.0.
What version of Home Assistant Core has the issue?
2024.4.3
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
Honeywell Total Comfort
Link to integration documentation on our website
https://www.home-assistant.io/integrations/honeywell
Diagnostics information
No response
Example YAML snippet
No response
Anything in the logs that might be useful for us?
No response
Additional information
No response