Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. [gelöst] Sommer oder Winterzeit / Winteranfang abfragen

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    [gelöst] Sommer oder Winterzeit / Winteranfang abfragen

    This topic has been deleted. Only users with topic management privileges can see it.
    • Ben1983
      Ben1983 last edited by Ben1983

      Hallo, gibt es irgend eine Funktion, die mir sagt, ob Winter oder Sommer ist?
      entweder winterzeit oder sommerzeit?

      Oder anhand des winteranfangs /Sommerangs?

      Aktuell frage ich einfach den aktuellen Monat ab und sage von November bis märz ist Winter.

      paul53 Armilar 2 Replies Last reply Reply Quote 0
      • paul53
        paul53 @Ben1983 last edited by paul53

        @ben1983 sagte: winterzeit oder sommerzeit?

        const sommerzeit = new Date().getTimezoneOffset() == -120;
        

        Der meteorologische Winteranfang ist der 1.12. und Sommeranfang der 1.6. Es gibt aber noch Frühling und Herbst.
        Die "helle" Jahreszeit geht vom 20.3. bis 22.9.

        1 Reply Last reply Reply Quote 0
        • Armilar
          Armilar Most Active Forum Testing @Ben1983 last edited by Armilar

          @ben1983

          Mini-Script für 0_userdata

          let sz = false;
          if (new Date().getTimezoneOffset() == -120) {
             sz = true;
          }
          
          createState('0_userdata.0.Sommerzeit', sz, {type: 'boolean'});
          
          schedule("1 3 * * *", function() { // täglich um 3:01 Uhr
             if (new Date().getTimezoneOffset() == -120) {
                setState('0_userdata.0.Sommerzeit', true, true);
             } else { 
                setState('0_userdata.0.Sommerzeit', false, true);
             }
          });
          
          paul53 1 Reply Last reply Reply Quote 0
          • paul53
            paul53 @Armilar last edited by

            @armilar sagte: Mini-Script für 0_userdata

            Da geht mehr "Mini":

            schedule("1 3 * * *", function() { // täglich um 3:01 Uhr
                setState('0_userdata.0.Sommerzeit', new Date().getTimezoneOffset() == -120, true);
            });
            
            Armilar F 2 Replies Last reply Reply Quote 1
            • Armilar
              Armilar Most Active Forum Testing @paul53 last edited by

              @paul53

              definitiv 😉

              Ben1983 1 Reply Last reply Reply Quote 0
              • Ben1983
                Ben1983 @Armilar last edited by Ben1983

                @armilar danke.

                Ich habe jetzt einfach das erstellt, wobei ich im Nachhinein doch entsprechende Monate für Sommer (März-Oktober)
                Winter (Dezember - Januar) Definiert habe. Vielleicht benenne ich es aber einfach um in die Funktionen, die es auch erfüllt.
                Wobei es für mich eben so zählt:
                Sommer => März bis Oktober (Garten - Poolzeit)
                Winter => Dezember - Januar (Weihnachtsbeleuchtung)

                // Abfrage auf Sommerzeit
                function isSummertime(){
                    //Abfrage, ob der Zeitoffset 2 Stunden beträgt (120min in der Sommerzeit ; 60min in der Winterzeit)
                    return new Date().getTimezoneOffset() === -120; 
                }
                
                1 Reply Last reply Reply Quote 1
                • F
                  fuchs1978 @paul53 last edited by

                  @paul53 und noch etwas an Zeichen gespart:

                  schedule('1 3 * * *', () => setState('0_userdata.0.Sommerzeit', new Date().getTimezoneOffset() == -120, true));
                  
                  Marc Berg 1 Reply Last reply Reply Quote 0
                  • Marc Berg
                    Marc Berg Most Active @fuchs1978 last edited by

                    @fuchs1978 sagte in Sommer oder Winterzeit / Winteranfang abfragen:

                    noch etwas an Zeichen gespart:

                    wäre es nicht noch viel sparsamer, einfach die Systemvariable abzufragen?

                    6016160f-c95c-4ac1-b838-6f038829377f-grafik.png

                    Ben1983 1 Reply Last reply Reply Quote 0
                    • Ben1983
                      Ben1983 @Marc Berg last edited by

                      @marc-berg Danke.
                      Es wurde sowieso noch eine viel tiefere3 funktion benötigt.
                      Deine Lösung dient aber dem Thread.

                      1 Reply Last reply Reply Quote 0
                      • First post
                        Last post

                      Support us

                      ioBroker
                      Community Adapters
                      Donate

                      679
                      Online

                      31.9k
                      Users

                      80.2k
                      Topics

                      1.3m
                      Posts

                      5
                      9
                      349
                      Loading More Posts
                      • Oldest to Newest
                      • Newest to Oldest
                      • Most Votes
                      Reply
                      • Reply as topic
                      Log in to reply
                      Community
                      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                      The ioBroker Community 2014-2023
                      logo