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. Skripten / Logik
  4. Blockly
  5. DP wurde aktualisiert anerkannt ist "egal","Update","Befehl"

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

DP wurde aktualisiert anerkannt ist "egal","Update","Befehl"

Geplant Angeheftet Gesperrt Verschoben Blockly
15 Beiträge 7 Kommentatoren 1.1k 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.
  • XxJooOX XxJooO

    @FredF,

    das ist erst mal einleuchtend. Bei dem DP handelt es sich um einen selbst erstellten. Können diese ein ack=true senden? Wenn ja, wie kann man das einrichten? Dann müsste ich im Umkehrschluss in all meinen Scripten prüfen, ob ein ack=true überhaupt gesendet wird... Oder ob einige durch die Änderung auf "Update" gar nicht triggern und ich habe es nicht bemerkt.

    FredFF Offline
    FredFF Offline
    FredF
    Most Active Forum Testing
    schrieb am zuletzt editiert von
    #6

    @XxJooO sagte in DP wurde aktualisiert anerkannt ist "egal","Update","Befehl":

    Können diese ein ack=true senden?

    Bis jemand der sich besser auskennt das bejaht, sage ich, das selbst angelegte Datenpunkte kein ack=true senden können.

    F UncleSamU 2 Antworten Letzte Antwort
    0
    • FredFF FredF

      @XxJooO sagte in DP wurde aktualisiert anerkannt ist "egal","Update","Befehl":

      Können diese ein ack=true senden?

      Bis jemand der sich besser auskennt das bejaht, sage ich, das selbst angelegte Datenpunkte kein ack=true senden können.

      F Offline
      F Offline
      fastfoot
      schrieb am zuletzt editiert von fastfoot
      #7

      @FredF sagte in DP wurde aktualisiert anerkannt ist "egal","Update","Befehl":

      Bis jemand der sich besser auskennt das bejaht, sage ich, das selbst angelegte Datenpunkte kein ack=true senden können.

      Na, ob ich mich besser auskenne sei dahingestellt. Das ack Flag kommt ja von acknowledge=Bestätigung, und das funktioniert so:

      • Ein DP wird mit einem Wert gesteuert, das ack flag steht auf false
      • Der DP ändert sich zu dem neuen Wert
      • Ein Adapter reagiert darauf und steuert die Hardware entsprechend an
      • Dann wird vom Adapter diese Ansteuerung bestätigt, d.h. er setzt das ack-Flag auf true
      • Das bedeutet mW nicht, dass die Hardware auch entsprechend reagiert hat

      Zum Spielen ein Skript, welches eine Lampe anschaltet:
      Die ersten beiden Einträge kommen vom ansteuern durch das Skript, die beiden letzten vom Adapter, man sieht auch schön die Verzögerung von. 113ms
      Play.PNG

      22:01:56.068	info	javascript.1 (686) Start javascript script.js.Aktiv.ScriptBL
      22:01:56.073	info	javascript.1 (686) script.js.Aktiv.ScriptBL: registered 1 subscription and 0 schedules
      22:01:56.080	info	javascript.1 (686) script.js.Aktiv.ScriptBL: ack: false
      22:01:56.080	info	javascript.1 (686) script.js.Aktiv.ScriptBL: Wert: true
      22:01:56.193	info	javascript.1 (686) script.js.Aktiv.ScriptBL: ack: true
      22:01:56.194	info	javascript.1 (686) script.js.Aktiv.ScriptBL: Wert: true
      

      Normalerweise gibt es in einem Skript keinen Grund, dieses Flag abzufragen, deshalb ist egal wohl fast immer eine gute Wahl

      iobroker läuft unter Docker auf QNAP TS-451+
      SkriptRecovery: https://forum.iobroker.net/post/930558

      XxJooOX AlCalzoneA 2 Antworten Letzte Antwort
      1
      • F fastfoot

        @FredF sagte in DP wurde aktualisiert anerkannt ist "egal","Update","Befehl":

        Bis jemand der sich besser auskennt das bejaht, sage ich, das selbst angelegte Datenpunkte kein ack=true senden können.

        Na, ob ich mich besser auskenne sei dahingestellt. Das ack Flag kommt ja von acknowledge=Bestätigung, und das funktioniert so:

        • Ein DP wird mit einem Wert gesteuert, das ack flag steht auf false
        • Der DP ändert sich zu dem neuen Wert
        • Ein Adapter reagiert darauf und steuert die Hardware entsprechend an
        • Dann wird vom Adapter diese Ansteuerung bestätigt, d.h. er setzt das ack-Flag auf true
        • Das bedeutet mW nicht, dass die Hardware auch entsprechend reagiert hat

        Zum Spielen ein Skript, welches eine Lampe anschaltet:
        Die ersten beiden Einträge kommen vom ansteuern durch das Skript, die beiden letzten vom Adapter, man sieht auch schön die Verzögerung von. 113ms
        Play.PNG

        22:01:56.068	info	javascript.1 (686) Start javascript script.js.Aktiv.ScriptBL
        22:01:56.073	info	javascript.1 (686) script.js.Aktiv.ScriptBL: registered 1 subscription and 0 schedules
        22:01:56.080	info	javascript.1 (686) script.js.Aktiv.ScriptBL: ack: false
        22:01:56.080	info	javascript.1 (686) script.js.Aktiv.ScriptBL: Wert: true
        22:01:56.193	info	javascript.1 (686) script.js.Aktiv.ScriptBL: ack: true
        22:01:56.194	info	javascript.1 (686) script.js.Aktiv.ScriptBL: Wert: true
        

        Normalerweise gibt es in einem Skript keinen Grund, dieses Flag abzufragen, deshalb ist egal wohl fast immer eine gute Wahl

        XxJooOX Offline
        XxJooOX Offline
        XxJooO
        schrieb am zuletzt editiert von XxJooO
        #8

        @UncleSam,

        könntest Du mal kurz sagen, warum Du dann in dem anderen thread gesagt hast, dass Du "Update" für sinnvoll hältst? Kannst Du einen kurzen Anwendungsfall konstruieren? Bei dem mässigen Echo auf meine Frage könnte das vielleicht noch einige Andere interessieren...

        Vielen Dank an Alle, die bislang geantwortet haben!

        PS: Beim Rückändern meiner Scripteinstellungen ergibt sich gerade bei mir die Frage ob alias-Werte, die auf Sensoren Datenpunkte verweisen deren ack-Status übernehmen?

        ioBroker auf Intel NUC - Homematic CCU3/pivCCU auf Raspi 3B+

        paul53P 1 Antwort Letzte Antwort
        0
        • FredFF FredF

          @XxJooO sagte in DP wurde aktualisiert anerkannt ist "egal","Update","Befehl":

          Können diese ein ack=true senden?

          Bis jemand der sich besser auskennt das bejaht, sage ich, das selbst angelegte Datenpunkte kein ack=true senden können.

          UncleSamU Offline
          UncleSamU Offline
          UncleSam
          Developer
          schrieb am zuletzt editiert von
          #9

          @FredF sagte in DP wurde aktualisiert anerkannt ist "egal","Update","Befehl":

          Bis jemand der sich besser auskennt das bejaht, sage ich, das selbst angelegte Datenpunkte kein ack=true senden können.

          Blockly kenne ich leider gar nicht, aber in JavaScript kann man einfach setState() mit ack: true aufrufen (siehe Doku).

          Die Unterscheidung zwischen Befehl und Update ist sehr wichtig bei Datenpunkten aus Adaptern: Befehl kommt von ausserhalb des Adapters und Update von innerhalb.

          Beispiel:

          • Ich will eine Lampe einschalten
          • Ich schicke den Befehl "Lampe = ein"
          • Der Adapter erkennt den Befehl und schaltet die Lampe ein
          • Sobald der Adapter die Lampe erfolgreich eingeschaltet hat, schickt er das Update "Lampe = ein"
          • Erst jetzt sollte ein Skript darauf reagieren, dass die Lampe eingeschaltet wurde (es könnte ja sein, dass der Adapter nicht läuft oder die Lampe nicht eingeschaltet werden kann; dann möchte ich ja in meinem Skript die Aktion nicht ausführen)

          Bitte bei Problemen mit meinen Adaptern, Issue auf GitHub erfassen: Loxone | I2C | Luxtronik2
          ♡-lichen Dank an meine Sponsoren

          FredFF 1 Antwort Letzte Antwort
          2
          • UncleSamU UncleSam

            @FredF sagte in DP wurde aktualisiert anerkannt ist "egal","Update","Befehl":

            Bis jemand der sich besser auskennt das bejaht, sage ich, das selbst angelegte Datenpunkte kein ack=true senden können.

            Blockly kenne ich leider gar nicht, aber in JavaScript kann man einfach setState() mit ack: true aufrufen (siehe Doku).

            Die Unterscheidung zwischen Befehl und Update ist sehr wichtig bei Datenpunkten aus Adaptern: Befehl kommt von ausserhalb des Adapters und Update von innerhalb.

            Beispiel:

            • Ich will eine Lampe einschalten
            • Ich schicke den Befehl "Lampe = ein"
            • Der Adapter erkennt den Befehl und schaltet die Lampe ein
            • Sobald der Adapter die Lampe erfolgreich eingeschaltet hat, schickt er das Update "Lampe = ein"
            • Erst jetzt sollte ein Skript darauf reagieren, dass die Lampe eingeschaltet wurde (es könnte ja sein, dass der Adapter nicht läuft oder die Lampe nicht eingeschaltet werden kann; dann möchte ich ja in meinem Skript die Aktion nicht ausführen)
            FredFF Offline
            FredFF Offline
            FredF
            Most Active Forum Testing
            schrieb am zuletzt editiert von
            #10

            @UncleSam sagte in DP wurde aktualisiert anerkannt ist "egal","Update","Befehl":

            Blockly kenne ich leider gar nicht,

            Um das vielleicht rund zu machen, hier mal die JS codes der verschiedenen anerkannt Zustände eines Falls Triggers.
            0d9ed172-bf19-411a-a232-584aa60dbcb5-grafik.png

            on({id: 'default', change: "ne"}, function (obj) {
             var value = obj.state.val;
             var oldValue = obj.oldState.val;
            });
            


            on({id: 'default', change: "ne", ack: true}, function (obj) {
             var value = obj.state.val;
             var oldValue = obj.oldState.val;
            });
            


            on({id: 'default', change: "ne", ack: false}, function (obj) {
             var value = obj.state.val;
             var oldValue = obj.oldState.val;
            });
            

            1 Antwort Letzte Antwort
            0
            • XxJooOX XxJooO

              @UncleSam,

              könntest Du mal kurz sagen, warum Du dann in dem anderen thread gesagt hast, dass Du "Update" für sinnvoll hältst? Kannst Du einen kurzen Anwendungsfall konstruieren? Bei dem mässigen Echo auf meine Frage könnte das vielleicht noch einige Andere interessieren...

              Vielen Dank an Alle, die bislang geantwortet haben!

              PS: Beim Rückändern meiner Scripteinstellungen ergibt sich gerade bei mir die Frage ob alias-Werte, die auf Sensoren Datenpunkte verweisen deren ack-Status übernehmen?

              paul53P Offline
              paul53P Offline
              paul53
              schrieb am zuletzt editiert von paul53
              #11

              @XxJooO sagte:

              ob alias-Werte, die auf Sensoren Datenpunkte verweisen deren ack-Status übernehmen?

              Ja.

              @FredF sagte:

              sage ich, das selbst angelegte Datenpunkte kein ack=true senden können.

              Wenn selbst angelegte Datenpunkte durch ein (Blockly-)Skript geschrieben werden, setzt "aktualisiere" ack auf true. Oder JS:

              setState(id, wert, true); 
              

              Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
              Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

              1 Antwort Letzte Antwort
              1
              • F fastfoot

                @FredF sagte in DP wurde aktualisiert anerkannt ist "egal","Update","Befehl":

                Bis jemand der sich besser auskennt das bejaht, sage ich, das selbst angelegte Datenpunkte kein ack=true senden können.

                Na, ob ich mich besser auskenne sei dahingestellt. Das ack Flag kommt ja von acknowledge=Bestätigung, und das funktioniert so:

                • Ein DP wird mit einem Wert gesteuert, das ack flag steht auf false
                • Der DP ändert sich zu dem neuen Wert
                • Ein Adapter reagiert darauf und steuert die Hardware entsprechend an
                • Dann wird vom Adapter diese Ansteuerung bestätigt, d.h. er setzt das ack-Flag auf true
                • Das bedeutet mW nicht, dass die Hardware auch entsprechend reagiert hat

                Zum Spielen ein Skript, welches eine Lampe anschaltet:
                Die ersten beiden Einträge kommen vom ansteuern durch das Skript, die beiden letzten vom Adapter, man sieht auch schön die Verzögerung von. 113ms
                Play.PNG

                22:01:56.068	info	javascript.1 (686) Start javascript script.js.Aktiv.ScriptBL
                22:01:56.073	info	javascript.1 (686) script.js.Aktiv.ScriptBL: registered 1 subscription and 0 schedules
                22:01:56.080	info	javascript.1 (686) script.js.Aktiv.ScriptBL: ack: false
                22:01:56.080	info	javascript.1 (686) script.js.Aktiv.ScriptBL: Wert: true
                22:01:56.193	info	javascript.1 (686) script.js.Aktiv.ScriptBL: ack: true
                22:01:56.194	info	javascript.1 (686) script.js.Aktiv.ScriptBL: Wert: true
                

                Normalerweise gibt es in einem Skript keinen Grund, dieses Flag abzufragen, deshalb ist egal wohl fast immer eine gute Wahl

                AlCalzoneA Offline
                AlCalzoneA Offline
                AlCalzone
                Developer
                schrieb am zuletzt editiert von
                #12

                @fastfoot sagte in DP wurde aktualisiert anerkannt ist "egal","Update","Befehl":

                Dann wird vom Adapter diese Ansteuerung bestätigt, d.h. er setzt das ack-Flag auf true
                Das bedeutet mW nicht, dass die Hardware auch entsprechend reagiert hat

                Eigentlich ist ACK dafür gedacht, dass die Änderung erfolgt ist. Wenn einige Adapter das nicht so handhaben, ist es nicht korrekt.

                Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                paul53P F 2 Antworten Letzte Antwort
                1
                • AlCalzoneA AlCalzone

                  @fastfoot sagte in DP wurde aktualisiert anerkannt ist "egal","Update","Befehl":

                  Dann wird vom Adapter diese Ansteuerung bestätigt, d.h. er setzt das ack-Flag auf true
                  Das bedeutet mW nicht, dass die Hardware auch entsprechend reagiert hat

                  Eigentlich ist ACK dafür gedacht, dass die Änderung erfolgt ist. Wenn einige Adapter das nicht so handhaben, ist es nicht korrekt.

                  paul53P Offline
                  paul53P Offline
                  paul53
                  schrieb am zuletzt editiert von paul53
                  #13

                  @AlCalzone sagte:

                  Wenn einige Adapter das nicht so handhaben, ist es nicht korrekt.

                  Wenn es keine Rückmeldung gibt (433 MHz, IR), bleibt nichts anderes übrig.

                  Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                  Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                  AlCalzoneA 1 Antwort Letzte Antwort
                  0
                  • AlCalzoneA AlCalzone

                    @fastfoot sagte in DP wurde aktualisiert anerkannt ist "egal","Update","Befehl":

                    Dann wird vom Adapter diese Ansteuerung bestätigt, d.h. er setzt das ack-Flag auf true
                    Das bedeutet mW nicht, dass die Hardware auch entsprechend reagiert hat

                    Eigentlich ist ACK dafür gedacht, dass die Änderung erfolgt ist. Wenn einige Adapter das nicht so handhaben, ist es nicht korrekt.

                    F Offline
                    F Offline
                    fastfoot
                    schrieb am zuletzt editiert von fastfoot
                    #14

                    @AlCalzone sagte in DP wurde aktualisiert anerkannt ist "egal","Update","Befehl":

                    Eigentlich ist ACK dafür gedacht, dass die Änderung erfolgt ist. Wenn einige Adapter das nicht so handhaben, ist es nicht korrekt.

                    Mein Verständnis davon war bisher, dass ack 'nur' bedeutet, dass der Befehl an die Hardware gesendet wurde. zB im Fall der Hue Bridge oder auch FritzBox, wie sollte ein Adapter wissen ob der Befehl auch wirklich umgesetzt wurde, wenn das Polling nur alle paar Sekunden erfolgt? Ich denke zumindest dass eine Prüfung auch nicht immer möglich ist(Hat Alexa die Sprachausgabe auch wirklich gemacht?).

                    EDIT: Versuch macht klug. Die Hue Bridge zumindest gibt irgend eine Rückmeldung an den Adapter, und der wertet die auch richtig aus.

                    Lampe vom Strom -> Befehl zum Einschalten -> Adapter setzt ack=true und liefert gleichzeitig den richtigen Wert false
                    

                    iobroker läuft unter Docker auf QNAP TS-451+
                    SkriptRecovery: https://forum.iobroker.net/post/930558

                    1 Antwort Letzte Antwort
                    0
                    • paul53P paul53

                      @AlCalzone sagte:

                      Wenn einige Adapter das nicht so handhaben, ist es nicht korrekt.

                      Wenn es keine Rückmeldung gibt (433 MHz, IR), bleibt nichts anderes übrig.

                      AlCalzoneA Offline
                      AlCalzoneA Offline
                      AlCalzone
                      Developer
                      schrieb am zuletzt editiert von
                      #15

                      @paul53 sagte in DP wurde aktualisiert anerkannt ist "egal","Update","Befehl":

                      Wenn es keine Rückmeldung gibt (433 MHz, IR), bleibt nichts anderes übrig.

                      @fastfoot sagte in DP wurde aktualisiert anerkannt ist "egal","Update","Befehl":

                      wenn das Polling nur alle paar Sekunden erfolgt?

                      Stimmt natürlich. Ich bin eher in den Gefilden unterwegs, wo direkte Kommunikation erfolgt.

                      Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                      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

                      364

                      Online

                      32.6k

                      Benutzer

                      82.2k

                      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