thedeemling / hass-energa-my-meter

Home Assistant custom integration to gather data from the Energa My Meter (https://mojlicznik.energa-operator.pl/) website.
https://gitlab.com/home-assistant-custom-components/hass-energa-my-meter
Other
2 stars 0 forks source link

Pobieranie większej ilości danych przy inicjalizacji #3

Closed cHunter789 closed 1 week ago

cHunter789 commented 2 weeks ago

Testowałem na dwóch lokalizacjach, w jednej z wolnym internetem VDSL w drugiej światłowód. W obu był problem gdy wpisałem więcej jak 100 dni z historii do pobrania przy tworzeniu komponentu (number_of_days_to_load). W debugerze wyglądało jakby pobierało w paczkach w jakimś oknie czasowym. Co nie zdążył zostawało na kolejne połączenie. I tu jest problem, że nie ma o tym słowa w instrukcji. Na etapie rozruchu warto czas ponownego podłączania do serwera energa skrócić do np. 10min (scan_interval) by szybciej pobrało wszystkie historyczne dane. Na lokalizacji z wolnym internetem wywalało dodatkowo błąd konfiguracji jak wpisywałem więcej jak ~100dni ale należało to zignorować, przejść dalej i wymuszać kolejne podłączenia by zassało dane.

thedeemling commented 1 week ago

Cześć.

Dziękuję za korzystanie z mojego komponentu!

Masz rację, ze względu na organiczenia po stronie Energi, pobieram dane po 60 dni na raz (przy większej liczbie często pojawiają się problemy z captchą i żądaniami potwierdzenia, że nie jesteś botem). Oznacza to, że dane historyczne pobierają się co 60 dni per uruchomienie komponentu (tzw. "koordynatora"). W momencie, kiedy koordynator dotrze do danych aktualnych (na dzień dzisiejszy/wczorajszy), to ten problem już nie istnieje, bo od tego momentu pobiera najnowsze dane.

Proces ten można przyspieszyć, klikając na "Reload/Załaduj ponownie" w Home Assistantcie, albo konfigurując specjalne opcje, gdzie możesz (np. tymczasowo, na okres załadowania danych) ustawić interwał pobierania co 10 minut: image

Niestety, innego rozwiązania tego problemu nie widzę, by nie nadwyrężać strony Energi i sprawnie pobrać dane.

Jeżeli chcesz, mogę dodać takie informacje do dokumentacji README?

Co do problemu z wolnym połączeniem - możesz podać przyczynę błędu? Uruchamiałem ten komponent już u kilku znajomych, w tym u jednego z bardzo wolnym połączeniem - i śmignęło. Może będę umiał rozwiązać problem sieciowy (niezwiązany z tym komponentem), jak zobaczę logi.

thedeemling commented 1 week ago

Dodałem stosowne informacje do README: https://github.com/thedeemling/hass-energa-my-meter?tab=readme-ov-file#fetching-historical-data

Daj znać, czy to wystarczy - automatyczna zmiana częstotliwości odświeżania może tu być trudna do zrealizowania ze względu na częste captche - użytkownik powinien zareagować, logując się (lub czekając X minut). Kontaktowałem się z Energą i mają rzekomo w 2025 dodać porządne REST API, dzięki któremu będzie można te dane ściągnąć bez takich problemów, więc nie chciałbym dodawać tymczasowego rozwiązania.

cHunter789 commented 1 week ago

Teraz wszystko jest klarownie opisane i nie powinno rodzic wątpliwości. Dziękuję.

thedeemling commented 1 week ago

W takim razie zamykam zgłoszonko - śmiało reopenuj, jeżeli uważasz, ze coś jeszcze powinienem dziabnąć :)