Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Einschaltdauer errechnen und vernünftig Anzeigen

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    3.5k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.1k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.5k

Einschaltdauer errechnen und vernünftig Anzeigen

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
blocklymonitoring
5 Beiträge 2 Kommentatoren 623 Aufrufe 2 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • B Offline
    B Offline
    baeumerich
    schrieb am zuletzt editiert von
    #1

    Hallo zusammen,
    seit mehreren Tagen versuche ich verzweifelt mit Uhrzeiten zu rechnen. Ich möchte einen Ping auswerten um mir einen Überblick zu schaffen, wie lange einzelne Geräte im Haus an sind. In meinem Beispiel:

    Fernseher geht an, Fernseher wird durch PING erkannt, dann schreibe ich in eine Variable "Startzeit" die aktuelle Uhrzeit (das klappt). Sobald der Fernseher aus geht, erkennt der PING-Adapter dies und ich schreibe in die Variable "Endzeit" die aktuelle Uhrzeit! Nun soll in der Variablen "Dauer", "Dauer" = "Endzeit" - "Startzeit" berechnete werden. Da kommt immer "NaN" heraus.

    Jetzt bin ich hingegangen und berechne alles in Sekunden, dass klappt auch, allerdings bekomme ich den Sekundenwert nicht mehr in ein vernünftiges Format angezeit hh:mm:ss!

    Habt ihr eine Idee wie man sowas berechnen oder Anzeigen kann! Ich wünsch mir doch nur Startzeit: 20:15 Endzeit: 22:10 Dauer = 01:55 h!

    Vielen Dank für Eure Unterstützung!

    Gruß Erich

    paul53P 2 Antworten Letzte Antwort
    0
    • B baeumerich

      Hallo zusammen,
      seit mehreren Tagen versuche ich verzweifelt mit Uhrzeiten zu rechnen. Ich möchte einen Ping auswerten um mir einen Überblick zu schaffen, wie lange einzelne Geräte im Haus an sind. In meinem Beispiel:

      Fernseher geht an, Fernseher wird durch PING erkannt, dann schreibe ich in eine Variable "Startzeit" die aktuelle Uhrzeit (das klappt). Sobald der Fernseher aus geht, erkennt der PING-Adapter dies und ich schreibe in die Variable "Endzeit" die aktuelle Uhrzeit! Nun soll in der Variablen "Dauer", "Dauer" = "Endzeit" - "Startzeit" berechnete werden. Da kommt immer "NaN" heraus.

      Jetzt bin ich hingegangen und berechne alles in Sekunden, dass klappt auch, allerdings bekomme ich den Sekundenwert nicht mehr in ein vernünftiges Format angezeit hh:mm:ss!

      Habt ihr eine Idee wie man sowas berechnen oder Anzeigen kann! Ich wünsch mir doch nur Startzeit: 20:15 Endzeit: 22:10 Dauer = 01:55 h!

      Vielen Dank für Eure Unterstützung!

      Gruß Erich

      paul53P Offline
      paul53P Offline
      paul53
      schrieb am zuletzt editiert von paul53
      #2

      Zeitdifferenz: Berechnen (Forum-Suche).

      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
      Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

      1 Antwort Letzte Antwort
      0
      • B baeumerich

        Hallo zusammen,
        seit mehreren Tagen versuche ich verzweifelt mit Uhrzeiten zu rechnen. Ich möchte einen Ping auswerten um mir einen Überblick zu schaffen, wie lange einzelne Geräte im Haus an sind. In meinem Beispiel:

        Fernseher geht an, Fernseher wird durch PING erkannt, dann schreibe ich in eine Variable "Startzeit" die aktuelle Uhrzeit (das klappt). Sobald der Fernseher aus geht, erkennt der PING-Adapter dies und ich schreibe in die Variable "Endzeit" die aktuelle Uhrzeit! Nun soll in der Variablen "Dauer", "Dauer" = "Endzeit" - "Startzeit" berechnete werden. Da kommt immer "NaN" heraus.

        Jetzt bin ich hingegangen und berechne alles in Sekunden, dass klappt auch, allerdings bekomme ich den Sekundenwert nicht mehr in ein vernünftiges Format angezeit hh:mm:ss!

        Habt ihr eine Idee wie man sowas berechnen oder Anzeigen kann! Ich wünsch mir doch nur Startzeit: 20:15 Endzeit: 22:10 Dauer = 01:55 h!

        Vielen Dank für Eure Unterstützung!

        Gruß Erich

        paul53P Offline
        paul53P Offline
        paul53
        schrieb am zuletzt editiert von paul53
        #3

        @baeumerich sagte:

        Startzeit: 20:15 Endzeit: 22:10 Dauer = 01:55 h!

        Als Javascript-Funktion:

        function timeDiff(start, ende) { // in "hh:mm"
            start = start.split(':');
            start = 60 * parseInt(start[0]) + parseInt(start[1]);
            ende = ende.split(':');
            ende = 60 * parseInt(ende[0]) + parseInt(ende[1]);
            let diff = ende - start;
            if(diff < 0) diff += 1440;
            let hour = Math.floor(diff / 60);
            let min  = diff - 60 * hour;
            if(hour < 10) hour = '0' + hour;
            if(min < 10) min = '0' + min;
            return hour + ':' + min;
        }
        

        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

        B 1 Antwort Letzte Antwort
        0
        • paul53P paul53

          @baeumerich sagte:

          Startzeit: 20:15 Endzeit: 22:10 Dauer = 01:55 h!

          Als Javascript-Funktion:

          function timeDiff(start, ende) { // in "hh:mm"
              start = start.split(':');
              start = 60 * parseInt(start[0]) + parseInt(start[1]);
              ende = ende.split(':');
              ende = 60 * parseInt(ende[0]) + parseInt(ende[1]);
              let diff = ende - start;
              if(diff < 0) diff += 1440;
              let hour = Math.floor(diff / 60);
              let min  = diff - 60 * hour;
              if(hour < 10) hour = '0' + hour;
              if(min < 10) min = '0' + min;
              return hour + ':' + min;
          }
          
          B Offline
          B Offline
          baeumerich
          schrieb am zuletzt editiert von
          #4

          @paul53 Danke für die Antwort, allerdings kann ich das mit dem Java nicht! Ich erkenne zwar, dass du dort Funktionen definierst, allerdings weiss ich nicht, wie ich diese in Blockly rein bekomme oder sehen kann. Dafür bin ich zu sehr Anfänger! Evtl gibt es ja noch eine Blockly Lösung, diese verstehe ich dann evtl leichter.

          Danke

          paul53P 1 Antwort Letzte Antwort
          0
          • B baeumerich

            @paul53 Danke für die Antwort, allerdings kann ich das mit dem Java nicht! Ich erkenne zwar, dass du dort Funktionen definierst, allerdings weiss ich nicht, wie ich diese in Blockly rein bekomme oder sehen kann. Dafür bin ich zu sehr Anfänger! Evtl gibt es ja noch eine Blockly Lösung, diese verstehe ich dann evtl leichter.

            Danke

            paul53P Offline
            paul53P Offline
            paul53
            schrieb am zuletzt editiert von
            #5

            @baeumerich sagte:

            Evtl gibt es ja noch eine Blockly Lösung

            Klicke mal oben auf den Link Forum-Suche.

            Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
            Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

            1 Antwort Letzte Antwort
            0
            Antworten
            • In einem neuen Thema antworten
            Anmelden zum Antworten
            • Älteste zuerst
            • Neuste zuerst
            • Meiste Stimmen


            Support us

            ioBroker
            Community Adapters
            Donate

            606

            Online

            32.7k

            Benutzer

            82.4k

            Themen

            1.3m

            Beiträge
            Community
            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
            ioBroker Community 2014-2025
            logo
            • Anmelden

            • Du hast noch kein Konto? Registrieren

            • Anmelden oder registrieren, um zu suchen
            • Erster Beitrag
              Letzter Beitrag
            0
            • Home
            • Aktuell
            • Tags
            • Ungelesen 0
            • Kategorien
            • Unreplied
            • Beliebt
            • GitHub
            • Docu
            • Hilfe