Ankündigung

Einklappen
Keine Ankündigung bisher.

- √ - Verwendung von Modulo in eval

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

    - √ - Verwendung von Modulo in eval

    Hallo zusammen,

    würde gerne zur Auswertung von Zeiten (in sec) die Itemwerte in Stunden und Minuten umrechnen. Klappt soweit auch mit den Stunden, allerdings wäre dann für die Minuten eine Restwertberechnung notwendig.
    Code:
    eval = value % 3600
    bringt leider kein Ergebnis, sprich der Itemwert bleibt unverändert.

    Hat das schon jemand bei sich irgendwie realisiert oder bin ich da komplett auf dem Holzweg?

    Da der Basisitemwert schon direkt aus einem fertigen Plugin kommt wollte ich mir eine komplizierte Umrechnung im Plugin oder per Logik sparen.

    Wäre wie immer für Tipps dankbar.

    Cheers,
    Oliver

    #2
    wie lautete denn die Definition des gesamten Items?

    Kommentar


      #3
      Hi Bernd,

      Code:
          [[uptime_hour]]
              type = num
              fritzbox = uptime
              eval = int(value / 3600)
          [[uptime_minute]]
              type = num
              fritzbox = uptime
              eval = value % 3600
      uptime_hour wird korrekt berechnet, bei uptime_minute kommt dann als Ergebnis der Originalwert vom FB-Plugin.
      Evtl. geht es ja auch über eine Subtraktion * 60 des update_hour Wertes, aber das wollte ich bis dato vermeiden und daher die Frage ob noch jemand was einfaches für eval im Zauberkasten hat

      Cheers,
      Oliver

      Kommentar


        #4
        Versuch mal die uptime in ein separates Item einmalig zu schreiben und dann dieses als eval_trigger zu verwenden. Im eval dann den Wert dieses Items abfragen.
        Mit freundlichen Grüßen
        Niko Will

        Logiken und Schnittstelle zu anderen Systemen: smarthome.py - Visualisierung: smartVISU
        - Gira TS3 - iPhone & iPad - Mobotix T24 - ekey - Denon 2313 - Russound C5 (RIO over TCP Plugin) -

        Kommentar


          #5
          Hi Niko,
          auch schon probiert, aber das klappt dann auch nicht. Das % für Modulo wird nicht erkannt und daher nehme ich an auch nicht unterstützt.
          Habe auch schon probiert das nun ohne Restwertberechnung durchzuführen, aber auch da stehe ich mir ws. selbst im Wege....

          Hat noch irgendwer eine Idee?

          Simpel gesprochen:

          Gegeben:
          Item mit Wert in Sekunden
          Gesucht:
          Item mit Wert in Stunden (gelöst via Eval mit eval = value /3600)
          Item mit Restwert (der Stunden) in Minuten (geplant war eval = value %3600)
          Ziel: Darstellung der uptime in Stunden und Minuten anstatt nur in Sekunden

          Danke & Cheers,
          Oliver

          Kommentar


            #6
            gelöst

            So, habe es nun mit etwas probieren so gelöst:
            eval = int(value/60-int(value/3600)*60)

            Kommentar

            Lädt...
            X