Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Datenpunkt aktualisieren - Bug?

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Datenpunkt aktualisieren - Bug?

    This topic has been deleted. Only users with topic management privileges can see it.
    • MartinP
      MartinP @stenmic last edited by

      Beim Setzen direkt im Objektbaum tritt bei mir das Verhalten nicht auf. Setze ich da den "Bestätigt" Haken, wird der neue Wert zuerst grün, und kurz danach weiß angezeigt..

      48647b51-f603-40ba-9318-33c61e9f1e79-grafik.png

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

        @stenmic sagte in Datenpunkt aktualisieren - Bug?:

        hat der Datenpunkt anschließend den Status gesteuert bzw. ist rot.

        Sollte nicht so sein. Zeig mal bitte den generierten JavaScript-Code.

        Und: Welche Version des Adapters nutzt Du?

        paul53 S 2 Replies Last reply Reply Quote 0
        • haus-automatisierung
          haus-automatisierung Developer Most Active @warp735 last edited by

          @warp735 sagte in Datenpunkt aktualisieren - Bug?:

          Bin ich vor kurzem auch drüber gestolpert... "steure" mit einem Blockly nen wled Stripe. Datenpunkt ist auch weiß. Schau ich aber was aufgezeichnet wird, ist ack rot.

          Worüber? Das ist ja ein ganz anderes Thema, oder? Datenpunkte von anderen Adaptern sollte man ja immer nur unbestätigt setzen. Diese zu bestätigen liegt dann beim jeweiligen Adapter (in diesem Fall WLED).

          W 1 Reply Last reply Reply Quote 0
          • paul53
            paul53 @haus-automatisierung last edited by paul53

            @haus-automatisierung sagte: generierten JavaScript-Code.

            Selektiert "aktualisiere":

            setStateDelayed('Object ID', { val: true, ack: true }, parseInt(((0) || '').toString(), 10), false);
            

            Im Tab "Objekte" wird als Ergebnis "Bestätigt: false" angezeigt. Es liegt also an setStateDelayed() mit der Übergabe des Status als Objekt. Auch mit Javascript getestet.
            JS Version 8.4.2.

            EDIT: Diese Version funktioniert wie erwartet:

            setStateDelayed("0_userdata.0.Test.+15_Min", false, true, 0);
            
            haus-automatisierung 1 Reply Last reply Reply Quote 0
            • W
              warp735 @haus-automatisierung last edited by

              @haus-automatisierung sagte in Datenpunkt aktualisieren - Bug?:

              Datenpunkte von anderen Adaptern sollte man ja immer nur unbestätigt setzen

              I know... klappt ja auch. Nur weggeschrieben wird was anderes

              1 Reply Last reply Reply Quote 0
              • S
                stenmic @haus-automatisierung last edited by

                @haus-automatisierung
                v8.4.2

                steuere:

                setStateDelayed('Object ID', { val: true, ack: false }, parseInt(((0) || '').toString(), 10), false);
                

                aktualisiere:

                setStateDelayed('Object ID', { val: true, ack: true }, parseInt(((0) || '').toString(), 10), false);
                

                Noch was ist mir bei den neueren Versionen aufgefallen...
                Wenn man einen Baustein deaktiviert und ihn anschließend (irgendwann) wieder aktiviert,
                aktualisiert sich manchmal (eher häufig) die Anschicht nicht (bleibt optisch deaktiviert).

                Erst wenn ich das Skript über den Reiter oben schließe und anschließend wieder zum bearbeiten öffne, passt die Ansicht.
                Ist aber leider nicht reproduzierbar.

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

                  @martinp sagte in Datenpunkt aktualisieren - Bug?:

                  Beim Setzen direkt im Objektbaum tritt bei mir das Verhalten nicht auf. Setze ich da den "Bestätigt" Haken, wird der neue Wert zuerst grün, und kurz danach weiß angezeigt..

                  das ar ja auch nicht das Thema.
                  Es geht um den schreibe-Block.

                  Muss mal direkt nachsehen wie das jetzt bei mir nach dem letzten Update aussieht

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

                    @paul53 sagte in Datenpunkt aktualisieren - Bug?:

                    JS Version 8.4.2.

                    Danke! Daher die Frage. In der 8.4.0 habe ich das "expire" mit in den Block eingebaut und den Aufruf geändert. Gucke ich mir an.

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

                      @homoran sagte in Datenpunkt aktualisieren - Bug?:

                      Muss mal direkt nachsehen wie das jetzt bei mir nach dem letzten Update aussieht

                      Hab noch 8.3.1, da läuft alles normal

                      paul53 1 Reply Last reply Reply Quote 0
                      • paul53
                        paul53 @haus-automatisierung last edited by paul53

                        @haus-automatisierung sagte: das "expire" mit in den Block eingebaut

                        Wer braucht "expire" (einen Datenpunkt ohne Zustand nach Zeitablauf)?

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

                          @paul53 sagte in Datenpunkt aktualisieren - Bug?:

                          Wer braucht "expire" (einen Datenpunkt ohne Zustand nach Zeitablauf)?

                          Ich weiß nicht, frag mal warum das im js-controller implementiert wurde 🙂

                          mcm1957 1 Reply Last reply Reply Quote 0
                          • A
                            Andersmacher @stenmic last edited by

                            @stenmic sagte in Datenpunkt aktualisieren - Bug?:

                            Noch was ist mir bei den neueren Versionen aufgefallen...
                            Wenn man einen Baustein deaktiviert und ihn anschließend (irgendwann) wieder aktiviert,
                            aktualisiert sich manchmal (eher häufig) die Anschicht nicht (bleibt optisch deaktiviert).
                            Erst wenn ich das Skript über den Reiter oben schließe und anschließend wieder zum bearbeiten öffne, passt die Ansicht.
                            Ist aber leider nicht reproduzierbar.

                            Ist bei mir auch so.

                            1 Reply Last reply Reply Quote 0
                            • mcm1957
                              mcm1957 @haus-automatisierung last edited by

                              @haus-automatisierung said in Datenpunkt aktualisieren - Bug?:

                              @paul53 sagte in Datenpunkt aktualisieren - Bug?:

                              Wer braucht "expire" (einen Datenpunkt ohne Zustand nach Zeitablauf)?

                              Ich weiß nicht, frag mal warum das im js-controller implementiert wurde 🙂

                              Ist m.W. nach schon lange drinnen.
                              Wenn ein Datenpunkt nicht regelmäßig neu befüllt wird geht dann der Wert auf null. Könnte Sinn machen wenn man z.B. die Zisternenpumpe laufen läßt solange ein Wasserstand gemeldet wird. Kommt kein Update dann kann die Pumpe abschalten. (Wobei ich hier externe Sicherheistschalter eher empfeheln würde) . Alternativ siht man dann in der vis, dass eben kein (aktueller) Wert verfügbar ist ohne dass man den last timestamp aufwerten muss

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

                                @homoran sagte: Hab noch 8.3.1, da läuft alles normal

                                In Version 8.5.0 auch wieder.

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

                                  @mcm1957 sagte in Datenpunkt aktualisieren - Bug?:

                                  Ist m.W. nach schon lange drinnen.

                                  Daher habe ich den Wunsch (das in Blockly auch zu ermöglichen) ja direkt aufgegriffen. Ziel ist ja langfristig schon, die Funktionalität aus JS möglichst komplett in Blockly zu haben.

                                  1 Reply Last reply Reply Quote 1
                                  • B
                                    bommel_030 last edited by

                                    @haus-automatisierung sagte in Datenpunkt aktualisieren - Bug?:

                                    Daher habe ich den Wunsch (das in Blockly auch zu ermöglichen) ja direkt aufgegriffen.

                                    Danke nochmals dafür. Durch den Wechsel von NibeUplink zu MyUlink habe ich jetzt mal versucht den Baustein anzuwenden. Um die Ventilatorgeschwindigkeit zu steuern muss ich ein Datenpunkt mit einem JSON beschreiben. Damit das nach der Verarbeitung nicht mehr drinsteht hab ich ihm ein "expire" mitgegeben. Ich hatte es so verstanden, dass dadurch der Wert des Datenpunktes nach der mitgegeben Zeit vom übergebenen JSON zu "null" wechselt, aber das macht er hier leider nicht. Ist das ein Bug oder habe ich das falsch verstanden? Blockly und JavaSrcipt-Pendant siehe unten:
                                    88d9c948-e3d8-4704-ab06-8abe1b91e62f-image.png

                                    // Ventilation
                                    on({ id: [].concat(['0_userdata.0.Datenpunkte.Heizung.Set.Ventilatorgeschwindigkeit']), change: 'ne' }, async (obj) => {
                                      let value = obj.state.val;
                                      let oldValue = obj.oldState.val;
                                      setStateDelayed('myuplink.0.Birkholz.Fontane.setData', { val: (['{   "47260": "',(obj.state ? obj.state.val : ''),'" }'].join('')), ack: false, expire: 30 }, parseInt(((0) || '').toString(), 10), false);
                                    });
                                    
                                    haus-automatisierung 1 Reply Last reply Reply Quote 0
                                    • haus-automatisierung
                                      haus-automatisierung Developer Most Active @bommel_030 last edited by

                                      @bommel_030 sagte in Datenpunkt aktualisieren - Bug?:

                                      Ich hatte es so verstanden, dass dadurch der Wert des Datenpunktes nach der mitgegeben Zeit vom übergebenen JSON zu "null" wechselt

                                      Das ist erstmal richtig - außer Du steuerst damit einen Datenpunkt an, welcher danach bestätigt wird (dann wird er ja wieder neu geschrieben, ohne expire). In dem Fall verstehe ich die Verwendung von expire dann nicht.

                                      B 1 Reply Last reply Reply Quote 1
                                      • B
                                        bommel_030 @haus-automatisierung last edited by

                                        @haus-automatisierung sagte in Datenpunkt aktualisieren - Bug?:

                                        In dem Fall verstehe ich die Verwendung von expire dann nicht.

                                        In diesem Fall reiner Spieltrieb... Da du es (auch auf meinen Wunsch) eingebaut hast wollte ich das natürlich testen und Feedback geben. Danke für die Erklärung, klingt logisch. Sobald ich die Heizung umgemodelt hab mach ich mich mal an die GPS Daten für die das "aktualisiere" mit "expire" eigentlich gedacht war.

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

                                        Support us

                                        ioBroker
                                        Community Adapters
                                        Donate

                                        740
                                        Online

                                        32.0k
                                        Users

                                        80.4k
                                        Topics

                                        1.3m
                                        Posts

                                        9
                                        20
                                        776
                                        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