Logowanie zdarzeń z Supli na Linux

Awatar użytkownika
klew
Posty: 6826
Rejestracja: czw cze 27, 2019 12:16 pm
Lokalizacja: Wrocław

Przy pomocy sd4linux (supla-device dla Linuxa) można zrobić prosty mechanizm logujący zdarzenia z Supli.

Będzie do tego potrzebny jakiś komputer/serwer z Linuxem (może być stary laptop, malinka etc.) Trzeba na nim zainstalować supla-device. Instrukcja jest tutaj:
https://github.com/SUPLA/supla-device/t ... ples/linux

Następnie tworzymy konfigurację linux_logger.yaml :

Kod: Zaznacz cały

name: Linux logger
log_level: verbose
state_files_path: "/var/local/linux-logger"
security_level: 2

supla:
  server: svrXX.supla.org # ustaw swój adres
  mail: twoj_mail@mail.pl

  - type: CmdRelay
    cmd_on: "echo 'Brama otwarta'  | ts \"%Y.%m.%d %H:%M:%.S\" >> /var/local/linux-logger/brama.log"
    cmd_off: "echo 1"
Użytkownik, z którego startujemy supla-device, musi mieć dostęp do katalogu w state_file_path, więc z linii poleceń dajemy:

Kod: Zaznacz cały

sudo mkdir /var/local/linux-logger
sudo chown moja_nazwa_uzytkownika /var/local/linux-logger
Następnie uruchamiamy sd4linux:

Kod: Zaznacz cały

./supla-device-linux -c linux_logger.yaml
W Cloud trzeba ustawić funkcję temu przekaźnikowi (np. "włącznik zasilania") i nazwać go np. "Zaloguj otwarcie bramy"
Teraz każde "otwarcie" tego przekaźnika spwoduje dopisanie do pliku brama.log linjki z datą i godziną wystąpienia zdarzenia :).

Tego typu kanał najlepiej jest ukryć przed aplikacjami (można to ustawić w Cloud).
Następnie ustawiamy sobie reakcję - np. na czujniku otwarcia bramy dodajemy reakcję: gdy brama zostanie otwarta to włącz kanał "zaloguj otwarcie bramy".

Możemy dodać sobie wiele tego typu logujących przekaźników (powielając te linjiki z pliki konfiguracyjnego i modyfikując im treść komunikatu - można też pisać inne zdarzenia do innych plików).
Widzimy się na Supla Offline Party vol. 2 :!:
ODPOWIEDZ

Wróć do „FAQ / Jak to zrobić”