[Szenarien] Historischen Zustand eines Geräts wiederherstellen (nicht nur den letzten)

Ich würde mir wünschen, dass die Aktion „Letzten Zustand abrufen“ zu „Zustand abrufen“ erweitert wird, mit einer Option, um anzugeben, ob man den letzten Zustand oder den in der Gerätehistorie gespeicherten Zustand zu einem bestimmten Zeitpunkt (z. B. vor 10 Minuten, 1 Stunde, 24 Stunden, usw.) abrufen möchte.

Konkreter gesagt, würde dies Szenen vereinfachen, in denen man ein Verhalten basierend auf einer Veränderung eines Sensors über einen bestimmten Zeitraum einrichten möchte. Zum Beispiel: Eine Warnung auslösen, wenn der Regenwassertank in 30 Minuten um mehr als 5 % gesunken ist (weil dies auf ein Leck oder einen undicht geschlossenen Wasserhahn hindeuten könnte).

Heute (aber es gibt vielleicht eine einfachere Lösung, ich bin offen für Vorschläge…) muss man ein fiktives MQTT-Gerät erstellen und eine Szene regelmäßig auslösen, die den „letzten Zustand“-Wert des Sensors im MQTT-Gerät speichert, dann 30 Minuten wartet, dann erneut den „letzten Zustand“-Wert abruft und die beiden Werte vergleicht.

Das funktioniert gut, aber es ist nicht intuitiv, dafür ein MQTT-Gerät erstellen zu müssen…

Ich stelle es mir so vor:

Ich lese diese Vorlage noch einmal und finde, dass die Formulierung „Der nächstgelegene Zustand nach: „ mehrdeutig ist.

Ich denke, „Der historisierte Zustand vor… „ wäre klarer. Und der Hinweis würde lauten: „Hinweis: Es wird der erste aufgezeichnete Zustand nach diesem Zeitpunkt zurückgegeben. Falls das Gerät keine Historie hat, wird es also der letzte Zustand sein.“}

Das interessiert mich auch, aber ich würde sogar noch weitergehen und das Gegenteil haben: das Datum abrufen, an dem ein Zustand einen bestimmten Wert hatte. Zum Beispiel: Wann war das letzte Mal, dass mein Tank zu 100 % gefüllt war? :slight_smile:

@Nagromdark ich verstehe das von dir beschriebene Bedürfnis, aber ich denke, dass es sich hier eindeutig um eine andere Funktionsanfrage handelt. Ich schlage vor, dass du eine separate Anfrage stellst. Und ich glaube, dass du dabei zwei Aspekte präzisieren musst:

  • was soll diese Aktion zurückgeben, wenn es kein Datum gibt, an dem der von dir gesuchte Wert erreicht wurde
  • muss das zurückgegebene Datum der Standard-Nummerwert in der Informatik sein (also die Anzahl der Sekunden seit dem 1.1.1970)? Oder die Anzahl der Sekunden zwischen diesem Datum und jetzt? Oder ein Datum in Textformat? Aber in diesem Fall, wie soll es formatiert sein? Denn ehrlich gesagt, ist ein Datum in der Informatik echt nervig, gut zu definieren :wink:…

Danke für dein Feedback, ja tatsächlich sind die Daten nervig, ich werde eine separate Anfrage stellen.

Modell geändert:

Danke für deinen Vorschlag @StephaneB, ich hatte bereits denselben Bedarf!
Etwas, auf das man achten muss, ist, wie der historisierte Wert abgerufen wird.

Angenommen, dein Sensor gibt alle 15 Sekunden einen Wert zurück. Was sollte der historisierte Zustand « vor 30 Minuten » entsprechen? Der nächstgelegene Wert zu « H-30min »?
Könnte es einfacher sein, wenn man « den vorherigen Wert » oder « den letzten Zustand zwischen und  » angibt?

Angenommen, dein Sensor hat eine Stunde lang nichts zurückgegeben (Störung, Batterieausfall, Neustart von Gladys, etc.). Wie sollte man reagieren? Die Szene stoppen?

Jedenfalls würde es mir ermöglichen, bestimmte Berechnungen wie in deinem Fall durchzuführen, z. B. zu wissen, ob die Temperatur zu schnell ansteigt oder abfällt.

Ich habe diese alte Anfrage bearbeitet, damit das Label to-be-processed hinzugefügt wird und möglicherweise eine Entwicklung mit KI in Angriff genommen wird…