Hallo Forum,
Ich hoffe, dass der Titel des Threads einigermaßen zu meinem Problem passt.
Habe mir ein Skript erstellt, dass automatisch die Temperaturen eines Wandthermostates mit denen des Außensensors vergleicht und mir per Programm eine Nachricht via PushOver sendet, wenn die Temperatur außen niedriger ist als die innen.
Skript: var a = Temperatur Wandthermostat
var b = Temperatur Außensensor
var c = b - a
Das Skript führe ich zeitgesteuert (jeden Tag ab 17 Uhr bis 23 Uhr) aus, schreibe die Werte in eine Systemvariable und prüfe diese mit einem Programm und lasse mir, sobald der Wert gleich oder unter 0 liegt, darüber eine Nachricht via PushOver senden.
Jetzt suche ich eine Möglichkeit, dass mir die CCU3 nach der ersten erfolgreichen Prüfung (Wert gleich oder unter 0) nicht alle fünf Minuten wieder eine PushOver Nachricht schickt sondern erst am nächsten Tag ab 17 Uhr. Dachte zuerst daran, den Wert der Systemvariable mit einer Verzögerung von einigen Sekunden auf einen Wert über 0 zu setzen, dass Programm prüft danach ja aber trotzdem wieder alle fünf Minuten den Temperaturunterschied.
Jemand eine Idee wie ich das bewerkstelligen kann?
LG
Markus
Programm/Skript nach erfolgreicher Prüfung für 24 Stunden unterbrechen
Moderator: Co-Administratoren
-
- Beiträge: 11
- Registriert: 01.02.2021, 00:39
- System: CCU
- Hat sich bedankt: 4 Mal
- Danksagung erhalten: 1 Mal
-
- Beiträge: 14204
- Registriert: 08.05.2013, 23:33
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Nordwürttemberg
- Hat sich bedankt: 590 Mal
- Danksagung erhalten: 1507 Mal
Re: Programm/Skript nach erfolgreicher Prüfung für 24 Stunden unterbrechen
Ich verstehe Dein Problem nicht wirklich. Wenn Du das Programm auf "Temperaturdifferenz kleiner gleich 0 bei Änderung" triggern lässt, dann wird genau ein Mal das DANN bei Unterschreitung der Schwelle 0 ausgeführt. Dafür gibt es ja die Option "bei Änderung". Hast Du das aber vielleicht noch mit zusätzlichen Bedingungen kombiniert, die ggf. auch sich ändern, dann kann das schon tricky werden. Das hat aber etwas mit der Art und Weise zu tun, wie die CCU Bedingungsprüfungen von Programmen triggert und abarbeitet. Also ein einfaches Programm mit genau dieser Bedingung. Ach ja, und als Variablentyp "Zahl". Nicht versuchen, irgendwelche Strings mathematisch zu vergleichen.
Bei mir läuft sowas schon länger als Lüftungsempfehlung an warmen Tagen.
Gruß Xel66
-------------------------------------------------------------------------------------------
524 Kanäle in 146 Geräten und 267 CUxD-Kanäle in 34 CUxD-Geräten:
343 Programme, 334 Systemvariablen und 183 Direktverknüpfungen,
RaspberryMatic Version: 3.65.11.20221005 + Testsystem: CCU2 2.61.7
-------------------------------------------------------------------------------------------
Einsteigerthread, Programmlogik-Thread, WebUI-Handbuch
524 Kanäle in 146 Geräten und 267 CUxD-Kanäle in 34 CUxD-Geräten:
343 Programme, 334 Systemvariablen und 183 Direktverknüpfungen,
RaspberryMatic Version: 3.65.11.20221005 + Testsystem: CCU2 2.61.7
-------------------------------------------------------------------------------------------
Einsteigerthread, Programmlogik-Thread, WebUI-Handbuch
-
- Beiträge: 4158
- Registriert: 26.01.2016, 08:14
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Renningen
- Hat sich bedankt: 351 Mal
- Danksagung erhalten: 285 Mal
Re: Programm/Skript nach erfolgreicher Prüfung für 24 Stunden unterbrechen
Als Ergänzung zu Xel66 Beitrag:
Wenn du die Sperre umsetzen willst:
Getrennte SV anlegen:
SV_Temperatur_sperre Typ Bool gesperrt/prüfen
um 16:55 ein Programm starten das die SV auf "prüfen" setzt
Dein vorhandenes Programm dahingehende erweitert das die Prüfung nur stattfindet wenn die SV auf "prüfen" setzt.
Dein vorhandenes Programm dahingehende erweitert das nicht nur die Nachricht schickt wenn die Temperatur kleiner ist, sondern zusätzlich die neue SV auf "gesperrt" setzt.
Gruß,
Sven
Wenn du die Sperre umsetzen willst:
Getrennte SV anlegen:
SV_Temperatur_sperre Typ Bool gesperrt/prüfen
um 16:55 ein Programm starten das die SV auf "prüfen" setzt
Dein vorhandenes Programm dahingehende erweitert das die Prüfung nur stattfindet wenn die SV auf "prüfen" setzt.
Dein vorhandenes Programm dahingehende erweitert das nicht nur die Nachricht schickt wenn die Temperatur kleiner ist, sondern zusätzlich die neue SV auf "gesperrt" setzt.
Gruß,
Sven
-
- Beiträge: 9725
- Registriert: 27.04.2020, 10:34
- System: CCU
- Hat sich bedankt: 704 Mal
- Danksagung erhalten: 1641 Mal
Re: Programm/Skript nach erfolgreicher Prüfung für 24 Stunden unterbrechen
Die Lösung wäre eine Systemvariable Typ Logik. Im Nachricht-Sende-Programm fragst Du ab, ob die noch auf "Nachricht nicht gesendet" steht und setzt die dann auf "Nachricht gesendet". Um Mitternacht setzt Du die wieder zurück. Oder gleich im Nachricht-Sende-Programm mit 7 Stunden Verzögerung.
LG, Michael.
Wenn du eine App zur Bedienung brauchst, dann hast du kein Smarthome.
Wettervorhersage über AccuWeather oder OpenWeatherMap+++ Rollladensteuerung 2.0 +++ JSON-API-Ausgaben auswerten +++ undokumentierte Skript-Befehle und Debugging-Tipps +++
Wenn du eine App zur Bedienung brauchst, dann hast du kein Smarthome.
Wettervorhersage über AccuWeather oder OpenWeatherMap+++ Rollladensteuerung 2.0 +++ JSON-API-Ausgaben auswerten +++ undokumentierte Skript-Befehle und Debugging-Tipps +++
-
- Beiträge: 11
- Registriert: 01.02.2021, 00:39
- System: CCU
- Hat sich bedankt: 4 Mal
- Danksagung erhalten: 1 Mal
Re: Programm/Skript nach erfolgreicher Prüfung für 24 Stunden unterbrechen
MichaelN hat geschrieben: ↑12.05.2021, 10:03Die Lösung wäre eine Systemvariable Typ Logik. Im Nachricht-Sende-Programm fragst Du ab, ob die noch auf "Nachricht nicht gesendet" steht und setzt die dann auf "Nachricht gesendet". Um Mitternacht setzt Du die wieder zurück. Oder gleich im Nachricht-Sende-Programm mit 7 Stunden Verzögerung.
Danke! Da hätte ich selber drauf kommen können…Sven_A hat geschrieben: ↑12.05.2021, 10:00Als Ergänzung zu Xel66 Beitrag:
Wenn du die Sperre umsetzen willst:
Getrennte SV anlegen:
SV_Temperatur_sperre Typ Bool gesperrt/prüfen
um 16:55 ein Programm starten das die SV auf "prüfen" setzt
Dein vorhandenes Programm dahingehende erweitert das die Prüfung nur stattfindet wenn die SV auf "prüfen" setzt.
Dein vorhandenes Programm dahingehende erweitert das nicht nur die Nachricht schickt wenn die Temperatur kleiner ist, sondern zusätzlich die neue SV auf "gesperrt" setzt.
Gruß,
Sven