Repository navigation
v4.2.1 - Naprawa dostępności sensorów lekcji
🐛 Poprawka błędu - Niedostępne sensory lekcji
Ta wersja naprawia krytyczny błąd powodujący, że wszystkie sensory lekcji wyświetlały się jako niedostępne.
🐛 Naprawiony błąd
Problem:
- Wszystkie sensory lekcji (Lekcja 1, Lekcja 2, ..., Lekcja 8) wyświetlały "niedostępne" (unavailable)
- Pomimo że API zwracało poprawne dane, sensory nie były dostępne
- Kalendarze były puste
Przyczyna:
- Metoda
available()w sensorze porównywała string z date object lesson_date="2025-10-29"(string)today=date(2025, 10, 29)(date object)- Porównanie
"2025-10-29" == date(2025, 10, 29)zawsze zwracałoFalse
✅ Rozwiązanie
- Dodano konwersję stringa daty na
dateobject przed porównaniem - Dodano obsługę błędów parsowania daty
- Dodano sprawdzenie typu (string vs date object)
🔧 Szczegóły techniczne
Zmieniony kod w sensor.py:
# PRZED (błędne):
lesson_date = self.coordinator.data[...]["date"]
return lesson_date == today
# PO (poprawne):
lesson_date_str = self.coordinator.data[...]["date"]
if isinstance(lesson_date_str, str):
lesson_date = datetime.strptime(lesson_date_str, "%Y-%m-%d").date()
elif isinstance(lesson_date_str, datetime.date):
lesson_date = lesson_date_str
return lesson_date == today📋 Instrukcja aktualizacji
- Zaktualizuj integrację przez HACS lub ręcznie
- Zrestartuj Home Assistant
- Sprawdź sensory - powinny być dostępne i pokazywać lekcje:
sensor.lekcja_1_[student_id]sensor.lekcja_2_[student_id]sensor.lekcja_3_[student_id]- ...
- Sprawdź kalendarz - lekcje powinny się wyświetlać
⚠️ Ważne
- Zachowano kompatybilność z poprzednią wersją 4.2.0
- Nie wymaga rekonfiguracji integracji
- Entity ID pozostają bez zmian
- Historia jest zachowana
📝 Pełny changelog
Zmienione pliki:
sensor.py- poprawiono metodęavailable()wLibrusLessonEntitymanifest.json- zaktualizowano wersję do 4.2.1
Pełna dokumentacja: https://github.com/piterkos/HALibrus
Zgłaszanie problemów: https://github.com/piterkos/HALibrus/issues