Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Javascript "startSkript" startet Skript doppelt

    NEWS

    • Neues Video "KI im Smart Home" - ioBroker plus n8n

    • Neues Video über Aliase, virtuelle Geräte und Kategorien

    • Wir empfehlen: Node.js 22.x

    Javascript "startSkript" startet Skript doppelt

    This topic has been deleted. Only users with topic management privileges can see it.
    • Asgothian
      Asgothian Developer @Boronsbruder last edited by

      @boronsbruder sagte in Javascript "startSkript" startet Skript doppelt:

      startet das Skript doppelt!
      Warum? Ich hab keine Ahnung...

      bitte mal eine Debug ausgäbe in den Trigger, mit Angabe der Quelle und so weiter. Schauen ob der Trigger 2 mal kommt.

      A.

      1 Reply Last reply Reply Quote 0
      • ofri2607
        ofri2607 @Asgothian last edited by

        @asgothian sagte in Javascript "startSkript" startet Skript doppelt:

        Davon rate ich dringend ab.

        Was ist der Grund, warum du von eine Variante mit „val: false“ dringend abrätst?
        Ich habe es in der Form des Öfteren in meinen Skript‘s problemlos und mit dem jew. gewünschten Ergebnis am Laufen; bin aber auch alles andere als ein Profi. Daher wäre, um daraus zu Lernen, der Hintergrund für mich interessant.

        Asgothian 1 Reply Last reply Reply Quote 0
        • Asgothian
          Asgothian Developer @ofri2607 last edited by Asgothian

          @ofri2607 Ganz einfach:

          val:false reagiert sowohl auf Änderungen von true auf false, als auch auf Aktualisierungen (sprich wenn false einfach noch einmal in den DP geschrieben wird. Z.Bsp. wenn dahinter liegende Logik sich initialisiert) oder etwas bestätigt wird.

          Meistens ist das ungewünscht. Deswegen triggere ich boolean states zumeist auf greater than (fuer true) und less than fuer false)

          A.

          bahnuhr 1 Reply Last reply Reply Quote 2
          • bahnuhr
            bahnuhr Forum Testing Most Active @Asgothian last edited by

            @asgothian

            ich benutze dann sowas:

            change: "ne", val: false
            

            Müsste doch genauso funktionieren.
            Also bei Veränderung und val = false

            Asgothian 1 Reply Last reply Reply Quote 0
            • Asgothian
              Asgothian Developer @bahnuhr last edited by

              @bahnuhr sagte in Javascript "startSkript" startet Skript doppelt:

              @asgothian

              ich benutze dann sowas:

              change: "ne", val: false
              

              Müsste doch genauso funktionieren.
              Also bei Veränderung und val = false

              ja, Aber warum 2x prüfen wenn 1x reicht ?

              bahnuhr 1 Reply Last reply Reply Quote 0
              • bahnuhr
                bahnuhr Forum Testing Most Active @Asgothian last edited by

                @asgothian sagte in Javascript "startSkript" startet Skript doppelt:

                ja, Aber warum 2x prüfen wenn 1x reicht ?

                weil ich das andere nicht gewusst habe und mir es so logischer war 😉

                Asgothian 1 Reply Last reply Reply Quote 0
                • Asgothian
                  Asgothian Developer @bahnuhr last edited by

                  @bahnuhr 🙂

                  Ich predige das eigentlich seit 2020. true > false 🙂

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

                    @asgothian sagte in Javascript "startSkript" startet Skript doppelt:

                    true > false

                    @bahnuhr
                    ist einfache binäre (bool'sche) Algebra!
                    false = 0
                    true = 1

                    bahnuhr 1 Reply Last reply Reply Quote 0
                    • bahnuhr
                      bahnuhr Forum Testing Most Active @Homoran last edited by

                      @homoran sagte in Javascript "startSkript" startet Skript doppelt:

                      false = 0
                      true = 1

                      Ja, das ist klar.

                      Aber dass dies seit 5 Jahre schon gepredigt wurde ist mir nicht bekannt.
                      Und ich lese täglich 2-4 Stunden hier im Forum.

                      Muss an mir vorbei gegangen sein.

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

                        @bahnuhr sagte in Javascript "startSkript" startet Skript doppelt:

                        Aber dass dies seit 5 Jahre schon gepredigt wurde ist mir nicht bekannt.

                        spätestens bei Blockly wird immer wieder darauf hingewiesen den Trigger auf ist größer/ kleiner als letztes zu nehmen um eindeutigere Trigger zu erhalten und weitere Prüfungen in der folgenden Logik einzusparen

                        bahnuhr 1 Reply Last reply Reply Quote 0
                        • bahnuhr
                          bahnuhr Forum Testing Most Active @Homoran last edited by

                          @homoran sagte in Javascript "startSkript" startet Skript doppelt:

                          Blockly

                          ach deshalb 😉

                          ich nehm JS und kein Blockly

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

                            @bahnuhr sagte in Javascript "startSkript" startet Skript doppelt:

                            ich nehm JS und kein Blockly

                            Weiß ich!
                            Den entsprechenden Satz dazu hatte ich wieder gelöscht 😁

                            1 Reply Last reply Reply Quote 0
                            • T
                              ticaki Developer @Boronsbruder last edited by ticaki

                              @boronsbruder sagte in Javascript "startSkript" startet Skript doppelt:

                              startet das Skript doppelt!
                              Warum? Ich hab keine Ahnung...

                              Nehmen wir mal an im Javascript adapter steht:

                              for (let a=0; a<alleScriptDieTriggern.length; a++) {
                              

                              und du rufst jetzt synchron im Trigger die funktion

                              alleScriptDieTriggern.push()
                              

                              auf. Das starten eines Skripts mit Trigger ist ja nix anderes.
                              Dann wäre es möglich das ein await irgendwo deinem Skript die Zeit verschaft da einen Eintrag rein zu moggeln so das length+1 geht.

                              Wobei es dann am ende steht und die chance, dass da nochmal genug zeit ist, eher niedrig - daher löst dieser Trigger nur einmal aus.

                              Aber nur vermutung.

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

                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              845
                              Online

                              32.0k
                              Users

                              80.6k
                              Topics

                              1.3m
                              Posts

                              7
                              19
                              254
                              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