[GELÖST] State() mit Delay in HM Script
Moderatoren: jmaus, Co-Administratoren
-
- Beiträge: 9650
- Registriert: 27.04.2020, 10:34
- System: CCU
- Hat sich bedankt: 697 Mal
- Danksagung erhalten: 1617 Mal
Re: [GELÖST] State() mit Delay in HM Script
Da ich eine solche Funktion gerade gut gebrauhcen könnte:
kann man eigentlich abfragen, ob ein Delay gesetzt ist?
Konkret: ich schalte in einem Programm eine Variable verzögert von false auf true und möchte zwischendurch abfragen, ob diese Verzögerung noch läuft oder ob sie durch einen gegenläufigen Befehl (sofort auf false) gestoppt wurde.
kann man eigentlich abfragen, ob ein Delay gesetzt ist?
Konkret: ich schalte in einem Programm eine Variable verzögert von false auf true und möchte zwischendurch abfragen, ob diese Verzögerung noch läuft oder ob sie durch einen gegenläufigen Befehl (sofort auf false) gestoppt wurde.
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 +++
- Black
- Beiträge: 5471
- Registriert: 12.09.2015, 22:31
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Wegberg
- Hat sich bedankt: 419 Mal
- Danksagung erhalten: 1071 Mal
- Kontaktdaten:
Re: [GELÖST] State() mit Delay in HM Script
Noch nicht... ich habe aber Funktionen wie .IsScheduled() bzw .ClearDelay() schon bei Jens als Issue angemeldetMichaelN hat geschrieben: ↑30.06.2020, 13:11Da ich eine solche Funktion gerade gut gebrauhcen könnte:
kann man eigentlich abfragen, ob ein Delay gesetzt ist?
Konkret: ich schalte in einem Programm eine Variable verzögert von false auf true und möchte zwischendurch abfragen, ob diese Verzögerung noch läuft oder ob sie durch einen gegenläufigen Befehl (sofort auf false) gestoppt wurde.
Stringfunktionen wie .EscapeString() bzw .UnEscapeString () wären auch sinnvoll nach dem breaking Change Erfahrungen . Den Pascal Quelltext dazu kann ich gerne zur Verfügung stellen.
Ebenso .StringBetween (linketextgreze,rechtetextgrenze)
Black
Wenn das Fernsehprogramm immer mehr durch nervende Werbung unterbrochen wird und der Radiomoderator nur noch Müll erzählt, ist es besser, die Zeit für sinnvolle Dinge zu nutzen -
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg
Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann
Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W
technical contribution against annoying advertising
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg
Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann
Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W
technical contribution against annoying advertising
- jmaus
- Beiträge: 9844
- Registriert: 17.02.2015, 14:45
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Dresden
- Hat sich bedankt: 462 Mal
- Danksagung erhalten: 1863 Mal
- Kontaktdaten:
Re: [GELÖST] State() mit Delay in HM Script
So, ab der kommenden R1.00.0388.0220 sollte das nun gehen. Und noch mehr, denn mir war auch gleich noch aufgefallen das das delayed State() auch nicht für OT_PROGRAM funktioniert hat. Damit sollte das delayed State() in der kommenden ReGa version dann für alle Objekttypen gehen auf die man ein State() anwenden kann (ausser natürlich ich hab einen übersehenjmaus hat geschrieben: ↑30.06.2020, 11:53Ja, das ist es in der Tat und ich hab es auch schon reproduzieren können und ich denke auch schon den schuldigen gefunden. Der entscheidende Hinweis war dabei die folgende Fehlermeldung die kommt wenn man ein Delayed State() auf einen Kanal macht:
Der Scheduler der das State ja dann nach der angegebenen Delayzeit ausführen soll kann bis jetzt eben nur mit DPs umgehen und verweigt mit dieser Fehlermeldung auch ein State() auf einem Kanal auszuführen (was prinzipiell geht wenn es einen DefaultDP für einen Kanal gibt. Sollte sich recht einfach reparieren lassen.Code: Alles auswählen
Jun 30 09:07:43 homematic-raspi local0.err ReGaHss: ERROR: dp pointer is null - id= 1679 [ExecuteWriteJob():iseRTScheduler.cpp:641]
RaspberryMatic 3.75.6.20240316 @ ProxmoxVE – ~200 Hm-RF/HmIP-RF/HmIPW Geräte + ioBroker + HomeAssistant – GitHub / Sponsors / PayPal /
- jmaus
- Beiträge: 9844
- Registriert: 17.02.2015, 14:45
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Dresden
- Hat sich bedankt: 462 Mal
- Danksagung erhalten: 1863 Mal
- Kontaktdaten:
Re: [GELÖST] State() mit Delay in HM Script
So, noch kurz nachgeliefert: Im aktuellsten nightly Snapshot von RaspberryMatic ist jetzt die neueste ReGaHss Betaversion mit dabei bei der nun das delayed State() auch für OT_CHANNEL und OT_PROGRAM funktionieren sollte. Interessierte Tester können das gerne mal selber testen und hier berichten. Danke nochmal an alchy für den Hinweis!
RaspberryMatic 3.75.6.20240316 @ ProxmoxVE – ~200 Hm-RF/HmIP-RF/HmIPW Geräte + ioBroker + HomeAssistant – GitHub / Sponsors / PayPal /
- Black
- Beiträge: 5471
- Registriert: 12.09.2015, 22:31
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Wegberg
- Hat sich bedankt: 419 Mal
- Danksagung erhalten: 1071 Mal
- Kontaktdaten:
Re: [GELÖST] State() mit Delay in HM Script
Gib mir mal bitte einen Use case für den state bzw statedelay eines OT_PROGRAM Objektes.
Thnx Black
Thnx Black
Wenn das Fernsehprogramm immer mehr durch nervende Werbung unterbrochen wird und der Radiomoderator nur noch Müll erzählt, ist es besser, die Zeit für sinnvolle Dinge zu nutzen -
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg
Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann
Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W
technical contribution against annoying advertising
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg
Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann
Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W
technical contribution against annoying advertising
-
- Beiträge: 10754
- Registriert: 24.02.2011, 01:34
- System: CCU
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 673 Mal
Re: [GELÖST] State() mit Delay in HM Script
.State(1) oder auch true oder Los triggert ein Programm sofern es aktiv ist in es werden die Bedingungen geprüft im Gegensatz zu execute.
Das hat aber nichts mit der Rapi zu tun. Das ist schon länger so wurde jetzt nur verraten.
Der delay würde es dann verzögern auf der raspi.
Alchy
Das hat aber nichts mit der Rapi zu tun. Das ist schon länger so wurde jetzt nur verraten.
Der delay würde es dann verzögern auf der raspi.
Alchy
Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.
© Sandra Pulsfort (*1974)
Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.
Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.
- Black
- Beiträge: 5471
- Registriert: 12.09.2015, 22:31
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Wegberg
- Hat sich bedankt: 419 Mal
- Danksagung erhalten: 1071 Mal
- Kontaktdaten:
Re: [GELÖST] State() mit Delay in HM Script
Thnx, interessanter Ansatz der sich da eröffnet.
Black
Black
Wenn das Fernsehprogramm immer mehr durch nervende Werbung unterbrochen wird und der Radiomoderator nur noch Müll erzählt, ist es besser, die Zeit für sinnvolle Dinge zu nutzen -
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg
Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann
Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W
technical contribution against annoying advertising
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg
Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann
Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W
technical contribution against annoying advertising
- jmaus
- Beiträge: 9844
- Registriert: 17.02.2015, 14:45
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Dresden
- Hat sich bedankt: 462 Mal
- Danksagung erhalten: 1863 Mal
- Kontaktdaten:
Re: [GELÖST] State() mit Delay in HM Script
Genau, das eröffnet z.b. den interessanten Ansatz in einem Program1 in einem Skript das zweite Program2 aufzurufen das wiederrun Program1 aufruft und somit mitunter dazu führt das die ReGa irgendwann tot am Boden liegt vor lauter Rekursionen Also einfach damit nun ein wenig sparsam umgehen damit man sich nicht irgendwann damit böse in den Fuß schießt
Aber ansonsten ist das wie alchy sagt nichts wirklich neues. Neu ist nur das man das State() jetzt auch mit einem Delay ausführen lassen kann.
RaspberryMatic 3.75.6.20240316 @ ProxmoxVE – ~200 Hm-RF/HmIP-RF/HmIPW Geräte + ioBroker + HomeAssistant – GitHub / Sponsors / PayPal /
- Black
- Beiträge: 5471
- Registriert: 12.09.2015, 22:31
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Wegberg
- Hat sich bedankt: 419 Mal
- Danksagung erhalten: 1071 Mal
- Kontaktdaten:
Re: [GELÖST] State() mit Delay in HM Script
da gibts noch ganz andere möglichkeiten, um die rega ins nirvana zu setzen. generell ist es aber ein interessanter ansatz, für den es mit sicherheit auch die ein oder andere vernünftige Anwendung gibt
Black
Black
Wenn das Fernsehprogramm immer mehr durch nervende Werbung unterbrochen wird und der Radiomoderator nur noch Müll erzählt, ist es besser, die Zeit für sinnvolle Dinge zu nutzen -
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg
Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann
Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W
technical contribution against annoying advertising
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg
Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann
Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W
technical contribution against annoying advertising