Spróbuję zaznaczyć na screenshotach kluczowe punkty (na już skonfigurowanej integracji, więc to wygląda trochę inaczej, niż za 1 razem).
Jeśli używasz config flow (przepływ konfiguracji = wielofazowego konfiguratora) w GUI, to są to 3 fazy
- konfiguracja huba
- dostosowanie każdego harmonogramu wewnątrz całego kalendarza
- tworzenie dodatkowych encji (można utworzyć ich mniej niż cząstkowych harmonogramów lub nawet więcej, jeśli masz pomysły na alternatywne konfiguracje, ale mi starcza 1:1 i chyba większość z tego korzysta).
Oczywiście warunkiem koniecznym jest usunięcie YAMLa (skopiuj i schowaj sobie na potem, jeśli będziesz miał pomysły przekraczające możliwości GUI) i restart HA
edit - nie da się pokazać jak to wygląda na początku, więc spróbuję wieczorem, bo nie mam czasu teraz, a przez to ciśnienie które mają wszyscy na prywatność nie da się pokazać na prawdziwych danych więc wylosuję jakiś adres z Wrocławia od czapy i skonfiguruję całość od zera, ale jeśli masz jakiś adres dla którego istnieją dane od dostawcy którego używasz, to go daj, a zrobię to na jego przykładzie (bo ekosystem.wroc.pl chyba udostępnia uboższy zestaw danych niż wasz operator).
Obiecane obrazki, później dołożę trochę komentarza
Jako testowy adres posłużyła Trzemeska 12 Wrocław
https://ekosystem.wroc.pl/gospodarowanie-odpadami/harmonogram-wywozu-odpadow/?lokalizacja=50294&ulica=1981
HUB
config flow prowadzi za rękę, nie wiem jak dla innych operatorów z innych miast (ale zawsze konkretne informacje są w dokumentacji - należy zajrzeć na repozytorium projektu na githubie)
z nazwy w górnej ramce jest generowana nazwa encji kalenarza (tu będzie calendar.trzemeska
), dolna ramka to dane lokalizacji (to może wyglądać inaczej u innych operatorów odbioru śmieci)
tu kluczowe czekboksy jeśli w jednym przebiegu chcemy personalizację harmonogramów i utworzyć dodatkowe encje (Integrację można wielokrotnie przekonfigurować, więc np. zapomniana lub źle skonfigurowana encja nie jest problemem)
Dostosowanie
wybieramy jakie harmonogramy chcemy dostosowywać (moim skromnym zdaniem nie jest to konieczne, ale OK jeden prosty przykład), jeśli ktoś zamierza dostosowywać warto wybrać wszystkie, każdy ma swój kolejny ekran w config flow, jak widać jeden z nich nazywa się Bio
można niczego nie zmieniać i przejść do kolejnego (albo dostosować pod siebie odsyłam do dokumentacji)
a tu dla przykładu zmieniłem nazwę harmonogramu “Bio” na “Zielone” i ikonka liśc klonu zamiast domyślnej
te ruchy wykonujemy dla wszystkich harmonogramów (zaznaczyłem 4 to miałem 4 kroki do wykonania, oczywiście nie robiłem obrazków z każdego z nich)
Dodatkowe encje
jako kolejny krok config flow pojawi się okienko zatytułowane Create Sensor i jakaś kolejna liczba
w górnym okienku nazwa encji (tu powstanie sensor.tworzywa
)
środkowe okienko to wybór formatu danych encji (znowu lektura dokumentacji zalecana, do zwykłego użytku sensowne są dwie pierwsze opcje - można się pobawić i dodać sobie po kilka encji o rożnych nazwach do tego samego harmonogramu by się samodzielnie zaznajomić z różnicami, mi się nie chciało rzeźbić, bo to by zaciemniło prosty przekaz)
trójka w ostatnim okienku to maksymalna ilość przyszłych wydarzeń, które znajdą się w encji (3 wydaje się być sensowne)
tui wykorzystałem polonizujące wartości encji template
{% if value.daysTo == 0 %}Dzisiaj{% elif value.daysTo == 1 %}Jutro{% else %} {{value.daysTo}} dni{% endif %}
i teraz najważniejsze - trzeba wybrać źródłowy harmonogram z którego powstanie encja (w praktyce najpierw na tym oknie dowijam się do miejsca wyboru wybieram skąd chcę brać dane i robię dopiero wszystko co było powyżej)
i UWAGA kluczowy czekboks na dole, że chcemy kontynuować config flow i tworzyć kolejną encję, bez jego zaznaczenia config flow się zakończy! (natomiast jeśli właśnie tworzymy ostatnią encję to go już nie zaznaczamy, by zakończyć dodawanie)
tu jest przykład nadania innej nazwy encji od źródłowego harmonogramu…
… który był już wcześniej zmodyfikowany z “Bio” na “Zielone”
no i na koniec można przypisać Integrację do obszaru (u siebie mam zdefiniowany obszar który dotyczy wszystkiego co się dzieje w bliskiej okolicy, tu akurat stworzyłem nowy dla potrzeb posta)
wynik
ramki niebieskie - skutki dostosowania harmonogramów i nazywania encji inaczej od źródła
ramki zielone encje mają ustawione w/w template
a ramka czerwona encja jest na ustawieniach domyślnych
oczywiście dostosowywanie jest sporo bardziej elastyczne - zabawa nic nie kosztuje, to jest mniej więcej odpowiednik YAMLa przedstawionego wyżej przez @Jarek_S
Przykładowe niestandardowe karty do wykorzystania dla wizualizacji (dostępne w HACS), obrazki są z realnej instalacji, a nie z tego przykładu powyżej
https://github.com/totaldebug/atomic-calendar-revive
type: custom:atomic-calendar-revive
name: Wywóz śmieci
enableModeChange: true
firstDayOfWeek: 1
maxDaysToShow: 10
refreshInterval: 600
entities:
- calendar.wywoz_smieci
showHours: false
calShowDescription: false
dimFinishedEvents: true
showLastCalendarWeek: true
showDate: true
showRelativeTime: true
hideFinishedEvents: true
showDeclined: true
hideDuplicates: true
showMultiDayEventParts: true
showMultiDay: true
showCurrentEventLine: true
showProgressBar: true
showMonth: true
showWeekDay: true
showDescription: true
disableEventLink: true
disableCalEventLink: true
disableCalLocationLink: true
disableCalLink: true
compactMode: false
defaultMode: Event
linkTarget: _blank
showLoader: true
showLocation: false
showAllDayEvents: true
offsetHeaderDate: false
allDayBottom: false
eventDateFormat: dddd D MMMM
disableLocationLink: true
showFullDayProgress: true
showNoEventsForToday: true
showHiddenText: true
showEventIcon: true
showCalendarName: true
showWeekNumber: false
showEventDate: true
showDatePerEvent: false
showTimeRemaining: true
showAllDayHours: true
hoursOnSameLine: false
https://github.com/amaximus/garbage-collection-card
type: vertical-stack
cards:
- type: custom:garbage-collection-card
entity: sensor.zmieszane
icon_size: 35px
icon_color: darkgray
hide_date: true
hass_lang_priority: true
- type: custom:garbage-collection-card
entity: sensor.metal_i_tworzywa
icon_size: 35px
icon_color: yellow
hide_date: true
hass_lang_priority: true
- type: custom:garbage-collection-card
entity: sensor.biomasa
icon_size: 35px
icon_color: brown
hide_date: true
hass_lang_priority: true
- type: custom:garbage-collection-card
entity: sensor.papier
icon_size: 35px
icon_color: blue
hide_date: true
hass_lang_priority: true
- type: custom:garbage-collection-card
entity: sensor.szklo
icon_size: 35px
icon_color: green
hide_date: true
hass_lang_priority: true
hmm zmodyfikowałem swoją instalację i teraz coś mam rozjazd we wskazaniach ;D będzie trzeba poszukać błędu…