[SOLVED] zyklische Statusmeldungen

Begonnen von Darth.Weber, 25 März 2014, 18:57:11

Vorheriges Thema - Nächstes Thema

Darth.Weber

Hi Community, ich bräuchte einen Ansatz (auch gerne fertige Lösung...)

Problem: derzeit löse ich beim Öffnen und Schließen eines SCI3-Sensors verschiedene Requests aus, die allerdings manchmal "verloren" gehen (request wird abgesetzt, aber nicht korrekt verarbeitet
define AZT_SCI3_1_closed notify AZT_SCI3_1:closed { GetHttpFile("url", "arg1") }
define AZT_SCI3_1_open notify AZT_SCI3_1:open { GetHttpFile("url", "arg2") }


Idee: Ich möchte gerne alle 5-10min den Zustand des AZT_SCI3_1 prüfen und den request einfach wiederholen - wie realisiere ich das ?

Thorsten Pferdekaemper

FUIP

Darth.Weber

okay - AT ist sicherlich eine richtige Spur  :-\

aber vielleicht hat ja jemand ein ähnliches Beispiel schon mal gemacht und stellt mir seinen Code zur Verfügung  :D ?

Thorsten Pferdekaemper

Also genau Deinen Code nicht...
Hier ist ein at für "einmal alle 5 Minuten":
define MaxValveUpdate at +*00:05:00 {myUtils_maxValve()}
Der Perl-Teil findet bei mir normalerweise in der myUtils.pl statt. Man kann aber auch komplexeren Kram direkt in die geschweiften Klammern schreiben. Du brauchst wahrscheinlich sowas wie...
{if (ReadingsVal ("AZT_SCI3_1","namedesreadings","error") eq "closed"){GetHttpFile("url", "arg1")} else {GetHttpFile("url", "arg2")}}
Ich habe das nicht ausprobiert...
Gruß,
Thorsten
FUIP

Darth.Weber

#4
Hi Thorsten,

das ist eine prima Hilfe, sieht sehr vielversprechend aus und probiere ich gleich mal (das error muss sicherlich state sein)

[EDIT] okay, mit state statt namedsreadings klappt das ! Vielen lieben Dank !

Thorsten Pferdekaemper

Freut mich.
Such' mal nach "ReadingsVal" in der commandref, dann muesste auch klar werden, was das "error" soll.
FUIP