iaqualink-py icon indicating copy to clipboard operation
iaqualink-py copied to clipboard

Unable to update a setting... HTTP 500 from the server

Open Whytey opened this issue 2 years ago • 3 comments

Using the library from the iaqualink integration in Home-Assistant, I am getting a HTTP 500 returned.

Traceback (most recent call last):
  File "/usr/local/lib/python3.9/dist-packages/homeassistant/components/websocket_api/commands.py", line 200, in handle_call_service
    await hass.services.async_call(
  File "/usr/local/lib/python3.9/dist-packages/homeassistant/core.py", line 1738, in async_call
    task.result()
  File "/usr/local/lib/python3.9/dist-packages/homeassistant/core.py", line 1775, in _execute_service
    await cast(Callable[[ServiceCall], Awaitable[None]], handler.job.target)(
  File "/usr/local/lib/python3.9/dist-packages/homeassistant/helpers/entity_component.py", line 204, in handle_service
    await service.entity_service_call(
  File "/usr/local/lib/python3.9/dist-packages/homeassistant/helpers/service.py", line 676, in entity_service_call
    future.result()  # pop exception if have
  File "/usr/local/lib/python3.9/dist-packages/homeassistant/helpers/entity.py", line 931, in async_request_call
    await coro
  File "/usr/local/lib/python3.9/dist-packages/homeassistant/helpers/service.py", line 713, in _handle_entity_call
    await result
  File "/opt/homeassistant/custom_components/iaqualink/__init__.py", line 190, in wrapper
    await func(self, *args, **kwargs)
  File "/opt/homeassistant/custom_components/iaqualink/switch.py", line 50, in async_turn_on
    await self.dev.turn_on()
  File "/opt/homeassistant/deps/lib/python3.9/site-packages/iaqualink/device.py", line 318, in turn_on
    await self.system.set_production(1)
  File "/opt/homeassistant/deps/lib/python3.9/site-packages/iaqualink/system.py", line 276, in set_production
    r = await self.aqualink.send_shadow_desired(self.serial, {"equipment": {"swc_0": {"production": state}}})
  File "/opt/homeassistant/deps/lib/python3.9/site-packages/iaqualink/client.py", line 227, in send_shadow_desired
    r = await self._send_aws_request(
  File "/opt/homeassistant/deps/lib/python3.9/site-packages/iaqualink/client.py", line 212, in _send_aws_request
    return await self._send_request(url, headers={"authorization":self._IdToken}, **kwargs)
  File "/opt/homeassistant/deps/lib/python3.9/site-packages/iaqualink/client.py", line 123, in _send_request
    raise AqualinkServiceException(m)
iaqualink.exception.AqualinkServiceException: Unexpected response: 500 Internal Server Error

I am not the only one, at least one other - refer to https://community.home-assistant.io/t/jandy-iaqualink-pool-integration/105633/358?u=whytey

Whytey avatar Oct 02 '22 11:10 Whytey

I'm guessing this is for the exo branch specifically. Unfortunately I don't have that equipment so I can't even try to sniff the traffic to see what's being requested/answered.

I've contacted Fluidra but I'm not optimistic I'll get an answer.

flz avatar Oct 17 '22 16:10 flz

Wellll...actually, I am using a fork at https://github.com/martinfrench92/iaqualink-py/tree/exo-awsless but I haven't looked into the changes made there - I just assumed they were trivial to add support for the Hydroxinator I have.

Can I assume that you have not been impacted by any changes on the aqualink server side to address a recent security issue?

I might have to dig into your code and Martin's to understand the differences. I am happy to help with sniffing if you can help me through the process - I haven't had success previously.

Cheers, Whytey

Whytey avatar Oct 23 '22 11:10 Whytey

@Whytey,

I'm working on some fixes for the eXO devices. The 'Server Error' you're experienced is only relevant for devices which use AWS IOT services (like the eXO chlorinators).

Some discussion happening here.

mk-french avatar Oct 28 '22 13:10 mk-french

@Whytey,

I think we can close this issue now?

The server 500 error was caused by the disruption in the API as described in #16.

All seems to be back to normal?

-Martin

mk-french avatar Dec 29 '22 22:12 mk-french

Confirmed. Seems to be working now for me. Thanks for all your help though, as always.

On Fri, 30 Dec 2022, 8:34 am Martin French, @.***> wrote:

@Whytey https://github.com/Whytey,

I think we can close this issue now?

The server 500 error was caused by the disruption in the API as described in #16 https://github.com/flz/iaqualink-py/discussions/16.

All seems to be back to normal?

-Martin

— Reply to this email directly, view it on GitHub https://github.com/flz/iaqualink-py/issues/24#issuecomment-1367617533, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAGWATCS6VN7Z4GGYK7DZ33WPYGX5ANCNFSM6AAAAAAQ23XZM4 . You are receiving this because you were mentioned.Message ID: @.***>

Whytey avatar Dec 30 '22 00:12 Whytey

@flz Hey There,

Just curious, Is there any ability to control iAquaLink over UDP/IP?

apizzi69 avatar Jan 11 '23 00:01 apizzi69

@apizzi69 Not that I know of.

Closing this issue.

flz avatar Sep 11 '23 14:09 flz