Skip to content

v4.2.1 - Naprawa dostępności sensorów lekcji

Choose a tag to compare

@piterkos piterkos released this 29 Oct 23:10
· 3 commits to master since this release

🐛 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ło False

✅ Rozwiązanie

  • Dodano konwersję stringa daty na date object 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

  1. Zaktualizuj integrację przez HACS lub ręcznie
  2. Zrestartuj Home Assistant
  3. Sprawdź sensory - powinny być dostępne i pokazywać lekcje:
    • sensor.lekcja_1_[student_id]
    • sensor.lekcja_2_[student_id]
    • sensor.lekcja_3_[student_id]
    • ...
  4. 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() w LibrusLessonEntity
  • manifest.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