home-assistant / core

:house_with_garden: Open source home automation that puts local control and privacy first.
https://www.home-assistant.io
Apache License 2.0
69.03k stars 28.27k forks source link

Shark IQ - Entities Unavailable in 2024.5 (Error doing job: Task exception was never retrieved) #116670

Open bigbeefyangus opened 2 weeks ago

bigbeefyangus commented 2 weeks ago

The problem

Shark IQ vacuum unavailable after 2024.5.0 update. Reloading configuration/restart does not fix the issue.

What version of Home Assistant Core has the issue?

2024.5.0

What was the last working version of Home Assistant Core?

2024.4.4

What type of installation are you running?

Home Assistant OS

Integration causing the issue

Shark IQ

Link to integration documentation on our website

https://www.home-assistant.io/integrations/sharkiq/

Diagnostics information

No response

Example YAML snippet

No response

Anything in the logs that might be useful for us?

Logger: homeassistant
Source: components/sharkiq/vacuum.py:265
First occurred: 9:50:03 AM (1505 occurrences)
Last logged: 10:32:16 PM

Error doing job: Task exception was never retrieved
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 258, in _handle_refresh_interval
    await self._async_refresh(log_failures=True, scheduled=True)
  File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 414, in _async_refresh
    self.async_update_listeners()
  File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 168, in async_update_listeners
    update_callback()
  File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 492, in _handle_coordinator_update
    self.async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1009, in async_write_ha_state
    self._async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1132, in _async_write_ha_state
    state, attr, capabilities, shadowed_attr = self.__async_calculate_state()
                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1071, in __async_calculate_state
    if extra_state_attributes := self.extra_state_attributes:
                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/sharkiq/vacuum.py", line 275, in extra_state_attributes
    ATTR_ROOMS: self.available_rooms,
                ^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/sharkiq/vacuum.py", line 265, in available_rooms
    return self.sharkiq.get_room_list()
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/sharkiq/sharkiq.py", line 400, in get_room_list
    return self._get_device_room_list()['rooms']
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/sharkiq/sharkiq.py", line 390, in _get_device_room_list
    split = room_list.split(':')
            ^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'split'

Additional information

My vacuum used is a “dumb” model - no rooms or LiDAR capabilities, just on, off, and dock.

home-assistant[bot] commented 2 weeks ago

Hey there @jeffresc, @funkybunch, mind taking a look at this issue as it has been labeled with an integration (sharkiq) you are listed as a code owner for? Thanks!

Code owner commands Code owners of `sharkiq` can trigger bot actions by commenting: - `@home-assistant close` Closes the issue. - `@home-assistant rename Awesome new title` Renames the issue. - `@home-assistant reopen` Reopen the issue. - `@home-assistant unassign sharkiq` Removes the current integration label and assignees on the issue, add the integration domain after the command. - `@home-assistant add-label needs-more-information` Add a label (needs-more-information, problem in dependency, problem in custom component) to the issue. - `@home-assistant remove-label needs-more-information` Remove a label (needs-more-information, problem in dependency, problem in custom component) on the issue.

(message by CodeOwnersMention)


sharkiq documentation sharkiq source (message by IssueLinks)

bigbeefyangus commented 2 weeks ago

I just noticed I'm also getting this error in the logs:

Logger: homeassistant.components.vacuum
Source: helpers/entity_platform.py:580
integration: Vacuum (documentation, issues)
First occurred: 10:58:53 PM (1 occurrences)
Last logged: 10:58:53 PM

Error adding entity vacuum.basement_vac for domain vacuum with platform sharkiq
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 580, in _async_add_entities
    await coro
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 892, in _async_add_entity
    await entity.add_to_platform_finish()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1359, in add_to_platform_finish
    self.async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1009, in async_write_ha_state
    self._async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1132, in _async_write_ha_state
    state, attr, capabilities, shadowed_attr = self.__async_calculate_state()
                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1071, in __async_calculate_state
    if extra_state_attributes := self.extra_state_attributes:
                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/sharkiq/vacuum.py", line 275, in extra_state_attributes
    ATTR_ROOMS: self.available_rooms,
                ^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/sharkiq/vacuum.py", line 265, in available_rooms
    return self.sharkiq.get_room_list()
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/sharkiq/sharkiq.py", line 400, in get_room_list
    return self._get_device_room_list()['rooms']
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/sharkiq/sharkiq.py", line 390, in _get_device_room_list
    split = room_list.split(':')
            ^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'split'
funkybunch commented 2 weeks ago

@bigbeefyangus do you have any rooms configured in the Shark app? If not, could you add one and see if it resolves the issue? Or does the app not support rooms for your model?

bigbeefyangus commented 2 weeks ago

Hi @funkybunch, the app doesn’t appear to give me an option to create rooms for this model. Here’s my device settings page from the app image

bigbeefyangus commented 2 weeks ago

Update: still not working in core 2024.5.1

github-infohost-org commented 2 weeks ago

This stopped working for me too when i upgraded from 2024.4.4 to 2024.5.1. No option to add "Rooms" in the Shark App. Models are: RV2500A and RV1100AAX.

Logger: homeassistant.components.vacuum Source: helpers/entity_platform.py:580 integration: Vacuum (documentation, issues) First occurred: 5:12:34 PM (6 occurrences) Last logged: 5:16:20 PM

Error adding entity vacuum.lower_shark_vac for domain vacuum with platform sharkiq
Error adding entity vacuum.upper_shark_vac for domain vacuum with platform sharkiq

Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 580, in _async_add_entities await coro File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 892, in _async_add_entity await entity.add_to_platform_finish() File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1359, in add_to_platform_finish self.async_write_ha_state() File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1009, in async_write_ha_state self._async_write_ha_state() File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1132, in _async_write_ha_state state, attr, capabilities, shadowed_attr = self.async_calculate_state() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1071, in async_calculate_state if extra_state_attributes := self.extra_state_attributes: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/components/sharkiq/vacuum.py", line 275, in extra_state_attributes ATTR_ROOMS: self.available_rooms, ^^^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/components/sharkiq/vacuum.py", line 265, in available_rooms return self.sharkiq.get_room_list() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/sharkiq/sharkiq.py", line 400, in get_room_list return self._get_device_room_list()['rooms'] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/sharkiq/sharkiq.py", line 390, in _get_device_room_list split = room_list.split(':') ^^^^^^^^^^^^^^^ AttributeError: 'NoneType' object has no attribute 'split'

Logger: homeassistant Source: components/sharkiq/vacuum.py:265 First occurred: 5:13:06 PM (303 occurrences) Last logged: 7:52:10 PM Error doing job: Task exception was never retrieved

Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 258, in _handle_refresh_interval await self._async_refresh(log_failures=True, scheduled=True) File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 414, in _async_refresh self.async_update_listeners() File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 168, in async_update_listeners update_callback() File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 492, in _handle_coordinator_update self.async_write_ha_state() File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1009, in async_write_ha_state self._async_write_ha_state() File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1132, in _async_write_ha_state state, attr, capabilities, shadowed_attr = self.async_calculate_state() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1071, in async_calculate_state if extra_state_attributes := self.extra_state_attributes: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/components/sharkiq/vacuum.py", line 275, in extra_state_attributes ATTR_ROOMS: self.available_rooms, ^^^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/components/sharkiq/vacuum.py", line 265, in available_rooms return self.sharkiq.get_room_list() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/sharkiq/sharkiq.py", line 400, in get_room_list return self._get_device_room_list()['rooms'] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/sharkiq/sharkiq.py", line 390, in _get_device_room_list split = room_list.split(':') ^^^^^^^^^^^^^^^ AttributeError: 'NoneType' object has no attribute 'split'

rolf-tx commented 1 week ago

I had the same problem. Adding rooms fixed it for RV1100A. (SharkClean iOS app)

kakou-fr commented 1 week ago

same problem with RV750

crippit commented 1 week ago

Also having the same issue.

Nyxnix commented 1 week ago

Same issue with RV754.

MR-Assister commented 2 days ago

I also have the same issue with a rv761_nl

andrewgarvin commented 2 days ago

I have the same issue. I do not have any rooms defined in the Shark App. I do not see any options anywhere to add a room either. I have an older non-mapping model, it doesn't define rooms. Model Number: RV850BRN

truongbber commented 1 day ago

I have the same issue. I do not have any rooms defined in the Shark App. I do not see any options anywhere to add a room either. I have an older non-mapping model, it doesn't define rooms. @JeffResc, @funkybunch