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. ioBroker Allgemein
  4. Ack-State abfragen/lesen

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    11
    1
    74

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    554

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.7k

Ack-State abfragen/lesen

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
statesscriptiobroker
24 Beiträge 4 Kommentatoren 4.4k 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.
  • paul53P paul53

    @saeft_2003 sagte:

    Weißt du ob das bei jedem DP geht?

    Ja, jeder Datenpunkt hat "ack". Was möchtest Du damit machen / erreichen ?

    S Offline
    S Offline
    saeft_2003
    Most Active
    schrieb am zuletzt editiert von
    #9

    @paul53

    Mir geht es Hauptsächlich um meine Steuerung von meinen Magnetventilen für die Gartenbewässerung. Diese steuere ich mit einen wemos auf dem tasmota läuft.

    Ich hätte eigentlich gerne das wenn ich den Befehl false gebe, dass dann etwas zurück kommt z.B. false=bestätigt.

    Weil angenommen der wemos ist nicht mehr im wlan dann läuft meine Bewässerung als weiter und weiter...

    paul53P 1 Antwort Letzte Antwort
    0
    • S saeft_2003

      @paul53

      Mir geht es Hauptsächlich um meine Steuerung von meinen Magnetventilen für die Gartenbewässerung. Diese steuere ich mit einen wemos auf dem tasmota läuft.

      Ich hätte eigentlich gerne das wenn ich den Befehl false gebe, dass dann etwas zurück kommt z.B. false=bestätigt.

      Weil angenommen der wemos ist nicht mehr im wlan dann läuft meine Bewässerung als weiter und weiter...

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

      @saeft_2003 sagte:

      der wemos ist nicht mehr im wlan dann läuft meine Bewässerung als weiter und weiter...

      Wie willst Du auf diese Situation reagieren ?

      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

      S 1 Antwort Letzte Antwort
      0
      • paul53P paul53

        @saeft_2003 sagte:

        der wemos ist nicht mehr im wlan dann läuft meine Bewässerung als weiter und weiter...

        Wie willst Du auf diese Situation reagieren ?

        S Offline
        S Offline
        saeft_2003
        Most Active
        schrieb am zuletzt editiert von
        #11

        @paul53

        Das eine pushnachricht in meiner VIS erscheint und ich eine telegram Nachricht bekomme. Gesteuert über ein Skript...

        paul53P 1 Antwort Letzte Antwort
        0
        • S saeft_2003

          @paul53

          Das eine pushnachricht in meiner VIS erscheint und ich eine telegram Nachricht bekomme. Gesteuert über ein Skript...

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

          @saeft_2003 sagte:

          Nachricht bekomme. Gesteuert über ein Skript...

          Blockly_temp.JPG

          <xml xmlns="http://www.w3.org/1999/xhtml">
           <variables>
             <variable type="" id="V*8SecbOYtdYL9J2Van6">soll</variable>
             <variable type="undefined" id="timeout">timeout</variable>
           </variables>
           <block type="on_ext" id="T+m`])pthE4_/)0c*(0q" x="63" y="13">
             <mutation items="1"></mutation>
             <field name="CONDITION">any</field>
             <field name="ACK_CONDITION"></field>
             <value name="OID0">
               <shadow type="field_oid" id="#Xdo7tmN|+t~RtIf=37P">
                 <field name="oid">default</field>
               </shadow>
             </value>
             <statement name="STATEMENT">
               <block type="controls_if" id="-$8{Ruml{`Qoi-^0g2D`">
                 <mutation else="1"></mutation>
                 <value name="IF0">
                   <block type="on_source" id="gNOVaU5R67SYrH=kMQDy">
                     <field name="ATTR">state.ack</field>
                   </block>
                 </value>
                 <statement name="DO0">
                   <block type="controls_if" id="axAh.K[$bN8D}G:qJEk3">
                     <value name="IF0">
                       <block type="logic_compare" id="*1Iuc|oaj(69[!}`/K_I">
                         <field name="OP">EQ</field>
                         <value name="A">
                           <block type="variables_get" id="j{~6nAgws8dt;HIcCyZ0">
                             <field name="VAR" id="V*8SecbOYtdYL9J2Van6" variabletype="">soll</field>
                           </block>
                         </value>
                         <value name="B">
                           <block type="on_source" id="n;uB,)b1K`MC.K$[[#0z">
                             <field name="ATTR">state.val</field>
                           </block>
                         </value>
                       </block>
                     </value>
                     <statement name="DO0">
                       <block type="timeouts_cleartimeout" id="#H91=^8g1qS.DR!uKi_z">
                         <field name="NAME">timeout</field>
                       </block>
                     </statement>
                   </block>
                 </statement>
                 <statement name="ELSE">
                   <block type="controls_if" id="hx_UgF=#TXr$#.]3kZn-">
                     <value name="IF0">
                       <block type="logic_compare" id="cqIWn@pqC}p5RE[qG@aM">
                         <field name="OP">NEQ</field>
                         <value name="A">
                           <block type="on_source" id="1Js7~v99vM2NE![EK=uk">
                             <field name="ATTR">state.val</field>
                           </block>
                         </value>
                         <value name="B">
                           <block type="on_source" id="8gh(8~j*:r!f{a);P%!n">
                             <field name="ATTR">oldState.val</field>
                           </block>
                         </value>
                       </block>
                     </value>
                     <statement name="DO0">
                       <block type="variables_set" id="JF1d5qm(@kADj.U:Y_7w">
                         <field name="VAR" id="V*8SecbOYtdYL9J2Van6" variabletype="">soll</field>
                         <value name="VALUE">
                           <block type="on_source" id="]]O{h!-K=v+bkT[A__Tn">
                             <field name="ATTR">state.val</field>
                           </block>
                         </value>
                         <next>
                           <block type="timeouts_settimeout" id="9,8Pim2S3B`0e{!m#wXA">
                             <field name="NAME">timeout</field>
                             <field name="DELAY">2</field>
                             <field name="UNIT">sec</field>
                             <statement name="STATEMENT">
                               <block type="comment" id="Igmu@H4dny_-b83dcQ,D">
                                 <field name="COMMENT">Nachricht: Keine Bestätigung</field>
                               </block>
                             </statement>
                           </block>
                         </next>
                       </block>
                     </statement>
                   </block>
                 </statement>
               </block>
             </statement>
           </block>
          </xml>
          

          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

          S 1 Antwort Letzte Antwort
          2
          • paul53P paul53

            @saeft_2003 sagte:

            Nachricht bekomme. Gesteuert über ein Skript...

            Blockly_temp.JPG

            <xml xmlns="http://www.w3.org/1999/xhtml">
             <variables>
               <variable type="" id="V*8SecbOYtdYL9J2Van6">soll</variable>
               <variable type="undefined" id="timeout">timeout</variable>
             </variables>
             <block type="on_ext" id="T+m`])pthE4_/)0c*(0q" x="63" y="13">
               <mutation items="1"></mutation>
               <field name="CONDITION">any</field>
               <field name="ACK_CONDITION"></field>
               <value name="OID0">
                 <shadow type="field_oid" id="#Xdo7tmN|+t~RtIf=37P">
                   <field name="oid">default</field>
                 </shadow>
               </value>
               <statement name="STATEMENT">
                 <block type="controls_if" id="-$8{Ruml{`Qoi-^0g2D`">
                   <mutation else="1"></mutation>
                   <value name="IF0">
                     <block type="on_source" id="gNOVaU5R67SYrH=kMQDy">
                       <field name="ATTR">state.ack</field>
                     </block>
                   </value>
                   <statement name="DO0">
                     <block type="controls_if" id="axAh.K[$bN8D}G:qJEk3">
                       <value name="IF0">
                         <block type="logic_compare" id="*1Iuc|oaj(69[!}`/K_I">
                           <field name="OP">EQ</field>
                           <value name="A">
                             <block type="variables_get" id="j{~6nAgws8dt;HIcCyZ0">
                               <field name="VAR" id="V*8SecbOYtdYL9J2Van6" variabletype="">soll</field>
                             </block>
                           </value>
                           <value name="B">
                             <block type="on_source" id="n;uB,)b1K`MC.K$[[#0z">
                               <field name="ATTR">state.val</field>
                             </block>
                           </value>
                         </block>
                       </value>
                       <statement name="DO0">
                         <block type="timeouts_cleartimeout" id="#H91=^8g1qS.DR!uKi_z">
                           <field name="NAME">timeout</field>
                         </block>
                       </statement>
                     </block>
                   </statement>
                   <statement name="ELSE">
                     <block type="controls_if" id="hx_UgF=#TXr$#.]3kZn-">
                       <value name="IF0">
                         <block type="logic_compare" id="cqIWn@pqC}p5RE[qG@aM">
                           <field name="OP">NEQ</field>
                           <value name="A">
                             <block type="on_source" id="1Js7~v99vM2NE![EK=uk">
                               <field name="ATTR">state.val</field>
                             </block>
                           </value>
                           <value name="B">
                             <block type="on_source" id="8gh(8~j*:r!f{a);P%!n">
                               <field name="ATTR">oldState.val</field>
                             </block>
                           </value>
                         </block>
                       </value>
                       <statement name="DO0">
                         <block type="variables_set" id="JF1d5qm(@kADj.U:Y_7w">
                           <field name="VAR" id="V*8SecbOYtdYL9J2Van6" variabletype="">soll</field>
                           <value name="VALUE">
                             <block type="on_source" id="]]O{h!-K=v+bkT[A__Tn">
                               <field name="ATTR">state.val</field>
                             </block>
                           </value>
                           <next>
                             <block type="timeouts_settimeout" id="9,8Pim2S3B`0e{!m#wXA">
                               <field name="NAME">timeout</field>
                               <field name="DELAY">2</field>
                               <field name="UNIT">sec</field>
                               <statement name="STATEMENT">
                                 <block type="comment" id="Igmu@H4dny_-b83dcQ,D">
                                   <field name="COMMENT">Nachricht: Keine Bestätigung</field>
                                 </block>
                               </statement>
                             </block>
                           </next>
                         </block>
                       </statement>
                     </block>
                   </statement>
                 </block>
               </statement>
             </block>
            </xml>
            

            S Offline
            S Offline
            saeft_2003
            Most Active
            schrieb am zuletzt editiert von
            #13

            @paul53

            Vielen Dank für das Blockly. Ich habe jetzt zum Test als Trigger power von einem shelly mit tasmota (Licht Esstisch) angegeben. Muss ich sonst noch etwas im Skript anpassen?

            Wenn ich jetzt das Licht ein oder aus schalte bekomme ich immer die Nachricht über Telegram „Licht Esstisch nicht bestätigt“ obwohl das Licht erfolgreich geschalten wird.

            61B17BD9-9165-4BCB-91E8-16D8D0F2BE18.jpeg

            paul53P htreckslerH 2 Antworten Letzte Antwort
            0
            • S saeft_2003

              @paul53

              Vielen Dank für das Blockly. Ich habe jetzt zum Test als Trigger power von einem shelly mit tasmota (Licht Esstisch) angegeben. Muss ich sonst noch etwas im Skript anpassen?

              Wenn ich jetzt das Licht ein oder aus schalte bekomme ich immer die Nachricht über Telegram „Licht Esstisch nicht bestätigt“ obwohl das Licht erfolgreich geschalten wird.

              61B17BD9-9165-4BCB-91E8-16D8D0F2BE18.jpeg

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

              @saeft_2003 sagte:

              bekomme ich immer die Nachricht über Telegram „Licht Esstisch nicht bestätigt“ obwohl das Licht erfolgreich geschalten wird.

              Es muss das timeout gestoppt werden, das zur Verzögerung der Nachricht verwendet wird (timeout vs. timeout2).

              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

              S 2 Antworten Letzte Antwort
              1
              • paul53P paul53

                @saeft_2003 sagte:

                bekomme ich immer die Nachricht über Telegram „Licht Esstisch nicht bestätigt“ obwohl das Licht erfolgreich geschalten wird.

                Es muss das timeout gestoppt werden, das zur Verzögerung der Nachricht verwendet wird (timeout vs. timeout2).

                S Offline
                S Offline
                saeft_2003
                Most Active
                schrieb am zuletzt editiert von
                #15

                @paul53

                Danke jetzt geht es!

                1 Antwort Letzte Antwort
                0
                • paul53P paul53

                  @saeft_2003 sagte:

                  bekomme ich immer die Nachricht über Telegram „Licht Esstisch nicht bestätigt“ obwohl das Licht erfolgreich geschalten wird.

                  Es muss das timeout gestoppt werden, das zur Verzögerung der Nachricht verwendet wird (timeout vs. timeout2).

                  S Offline
                  S Offline
                  saeft_2003
                  Most Active
                  schrieb am zuletzt editiert von
                  #16

                  @paul53

                  Ich hab noch ein paar Fragen. Wo finde ich links in der Blockauswahl z.B. den Block Wert?

                  Dieser sieht aus wie eine Variable, ist dort aber nicht zu finden. Nur soll ist wie es aussieht eine „normale“ Variable.

                  Bezieht sich dann z.B. der Wert immer auf die Objekt ID von dem darüber stehenden Trigger?

                  Das frage ich deshalb weil ich mehrere Abfragen in einem Skript haben möchte.

                  paul53P 1 Antwort Letzte Antwort
                  0
                  • S saeft_2003

                    @paul53

                    Ich hab noch ein paar Fragen. Wo finde ich links in der Blockauswahl z.B. den Block Wert?

                    Dieser sieht aus wie eine Variable, ist dort aber nicht zu finden. Nur soll ist wie es aussieht eine „normale“ Variable.

                    Bezieht sich dann z.B. der Wert immer auf die Objekt ID von dem darüber stehenden Trigger?

                    Das frage ich deshalb weil ich mehrere Abfragen in einem Skript haben möchte.

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

                    @saeft_2003 sagte:

                    Wo finde ich links in der Blockauswahl z.B. den Block Wert?

                    Unter "Trigger":

                    Blockly_DP_Props.JPG

                    @saeft_2003 sagte in Ack-State abfragen/lesen:

                    Bezieht sich dann z.B. der Wert immer auf die Objekt ID von dem darüber stehenden Trigger?

                    Ja.

                    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

                    S 1 Antwort Letzte Antwort
                    1
                    • paul53P paul53

                      @saeft_2003 sagte:

                      Wo finde ich links in der Blockauswahl z.B. den Block Wert?

                      Unter "Trigger":

                      Blockly_DP_Props.JPG

                      @saeft_2003 sagte in Ack-State abfragen/lesen:

                      Bezieht sich dann z.B. der Wert immer auf die Objekt ID von dem darüber stehenden Trigger?

                      Ja.

                      S Offline
                      S Offline
                      saeft_2003
                      Most Active
                      schrieb am zuletzt editiert von
                      #18

                      @paul53

                      Wirklich vielen Dank du hast mir bei dem Thema sehr weiter geholfen. :+1:

                      Eine letzte Frage habe ich noch und zwar messe ich den Füllstand meiner Zisterne per Ultraschall, hier kommt alle 60 Sek ein "neuer" Wert. Man könnte doch mit diesem Skript auch relativ "leicht" prüfen ob dies auch geschieht?

                      Leider bin ich mir nicht sicher wie ich es genau anpassen müsste...

                      paul53P 1 Antwort Letzte Antwort
                      0
                      • S saeft_2003

                        @paul53

                        Wirklich vielen Dank du hast mir bei dem Thema sehr weiter geholfen. :+1:

                        Eine letzte Frage habe ich noch und zwar messe ich den Füllstand meiner Zisterne per Ultraschall, hier kommt alle 60 Sek ein "neuer" Wert. Man könnte doch mit diesem Skript auch relativ "leicht" prüfen ob dies auch geschieht?

                        Leider bin ich mir nicht sicher wie ich es genau anpassen müsste...

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

                        @saeft_2003 sagte:

                        hier kommt alle 60 Sek ein "neuer" Wert

                        Blockly_temp.JPG

                        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

                        S 1 Antwort Letzte Antwort
                        1
                        • paul53P paul53

                          @saeft_2003 sagte:

                          hier kommt alle 60 Sek ein "neuer" Wert

                          Blockly_temp.JPG

                          S Offline
                          S Offline
                          saeft_2003
                          Most Active
                          schrieb am zuletzt editiert von
                          #20

                          @paul53

                          Danke! :blush: :+1:

                          1 Antwort Letzte Antwort
                          0
                          • S saeft_2003

                            @paul53

                            Vielen Dank für das Blockly. Ich habe jetzt zum Test als Trigger power von einem shelly mit tasmota (Licht Esstisch) angegeben. Muss ich sonst noch etwas im Skript anpassen?

                            Wenn ich jetzt das Licht ein oder aus schalte bekomme ich immer die Nachricht über Telegram „Licht Esstisch nicht bestätigt“ obwohl das Licht erfolgreich geschalten wird.

                            61B17BD9-9165-4BCB-91E8-16D8D0F2BE18.jpeg

                            htreckslerH Offline
                            htreckslerH Offline
                            htrecksler
                            Forum Testing
                            schrieb am zuletzt editiert von
                            #21

                            @saeft_2003 da mich das Script als Vorlage sehr interessiert, könntest Du es vielleicht als Javascript exportieren und hier einstellen?
                            Ich nutze kein Blockly und verstehe auch nicht wirklich wie man das nachstellen könnte um ein Javascript zu erhalten. Das wäre super...Danke

                            Gruss Hermann

                            ioBroker auf Proxmox (Debian) auf IntelNuc als Produktivsystem

                            S paul53P 2 Antworten Letzte Antwort
                            0
                            • htreckslerH htrecksler

                              @saeft_2003 da mich das Script als Vorlage sehr interessiert, könntest Du es vielleicht als Javascript exportieren und hier einstellen?
                              Ich nutze kein Blockly und verstehe auch nicht wirklich wie man das nachstellen könnte um ein Javascript zu erhalten. Das wäre super...Danke

                              S Offline
                              S Offline
                              saeft_2003
                              Most Active
                              schrieb am zuletzt editiert von
                              #22

                              @htrecksler

                              Paul53 und ich haben über zwei blocklys gesprochen, welches willst du als js?

                              1 Antwort Letzte Antwort
                              0
                              • htreckslerH htrecksler

                                @saeft_2003 da mich das Script als Vorlage sehr interessiert, könntest Du es vielleicht als Javascript exportieren und hier einstellen?
                                Ich nutze kein Blockly und verstehe auch nicht wirklich wie man das nachstellen könnte um ein Javascript zu erhalten. Das wäre super...Danke

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

                                @htrecksler sagte:

                                als Javascript

                                var timer, soll;
                                
                                on({id: '...'}, function(dp) { // triggert bei jeder Aktualisierung
                                    if(!dp.state.ack) { // Befehl
                                        if(dp.state.val != dp.oldState.val) { // Wertänderung
                                            soll = dp.state.val;
                                            timer = setTimeout(function() {
                                                // Nachricht: Keine Bestätigung
                                            }, 1000);
                                        }
                                    } else { // bestätigt
                                        if(dp.state.val == soll && timer) clearTimeout(timer);
                                    }
                                });
                                

                                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

                                htreckslerH 1 Antwort Letzte Antwort
                                0
                                • paul53P paul53

                                  @htrecksler sagte:

                                  als Javascript

                                  var timer, soll;
                                  
                                  on({id: '...'}, function(dp) { // triggert bei jeder Aktualisierung
                                      if(!dp.state.ack) { // Befehl
                                          if(dp.state.val != dp.oldState.val) { // Wertänderung
                                              soll = dp.state.val;
                                              timer = setTimeout(function() {
                                                  // Nachricht: Keine Bestätigung
                                              }, 1000);
                                          }
                                      } else { // bestätigt
                                          if(dp.state.val == soll && timer) clearTimeout(timer);
                                      }
                                  });
                                  
                                  htreckslerH Offline
                                  htreckslerH Offline
                                  htrecksler
                                  Forum Testing
                                  schrieb am zuletzt editiert von
                                  #24

                                  @paul53 genau das...Danke schön :+1:

                                  Gruss Hermann

                                  ioBroker auf Proxmox (Debian) auf IntelNuc als Produktivsystem

                                  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
                                  FAQ Cloud / IOT
                                  HowTo: Node.js-Update
                                  HowTo: Backup/Restore
                                  Downloads
                                  BLOG

                                  356

                                  Online

                                  32.5k

                                  Benutzer

                                  81.8k

                                  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