skodaconnect / homeassistant-skodaconnect

Skoda Connect - A home assistant plugin to add integration with your car
Apache License 2.0
235 stars 28 forks source link

List object is not a mapping error in 1.0.48 #59

Closed dailybits closed 3 years ago

dailybits commented 3 years ago

Upgrading to new version Car: Skoda Enyaq

login is going perfect:

2021-08-27 20:43:56 DEBUG (MainThread) [skodaconnect.connection] Request for "https://api.connect.skoda-auto.cz/api/v1/charging/xxxxxx/status" returned with status code [200]
2021-08-27 20:43:56 DEBUG (MainThread) [skodaconnect.connection] Got vehicle charging data
2021-08-27 20:43:56 DEBUG (MainThread) [custom_components.skodaconnect] Updating data from Skoda Connect
2021-08-27 20:43:56 DEBUG (MainThread) [skodaconnect.connection] HTTP GET "https://api.connect.skoda-auto.cz/api/v1/air-conditioning/xxxx/timers"
2021-08-27 20:43:56 DEBUG (MainThread) [skodaconnect.connection] HTTP GET "https://api.connect.skoda-auto.cz/api/v1/air-conditioning/xxxxx/status"
2021-08-27 20:43:56 DEBUG (MainThread) [skodaconnect.connection] HTTP GET "https://api.connect.skoda-auto.cz/api/v1/air-conditioning/xxxxx/settings"
2021-08-27 20:43:56 DEBUG (MainThread) [skodaconnect.connection] HTTP GET "https://api.connect.skoda-auto.cz/api/v1/charging/xxxxx/status"
2021-08-27 20:43:56 DEBUG (MainThread) [skodaconnect.connection] HTTP GET "https://api.connect.skoda-auto.cz/api/v1/charging/xxxxx/settings"
2021-08-27 20:43:56 DEBUG (MainThread) [skodaconnect.connection] Request for "https://api.connect.skoda-auto.cz/api/v1/air-conditioning/xxxxx/timers" returned with status code [200]
2021-08-27 20:43:56 DEBUG (MainThread) [skodaconnect.connection] Request for "https://api.connect.skoda-auto.cz/api/v1/air-conditioning/xxxxx/settings" returned with status code [200]
2021-08-27 20:43:56 DEBUG (MainThread) [skodaconnect.connection] Request for "https://api.connect.skoda-auto.cz/api/v1/charging/xxxxx/settings" returned with status code [200]
2021-08-27 20:43:56 DEBUG (MainThread) [skodaconnect.connection] Request for "https://api.connect.skoda-auto.cz/api/v1/charging/xxxxx/status" returned with status code [200]
2021-08-27 20:43:56 DEBUG (MainThread) [skodaconnect.connection] Got vehicle charging data
2021-08-27 20:43:56 DEBUG (MainThread) [skodaconnect.connection] Request for "https://api.connect.skoda-auto.cz/api/v1/air-conditioning/xxxxx/status" returned with status code [200]
2021-08-27 20:43:56 INFO (MainThread) [skodaconnect.connection] Returning with data {'airConditioning': {'remainingTimeToReachTargetTemperatureInSeconds': 0, 'state': 'Off', 'trigger': 'OFF', 'windowsHeatingStatuses': [{'windowLocation': 'Front', 'state': 'Off'}, {'windowLocation': 'Rear', 'state': 'Off'}], 'seatHeatingSupport': {'frontLeftAvailable': True, 'frontRightAvailable': True, 'rearLeftAvailable': False, 'rearRightAvailable': False}}, 'airConditioningSettings': {'targetTemperatureInKelvin': 292.15, 'temperatureConversionTableUsed': 'CELSIUS_KELVIN', 'airConditioningAtUnlock': False, 'windowHeatingEnabled': False, 'zonesSettings': {'frontLeftEnabled': False, 'frontRightEnabled': False}}}
2021-08-27 20:43:56 DEBUG (MainThread) [custom_components.skodaconnect] Finished fetching skodaconnect data in 0.251 seconds
2021-08-27 20:43:56 INFO (MainThread) [custom_components.skodaconnect] Discovered new instrument Window Heater
2021-08-27 20:43:56 INFO (MainThread) [custom_components.skodaconnect] Discovered new instrument Seat Heating
2021-08-27 20:43:56 INFO (MainThread) [custom_components.skodaconnect] Discovered new instrument Electric Climatisation
2021-08-27 20:43:56 INFO (MainThread) [custom_components.skodaconnect] Discovered new instrument Charging
2021-08-27 20:43:56 INFO (MainThread) [custom_components.skodaconnect] Discovered new instrument Departure timer 1
...

Then it goes wrong

2021-08-27 20:43:56 DEBUG (MainThread) [custom_components.skodaconnect] Updating config entry with new instruments
2021-08-27 20:43:56 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry xxxxxx for skodaconnect
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 293, in async_setup
result = await component.async_setup_entry(hass, self) # type: ignore
File "/config/custom_components/skodaconnect/__init__.py", line 191, in async_setup_entry
options={**entry.options, **update[CONF_RESOURCES]}
TypeError: 'list' object is not a mapping
Farfar commented 3 years ago

Upgrading to new version Car: Skoda Enyaq

login is going perfect:

2021-08-27 20:43:56 DEBUG (MainThread) [skodaconnect.connection] Request for "https://api.connect.skoda-auto.cz/api/v1/charging/xxxxxx/status" returned with status code [200]
2021-08-27 20:43:56 DEBUG (MainThread) [skodaconnect.connection] Got vehicle charging data
2021-08-27 20:43:56 DEBUG (MainThread) [custom_components.skodaconnect] Updating data from Skoda Connect
2021-08-27 20:43:56 DEBUG (MainThread) [skodaconnect.connection] HTTP GET "https://api.connect.skoda-auto.cz/api/v1/air-conditioning/xxxx/timers"
2021-08-27 20:43:56 DEBUG (MainThread) [skodaconnect.connection] HTTP GET "https://api.connect.skoda-auto.cz/api/v1/air-conditioning/xxxxx/status"
2021-08-27 20:43:56 DEBUG (MainThread) [skodaconnect.connection] HTTP GET "https://api.connect.skoda-auto.cz/api/v1/air-conditioning/xxxxx/settings"
2021-08-27 20:43:56 DEBUG (MainThread) [skodaconnect.connection] HTTP GET "https://api.connect.skoda-auto.cz/api/v1/charging/xxxxx/status"
2021-08-27 20:43:56 DEBUG (MainThread) [skodaconnect.connection] HTTP GET "https://api.connect.skoda-auto.cz/api/v1/charging/xxxxx/settings"
2021-08-27 20:43:56 DEBUG (MainThread) [skodaconnect.connection] Request for "https://api.connect.skoda-auto.cz/api/v1/air-conditioning/xxxxx/timers" returned with status code [200]
2021-08-27 20:43:56 DEBUG (MainThread) [skodaconnect.connection] Request for "https://api.connect.skoda-auto.cz/api/v1/air-conditioning/xxxxx/settings" returned with status code [200]
2021-08-27 20:43:56 DEBUG (MainThread) [skodaconnect.connection] Request for "https://api.connect.skoda-auto.cz/api/v1/charging/xxxxx/settings" returned with status code [200]
2021-08-27 20:43:56 DEBUG (MainThread) [skodaconnect.connection] Request for "https://api.connect.skoda-auto.cz/api/v1/charging/xxxxx/status" returned with status code [200]
2021-08-27 20:43:56 DEBUG (MainThread) [skodaconnect.connection] Got vehicle charging data
2021-08-27 20:43:56 DEBUG (MainThread) [skodaconnect.connection] Request for "https://api.connect.skoda-auto.cz/api/v1/air-conditioning/xxxxx/status" returned with status code [200]
2021-08-27 20:43:56 INFO (MainThread) [skodaconnect.connection] Returning with data {'airConditioning': {'remainingTimeToReachTargetTemperatureInSeconds': 0, 'state': 'Off', 'trigger': 'OFF', 'windowsHeatingStatuses': [{'windowLocation': 'Front', 'state': 'Off'}, {'windowLocation': 'Rear', 'state': 'Off'}], 'seatHeatingSupport': {'frontLeftAvailable': True, 'frontRightAvailable': True, 'rearLeftAvailable': False, 'rearRightAvailable': False}}, 'airConditioningSettings': {'targetTemperatureInKelvin': 292.15, 'temperatureConversionTableUsed': 'CELSIUS_KELVIN', 'airConditioningAtUnlock': False, 'windowHeatingEnabled': False, 'zonesSettings': {'frontLeftEnabled': False, 'frontRightEnabled': False}}}
2021-08-27 20:43:56 DEBUG (MainThread) [custom_components.skodaconnect] Finished fetching skodaconnect data in 0.251 seconds
2021-08-27 20:43:56 INFO (MainThread) [custom_components.skodaconnect] Discovered new instrument Window Heater
2021-08-27 20:43:56 INFO (MainThread) [custom_components.skodaconnect] Discovered new instrument Seat Heating
2021-08-27 20:43:56 INFO (MainThread) [custom_components.skodaconnect] Discovered new instrument Electric Climatisation
2021-08-27 20:43:56 INFO (MainThread) [custom_components.skodaconnect] Discovered new instrument Charging
2021-08-27 20:43:56 INFO (MainThread) [custom_components.skodaconnect] Discovered new instrument Departure timer 1
...

Then it goes wrong

2021-08-27 20:43:56 DEBUG (MainThread) [custom_components.skodaconnect] Updating config entry with new instruments
2021-08-27 20:43:56 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry xxxxxx for skodaconnect
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 293, in async_setup
result = await component.async_setup_entry(hass, self) # type: ignore
File "/config/custom_components/skodaconnect/__init__.py", line 191, in async_setup_entry
options={**entry.options, **update[CONF_RESOURCES]}
TypeError: 'list' object is not a mapping

Which version of Home Assistant are you using? First update and see if problem goes away.

Farfar commented 3 years ago

Home Assistant needs to be version 2021.06.0 or greater for integration version >=1.0.48 to work. I will add this information to manifest and README

dailybits commented 3 years ago

Running 2021.06.8

Farfar commented 3 years ago

Running 2021.06.8

Have you tried removing the config entry in HA and then add it again? Migrating from previous RCs to this stable doesn't work correctly and I don't plan on fixing it since they were beta. Edit: If I have the time I'll see if it's an easy fix to make it work.

Farfar commented 3 years ago

might be solved in 1.0.50

dailybits commented 3 years ago

Upgrading to 1.0.50 is breaking loading of the integration


2021-08-28 10:28:03 ERROR (MainThread) [homeassistant.setup] Setup failed for skodaconnect: unknown error
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/setup.py", line 201, in _async_setup_component
component = integration.get_component()
File "/usr/src/homeassistant/homeassistant/loader.py", line 490, in get_component
cache[self.domain] = importlib.import_module(self.pkg_path)
File "/usr/local/lib/python3.9/importlib/__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 846, in exec_module
File "<frozen importlib._bootstrap_external>", line 983, in get_code
File "<frozen importlib._bootstrap_external>", line 913, in source_to_code
File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
File "/config/custom_components/skodaconnect/__init__.py", line 280
"enabled": service_call.data.get("enabled"),
^
Farfar commented 3 years ago

Upgrading to 1.0.50 is breaking loading of the integration


2021-08-28 10:28:03 ERROR (MainThread) [homeassistant.setup] Setup failed for skodaconnect: unknown error
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/setup.py", line 201, in _async_setup_component
component = integration.get_component()
File "/usr/src/homeassistant/homeassistant/loader.py", line 490, in get_component
cache[self.domain] = importlib.import_module(self.pkg_path)
File "/usr/local/lib/python3.9/importlib/__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 846, in exec_module
File "<frozen importlib._bootstrap_external>", line 983, in get_code
File "<frozen importlib._bootstrap_external>", line 913, in source_to_code
File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
File "/config/custom_components/skodaconnect/__init__.py", line 280
"enabled": service_call.data.get("enabled"),
^

Remove and reinstall integration and try again.

Farfar commented 3 years ago

Upgrading to 1.0.50 is breaking loading of the integration


2021-08-28 10:28:03 ERROR (MainThread) [homeassistant.setup] Setup failed for skodaconnect: unknown error
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/setup.py", line 201, in _async_setup_component
component = integration.get_component()
File "/usr/src/homeassistant/homeassistant/loader.py", line 490, in get_component
cache[self.domain] = importlib.import_module(self.pkg_path)
File "/usr/local/lib/python3.9/importlib/__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 846, in exec_module
File "<frozen importlib._bootstrap_external>", line 983, in get_code
File "<frozen importlib._bootstrap_external>", line 913, in source_to_code
File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
File "/config/custom_components/skodaconnect/__init__.py", line 280
"enabled": service_call.data.get("enabled"),
^

Remove and reinstall integration and try again.

Upgrading to 1.0.50 is breaking loading of the integration


2021-08-28 10:28:03 ERROR (MainThread) [homeassistant.setup] Setup failed for skodaconnect: unknown error
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/setup.py", line 201, in _async_setup_component
component = integration.get_component()
File "/usr/src/homeassistant/homeassistant/loader.py", line 490, in get_component
cache[self.domain] = importlib.import_module(self.pkg_path)
File "/usr/local/lib/python3.9/importlib/__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 846, in exec_module
File "<frozen importlib._bootstrap_external>", line 983, in get_code
File "<frozen importlib._bootstrap_external>", line 913, in source_to_code
File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
File "/config/custom_components/skodaconnect/__init__.py", line 280
"enabled": service_call.data.get("enabled"),
^

Remove and reinstall integration and try again.

I re-released as v1.0.51. There was a missing "," in 1.0.50 that I didn't get when installing it.

dailybits commented 3 years ago

Everything works now.

Remove connection and re-adding it does the trick now.