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
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.
What vacuum are you using?
S7MaxV
Describe the bug
Cannot add vacuum
Debug log
Cannot debug because I can't install