Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Etwas nur tagsüber laufen lassen

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Etwas nur tagsüber laufen lassen

    This topic has been deleted. Only users with topic management privileges can see it.
    • BertDerKleine
      BertDerKleine @haus-automatisierung last edited by

      @haus-automatisierung sagte in Etwas nur tagsüber laufen lassen:

      Dafür gibt es den Datenpunkt isDayTime unter javascript.0.variables. Auf welche Astro-Ereignisse der reagieren soll, kann in den Instanzeinstellungen festgelegt werden.

      Screenshot 2024-03-20 at 08.49.55.png

      Interessant zu wissen, dass man den DP isDayTime so gut feintunen kann.

      1 Reply Last reply Reply Quote 0
      • DJMarc75
        DJMarc75 @BertDerKleine last edited by

        @bertderkleine

        Der Trigger ist Dein Bewegungsmelder, größer als letztes bedeutet dass nur dann getriggert wird wenn der Datenpunkt von false auf true oder 0 auf größer 0 springt.
        Der blaue falls Block beinhaltet die Bedingung dass nur wenn Tag ist die Aktion ausgeführt wird.

        BertDerKleine 1 Reply Last reply Reply Quote 1
        • BertDerKleine
          BertDerKleine @DJMarc75 last edited by

          @djmarc75 sagte in Etwas nur tagsüber laufen lassen:

          @bertderkleine

          Der Trigger ist Dein Bewegungsmelder, größer als letztes bedeutet dass nur dann getriggert wird wenn der Datenpunkt von false auf true oder 0 auf größer 0 springt.

          Ah, schlauer move. 👍 Diese Betrachtungsweise für den Wechsel einer Boolean Variable von false auf true als Zahlen zu sehen. Wieder was gelernt.

          DJMarc75 1 Reply Last reply Reply Quote 0
          • DJMarc75
            DJMarc75 @BertDerKleine last edited by

            @bertderkleine sagte in Etwas nur tagsüber laufen lassen:

            als Zahlen zu sehen

            kann natürlich auch von Zahl x auf größere Zahl als x sein - Hauptsache der Wert ist größer als der vorherige 😉

            1 Reply Last reply Reply Quote 0
            • BertDerKleine
              BertDerKleine last edited by

              Ich habs jetzt mal ausporbieren können und bekomme das Ding irgendwie nicht zum Fliegen.

              d.jpg

              Das beschert mir nur einen Fehler:

              script.js.Tests.Test_Tageszeit Error by subscription (trigger): Wrong ID of type boolean or number.
              

              Ich verstehe nicht, was für ein Problem er hat, denn der triggernde DP ist Boolean.

              DJMarc75 Codierknecht haus-automatisierung 3 Replies Last reply Reply Quote 0
              • DJMarc75
                DJMarc75 @BertDerKleine last edited by DJMarc75

                @bertderkleine Im Trigger den blauen Baustein entfernen und dann NUR die ObjektID auswählen

                Screenshot 2024-03-21 120806.png

                1 Reply Last reply Reply Quote 1
                • Codierknecht
                  Codierknecht Developer Most Active @BertDerKleine last edited by Codierknecht

                  @bertderkleine
                  Den Fehler hat Dir @DJMarc75 genannt.

                  Du kannst das aber auch noch vereinfachen:

                  1. Du brauchst keine zwei "Falls". 1 Block mit "Falls/Sonst" tut's auch.
                  2. Wenn der Trigger schon auf den richtigen DP zeigt, musst Du den Wert nicht nochmal lesen. Nimm aus dem Bereich "Trigger" den Block "Wert".
                  3. Boolean muss man nicht mit "Falls Wert = True" oder "Falls Wert = False" prüfen.
                    Hier reicht ein "Falls Wert" bzw. "Falls Nicht Wert".

                  https://forum.iobroker.net/topic/70481/blockly-for-dummies-starthilfe-und-tipps

                  Edit: Vorschlag:
                  e407f1db-2812-4d6b-a7eb-74ca27ec0a5e-image.png

                  BertDerKleine 1 Reply Last reply Reply Quote 2
                  • haus-automatisierung
                    haus-automatisierung Developer Most Active @BertDerKleine last edited by

                    @bertderkleine sagte in Etwas nur tagsüber laufen lassen:

                    Ich verstehe nicht, was für ein Problem er hat, denn der triggernde DP ist Boolean.

                    Was Du machst, ist gerade:

                    "Lieber JavaScript-Adapter, sag mir mal wann sich das hier ändert: true"

                    Das ist der Wert des Datenpunktes (wie hier schon erläutert). Und damit gibt es keine Referenz mehr auf die Objekt-ID. Eigentlich hatte ich die Blöcke mal grün gefärbt, damit man sieht dass da ein String rein muss...

                    Da die Warnung für Dich scheinbar nicht verständlich ist: Wie hätte diese denn lauten müssen, damit Du weißt was falsch ist?

                    BertDerKleine 1 Reply Last reply Reply Quote 0
                    • BertDerKleine
                      BertDerKleine @Codierknecht last edited by

                      @codierknecht
                      Danke Dir.
                      Ich hoffe, so ist es nun richtig:
                      e.jpg

                      haus-automatisierung Codierknecht DJMarc75 3 Replies Last reply Reply Quote 0
                      • haus-automatisierung
                        haus-automatisierung Developer Most Active @BertDerKleine last edited by haus-automatisierung

                        @bertderkleine sagte in Etwas nur tagsüber laufen lassen:

                        Ich hoffe, so ist es nun richtig:

                        Ja, würde zwar den Wert aus dem Trigger nehmen (siehe oben von @Codierknecht ), aber geht.

                        Hat nur das Problem, dass auf jeden Fall nach 5 Min das Licht ausgeht, auch wenn danach wieder eine neue Bewegung erkannt wird. Nur der "keine Bewegung mehr erkannt"-Zweig verlängert das um weitere 5min.

                        Ein manueller Timeout löst das Problem.

                        1 Reply Last reply Reply Quote 2
                        • Codierknecht
                          Codierknecht Developer Most Active @BertDerKleine last edited by Codierknecht

                          @bertderkleine

                          Wie @haus-automatisierung schon schreibt: Versuche es mit einem selbst hinzugefügten Timeout zu lösen.

                          https://forum.iobroker.net/topic/70481/blockly-for-dummies-starthilfe-und-tipps/9

                          1 Reply Last reply Reply Quote 3
                          • DJMarc75
                            DJMarc75 @BertDerKleine last edited by

                            @bertderkleine wie schon von @haus-automatisierung geschrieben würde ein Timeout das lösen:

                            Screenshot 2024-03-21 122638.png

                            1 Reply Last reply Reply Quote 2
                            • BertDerKleine
                              BertDerKleine @haus-automatisierung last edited by

                              @haus-automatisierung sagte in Etwas nur tagsüber laufen lassen:

                              Was Du machst, ist gerade:
                              "Lieber JavaScript-Adapter, sag mir mal wann sich das hier ändert: true"

                              Genau, und das klingt für mich erstmal richtig. Ich will prüfen, ob sich true auf false und umgekehrt ändert.

                              Das ist der Wert des Datenpunktes (wie hier schon erläutert). Und damit gibt es keine Referenz mehr auf die Objekt-ID.

                              Tatsächlich weiss ich nicht, was Du ausdrücken willst. Die Objekt ID steht da doch.

                              Eigentlich hatte ich die Blöcke mal grün gefärbt, damit man sieht dass da ein String rein muss...

                              Für jemanden wie mich ist das noch verwirrender, denn ich verstehe vollends nicht wie hier ein String ins Spiel kommt.

                              Da die Warnung für Dich scheinbar nicht verständlich ist: Wie hätte diese denn lauten müssen, damit Du weißt was falsch ist?

                              1. Mir ergab sich aus der Formulierung nicht, ob der Fehler besagt, dass da irgendwo ein "boolean or number" hinmuss oder ob derlei irgendwo wegmuss.
                              2. "Wrong ID" liest sich für mich auch erstmal so, als ob da ein anderer datenpunkt hinmuss oder umformatiert werden muss.
                                Ich würde mir theoretisch wohl sowas wie "object ID expected, not value of one" wünschen.

                              Am Ende sehe ich aber meinen Hauptfehler, denn in dem Blocklybaustein wird ja visuell genau eine ObjectID impliziert, die ich dann doof mit "Wert von" überschrieben habe.
                              Sorry dafür.

                              haus-automatisierung Homoran 2 Replies Last reply Reply Quote 0
                              • haus-automatisierung
                                haus-automatisierung Developer Most Active @BertDerKleine last edited by

                                @bertderkleine sagte in Etwas nur tagsüber laufen lassen:

                                Genau, und das klingt für mich erstmal richtig. Ich will prüfen, ob sich true auf false und umgekehrt ändert.

                                Geht aber nicht, weil Du dem System nicht mitteilst was das ist. Sondern nur den aktuellen Wert von "irgendwas".

                                Kannst mir bescheid sagen, wenn sich 42 ändert? 🙂

                                1 Reply Last reply Reply Quote 1
                                • Homoran
                                  Homoran Global Moderator Administrators @BertDerKleine last edited by

                                  @bertderkleine sagte in Etwas nur tagsüber laufen lassen:

                                  Die Objekt ID steht da doch.

                                  nein! da steht Wert von objectID

                                  haus-automatisierung 1 Reply Last reply Reply Quote 0
                                  • haus-automatisierung
                                    haus-automatisierung Developer Most Active @Homoran last edited by haus-automatisierung

                                    Weil ich eh gerade dran bin, gibts bald ein kleines Ausrufezeichen mit einer Warnung wenn man den Block dort verbindet 🙂

                                    Ist erstmal nur ein Hinweis - könnte ja sein, dass der Wert eine Objekt-ID ist. Und dann würde es wieder gehen...

                                    Screenshot 2024-03-21 at 13.07.00.png

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

                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate

                                    849
                                    Online

                                    31.7k
                                    Users

                                    79.7k
                                    Topics

                                    1.3m
                                    Posts

                                    7
                                    27
                                    1423
                                    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