Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Einsteigerfragen
    4. Zählen eines Zustandes

    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

    Zählen eines Zustandes

    This topic has been deleted. Only users with topic management privileges can see it.
    • Chris 1
      Chris 1 @Codierknecht last edited by Chris 1

      @codierknecht Nochmal für's Verständnis....

      Bedeutet dies im (nun vermuteten) Umkehrschluss,
      dass Blockly/Java mit Abarbeitung des ersten bearbeiteten Triggers das Skript beendet?

      Homoran Codierknecht 2 Replies Last reply Reply Quote 0
      • Homoran
        Homoran Global Moderator Administrators @Chris 1 last edited by

        @chris-1 sagte in Zählen eines Zustandes:

        @codierknecht Nochmal für's Verständnis....

        Bedeutet dies im (nun vermuteten) Umkehrschluss,
        dass Blockly/Java mit Abarbeitung des ersten bearbeiteten Triggers das Skript beendet?

        ja!
        und dann auf den nächsten Event wartet (trigger), und wieder das Skript einmal durcharbeitet

        Chris 1 paul53 2 Replies Last reply Reply Quote 1
        • Chris 1
          Chris 1 @Homoran last edited by

          @homoran Danke

          1 Reply Last reply Reply Quote 0
          • paul53
            paul53 @Homoran last edited by

            @homoran sagte: auf den nächsten Event wartet (trigger), und wieder das Skript einmal durcharbeitet

            ... und wieder die Callback-Funktion einmal durchläuft.

            Chris 1 1 Reply Last reply Reply Quote 1
            • Chris 1
              Chris 1 @paul53 last edited by Chris 1

              @paul53 Also viele viele "kurze" Skripts statt wenigen mit allen möglichen Fallunterscheidungen
              Merk ich mir

              Homoran paul53 Codierknecht 3 Replies Last reply Reply Quote 0
              • Homoran
                Homoran Global Moderator Administrators @Chris 1 last edited by

                @chris-1 sagte in Zählen eines Zustandes:

                @paul53 Also viele viele "kurze" Skripts statt wenigen mit allen möglichen Fallunterscheidungen

                nein!
                diese Fallunterscheidungen müssen aber als LOGIK (blaue Blöcke) innerhalb des Triggerbausteins (rot) liegen.
                @paul53 wird das wieder korrekt übersetzen 😉

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

                  @chris-1
                  Ich bin ja nun wirklich nicht der Experte, aber AFAIK:
                  Das Script selbst wird nur 1x gestartet und registriert dabei eine Ereignisbehandlung - den Trigger.
                  Das ist eine Callback-Function, die jedes Mal beim Eintreten des Ereignisses aufgerufen wird.
                  Darum werden Variablen auch üblicherweise außerhalb des Triggers initialisiert ... braucht ja nur 1x gemacht werden.
                  Aus dem gleichen Grund wird auch nicht das in die DP geschrieben was Du erwartest.
                  Was bei Dir passiert ist:
                  Script startet ...
                  1.) Variable initialisieren
                  2.) Ereignisbehandlung registrieren
                  3.) Werte der Variablen in die DP schreiben
                  ... Scriptverarbeitung abgeschlossen.
                  Zum Zeitpunkt 3.) hat der Trigger noch nicht gefeuert und der Code darin wurde noch gar nicht ausgeführt.

                  Chris 1 2 Replies Last reply Reply Quote 1
                  • paul53
                    paul53 @Chris 1 last edited by

                    @chris-1 sagte: Also viele viele "kurze" Skripts statt wenigen mit allen möglichen Fallunterscheidungen

                    Callback-Funktionen können sehr umfangreich sein (mit vielen Fallunterscheidungen).

                    1 Reply Last reply Reply Quote 0
                    • Chris 1
                      Chris 1 @Homoran last edited by

                      @homoran Ich fange an, den Ansatz zu verstehen.

                      Ich greife einen Trigger ab und verändere daraufhin A

                      Ich arbeite nun nicht in dem Skript mit A weiter,
                      sondern erstelle ein seperates Skript welches A als Trigger hat

                      Seh ich das so richtig?

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

                        @codierknecht Was ist DP?

                        paul53 1 Reply Last reply Reply Quote 0
                        • paul53
                          paul53 @Chris 1 last edited by

                          @chris-1 sagte: Was ist DP?

                          Abkürzung für Datenpunkt.

                          1 Reply Last reply Reply Quote 1
                          • Chris 1
                            Chris 1 @Codierknecht last edited by

                            @codierknecht said in Zählen eines Zustandes:

                            Zum Zeitpunkt 3.) hat der Trigger noch nicht gefeuert und der Code darin wurde noch gar nicht ausgeführt.

                            Das irritiert mich jetzt - ist was für morgen

                            Homoran Codierknecht 2 Replies Last reply Reply Quote 0
                            • Homoran
                              Homoran Global Moderator Administrators @Chris 1 last edited by Homoran

                              @chris-1 sagte in Zählen eines Zustandes:

                              Seh ich das so richtig?

                              nein!

                              Du kannst alles in einem Skript machen.
                              nur nicht außerhalb des Triggerbausteins.

                              @Codierknecht hat es korrekt gesagt.
                              Dein Skript meldet beim Start wegen deines ausgewählten Datenpunktes (DP) im Trigger beim iobroker Controller an, dass es von diesem über jede Änderung dieses DP informiert werden will.
                              DANN startet dein Trigger alles, was innerhalb des Triggerbausteins an Befehlen steht

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

                                @chris-1 sagte in Zählen eines Zustandes:

                                Also viele viele "kurze" Skripts statt wenigen mit allen möglichen Fallunterscheidungen

                                Nicht unbedingt (eher gar nicht).
                                Du musst in Ereignissen denken. Man braucht 'ne Weile, bis man sich daran gewöhnt hat.
                                Der Dreh- und Angelpunkt ist eigentlich immer, den richtigen Trigger zu definieren. Der legt fest, zu welchem Zeitpunkt das Ganze überhaupt loslegt. Und das ist oft gar nicht so einfach.
                                Der Rest kommt dann innerhalb ...

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

                                  @chris-1 sagte in Zählen eines Zustandes:

                                  Das irritiert mich jetzt

                                  ich glaube das ist aber der Knackpunkt für dein (fehlendes) Verständnis für Javascript

                                  Chris 1 1 Reply Last reply Reply Quote 1
                                  • Chris 1
                                    Chris 1 @Homoran last edited by Chris 1

                                    @homoran Ich beginne ja gerade das System dahinter zu verstehen 🙂

                                    Es ist keine andere Welt,
                                    sondern nur ein anderer Ansatz 🙂

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

                                      @chris-1 sagte in Zählen eines Zustandes:

                                      ist was für morgen

                                      Vielleicht fällt uns bis dahin ja noch ein schöner Vergleich ein, an dem man event-driven-development irgendwie anschaulicher erklären kann 😁

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

                                        @codierknecht Ich glaube, ich habe dies, zumindest im Ansatz, bereits verstanden - danke 🙂

                                        Anstatt in zyklischen Skripten zu denken,
                                        reagiere ich auf einen Trigger A und setze zB X auf false

                                        In einem Andere Skript reagiere ich auf Trigger X und agiere dann abhängig davon, ob auf true oder false gesetzt/geändert/... wurde

                                        haselchen M 2 Replies Last reply Reply Quote 0
                                        • haselchen
                                          haselchen Most Active @Chris 1 last edited by

                                          @Codierknecht
                                          @paul53
                                          @Homoran

                                          Fachfrage an die Experten.
                                          Gibt es eine definierte Zeit (1ms….1sek….?) in der die Bedingungen erfüllt sein müssen ?
                                          Beispiel , ein Blockly mit vielen Und / Oder Bedingungen.

                                          Chris 1 Codierknecht 2 Replies Last reply Reply Quote 0
                                          • Chris 1
                                            Chris 1 @haselchen last edited by

                                            @haselchen Gemäß oben "gelerntem?" dürfte es keine bestimmte Zeit geben, da (erst) nach Abarbeitung alles unmittelbar ausgeführt wird.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            803
                                            Online

                                            31.9k
                                            Users

                                            80.2k
                                            Topics

                                            1.3m
                                            Posts

                                            9
                                            72
                                            3145
                                            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