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. ["GELÖST"] Variable über Funktion erstellen?

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.5k

["GELÖST"] Variable über Funktion erstellen?

Geplant Angeheftet Gesperrt Verschoben Blockly
blocklyjavascript
16 Beiträge 3 Kommentatoren 1.1k Aufrufe 2 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.
  • NewpicselN Newpicsel

    Moin @oliverio

    So jetzt auch hier…

    Genau ich arbeite mit einer Array 👍
    Ich kann in Blockly theoretisch auch die Array triggern, allerdings ist es meines wissen nicht ohne weiteres möglich den Ursprung zu ermitteln (also was genau geändert wurde) ich könnte sie vergleichen aber all dass ist wohl eher unötig viel auffand…

    Im Grunde geht es ja auch nicht darum, die Array zu überwachen, sondern die Objekte, die daraus erstellt werden, damit ich bei einer manuellen Änderung eben darauf reagieren kann.
    Eine Array zu überwachen wäre der Weg, wenn ich eine aus den IDs der Objekte die ich anlege erstellen würde, aber ich müsste wie gesagt relativ simple ermitteln können, welche ObjektID denn tatsächlich nun der Auslöser war.

    In Blocky ist es meines Wissens nur möglich ObjektIDs zu triggern, hier können auch mehrere objektIDs in einem Trigger hinterlegt werden.
    Da ich die ObjektIDs aber noch nicht habe, hab ich gehofft hier eine Liste (Array oder was auch immer) zu erstellen, die eben den trigger so speist als würden alle IDs anliegen und überwachen, hier gibt es dann die Funktion des triggers auszugeben was oder welche ID ihn ausgelöst hat.

    Hierzu kann ich leider gar nichts zeigen, weil es noch nichts gibt, ich suche nach Ideen für eine Methode oder Möglichkeiten, die ich wahrscheinlich aktuell überhaupt nicht auf dem Schirm habe oder eben nicht kenne.
    Wie ich das aktuell gelöst habe, habe ich beschrieben, hier ein Bild oder Code von 15 objektIDs einzufügen, hilft glaub ich nicht wirklich 😅

    Die IDs oder die Anzahl derer ändert sich nicht täglich, es ist aber durchaus möglich, dass sich diese ändern bzw. welche hinzukommen.
    Das blockly arbeitet diese weiterhin im Verlauf ab als würde es quasi zum ersten Mal starten.
    Wenn ich es also über eine "Liste" machen würde, würde oder könnte sich diese im Verlauf ändern, was natürlich mit berücksichtigt werden muss.

    Ich lege also für werte aus einer Array Objekte in iobroker an, wenn sich die Array ändert, aktualisiert das Blockly die Werte dessen Objekte, und oder legt neue Objekte an.

    Alles damit diese schön in den Objekten abgelesen und weiterverarbeitet werden können, z.B. für eine VIS, die Werte aber auch bequem über diese Objekte manuell geändert werden können (welche dann natürlich übermittelt werden), weshalb der trigger auf diese IDs nötig ist.

    Ich hoffe so war es etwas verständlicher 😅

    NewpicselN Offline
    NewpicselN Offline
    Newpicsel
    schrieb am zuletzt editiert von
    #4

    Oder aber, was meine ursprüngliche Idee war:

    Mittels einer Funktion variablen zu erstellen wenn diese benötigt wird, bei denen ich dann direkt den Namen und den "Inhalt" (die zu überwachende ObjektID angeben kann.

    Allerdings müsste ich all die erstellten variablen auch wieder als ObjektID in den trigger bekommen, was hier wohl die größte Herausforderung darstellen würde.

    paul53P 1 Antwort Letzte Antwort
    0
    • NewpicselN Newpicsel

      Oder aber, was meine ursprüngliche Idee war:

      Mittels einer Funktion variablen zu erstellen wenn diese benötigt wird, bei denen ich dann direkt den Namen und den "Inhalt" (die zu überwachende ObjektID angeben kann.

      Allerdings müsste ich all die erstellten variablen auch wieder als ObjektID in den trigger bekommen, was hier wohl die größte Herausforderung darstellen würde.

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

      @newpicsel sagte: wieder als ObjektID in den trigger bekommen

      Da ich annehme, dass die Datenpunkte in einer bestimmten ID-Struktur vorliegen, kann man einen RegExp zum Triggern verwenden. Ein solcher Trigger reagiert auch auf Datenpunkte, die zum Zeitpunkt des Skriptstarts noch nicht vorhanden waren.

      @newpicsel sagte in Variable variablen! Variable über Funktion erstellen?:

      welche ObjektID denn tatsächlich nun der Auslöser war.

      Das kann per Objekt ID im Trigger abgefragt werden.

      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

      NewpicselN 1 Antwort Letzte Antwort
      1
      • paul53P paul53

        @newpicsel sagte: wieder als ObjektID in den trigger bekommen

        Da ich annehme, dass die Datenpunkte in einer bestimmten ID-Struktur vorliegen, kann man einen RegExp zum Triggern verwenden. Ein solcher Trigger reagiert auch auf Datenpunkte, die zum Zeitpunkt des Skriptstarts noch nicht vorhanden waren.

        @newpicsel sagte in Variable variablen! Variable über Funktion erstellen?:

        welche ObjektID denn tatsächlich nun der Auslöser war.

        Das kann per Objekt ID im Trigger abgefragt werden.

        NewpicselN Offline
        NewpicselN Offline
        Newpicsel
        schrieb am zuletzt editiert von Newpicsel
        #6

        @paul53 said in Variable variablen! Variable über Funktion erstellen?:

        Da ich annehme, dass die Datenpunkte in einer bestimmten ID-Struktur vorliegen, kann man einen RegExp zum Triggern verwenden. Ein solcher Trigger reagiert auch auf Datenpunkte, die zum Zeitpunkt des Skriptstarts noch nicht vorhanden waren.

        Ok, sehr interessant, dass schaue ich mir definitiv an! Vielen Dank 👍

        @newpicsel sagte in Variable variablen! Variable über Funktion erstellen?:

        welche ObjektID denn tatsächlich nun der Auslöser war.

        Das kann per Objekt ID im Trigger abgefragt werden.

        Auch wenn ich im trigger die objektID von z.B. einer JSON Liste, die ObjektIDs enthält angebe?
        Ich wüsste nicht, wie ich sonst eine solche Liste dem trigger zuweisen könnte!? 😅

        EDIT: Oder meinst in Verbindung mit dem RegExp?
        Damit kenne ich mich nicht aus, aber schaue ich mir wie gesagt gleich mal genauer an…

        paul53P 1 Antwort Letzte Antwort
        0
        • NewpicselN Newpicsel

          @paul53 said in Variable variablen! Variable über Funktion erstellen?:

          Da ich annehme, dass die Datenpunkte in einer bestimmten ID-Struktur vorliegen, kann man einen RegExp zum Triggern verwenden. Ein solcher Trigger reagiert auch auf Datenpunkte, die zum Zeitpunkt des Skriptstarts noch nicht vorhanden waren.

          Ok, sehr interessant, dass schaue ich mir definitiv an! Vielen Dank 👍

          @newpicsel sagte in Variable variablen! Variable über Funktion erstellen?:

          welche ObjektID denn tatsächlich nun der Auslöser war.

          Das kann per Objekt ID im Trigger abgefragt werden.

          Auch wenn ich im trigger die objektID von z.B. einer JSON Liste, die ObjektIDs enthält angebe?
          Ich wüsste nicht, wie ich sonst eine solche Liste dem trigger zuweisen könnte!? 😅

          EDIT: Oder meinst in Verbindung mit dem RegExp?
          Damit kenne ich mich nicht aus, aber schaue ich mir wie gesagt gleich mal genauer an…

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

          @newpicsel
          Objekt ID enthält immer die ID des gerade auslösenden Datenpunktes, egal ob an den Trigger eine einzelne ID, eine Liste von IDs oder ein RegExp übergeben wurde.

          @newpicsel sagte in Variable variablen! Variable über Funktion erstellen?:

          JSON Liste, die ObjektIDs enthält angebe?

          Zeigen!

          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

          NewpicselN 2 Antworten Letzte Antwort
          0
          • paul53P paul53

            @newpicsel
            Objekt ID enthält immer die ID des gerade auslösenden Datenpunktes, egal ob an den Trigger eine einzelne ID, eine Liste von IDs oder ein RegExp übergeben wurde.

            @newpicsel sagte in Variable variablen! Variable über Funktion erstellen?:

            JSON Liste, die ObjektIDs enthält angebe?

            Zeigen!

            NewpicselN Offline
            NewpicselN Offline
            Newpicsel
            schrieb am zuletzt editiert von
            #8

            @paul53

            Ach ich kann auch direkt eine Liste an den trigger setzen? 😂👍 hatte ich ehrlich gesagt nie getestet.
            Ich hatte angenommen, dass dieser immer direkt eine ID benötigt.

            Vielen vielen Dank 🙏

            paul53P 1 Antwort Letzte Antwort
            0
            • NewpicselN Newpicsel

              @paul53

              Ach ich kann auch direkt eine Liste an den trigger setzen? 😂👍 hatte ich ehrlich gesagt nie getestet.
              Ich hatte angenommen, dass dieser immer direkt eine ID benötigt.

              Vielen vielen Dank 🙏

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

              @newpicsel sagte: eine Liste an den trigger setzen?

              Ja, aber die Liste wird bei Skriptstart übergeben und kann nur die Datenpunkt-IDs enthalten, die zu diesem Zeitpunkt bekannt sind.

              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

              NewpicselN 1 Antwort Letzte Antwort
              0
              • paul53P paul53

                @newpicsel
                Objekt ID enthält immer die ID des gerade auslösenden Datenpunktes, egal ob an den Trigger eine einzelne ID, eine Liste von IDs oder ein RegExp übergeben wurde.

                @newpicsel sagte in Variable variablen! Variable über Funktion erstellen?:

                JSON Liste, die ObjektIDs enthält angebe?

                Zeigen!

                NewpicselN Offline
                NewpicselN Offline
                Newpicsel
                schrieb am zuletzt editiert von Newpicsel
                #10

                @paul53 said in Variable variablen! Variable über Funktion erstellen?:

                @newpicsel sagte in Variable variablen! Variable über Funktion erstellen?:

                JSON Liste, die ObjektIDs enthält angebe?

                Zeigen!

                Ich habe so etwas aktuell nicht 😅

                Da ich vermutet habe ich könne nur IDs an den trigger setzen, bin ich davon ausgegangen die Liste in einen Datenpunkt zu schreiben und diesen dann triggern.
                Eben genau dass dieses eigentlich nicht funktionieren kann (meines Wissens) hatte ich nochmal nachgefragt…

                Genau deshalb die Aussage:
                @newpicsel said in Variable variablen! Variable über Funktion erstellen?:

                Allerdings müsste ich all die erstellten variablen auch wieder als ObjektID in den trigger bekommen, was hier wohl die größte Herausforderung darstellen würde.

                Sorry für das Missverständnis 🙈

                1 Antwort Letzte Antwort
                0
                • paul53P paul53

                  @newpicsel sagte: eine Liste an den trigger setzen?

                  Ja, aber die Liste wird bei Skriptstart übergeben und kann nur die Datenpunkt-IDs enthalten, die zu diesem Zeitpunkt bekannt sind.

                  NewpicselN Offline
                  NewpicselN Offline
                  Newpicsel
                  schrieb am zuletzt editiert von
                  #11

                  @paul53 said in Variable variablen! Variable über Funktion erstellen?:

                  @newpicsel sagte: eine Liste an den trigger setzen?

                  Ja, aber die Liste wird bei Skriptstart übergeben und kann nur die Datenpunkt-IDs enthalten, die zu diesem Zeitpunkt bekannt sind.

                  Wenn das über RegExp geht wäre das mega!

                  Aber auch ein trigger mit einer Liste lässt sich dahingehen austricksen, aktuell trigger ich IDs die es zum skriptstart so auch noch nicht bzw. Nicht mit der korrekten ID gibt, weil diese erst im Verlauf korrekt gesetzt werden.

                  Der trigger hat am Anfang auch immer die ID getriggert, die beim Start anlag, dies hab ich umgangen, in dem ich alle nötigen trigger in einen trigger gesetzt habe der aktualisiert sobald dieser auslöst und so haben auch die trigger mit der variable in diesem trigger dann die ID als Auslöser, die zu dem Zeitpunkt in der variable stehen.

                  Man muss sich halt irgendwie helfen wenn man keine Ahnung hat 😂😂😂

                  1 Antwort Letzte Antwort
                  0
                  • NewpicselN Offline
                    NewpicselN Offline
                    Newpicsel
                    schrieb am zuletzt editiert von Newpicsel
                    #12

                    Moin @paul53

                    @paul53 said in Variable variablen! Variable über Funktion erstellen?:

                    Da ich annehme, dass die Datenpunkte in einer bestimmten ID-Struktur vorliegen, kann man einen RegExp zum Triggern verwenden. Ein solcher Trigger reagiert auch auf Datenpunkte, die zum Zeitpunkt des Skriptstarts noch nicht vorhanden waren.

                    Was genau ist der Unterschied zwischen "RegExp" und "IDs vom Selektor $()"? 😅

                    Ist es auch möglich direkt "eine Liste" von den Werten dieser IDs zu bekommen?
                    Ich möchte z.B. ein Mittelwert (mit einer Dezimalstelle) der Werte dieser IDs erhalten und ich möchte abfragen (andere IDs) ob ein bestimmter Wert vorkommt (hier reicht True/false, ich benötige nicht zwingend eine angebe in welcher ID dieser Wert vorkommt.

                    Mir würde jetzt nur über eine Schleife einfallen, aber vielleicht geht es auch einfacher?

                    Vielen Dank für deine Hilfe

                    EDIT: Ich habe die Werte so oder so und es wäre kein Problem diese in eine separate Liste zu stecken um diese Aufgaben zu erledigen, ich suche oder frage hier nicht nach einer generellen Lösung, vielmehr ob es diese Option gibt z.B. über einen Baustein (ähnlich wie z.B. "Wert von ObjektID")oder vielleicht sogar einer weiteren/anderen Formulierung innerhalb des "RegExp" oder "selektor" Blockes.

                    EDIT2 in der Hoffnung dass ich noch nicht nerve:
                    Zu meiner Frage, was der Unterschied ist, ich möchte hier natürlich auch nicht ausgiebig erklärt bekommen, was genau RegExp ist.
                    Ich habe mir etliche Seiten Infomaterial durchgelesen und hab im groben schon ein Hauch von einer Idee was wohl dahintersteckt.

                    Die benötigen IDs habe ich auch bereits selektiert und arbeiten hervorragend im trigger.
                    Lediglich die Option direkt die Werte dieser IDs zu vergleichen wäre interessant (was nach meiner Einschätzung wohl möglich sein muss, ich bislang den Weg nur nicht finden konnte), sowie die Frage, wie es sich verhält, wenn mehrere IDs exakt gleichzeitig den trigger auslösen, werden diese nacheinander abgearbeitet oder nur der erste und die restlichen gehen unter?
                    Außerdem wie sehr belastet dies alles das System, ist es eventuell in einigen Punkten schlauer ein anderen weg zu gehen um das System nicht zu sehr zu belasten?

                    Vielen Dank nochmal 🙏

                    paul53P 1 Antwort Letzte Antwort
                    0
                    • NewpicselN Newpicsel

                      Moin @paul53

                      @paul53 said in Variable variablen! Variable über Funktion erstellen?:

                      Da ich annehme, dass die Datenpunkte in einer bestimmten ID-Struktur vorliegen, kann man einen RegExp zum Triggern verwenden. Ein solcher Trigger reagiert auch auf Datenpunkte, die zum Zeitpunkt des Skriptstarts noch nicht vorhanden waren.

                      Was genau ist der Unterschied zwischen "RegExp" und "IDs vom Selektor $()"? 😅

                      Ist es auch möglich direkt "eine Liste" von den Werten dieser IDs zu bekommen?
                      Ich möchte z.B. ein Mittelwert (mit einer Dezimalstelle) der Werte dieser IDs erhalten und ich möchte abfragen (andere IDs) ob ein bestimmter Wert vorkommt (hier reicht True/false, ich benötige nicht zwingend eine angebe in welcher ID dieser Wert vorkommt.

                      Mir würde jetzt nur über eine Schleife einfallen, aber vielleicht geht es auch einfacher?

                      Vielen Dank für deine Hilfe

                      EDIT: Ich habe die Werte so oder so und es wäre kein Problem diese in eine separate Liste zu stecken um diese Aufgaben zu erledigen, ich suche oder frage hier nicht nach einer generellen Lösung, vielmehr ob es diese Option gibt z.B. über einen Baustein (ähnlich wie z.B. "Wert von ObjektID")oder vielleicht sogar einer weiteren/anderen Formulierung innerhalb des "RegExp" oder "selektor" Blockes.

                      EDIT2 in der Hoffnung dass ich noch nicht nerve:
                      Zu meiner Frage, was der Unterschied ist, ich möchte hier natürlich auch nicht ausgiebig erklärt bekommen, was genau RegExp ist.
                      Ich habe mir etliche Seiten Infomaterial durchgelesen und hab im groben schon ein Hauch von einer Idee was wohl dahintersteckt.

                      Die benötigen IDs habe ich auch bereits selektiert und arbeiten hervorragend im trigger.
                      Lediglich die Option direkt die Werte dieser IDs zu vergleichen wäre interessant (was nach meiner Einschätzung wohl möglich sein muss, ich bislang den Weg nur nicht finden konnte), sowie die Frage, wie es sich verhält, wenn mehrere IDs exakt gleichzeitig den trigger auslösen, werden diese nacheinander abgearbeitet oder nur der erste und die restlichen gehen unter?
                      Außerdem wie sehr belastet dies alles das System, ist es eventuell in einigen Punkten schlauer ein anderen weg zu gehen um das System nicht zu sehr zu belasten?

                      Vielen Dank nochmal 🙏

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

                      @newpicsel sagte: wenn mehrere IDs exakt gleichzeitig den trigger auslösen

                      Exakt gleichzeitig gibt es nicht. Es werden alle Trigger nacheinander abgearbeitet.

                      @newpicsel sagte in Variable variablen! Variable über Funktion erstellen?:

                      die Werte dieser IDs zu vergleichen wäre interessant

                      Dazu benötigt man meist eine Schleife.

                      @newpicsel sagte in Variable variablen! Variable über Funktion erstellen?:

                      Unterschied zwischen "RegExp" und "IDs vom Selektor $()"?

                      Wesentlicher Unterschied als Trigger: Der Selektor holt sich bei Skriptstart die IDs aus dem Puffer der Javascript-Instanz. RegExp reagiert auch auf zum Zeitpunkt des Skriptstarts noch unbekannte IDs, die dem regulären Ausdruck entsprechen. Anscheinend wird der RegExp von Node.js ausgewertet.

                      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

                      NewpicselN 1 Antwort Letzte Antwort
                      1
                      • paul53P paul53

                        @newpicsel sagte: wenn mehrere IDs exakt gleichzeitig den trigger auslösen

                        Exakt gleichzeitig gibt es nicht. Es werden alle Trigger nacheinander abgearbeitet.

                        @newpicsel sagte in Variable variablen! Variable über Funktion erstellen?:

                        die Werte dieser IDs zu vergleichen wäre interessant

                        Dazu benötigt man meist eine Schleife.

                        @newpicsel sagte in Variable variablen! Variable über Funktion erstellen?:

                        Unterschied zwischen "RegExp" und "IDs vom Selektor $()"?

                        Wesentlicher Unterschied als Trigger: Der Selektor holt sich bei Skriptstart die IDs aus dem Puffer der Javascript-Instanz. RegExp reagiert auch auf zum Zeitpunkt des Skriptstarts noch unbekannte IDs, die dem regulären Ausdruck entsprechen. Anscheinend wird der RegExp von Node.js ausgewertet.

                        NewpicselN Offline
                        NewpicselN Offline
                        Newpicsel
                        schrieb am zuletzt editiert von
                        #14

                        @paul53

                        Vielen Dank, dass hilft mir und ist sehr interessant!

                        Da ich die Werte der IDs im gleichen Skript aus der JSON in die Datenpunkte schreibe, habe ich diese nun direkt dort abgegriffen und schreibe sie in eine Liste, welche ich dann vergleiche bzw. den Durchschnitt ermittle.

                        Auch wenn ich so keine variable variablen erstellen kann, betrachte ich mein Problem hiermit als gelöst. Vielen vielen Dank 🙏

                        1 Antwort Letzte Antwort
                        0
                        • NewpicselN Offline
                          NewpicselN Offline
                          Newpicsel
                          schrieb am zuletzt editiert von
                          #15

                          Moin @paul53

                          sorry ich muss nochmal anknüpfen.

                          Ich hab das Problem, dass oft mehr als nur eine ID aus dem RegExp nahezu gleichzeitig auslösen und nicht jede auslösung zu einer korrekten Steuerung führt.

                          Ich muss direkt mit der entsprechenden ID des Auslösers weiterarbeiten und schreibe diese in eine variable.
                          Ich vermute, dass die zweite Auslösung schon die variablen neu setzt, wodurch die Steuerung des ersten Auslösers mit den bereits neu gesetzten variablen des zweiten arbeitet.
                          (Habe hier mehrfach Ergebnisse)

                          Gibt es eine Möglichkeit dies zu unterbinden? 🙈

                          1 Antwort Letzte Antwort
                          0
                          • NewpicselN Offline
                            NewpicselN Offline
                            Newpicsel
                            schrieb am zuletzt editiert von Newpicsel
                            #16

                            Moin @paul53

                            Hier mein Problem nochmal bildlich dargestellt:
                            einmalID.jpg

                            Ich zähle hier die Auslöser und setze die ID in eine variable, ich logge diese direkt nach dem trigger und direkt im "exec" befehlsblock.

                            Dies zeigt deutlich, dass eben zwei Auslöser rein kommen, jedoch dann leider beide mit den selben variablen arbeiten, weil der zweite Auslöser diese schneller ändert als die Aktion braucht um durchzuführen.

                            Einzige sinnvolle Lösung die mir einfällt, ich muss die Zeit zwischen den Auslösungen des triggers erhöhen.
                            Aktuell knapp unter 30ms und die Zeit vom triggern bis zur Ausführung sind etwa 350ms.
                            Um sicher zu gehen, würde ich eine Verzögerung vom 500ms beim aktualisieren der DP aus der API einbauen, was bei 5 räumen schon eine Verzögerung von zwei Sekunden bedeuten würde…

                            Gibt es eine Alternative wie ich dies anders vielleicht besser lösen kann?

                            EDIT: zur Verständnis, der Sinn dieses triggers ist es bei Änderung einer soll Temperatur eines Raumes, zu prüfen ob hier ein Fenster geöffnet ist, um dann dementsprechend die Temperatur zu regeln.
                            Wenn ein Heizplan so eingestellt ist, dass die Heizung im kompletten Haus um z.B. 16uhr auf 22grad springt (warum auch immer) oder eine Anwesenheitsschaltung die Temperatur im ganzen Haus regelt, bedeutet dies eben eine schnelle kurze Aktualisierung aller DPs.
                            Wenn in drei von sechs Räumen ein Fenster geöffnet ist, läuft somit die Aktion im trigger 3mal komplett durch, aber die variablen werden 6 mal neu gesetzt um überhaupt die zugehörigen Fenster zu ermitteln.

                            Hier muss natürlich sichergestellt sein, dass die variablen für jeden durchlauf des triggers korrekt gesetzt sind, damit die Temperatur in jedem Raum korrekt geschaltet werden kann.

                            Vielen Dank für jede Hilfe. 🙏

                            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

                            593

                            Online

                            32.7k

                            Benutzer

                            82.4k

                            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