Ankündigung

Einklappen
Keine Ankündigung bisher.

Erweiterung UZSU Plugin um crontab Modus?

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

    #16
    Ich möchte darauf hinweisen, das sich im Core in develop die Implementation von Crontab geändert hat und dort jetzt weitere Möglichkeiten existieren. Es gibt jetzt lib/triggertimes.py
    Zuletzt geändert von bmx; 20.10.2021, 12:59.

    Kommentar


      #17
      Zitat von bmx Beitrag anzeigen
      Ich möchte darauf hinweisen, das sich im Core in develop die Implementation von Crontab geändert hat und dort jetzt weitere Möglichkeiten existieren. Es gibt jetzt lib/triggertimes.py
      Bislang ist die Umsetzung so geplant, dass man eine Zeitreihe menugestützt (Widget) erstellt und im UZSU Dict hinterlegt. Das Plugin macht den Rest. Der crontab selbst wird nicht verwendet. Was glaubst Du, welchen Einfluss die Änderung im Core haben wird / kann?
      Zuletzt geändert von bmx; 20.10.2021, 13:00.

      Kommentar


        #18
        Hallo,

        eine erste Version des UZSU-Plugins mit der Umsetzung der TimeSeries ist mal fertig.
        Umgesetzt und getestet sind Einträge im Dict nach dem Schema, wie von AndreK hier vorgeschlagen.

        Zudem sollte es auch funktionieren, wenn man statt der Endzeit für die Zeitserie eine Anzahl von Wiederholungen angibt. der "dict key" dafür ist "timeSeriesCount".

        Wie ist es realisiert:
        Es gibt eine neue interne Funktion im Plugin, die _decode_time_series heißt. Diese wird von der Funktion _schedule aufgerufen, bevor aus den Listeneinträge mit _get_time die letzte und nächste Ausführung ermittelt wird. Die neue Funktion _decode_time_series setzt alle Zeitserien in "normale" Einträge mit Zeitstempel um. Dadurch bleiben alle anderen Funktionen unberührt.

        Hier das Plugin zum Testen.
        Rückmeldung erbeten.

        uzsu_w_timeseries.zip

        Kommentar


          #19
          Hallo,
          zu der oben genannten Testversion des Plugins gibt es eine passende smartVISU Widget Version. Die ist unten als ZIP angehängt. Diese Version ist kompatibel zum aktuellen Stand der v3.1.0. Die Ordnerstruktur im ZIP entspricht der Struktur von smartVISU, so dass man die Datei einfach in den smartVISU-Ordner entpacken kann.

          Gruß
          Wolfram

          P.S.: die zum Develop-Stand kompatible Version befindet sich hier. Dazu wird noch die base.css aus der ZIP-Datei benötigt. Letztere befindet sich auch schon im aktuellen Develop von heute.
          Angehängte Dateien
          Zuletzt geändert von wvhn; 13.10.2021, 20:57.

          Kommentar


            #20
            Beim PR mit den timeseries hab ich einige Anmerkungen gemacht.
            Ich wäre übrigens schwer dafür, beim Type "series" und nicht "serie" zu nutzen. Was meint ihr? Müsste dann im Widget aktualisiert werden wvhn

            Kommentar


              #21
              Macht Sinn, aber das ist sicher das geringste Problem

              Kommentar


                #22
                Zitat von Onkelandy Beitrag anzeigen
                Beim PR mit den timeseries hab ich einige Anmerkungen gemacht.
                Da war ich wohl etwas voreilig. Wir AndreK wvhn wollen die Zeitserie auch mit sunrise / sunset beginnen und enden lassen. Dafür könnten wir noch etwas Inspiration gebrauchen. @Onkelandy: Könntest Du unterstützen?

                Kommentar


                  #23
                  Hi @all,

                  kurzes Update / Stand der Dinge:

                  die eingeschlagene Vorgehensweise geht schief weil jede[list] im UZSU-Item mit "sun" das Item aktualisiert, was ja auch Sinn macht und korrekt ist.
                  Dadurch werden alle "[list]" des items aktualisiert- die "virtuellen Einträge" gehen verloren-. Da bei _update_suncalc() über den Eintragsindex upgedatet wird, was auch Sinn macht stimmen nach dem Update des Items die Indexe nicht mehr -> Fehler "Index out of Range" . Aus meiner Sicht -> Sackgasse.

                  Der Plan (meiner) ist nun in def _get_time() die Serie korrekt zu berechnen und "next" bzw. "previous" korrekt zurückzugeben. Dann sollte, nach heutigem Wissensstand, der Rest auch wieder korrekt arbeiten. Nachdem ich die Berechnung der Serie mit sunset/sunrise eh schon gebastelt habe und nun auch "rrulestr" kennengelernt habe sollte es auch möglich sein dies in einem überschaubaren Zeitrahmen zu realisieren.

                  Sobald wieder Zeit ist, mache ich auf dem Weg weiter (im Moment alles noch Theorie), Hinweise sind gerne willkommen.

                  Viele Grüsse
                  Andre

                  Kommentar

                  Lädt...
                  X