Ankündigung

Einklappen

Serverwartung 21.2.



Am 21.2. im Laufe des späten Abends wird eine Serverwartung durchgeführt. Das Forum ist dadurch für gut zwei Stunden nicht erreichbar.
Es wird eine Wartungsseite geschaltet.

Mehr anzeigen
Weniger anzeigen

Unerwartetes Verhalten in update_item()

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Unerwartetes Verhalten in update_item()

    Hallo,

    wenn mein Plugin nach dem Start seine Items aktualisiert, wird immer update_item() aufgerufen, was in diesem Kontext unpraktisch ist. Es besteht zwar die Möglichkeit die Aufrufparameter zu prüfen, aber sie sind in solchen Fällen wie folgt gesetzt:
    Code:
    caller = Logic, source = None, dest = None
    D.h. momentan kann ich nicht zwischen einem "Kurzschluß" (eigene Aktualisierung) und einem externen Logik-Aufruf unterscheiden. Gibt es etwas, was ich übersehen habe?

    Wenn die Logik alle Parameter einmal empfangen hat, verhält sie sich wieder wie erwartet - update_item() wird nur bei externen Änderungen aufgerufen.

    Das einzige Workaround, wäre ein Flag pro Parameter zu setzen, so dass die erste Aktualisierung durch die Logik nicht ausgeführt wird.

    Gruß
    toggle

    #2
    Hallo,

    Du kannst Cache verwenden, dann sollte es keine Änderung bei der Initialisierung geben. Oder sqlite = init.

    Bis bald

    Marcus

    Kommentar


      #3
      Es handelt sich um Einstellungen, die von der Wärmepumpe kommen. Es macht nicht wirklich Sinn, sie zu cachen oder in die Datenbank zu schreiben. Sie sollten nur bewußt geschrieben werden.

      Kommentar


        #4
        Hallo,

        Du kannst auch bei dem Item-Update eine "source" als Attribut mitgeben, das kannst Du später auch wieder rausfiltern. Das macht z.B. das KNX Plugin so.

        Bis bald

        Marcus

        Kommentar


          #5
          Ja, das macht Sinn. Danke!

          Kommentar

          Lädt...
          X