Bramka: configuration.yaml

Plik konfiguracyjny configuration.yaml

Dążymy do tego, żeby wszystkie podstawowe ustawienia i popularne integracje były dostępne z interfejsu użytkownika.

Obecnie jednak nie wszystko jest jeszcze konfigurowalne za pośrednictwem interfejsu użytkownika i aby dodać integrację z niektórymi urządzeniami, wymagana jest ręczna edycja pliku konfiguracyjnego Asystenta domowego. Plik ten znajduje się na urządzeniu w folderze /data/data/pl.sviete.dom/files/home/AIS i ma nazwę configuration.yaml.

Konfiguracja ręczna w pliku pozwala też zaawansowanym użytkownikom na dodawanie własnych dowolnych komponentów.

Przykładowy czujnik

Poniżej opiszemy krok po kroku, w jaki sposób dodać czujnik wyświetlający temperaturę procesora bramki.
Oczywiście w analogiczny sposób można dodać inne elementy systemu, a następnie użyć ich przy tworzeniu automatyzacji.

Temperatura procesora w systemie Linux

Znajdujemy komendę, która zwraca temperaturę CPU w systemie Linux (google.com) i testujemy ją w konsoli.

cat /sys/class/thermal/thermal_zone0/temp

Edycja pliku configuration.yaml

W konsoli przechodzimy do folderu z konfiguracją Asystenta domowego.

cd ~/AIS

Ulubionym edytorem tekstowym otwieramy plik configuration.yaml

nano configuration.yaml

i dodajemy na końcu następująca konfigurację.

sensor:
 - platform: command_line
   name: Temperatura CPU
   unit_of_measurement: "°C"
   command: "cat /sys/class/thermal/thermal_zone0/temp"
   value_template: '{{ value | multiply(0.001) | round(1) }}'

Sprawdzenie konfiguracji i Restart serwera

Upewnijmy się, że nasza konfiguracja jest poprawna — w tym celu kliknij przycisk Sprawdź konfigurację dostępny w opcjach ogólnych systemu. Następnie restartujemy serwer przyciskiem Uruchom ponownie

Nowa encja

W informacji o stanie encji systemu możemy już odszukać nasz nowo dodany element systemu (czujnik) i zobaczyć jego status.

Wyświetlanie w aplikacji

Każdy element możemy pokazać w aplikacji, wystarczy, że na wybranym widoku dodamy i skonfigurujemy kartę z naszym nowym komponentem.

@Celina, zrobiłem wg opisu, działa bardzo dobrze, natomiast raz/dwa razy na dobę wyrzuca mi coś takiego w logach. Czy to coś poważnego?

Nie, to nic poważnego, “100% normalne”

W Linux wszystko jest plikiem (urządzenie usb czy sensor z temperaturą CPU też jest plikiem).
cat to komenda która czyta zawartość pliku, żeby w naszym przypadku/przykładzie sprawdzić temperaturę CPU. Może się zdarzyć, że plik który chcemy odczytać jest w tym samym czasie używany przez system(który właśnie zanotował zmianę temperatury i ją tam zapisuje) i nie da się go odczytać, to będzie generowało taki błąd, nie przejmujemy się tym :wave:

1polubienie