NEWS
[UMFRAGE] Wie organisiert ihr eure Skripts?
-
Hallo,
bei mir häufen sich mit der Zeit die verschiedenen Skripts und ich habe ein wenig Sorge, ob ich in einigen Wochen noch nachvollziehen kann, wie die verschiedenen Skripte mit einander interagieren etc.
Wie macht ihr das? Wie teilt ihr überhaupt verschiedene Skripte auf? Ich könnte ja einen Skript schreiben der nach Astro meine Rolladen hochfährt, oder ich könnte es auf mehrere aufteilen, damit ein Skript den "Rolladen-auf"-Skript aufruft, etc.
Ich habe mal eine Gruppe angelegt für Skripte die über Vis-buttons ausgeführt werden. Bin mir aber auch nicht sicher, in wie weit diese Aufteilung sinnvoll ist.
Wie macht ihr das?
-
Neben einer sinnvollen "Gruppierung" sodass man es Thematisch hat ist es unterschiedlich nach Komplexität.
Einfache Skripte laufen alleine und haben/machen alles.
Bei komplexeren Themen (wie meine Rasenmäher-Steuerung) ist das ganze in mehrere Skripte aufgeteilt die grundsätzlich für sich laufen und der "Datenaustausch" und "Trigger" läuft über States. Also ein Skript macht seinen Teil (z.B. ermitteln ob der Rasenmäher fahren soll) und setzt einen "Jetzt Starten" State auf true und schreibt noch in andere States relevante Daten. Das Skript was dann steuert und überwacht reagiert auf die Änderung des States, liesst die Daten aus den States und macht seine Arbeit. Und noch ein Drittes Skript prüft und Notifiziert den Status des Mähers.
So ähnlich hab ichs auch für Fingerabdruckscanner und andere Dinge. Da ist das State-Konzept und die Event-Möglichkeiten von JavaScript ideal
Und ich nutze noch den coolen "js2fs" Adapter … der schreibt alle Skript lokal in Files. Gruppen sind Ordner. So kann ich mit nem JavaScript-Editor editieren, speichern und der Adapter synct es zurück in ioBroker
Ingo
-
Es gibt Skripte die sind Raum gebunden und werden entsprechend in Ordnern mit Raumnamen abgelegt, andere sind für das ganze Haus die liegen unter common.
Bei Komplexeren Geschichten gibt es dann Unterordnet.
Gesendet von Unterwegs
-
Hallo,
ich lass mal einen Screenshot sprechen:
Es gibt Skripte, die nur eine kleine Sache erledigen und es gibt ganz komplexe Skripte, die zB via RegExp mehrere Objekte überwachen. Ich mag schon gern diese komplexen Dinger, die mit RegExp zB alle LOWBAT Datenpunkte oder so überwachen und gleich automatisch die richtigen Logs auswerfen. Leider sind die sehr schwer zu lesen und benötigen oft so viele Kommentar- und Erklärtextzeilen, dass man auch gleich einfachen Code auf mehrere Skripte verteilen könnte. Es gibt also alle Variationen (nach Raum, nach Gewerk, nach Funktion, …). Chaos mit System eben :lol:
Pix