Seite 1 von 1

[V3.5.1] HTTP API - triggern einer HTTP-API abfrage

Verfasst: So Jul 31, 2022 7:12 pm
von 0lek
Hey,

Ich habe ein API, über das ich Sachen zählen kann. Es gibt dann eine Abfrage, die den jeweiligen Wert um 1 kleiner macht. Ich will dies machen, wenn z.B. ein Geraet läuft (das werde ich dann raus finden über den KNX-Mess-Aktor). Also wenn das Geraet läuft, dann bitte über HTTP API den Wert kleiner machen.

Jetzt habe ich aber ein Verständnisproblem. Ich werde es eventuell hinkriegen, die Abfrage zu machen, aber wie triggere ich die? Bei der Ressource kann ich ja trigger alle x (min, sek) einstellen - ich will aber den Trigger nur, wenn bei einem anderen Subsystem was passiert. Ich habe gesehen, dass ich einstellen kann, das wenn sich ein Objekt ändert, dieses eine Abfrage auslöst... NUR mein Objekt (Geraet läuft, siehe oben) ist nicht Bestandteil der Abfrage.

Wahrscheinlich ist es super-einfach, ich habe aber gerade keinen Plan, wie ich das zusammenstückeln soll.

Danke!
Aleksander

Re: HTTP API - triggern einer HTTP-API abfrage

Verfasst: So Jul 31, 2022 7:24 pm
von gbglace
Dann wirst wohl ne Logik zwischen hängen müssen, also immer an der API den Wert abholen und wenn dann aus dem KNX das Signal anliegt dann aus der Logik rauslassen, sonst filtern. Dahinter dann so wie Du es verwenden wolltest.

Re: HTTP API - triggern einer HTTP-API abfrage

Verfasst: Mi Nov 16, 2022 11:53 am
von 0lek
@gbglace Danke. Sorry dass ich laenger gebraucht habe, aber ich habe andere Sachen gemacht. Ich habe eine Logik gebaut, die mir einen Wert an die HTTP-API sendet. Wenn dieser Wert (ProductID) sich aendert, wird die HTTP-API vom TWS getriggert. Funktioniert soweit.

Mein Problem ist nur: Dieser Wert aendert sich in der jeweiligen Logik selten (oder eher: nie). D.h. wenn ich das naechste Mal die Logik anspreche, wird die HTTP-API nicht getriggert, weil sich ja die ProductID nicht geaendert hat.
Was mir fehlt ist eine Moeglichkeit, die HTTP-Abfrage zu triggern ueber z.B. ein "true", aber eben nicht ueber ein sich aenderndes Objekt.
Die HTTP-Abfrage hat halt NUR statische Objekte, d.h. die aendern sich NIE.

Was ich als Alternativen sehe:

1. In die HTTP-Abfrage einen Dummy-Wert einbauen, der von der Logik beim triggern um +1 erhoeht wird. Dieser wird an das API uebergeben, hat aber keine Funktion. Zum Testen waere, ob die HTTP-API das auch annimt.
2. Die ProductID nach z.B. 1s in der Logik auf einen Dummy-Wert setzen der nicht vorkommt (666). 1s wegen: Einmal trigger, es laeuft durch und dann zurueck zum Dummy, um fuer das naechste Mal wieder eine Veraenderung simulieren zu koennen.
Beim naechste Triggern der Logik wird er wieder auf die richtige ProductID gesetzt und die HTTP-Abfrage triggert. Was aber passieren wird ist, dass jedes mal die Abfrage triggert (einmal mit der richtigen, einmal mit der falschen ProductId).

Beides ist fuer mich suboptimal. Sind das wirklich die einzigen Loesungen?

BTW 3.5.1, kann nich mehr aendern