[Gelöst] Rolle nur einmal ausführen

Begonnen von wthiess, 12 Februar 2019, 23:49:16

Vorheriges Thema - Nächstes Thema

wthiess

Hallo!
Ich bin am verzweifeln. Ich möchte bei Temperature < 5 Grad das ein Mail versendet wird.
Leider versendet meine rolle dann alle 5 Sekunden ein Mail. Alle 5 Sekunden wird der Temperaturwert ausgelesen. Ich möchte aber nur ein Mail. Und zwar nur beim ersten Unterschreiten der Temperatur. Bitte um Hilfe.
lg
Wolfgang
on Heizung#Temperature<15 do
  notify 1
endon
Raspberry Pi 3; 8xRelais; Aptodec Nano V3.0 Pro; FS1000a; RF-5V; Hama TS33C; 3x Brennerstuhl FunkSteckdosen; 9x Dooya funk Rollo; KWL Systemair VR400; Thermokon Modbusthermostat; diverse China Modbus Thermostate; 1-wire Bus; Telegram; QuickFhem; FhemNative; Firmata; Alexa ......

balli1187

Setze mal
attr Heizung Event-on-change-Reading temperature


Gesendet von iPhone mit Tapatalk[/code]
FHEM auf QNAP im docker, nanoCUL per ser2net an VU+, 2x Echo Dot, 3x HM-ES-PMSw1-Pl, 3x HM-LC-Bl1PBU-FM, 6x Sonoff Basic, div. "Shelly Eigenbauten" von Papa Romeo, ESPRGBWW-Controller, ...
Projekte: Smart Mirror in Spiegelschrank auf RPi Zero

wthiess

Entschuldige ich habe eibe Rolle ber ESPEASY gemeint.
Lg Wolfgang
Raspberry Pi 3; 8xRelais; Aptodec Nano V3.0 Pro; FS1000a; RF-5V; Hama TS33C; 3x Brennerstuhl FunkSteckdosen; 9x Dooya funk Rollo; KWL Systemair VR400; Thermokon Modbusthermostat; diverse China Modbus Thermostate; 1-wire Bus; Telegram; QuickFhem; FhemNative; Firmata; Alexa ......

Wernieman

Du solltest dem ESP dan auch sagen, das er nur ein mal senden soll, also eine zusätzliche Logig einpogrammieren.

Als Stichwort: Dummy

Würde es selber (in Pseudocode) so erledigen:

Wenn Temperatur > Soll
  Ist Gesendet = 0
    Gesendrt = 1
   Sende Mail

Wenn Temperatur < (Soll - Hysterese)
  Ist gesendet = 1
    Gesendet = 0


Aber umsetzen in eine regel musst Du selber ;o)
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

wthiess

Danke aber meine Programmierleistung reicht nicht um das umzusetzen.

lg
Wolfgang
Raspberry Pi 3; 8xRelais; Aptodec Nano V3.0 Pro; FS1000a; RF-5V; Hama TS33C; 3x Brennerstuhl FunkSteckdosen; 9x Dooya funk Rollo; KWL Systemair VR400; Thermokon Modbusthermostat; diverse China Modbus Thermostate; 1-wire Bus; Telegram; QuickFhem; FhemNative; Firmata; Alexa ......

balli1187

Ich kenne mich bei espeasy nicht aus aber gehe jetzt mal davon aus, dass über die oben beschriebene Regel ein Reading in FHEM aktualisiert wird und via FHEM die e-Mail verschickt wird, richtig!?

Dann bleibt mein vorschlage der selbe, nur müsstest du bei Event-on-change-Reading eben das passende Reading, dass durch die Rule gesetzt wird, einfügen.


Gesendet von iPhone mit Tapatalk
FHEM auf QNAP im docker, nanoCUL per ser2net an VU+, 2x Echo Dot, 3x HM-ES-PMSw1-Pl, 3x HM-LC-Bl1PBU-FM, 6x Sonoff Basic, div. "Shelly Eigenbauten" von Papa Romeo, ESPRGBWW-Controller, ...
Projekte: Smart Mirror in Spiegelschrank auf RPi Zero

wthiess

Nein das Email wird direkt vom ESP versendet. Der ESP arbeitet alleine. FHEM liest nur die Temperatur zum Logging.
lg
Wolfgang
Raspberry Pi 3; 8xRelais; Aptodec Nano V3.0 Pro; FS1000a; RF-5V; Hama TS33C; 3x Brennerstuhl FunkSteckdosen; 9x Dooya funk Rollo; KWL Systemair VR400; Thermokon Modbusthermostat; diverse China Modbus Thermostate; 1-wire Bus; Telegram; QuickFhem; FhemNative; Firmata; Alexa ......

Wernieman

Sorry Wolfgang,

aber da kann ich Dir auch nicht weiterhelfen .... Coden mußt Du schon selber ...

Ansonsten frage doch mal im espeasy Forum nach ... (Wenn ja, verlinke bitte, will auch mitlesen/lernen ;o) )
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

wthiess

Hallo!

Gelöst: geht eventuell besser, aber ich hab es geschafft.

On System#Boot do  // beim starten gpio auf 0 setzen
  gpio,12,0       // V1#Switch
endon

on Heizung#Temperature do   // Warnung wenn Heizung ausfällt
if [V1#Switch]=0 and [Heizung#Temperature]<15
  notify,1,"Achtung Haus Temperatur ist [Heizung#Temperature]°C!"
   gpio,12,1
endif
endon

on Heizung#Temperature do  // Entwarnung wenn Heizung wieder läuft
if [V1#Switch]=1 and [Heizung#Temperature]>15
  notify,2,"Passt Haus Temperatur ist [Heizung#Temperature]°C!"
   gpio,12,0
endif
endon

Raspberry Pi 3; 8xRelais; Aptodec Nano V3.0 Pro; FS1000a; RF-5V; Hama TS33C; 3x Brennerstuhl FunkSteckdosen; 9x Dooya funk Rollo; KWL Systemair VR400; Thermokon Modbusthermostat; diverse China Modbus Thermostate; 1-wire Bus; Telegram; QuickFhem; FhemNative; Firmata; Alexa ......

Wernieman

a) Warum nimmst Du ein GPIO als "Dummy" wenn es "Dummy" in ESPEasy gibt?

Es sei denn, Du willst was ausgeben .. ;o)

b)
Damit Du nicht immer eine Warnung bekommst, wenn die Temperatur eventuell mal um 15° pendelt, würde ich die Hysterese größer machen.
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

wthiess

a) Das habe ich in der Wiki gelesen aber nicht kapiert.

b) Die Temperaturen sollten eigentlich auf 5 Grad gesetzt werden. Sozusagen eine Notfallsschaltung. Das Ganze dient eher als Übung.

lg
Wolfgang
Raspberry Pi 3; 8xRelais; Aptodec Nano V3.0 Pro; FS1000a; RF-5V; Hama TS33C; 3x Brennerstuhl FunkSteckdosen; 9x Dooya funk Rollo; KWL Systemair VR400; Thermokon Modbusthermostat; diverse China Modbus Thermostate; 1-wire Bus; Telegram; QuickFhem; FhemNative; Firmata; Alexa ......

Wernieman

#11
Zu b)
Hysterese bedeutet der Zwischenraum zwischen an und abschaltung.

bei unter 15 Grad wird bei Dir Alarmiert, bei über 15 Grad wieder scharfgechaltet. Ich würde den Abstand vergrößern ... also z.B. 14 zu 16 ...

Zu a)
Eine Teil meiner Regel aus einem meiner OBI-Wlan-Steckdosen:
ZitatOn Taster#Taster=1 do
if [Dummy#Relais]=1
  Pulse,5,0,10
  TaskValueSet 2,1,0
  TaskRun 2
else
  Pulse,12,0,10
  TaskValueSet 2,1,1
  TaskRun 2
endif
endon

Dummy ist als "Device Nummer 2" (Deshalb TaskValueSet 2,1,1)  wie folgt definiert:
ZitatGeneric - Dummy Device
Name: Dummy
Simulate Data Type: SENSOR_TYPE_SWITCH
Punkt: Relais

Ich muß gestehen, das ich Dummy einfacher fand, als einen GPIO zu mißbrauchen.

Hinweis:
TaskRun 2 schickt die Daten des Dummys, der bei mir auf Platz 2 steht, zu FHEM ....

Damit solltest Du es umsetzen können ....
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

wthiess

Wernieman Danke!

Mein Problem war das ich das Dummydevice nicht gefunden habe. "Gereric-Dummy"

lg
Wolfgang

On System#Boot do 
  TaskValueSet 2,1,0   //Beim Boot auf 0 setzen   
endon

on Heizung#Temperature do   // Warnung wenn Heizung ausfällt
if [D1#V1]=0 and [Heizung#Temperature]<19
  notify,1,"Achtung Haus Temperatur ist [Heizung#Temperature]°C!"
   TaskValueSet 2,1,1
endif
endon

on Heizung#Temperature do  // Entwarnung wenn Heizung wieder läuft
if [D1#V1]=1 and [Heizung#Temperature]>21
  notify,1,"Passt Haus Temperatur ist [Heizung#Temperature]°C!"
   TaskValueSet 2,1,0
endif
endon
Raspberry Pi 3; 8xRelais; Aptodec Nano V3.0 Pro; FS1000a; RF-5V; Hama TS33C; 3x Brennerstuhl FunkSteckdosen; 9x Dooya funk Rollo; KWL Systemair VR400; Thermokon Modbusthermostat; diverse China Modbus Thermostate; 1-wire Bus; Telegram; QuickFhem; FhemNative; Firmata; Alexa ......