GuyKh / ims-envista-custom-component

IMS Envista Weather Component for Home Assistant
MIT License
2 stars 0 forks source link

IMS Envista integration fails to load #20

Closed pshotts closed 1 week ago

pshotts commented 1 week ago

System Health details

System Information

version core-2024.11.2
installation_type Home Assistant OS
dev false
hassio true
docker true
user root
virtualenv false
python_version 3.12.4
os_name Linux
os_version 6.6.54-haos
arch aarch64
timezone Asia/Jerusalem
config_dir /config
Home Assistant Community Store GitHub API | ok -- | -- GitHub Content | ok GitHub Web | ok HACS Data | ok GitHub API Calls Remaining | 5000 Installed Version | 2.0.1 Stage | running Available Repositories | 1530 Downloaded Repositories | 23
Home Assistant Cloud logged_in | true -- | -- subscription_expiration | 20 December 2024 at 02:00 relayer_connected | true relayer_region | eu-central-1 remote_enabled | true remote_connected | true alexa_enabled | false google_enabled | true cloud_ice_servers_enabled | true remote_server | eu-central-1-9.ui.nabu.casa certificate_status | ready instance_id | a1404730df0046c0a2bc949771c2c188 can_reach_cert_server | ok can_reach_cloud_auth | ok can_reach_cloud | ok
Home Assistant Supervisor host_os | Home Assistant OS 13.2 -- | -- update_channel | stable supervisor_version | supervisor-2024.11.2 agent_version | 1.6.0 docker_version | 27.2.0 disk_total | 28.0 GB disk_used | 8.9 GB healthy | true supported | true host_connectivity | true supervisor_connectivity | true ntp_synchronized | true virtualization | board | green supervisor_api | ok version_api | ok installed_addons | Studio Code Server (5.17.3), Node-RED (18.1.1), Terminal & SSH (9.15.0), Samba share (12.3.2), Home Assistant Google Drive Backup (0.112.1), Music Assistant Server (2.3.2)
Dashboards dashboards | 6 -- | -- resources | 9 views | 21 mode | storage
Recorder oldest_recorder_run | 6 November 2024 at 07:10 -- | -- current_recorder_run | 16 November 2024 at 09:08 estimated_db_size | 137.98 MiB database_engine | sqlite database_version | 3.45.3
Spotify api_endpoint_reachable | ok -- | --

Checklist

Describe the issue

Since midnight the integration has failed to load. The bottom line message is:

ValueError: unconverted data remains: 4

It appears to be related to parsing the datetime value of the data. I have actually noticed that the integration has failed to load every night while the time was "00:mm" Today's issue may be related to the seconds part of the time [ %s ], but you will know better than me.

Of course I have done the basics: I have redownloaded the integration and restarted HA

Thanks in advance, Guy!

Reproduction steps

All IMS Envista entities are Unavailable Reloading the integration results in failure with that error message

Debug logs

The diagnostics dump below includes full debug log

Diagnostics dump

https://drive.google.com/file/d/1nE_Bh-wJqH6BAozJYAmANLLZc9-GelNF/view?usp=sharing

This time I have made sure you have access!

GuyKh commented 1 week ago
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 382, in _async_refresh
    self.data = await self._async_update_data()
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/config/custom_components/ims_envista/coordinator.py", line 101, in _async_update_data
    await self.config_entry.runtime_data.client.get_daily_station_data(
  File "/usr/local/lib/python3.12/site-packages/ims_envista/ims_envista.py", line 190, in get_daily_station_data
    return station_meteo_data_from_json(await get(session=self._session, url=get_url, token=self._token))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/ims_envista/meteo_data.py", line 252, in station_meteo_data_from_json
    meteo_data = [meteo_data_from_json(station_id, single_meteo_data) for single_meteo_data in data]
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/ims_envista/meteo_data.py", line 206, in meteo_data_from_json
    t = time.strptime(str(time_int), "%H")
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/_strptime.py", line 548, in _strptime_time
    tt = _strptime(data_string, format)[0]
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/_strptime.py", line 336, in _strptime
    raise ValueError("unconverted data remains: %s" %
ValueError: unconverted data remains: 4

I see. It looks like an isuse with the time field. Which station are you using? @pshotts

pshotts commented 1 week ago

Zikhron Yaaqov 45

GuyKh commented 1 week ago

@pshotts please make sure youre on the latest version

pshotts commented 1 week ago

I am pretty sure that I am, and I re-downloaded the integration this morning before I restarted HA. Here are the contents of the manifest.json file:

{ "domain": "ims_envista", "name": "IMS Envista", "codeowners": [ "@GuyKh" ], "config_flow": true, "documentation": "https://github.com/GuyKh/ims-envista-custom-component", "iot_class": "cloud_polling", "issue_tracker": "https://github.com/GuyKh/ims-envista-custom-component/issues", "loggers": [ "ims_envista" ], "requirements": [ "ims-envista==0.1.12" ], "version": "0.0.10" }

GuyKh commented 1 week ago

Releasing 0.0.11 now. Try with that. If it doesn't work

add ims_envista: debug to the logs: part in your configuration.yaml and share the logs please

pshotts commented 1 week ago

It's working! Do you think it will work now in the hour after midnight as well?

Thank you again! Paul

GuyKh commented 1 week ago

I do hope. Fixed something which related to single-hour parsing. Let's give it a shot :)