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. ioBroker Allgemein
  4. DWD Adapter VIS Zeitformatierung

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.1k

DWD Adapter VIS Zeitformatierung

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
visdwd
21 Beiträge 6 Kommentatoren 2.7k Aufrufe 5 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.
  • T Termina

    @SBorg sagte in DWD Adapter VIS Zeitformatierung:

    @aleks-83 Ich vermute mal als Blockly? Dann musst du einen "Konvertierung --> nach Datum/Zeit" - Baustein davor setzen.

    Hab dasselbe "Problem". Habe folgendes Javascript und bekomme die Umformatierung nicht hin:

    function SendDWDWarning()
    {
      var Begin = getState("dwd.0.warning.begin").val;
      var End = getState("dwd.0.warning.end").val;
      var text = getState("dwd.0.warning.text").val;
      var Headline = getState("dwd.0.warning.headline").val;
      var Description = getState("dwd.0.warning.description").val;
     
      var DWD_telegramm = "Achtung Wetterwarnungen " + Headline + " gültig vom " + Begin + " bis " + End + ": " + Description ;
      sendTo ("telegram.0", DWD_telegramm);
    }
     
    on("dwd.0.warning.severity", function (obj)
    {
      if (obj.newState.val !==0)
      {
        setTimeout(SendDWDWarning, 30 * 1000);
      }
     
      if (obj.newState.val === 0)
      {
        sendTo ("telegram.0", "Alle Wetterwarnungen des Deutschen Wetterdienstes wurden aufgehoben.") ;
      }
     
      log ( "Wetterwarnungen " + text + " gültig vom " + Begin + " bis " + End + ': ' + Description);
    });
    

    Wenn ich nun folgendes ändere:

    var Begin = formatDate(new Date(getState(„dwd.0.warning.begin“).val), „TT.MM.JJJJ hh:mm:ss“)
    var End = formatDate(new Date(getState(„dwd.0.warning.end“).val), „TT.MM.JJJJ hh:mm:ss“)
    

    dann erscheint eine Fehlermeldung im log:

    javascript.0 (2135) script.js.common.Telegram_Wetterwarnung compile failed: at script.js.common.Telegram_Wetterwarnung:3
    

    Jemand eine Idee?

    SBorgS Offline
    SBorgS Offline
    SBorg
    Forum Testing Most Active
    schrieb am zuletzt editiert von
    #11

    @Termina So einfach geht es dann doch nicht ;)

    Hier eine neue Funktion:

    function convertTimestamp(timestamp) { // Unix in Milliseconds!
      var d = new Date(timestamp),
    		yyyy = d.getFullYear(),
    		mm = ('0' + (d.getMonth() + 1)).slice(-2),	// Months are zero based. Add leading 0.
    		dd = ('0' + d.getDate()).slice(-2),			// Add leading 0
    		hh = ('0' + d.getHours()).slice(-2),        // Add leading 0
    		min = ('0' + d.getMinutes()).slice(-2),		// Add leading 0
    		sec = ('0' + d.getSeconds()).slice(-2),     // Add leading 0
    		day = d.getDay(),                           // Wochentag
    		days = ['Sonntag', 'Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag'],
    		time;
    	
    	time = days[d.getDay()] + ', ' + dd + '.' + mm + '.' + yyyy + ', ' + hh + ':' + min + ':' + sec;
    		
    	return time;
    }
    

    In #13 baust du dir dann das Aussehen zusammen. Hier wäre es dann bspw. Samstag, 04.04.2020, 13:00:00

    Der Aufruf wäre dann zB. var Begin = convertTimestamp(getState("dwd.0.warning.begin").val);

    LG SBorg ( SBorg auf GitHub)
    Projekte: Lebensmittelwarnung.de | WLAN-Wetterstation | PimpMyStation

    T 1 Antwort Letzte Antwort
    0
    • SBorgS SBorg

      @Termina So einfach geht es dann doch nicht ;)

      Hier eine neue Funktion:

      function convertTimestamp(timestamp) { // Unix in Milliseconds!
        var d = new Date(timestamp),
      		yyyy = d.getFullYear(),
      		mm = ('0' + (d.getMonth() + 1)).slice(-2),	// Months are zero based. Add leading 0.
      		dd = ('0' + d.getDate()).slice(-2),			// Add leading 0
      		hh = ('0' + d.getHours()).slice(-2),        // Add leading 0
      		min = ('0' + d.getMinutes()).slice(-2),		// Add leading 0
      		sec = ('0' + d.getSeconds()).slice(-2),     // Add leading 0
      		day = d.getDay(),                           // Wochentag
      		days = ['Sonntag', 'Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag'],
      		time;
      	
      	time = days[d.getDay()] + ', ' + dd + '.' + mm + '.' + yyyy + ', ' + hh + ':' + min + ':' + sec;
      		
      	return time;
      }
      

      In #13 baust du dir dann das Aussehen zusammen. Hier wäre es dann bspw. Samstag, 04.04.2020, 13:00:00

      Der Aufruf wäre dann zB. var Begin = convertTimestamp(getState("dwd.0.warning.begin").val);

      T Offline
      T Offline
      Termina
      schrieb am zuletzt editiert von
      #12

      @SBorg
      Vielen Dank dafür, ich habe nun Deine Funktion vor die "SendDWDWarning" Funktion gesetzt. Ist das verkehrt? Ich bekomme nämlich nun folgende Fehlermeldung im log:

      error	javascript.0 (2230) script.js.common.Telegram_Wetterwarnung compile failed: at script.js.common.Telegram_Wetterwarnung:22
      

      PS: Ich habe gar keine Ahnung von Jacvascript... sry!

      SBorgS 1 Antwort Letzte Antwort
      0
      • T Termina

        @SBorg
        Vielen Dank dafür, ich habe nun Deine Funktion vor die "SendDWDWarning" Funktion gesetzt. Ist das verkehrt? Ich bekomme nämlich nun folgende Fehlermeldung im log:

        error	javascript.0 (2230) script.js.common.Telegram_Wetterwarnung compile failed: at script.js.common.Telegram_Wetterwarnung:22
        

        PS: Ich habe gar keine Ahnung von Jacvascript... sry!

        SBorgS Offline
        SBorgS Offline
        SBorg
        Forum Testing Most Active
        schrieb am zuletzt editiert von
        #13

        @Termina sagte in DWD Adapter VIS Zeitformatierung:

        PS: Ich habe gar keine Ahnung von Jacvascript... sry!

        Kein Problem, fragen, fragen... dafür ist das Forum doch auch da :)
        Die kpl. Funktion fügst du 1:1 in dein JS ein. Dann ersetzt du Zeile #3+4

          var Begin = getState("dwd.0.warning.begin").val;
          var End = getState("dwd.0.warning.end").val;
        

        durch

        var Begin = convertTimestamp(getState("dwd.0.warning.begin").val);
        var End = convertTimestamp(getState("dwd.0.warning.end").val);
        

        Wenn es dann funktioniert und dir das Format (Wochentag, Datum...) nicht gefällt, kannst du in der Funktion dann das Aussehen noch beeinflussen:

        time = days[d.getDay()] + ', ' + dd + '.' + mm + '.' + yyyy + ', ' + hh + ':' + min + ':' + sec;
        

        LG SBorg ( SBorg auf GitHub)
        Projekte: Lebensmittelwarnung.de | WLAN-Wetterstation | PimpMyStation

        T 1 Antwort Letzte Antwort
        2
        • SBorgS SBorg

          @Termina sagte in DWD Adapter VIS Zeitformatierung:

          PS: Ich habe gar keine Ahnung von Jacvascript... sry!

          Kein Problem, fragen, fragen... dafür ist das Forum doch auch da :)
          Die kpl. Funktion fügst du 1:1 in dein JS ein. Dann ersetzt du Zeile #3+4

            var Begin = getState("dwd.0.warning.begin").val;
            var End = getState("dwd.0.warning.end").val;
          

          durch

          var Begin = convertTimestamp(getState("dwd.0.warning.begin").val);
          var End = convertTimestamp(getState("dwd.0.warning.end").val);
          

          Wenn es dann funktioniert und dir das Format (Wochentag, Datum...) nicht gefällt, kannst du in der Funktion dann das Aussehen noch beeinflussen:

          time = days[d.getDay()] + ', ' + dd + '.' + mm + '.' + yyyy + ', ' + hh + ':' + min + ':' + sec;
          
          T Offline
          T Offline
          Termina
          schrieb am zuletzt editiert von
          #14

          @SBorg
          Sorry für die späte Rückmeldung - aber hat funktioniert - DANKE! :)

          1 Antwort Letzte Antwort
          0
          • SBorgS SBorg

            @ChrisXY Steht im DWD-Adapter Thread: nimm als Widget Timestamp Value

            E Offline
            E Offline
            exmerci
            schrieb am zuletzt editiert von
            #15

            @SBorg sagte in DWD Adapter VIS Zeitformatierung:

            Steht im DWD-Adapter Thread: nimm als Widget Timestamp Value

            Das habe ich versucht. Nur leider wird das Widget zwar in der Vorschau auf dem PC angezeigt, nicht aber auf dem Tablet.

            1 Antwort Letzte Antwort
            0
            • wendy2702W Offline
              wendy2702W Offline
              wendy2702
              schrieb am zuletzt editiert von
              #16

              Schaut mal hier:

              https://forum.iobroker.net/post/422786

              Bitte keine Fragen per PN, die gehören ins Forum!

              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

              1 Antwort Letzte Antwort
              0
              • E Offline
                E Offline
                exmerci
                schrieb am zuletzt editiert von
                #17

                Danke, aber ich finde in dem Beitrag nichts wo es darum geht das ein Widget nicht angezeigt wird, oder übersehe ich da was?

                1 Antwort Letzte Antwort
                0
                • wendy2702W Offline
                  wendy2702W Offline
                  wendy2702
                  schrieb am zuletzt editiert von
                  #18

                  Sorry, ich war bei der Anzeige der Zeit im richtigen Format .

                  Das Widget wird in der App nicht angezeigt da die App das Widget nicht kennt und ein Update erforderlich ist. Das Problem Gibt es für einige Widgets .

                  Bitte keine Fragen per PN, die gehören ins Forum!

                  Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                  1 Antwort Letzte Antwort
                  0
                  • SBorgS SBorg

                    @aleks-83 Ich vermute mal als Blockly? Dann musst du einen "Konvertierung --> nach Datum/Zeit" - Baustein davor setzen.

                    A Offline
                    A Offline
                    aleks-83
                    schrieb am zuletzt editiert von
                    #19

                    @SBorg sagte in DWD Adapter VIS Zeitformatierung:

                    @aleks-83 Ich vermute mal als Blockly? Dann musst du einen "Konvertierung --> nach Datum/Zeit" - Baustein davor setzen.

                    Das hat kurzzeitig funktioniert.
                    Jetzt wird aber trotz des Bausteins "nach Datum/Zeit" immer noch der Linux-Zeitstempel geschrieben.
                    JavaScript 4.6.17
                    DWD 2.4.9

                    = Dell Optiplex Micro - 10GB RAM - 200GB SSD - Debian VM =
                    = Node.js v20.19.6 = NPM 10.8.2 = JS Controller 7.0.7 =

                    Ubiquiti UAP-AC-LR - UAP-AC-Lite - Synology DS716+II - Fritz!Box 7490
                    Glasfaser 400

                    SBorgS 1 Antwort Letzte Antwort
                    0
                    • A aleks-83

                      @SBorg sagte in DWD Adapter VIS Zeitformatierung:

                      @aleks-83 Ich vermute mal als Blockly? Dann musst du einen "Konvertierung --> nach Datum/Zeit" - Baustein davor setzen.

                      Das hat kurzzeitig funktioniert.
                      Jetzt wird aber trotz des Bausteins "nach Datum/Zeit" immer noch der Linux-Zeitstempel geschrieben.
                      JavaScript 4.6.17
                      DWD 2.4.9

                      SBorgS Offline
                      SBorgS Offline
                      SBorg
                      Forum Testing Most Active
                      schrieb am zuletzt editiert von SBorg
                      #20

                      @aleks-83 Da hat sich wohl wieder was geändert :(
                      Etwas aufwändiger (JS-Funktion), dafür "überlebt" es aber auch weitere Änderungen:
                      Bild 1.png
                      Blockly-Export

                      Im Grunde musst du dann nur den "nach Datum/Zeit" durch den neuen "Timestamp mit millis" ersetzen.
                      In der Funktion (zu öffnen mit den ... am Ende) kannst du in Zeile #12 die Ausgabe formatieren.

                      ...und nicht wundern, der "Brandson..." zum testen enthält bei mir tatsächlich einen Unix-Timestamp ;)

                      LG SBorg ( SBorg auf GitHub)
                      Projekte: Lebensmittelwarnung.de | WLAN-Wetterstation | PimpMyStation

                      1 Antwort Letzte Antwort
                      1
                      • A Offline
                        A Offline
                        aleks-83
                        schrieb am zuletzt editiert von aleks-83
                        #21

                        @SBorg
                        Funktioniert perfekt!
                        Danke dir

                        = Dell Optiplex Micro - 10GB RAM - 200GB SSD - Debian VM =
                        = Node.js v20.19.6 = NPM 10.8.2 = JS Controller 7.0.7 =

                        Ubiquiti UAP-AC-LR - UAP-AC-Lite - Synology DS716+II - Fritz!Box 7490
                        Glasfaser 400

                        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
                        FAQ Cloud / IOT
                        HowTo: Node.js-Update
                        HowTo: Backup/Restore
                        Downloads
                        BLOG

                        484

                        Online

                        32.6k

                        Benutzer

                        82.1k

                        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