ESPEasy Rules und Delay anpassen

Begonnen von Sidey, 28 Mai 2018, 22:08:11

Vorheriges Thema - Nächstes Thema

Sidey

Hallo,

ich habe einen ESP auf dem ESPEasy läuft. (Sonoff S20)

An dem ESP Easy habe ich einen Ultraschall Sensor. Der ESP sendet alle 10 Minuten einen Wert an FHEM.
Das reicht mir vom Intervall locker.

Für meinen Anwendungsfall würde ich aber gerne öfters z.B. alle 60 Sekunden den Ultraschall Sensor abfragen, wenn die S20 geschaltet ist.
Ich habe dafür eine Rule erstellt, die setzt einen internen Timer auf dem ESP, der läuft so lange bis das interne Relais in der S20 nicht mehr aktiv ist.


Ich habe allerdings keine Option gefunden, den "Delay" Wert des Distanz Sensors über eine Rule zu modifizieren.
SendtoHttp habe ich dagegen gefunden, aber so richtig verstanden habe ich leider nicht, wie ich die Daten an die ESP Bridge senden muss.
Hat da jemand ein paar Informationen für mich?

Grüße Sidey
Signalduino, Homematic, Raspberry Pi, Mysensors, MQTT, Alexa, Docker, AlexaFhem,zigbee2mqtt

Maintainer von: SIGNALduino, fhem-docker, alexa-fhem-docker, fhempy-docker

RaspiLED

Hey Sidey,
Meines Wissens kannst Du den Delay nicht ändern, aber aus den Rules per Timer den TaskRun,1 aufrufen. Wenn der Sensor als erstes Device definiert ist. Das sendet dann sofort den Wert des Sensors ohne Delay.
Gruß Arnd


Gesendet von iPhone mit Tapatalk
Raspberry Pi mit FHEM, CUL, Signalduino, MySensors, HomeBridge, Presence, WifiLight2, Bravia, ...

Sidey

Prima,

genau das habe ich gesucht :)

Habe es mal mit 3 sekunden getestet, das klappt:


#Aktiviere Timer wenn Pumpe läuft
on SWITCH#Relay=1 do
timerSet,1,3
endon

#Deaktiviere Timer wenn Pumpe nicht läuft
on SWITCH#Relay=0 do
timerSet,1,0
endon


On Rules#Timer=1 do  //When Timer1 expires, do
TaskRun,3           // Update Device with id 3
timerSet,1,3       //Resets the Timer 1 for another 30 seconds
endon

Signalduino, Homematic, Raspberry Pi, Mysensors, MQTT, Alexa, Docker, AlexaFhem,zigbee2mqtt

Maintainer von: SIGNALduino, fhem-docker, alexa-fhem-docker, fhempy-docker