humbertogontijo / homeassistant-roborock

Roborock integration for Home Assistant. This integration uses your devices from the Roborock App
GNU General Public License v3.0
610 stars 62 forks source link

Vacuum gone, cannot re-install. #624

Closed bkr1969 closed 1 month ago

bkr1969 commented 1 month ago

What vacuum are you using?

S7MaxV

Describe the bug

Cannot add vacuum

Debug log

Cannot debug because I can't install

This error originated from a custom integration.

Logger: custom_components.roborock.config_flow
Source: custom_components/roborock/config_flow.py:228
integration: roborock (documentation, issues)
First occurred: 07:59:00 (1 occurrences)
Last logged: 07:59:00

Invalid code - check your code and try again.
Traceback (most recent call last):
  File "/config/custom_components/roborock/config_flow.py", line 228, in _code_login
  File "/usr/local/lib/python3.12/site-packages/roborock/api.py", line 684, in code_login
    raise RoborockInvalidCode("Invalid code - check your code and try again.")
roborock.exceptions.RoborockInvalidCode: Invalid code - check your code and try again.
This error originated from a custom integration.

Logger: custom_components.roborock.config_flow
Source: custom_components/roborock/config_flow.py:228
integration: roborock (documentation, issues)
First occurred: 07:57:54 (2 occurrences)
Last logged: 07:58:54

'types.UnionType' object has no attribute '__origin__'
Traceback (most recent call last):
  File "/usr/local/lib/python3.12/site-packages/dacite/types.py", line 22, in extract_origin_collection
    return collection.__extra__
           ^^^^^^^^^^^^^^^^^^^^
AttributeError: 'types.UnionType' object has no attribute '__extra__'. Did you mean: '__str__'?

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/config/custom_components/roborock/config_flow.py", line 228, in _code_login
    login_data = await self._client.code_login(code)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/roborock/api.py", line 695, in code_login
    return UserData.from_dict(user_data)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/roborock/containers.py", line 92, in from_dict
    return from_dict(cls, decamelize_obj(data, ignore_keys), config=Config(cast=[Enum]))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/dacite/core.py", line 64, in from_dict
    value = _build_value(type_=field_type, data=field_data, config=config)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/dacite/core.py", line 101, in _build_value
    if is_subclass(type_, cast_type):
       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/dacite/types.py", line 168, in is_subclass
    if is_generic_collection(sub_type):
       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/dacite/types.py", line 147, in is_generic_collection
    origin = extract_origin_collection(type_)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/dacite/types.py", line 24, in extract_origin_collection
    return collection.__origin__
           ^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'types.UnionType' object has no attribute '__origin__'
This error originated from a custom integration.

Logger: custom_components.roborock.config_flow
Source: custom_components/roborock/config_flow.py:239
integration: roborock (documentation, issues)
First occurred: 08:01:36 (1 occurrences)
Last logged: 08:01:36

username or password error - response code: 2012
Traceback (most recent call last):
  File "/config/custom_components/roborock/config_flow.py", line 239, in _pass_login
  File "/usr/local/lib/python3.12/site-packages/roborock/api.py", line 659, in pass_login
    raise RoborockException(f"{login_response.get('msg')} - response code: {login_response.get('code')}")
roborock.exceptions.RoborockException: username or password error - response code: 2012
bkr1969 commented 1 month ago

Seems this was all due to a conflict with the Govee integration, though I can't imagine why the two would conflict each other. Switched to the Govee MQTT and now it's back to normal.