Ankündigung

Einklappen
Keine Ankündigung bisher.

Erweiterung UZSU Plugin um crontab Modus?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Sisamiwe
    antwortet
    Hallo,

    ich möchte das Thema mit dem zyklischen Einträgen nochmal aufnehmen.
    Wir hatten das bereits ab hier diskutiert.

    Das Widget ist durch AndreK bereits vorbereitet.
    Zitat von AndreK Beitrag anzeigen
    ich habe mich mal dran versucht. Im Moment ist der Stand dieser :
    - Im Moment nur in UZSU-Time-Table eingebaut
    - Es gibt einen Button für die Erfassung von Serien-Schaltzeiten
    - Für die Serienschaltzeiten gibt es eine separate "Serien-Zeile"
    - Es kann von / bis und das Intervall erfasst werden
    - Wenn die Serie aktiv ist, und nur dann werden die Daten im UZSU-Item gespeichert. Die Struktur siehe unten
    Onkelandy hat ein einen Implementierungsvorschlag in das Plugin gemacht.
    Zitat von Onkelandy Beitrag anzeigen
    Theoretisch könnte man das Plugin so umschreiben, dass es in den Listeneinträgen wie zB {'value':1, 'active':True, 'rrule':'FREQ=DAILY;INTERVAL=2;COUNT=5', 'time': '16:30'} nach nem Doppelpunkt im "time" Key sucht. Ist dieser nicht vorhanden, wird eine Crontabangabe angenommen und entsprechend geparst. Möchte sich jemand dran versuchen ​?
    Meine Fragen:
    • Hat hier bereits jemand weiter gearbeitet?
    • In welcher Funktion im Plugin müsste die Erweiterung gemacht werden?
    Ich würde mich mal dran versuchen.

    Beste Grüße
    ​​​​​​​Michael

    Einen Kommentar schreiben:


  • AndreK
    antwortet
    Hi,

    ich habe mich mal dran versucht. Im Moment ist der Stand dieser :
    - Im Moment nur in UZSU-Time-Table eingebaut
    - Es gibt einen Button für die Erfassung von Serien-Schaltzeiten
    - Für die Serienschaltzeiten gibt es eine separate "Serien-Zeile"
    - Es kann von / bis und das Intervall erfasst werden
    - Wenn die Serie aktiv ist, und nur dann werden die Daten im UZSU-Item gespeichert. Die Struktur siehe unten

    Das Schalten im UZSU-Plugin ist noch nicht realisiert

    UZSU_Serie.gif
    Darstellung in der UZSU-Table:

    UZSU_TIME_TABLE.jpg

    Code:
    {
       "active":true,
       "list":[
          {
             "active":true,
             "rrule":"FREQ=WEEKLY;BYDAY=TU,TH",
             "value":"1",
             "series":{
                "active":true,
                "timeSeriesMin":"06:00",
                "timeSeriesMax":"15:00",
                "timeSeriesIntervall":"01:00"
             },
             "time":"serie"
          },
          {
             "active":true,
             "rrule":"FREQ=WEEKLY;BYDAY=TU,TH",
             "value":"0",
             "series":{
                "active":true,
                "timeSeriesMin":"06:15",
                "timeSeriesMax":"15:30",
                "timeSeriesIntervall":"01:00"
             },
             "time":"serie"
          },
          {
             "active":true,
             "rrule":"FREQ=WEEKLY;BYDAY=SA",
             "value":"1",
             "calculated":"05:37",
             "time":"sunrise"
          },
          {
             "active":true,
             "rrule":"FREQ=WEEKLY;BYDAY=SA",
             "value":"0",
             "calculated":"07:45",
             "time":"sunrise+120m"
          },
          {
             "active":true,
             "rrule":"FREQ=WEEKLY;BYDAY=WE",
             "value":"1",
             "time":"10:00"
          },
          {
             "active":true,
             "rrule":"FREQ=WEEKLY;BYDAY=WE",
             "value":"0",
             "time":"11:00"
          }
       ],
       "interpolation":{
          "type":"none",
          "initialized":false,
          "itemtype":"bool",
          "interval":"",
          "initage":""
       },
       "lastvalue":"0",
       "sunrise":"05:42",
       "sunset":"21:26"
    }
    Viele Grüsse
    Andre
    Angehängte Dateien

    Einen Kommentar schreiben:


  • Onkelandy
    antwortet
    Hm, also ich glaube fast das müsste im Plugin integriert werden, ist sonst ja echt mühsam. Angenommen, ich erstelle im Widget mittels crontab Auswahl einen Ein-Eintrag alle 2 Stunden oder gar 10 Minuten, dann schwemmt er mir ja alles voll. Die Wochtentage kann man momentan ja eh schon bequem auswählen, das läuft über https://dateutil.readthedocs.io/en/stable/rrule.html

    Dann bräuchte es also eigentlich nur im Expertenmodus eine Möglichkeit statt einer fixen Uhrzeit einen Crontabsyntax für Stunden und Minuten nutzen zu können. Theoretisch könnte man das Plugin so umschreiben, dass es in den Listeneinträgen wie zB {'value':1, 'active':True, 'rrule':'FREQ=DAILY;INTERVAL=2;COUNT=5', 'time': '16:30'} nach nem Doppelpunkt im "time" Key sucht. Ist dieser nicht vorhanden, wird eine Crontabangabe angenommen und entsprechend geparst. Möchte sich jemand dran versuchen ?

    Einen Kommentar schreiben:


  • Sisamiwe
    antwortet
    Zitat von AndreK Beitrag anzeigen
    wie würdest Du dir die Eingabe im Widget vorstellen ?
    Ich könnte mir vorstellen, dass man nur die Wochentage, Stunden und Minuten ala crontab nutzt. Für die Verwendung von Monaten bzw Tagen kann ich mir nicht wirklich vorstellen.

    Die Wochentage und (Schalt)Wert sind bereits in der UZSU vorhanden. Stunden, Minuten und Dauer könnte man in den Experteneinstellungen für den jeweilgen UZSU Eintrag als Alternative zur Schaltzeitpunktdefinition über Sonnenstand mit abfragen/eingeben. Um der Logik der UZSU zu folgen, kann aber auch für jeden Schaltzustand ein eigener Eintrag erstellt werden. Somit würde die Dauer wieder entfallen.

    Ob diese Funktion besser im Widget oder im Plugin bereitgestellt wird, kann ich nicht beurteilen. Deine Argumentation für die Erstellung im Widget kann ich nachvollziehen.

    Zitat von AndreK Beitrag anzeigen
    Aus meiner Sicht wäre das eher einer Thema für das smartvisu-Forum
    Das kann man gern auch dort diskutieren. Ich habe dort allerdings keinen "SupportThread" oder ähnliches zum UZSU-Widget gefunden.

    Beste Grüße
    Michael

    Einen Kommentar schreiben:


  • AndreK
    antwortet
    Hi Sisamiwe ,

    wie würdest Du dir die Eingabe im Widget vorstellen ?
    Code:
    0 8,17 * * *
    wie bei einem "normalen" Linux cron-job ? Eher nicht, oder ?
    Ich denke das Befüllen des items müsste ebenfalls im Widget passieren, ansonsten würde ein Hilfsitem benötigt ?
    Ich könnte mir vorstellen, dass es so etwas wie einen Time-Series-Assistenten gibt.
    Ein Popup mit allen Tagen zum anklicken/auswählen, ein Eingabefeld für Uhrzeit (Stunden/Minuten) und eine Combobox mit den Schaltmöglichkeiten (EIN/AUS, ..)
    Danach sollte die Serie im Widget selbst erstellt werden. Ein Button um alle Eintrage zu löschen wäre dann sicherlich auch hilfreich.

    Das müsste für alle uzsu-widgets (icon / uzusugraph / uzsutable) jeweils eingebaut werden.

    Alles mal "laut" gedacht.

    Viele Grüsse
    Andre

    P.S. : Aus meiner Sicht wäre das eher einer Thema für das smartvisu-Forum
    Zuletzt geändert von AndreK; 28.06.2021, 19:05. Grund: Verweis auf smartvisu-Forum

    Einen Kommentar schreiben:


  • Sisamiwe
    antwortet
    Zitat von Onkelandy Beitrag anzeigen
    wie würdest du das im Interface umsetzen wollen
    Es könnte im Widget bspw in den Experteneinstellungen gelistet sein und das Plugin könnte dann eine Umrechnung/Umsetzung auf das aktuelle Item-Format machen.

    Zitat von Onkelandy Beitrag anzeigen
    Welchen Vorteil siehst du im Vergleich zum crontab Attribut für Items
    Der Vorteil liegt aus meiner Sicht darin, dass man das zur Laufzeit von shNG ändern kann.

    Einen Kommentar schreiben:


  • Onkelandy
    antwortet
    Hmmm, wie würdest du das im Interface umsetzen wollen? Welchen Vorteil siehst du im Vergleich zum crontab Attribut für Items, evtl. im Zusammenspiel mit einer Logik?

    Einen Kommentar schreiben:


  • Sisamiwe
    hat ein Thema erstellt Erweiterung UZSU Plugin um crontab Modus?.

    Erweiterung UZSU Plugin um crontab Modus?

    Hallo,

    ich wollte fragen, ob eine Erweiterung des UZSU-Plugins um die Funktionen des Crontab denkbar / umsetzbar ist?

    Im Moment nutze ich die UZSU um meinen frisch gesäten Rasen zu bewässern. Dazu schalte ich die Punkte täglich zur vollen Stunde zwischen 6h und 22h für 10min ein. Das ergibt sehr viele Einträge in der aktuellen Version der UZSU.

    Wenn man einen Crontab Modus hätte, könnte man diese sich wiederholenden Einträge deutlich verkürzen.

    Was meint ihr?

    Beste Grüße
    Zuletzt geändert von bmx; 20.10.2021, 13:01. Grund: abgekoppelt vom UZSU Support Thread und neuen Titel vergeben: Erweiterung UZSU Plugin um crontab Modus?
Lädt...
X