Logowanie zdarzeń z Supli na Linux

User avatar
klew
Posts: 9211
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław

Post

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 :

Code: Select all

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:

Code: Select all

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

Code: Select all

./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 - 19.10.2024
https://forum.supla.org/viewtopic.php?t=15820

Return to “FAQ / Jak to zrobić”