Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. [gelöst] Wer hat Inhalt eines Datenpunkt geändert

    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

    [gelöst] Wer hat Inhalt eines Datenpunkt geändert

    This topic has been deleted. Only users with topic management privileges can see it.
    • O
      ostseeskipper last edited by ostseeskipper

      Hallo Zusammen,

      gibt es die Möglichkeit zu ermitteln durch wen oder was der letzte Wert eines Datenpunktes geändert wurde.
      z.B. durch Mensch über einen Button betätigt oder ein Script das bei bestimmten Triggern einen Datenpunkt verändert?

      /*
      Bedingungen für Warmwasserbereitung ein:
      Wenn genug PV Leistung,
          Was ist genug PV Leistung?
          -> Wenn ins Netz mit Leistung x eingespeist wird,
          -> Wenn in Speicher geladen wird
              -> ABER nur wenn Speicher > xx % SOC hat
       
      Oder es soll/muss ab Mittag wenn Temperatur im Warmwasserspeicher <  yy °C
       
      Alternativ: Mensch will jetzt haben und über VIS oder Taster eingeschaltet? (Wie das heraus bekommen?)
       
      vice versa Warmwasserbereitung ausschalten:
      !! Gefahr Automatik schaltet aus obwohl Mensch eingeschaltet hat (Wie lösen?)
      */
      

      Kann mir jemand dafür einen Denkanstoß wie man das elegant umsetzen könnte.
      Hätte an Datenpunktflags gedacht nur wie kann man unterscheiden ob Mensch oder Script einen Datenpunkt verändert hat?

      Viele Grüsse von der Küste

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

        @ostseeskipper
        In Blockly kannst Du mit "Ursprung" erkennen, ob eine Änderung durch ein Script oder einen Adapter ausgelöst wurde.

        9ca48208-9f49-4699-8d33-b9651252f0a2-grafik.png
        Oder aber mit JS:

        getState('0_userdata.0.Test.test_bool').from
        
        O 2 Replies Last reply Reply Quote 1
        • O
          ostseeskipper @Codierknecht last edited by

          @codierknecht
          Danke. Ist ein Vis Button = Ursprung "Adapter" ?

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

            @codierknecht

            getState('0_userdata.0.Test.test_bool').from
            

            Egal ob ich über vis oder objekte den Inhalt des Datenpunkts ändere bringt mir .from nur in welchem Adapter der Datenpunkt zu Hause ist.

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

              @ostseeskipper

              Egal ob ich über vis oder objekte den Inhalt des Datenpunkts ändere bringt mir .from nur in welchem Adapter der Datenpunkt zu Hause ist

              Natürlich - Du kannst lediglich erkennen, ob ein Script den Datenpunkt geändert hat oder der Adapter.

              War ja so gefordert

              wie kann man unterscheiden ob Mensch oder Script einen Datenpunkt verändert hat

              Ob der Mensch das über Vis oder im Objektbaum geändert hat, lässt sich nicht herausbekommen.
              Das Gleiche gilt natürlich für irgendwelche Taster, die den Wert des Objektes ändern.

              Aber ob der Mensch jetzt über Vis oder Taster ausgelöst hat, wäre ja egal.
              Wenn der Ursprung kein Script ist, hat ein Mensch ausgelöst - wie auch immer.

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

                @codierknecht

                ok, verstehe, wenn also system.adapter.javascript.0 zurück kommt hat ein Script das getan.

                Verstehe nur nicht warum der Homematic-Taster der per Trigger und JS ausgewertet wird und den Datenpunkt ändert nicht auch mit system.adapter.javascript.0 kommt, sondern system.adapter.modbus.3 da steht.

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

                  @ostseeskipper sagte: nicht auch mit system.adapter.javascript.0 kommt, sondern system.adapter.modbus.3 da steht.

                  Wenn per Skript an einen Datenpunkt in "modbus.3" gesendet wird, kommt erst "system.adapter.javascript.0" und wird anschließend von "system.adapter.modbus.3" bestätigt.

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

                    @paul53
                    dann bringt mir das nichts 😢 , da ja erst später wenn sozusagen automatische bedingungen eintreten geprüft werden soll ob "Mensch" nicht was anderes wollte.
                    👰 Frau will baden gehen, drückt knopf.
                    PV Anlage liefert keinen Strom mehr und schaltet Warmwasserbereitung wieder aus.😱
                    Dann aber Stimmung = ☠

                    O 1 Reply Last reply Reply Quote 0
                    • O
                      ostseeskipper @ostseeskipper last edited by

                      @ostseeskipper
                      Ich hab das jetzt so gelöst, das jedes Event(Script) das diesen Datenpunkt ändert auch einen zweiten Datenpunkt beschreibt und drin steht wer geändert hat.

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

                      Support us

                      ioBroker
                      Community Adapters
                      Donate

                      807
                      Online

                      31.8k
                      Users

                      80.0k
                      Topics

                      1.3m
                      Posts

                      3
                      9
                      275
                      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