Programme beim Start der CCU nicht ausführen
Moderator: Co-Administratoren
Re: Programme beim Start der CCU nicht ausführen
Hallo,
folgendes habe ich den Beiträgen entnommen und einige Fragen.
1. Einrichten eines Programms 00 Initialisierung welches ohne „Wenn“ Bedingung beim Start einmalig ausgeführt wird.
In diesem rufe ich unter anderem auf:
CODE: ALLES AUSWÄHLEN
!letzte Ausfuerung von 00 Initialisierung
time letzterstart = dom.GetObject("00 Initialisierungen").ProgramLastExecuteTime();
dom.GetObject("Neustart").State(letzterstart);
In allen Programmen / Skripten habe ich dann eine Abfrage ob der System Start X Sekunden her ist.
CODE: ALLES AUSWÄHLEN
integer time = system.Date("%Y-%m-%d %H:%M:%S").ToTime().ToInteger();
integer letzter = dom.GetObject("Neustart").Value().ToTime().ToInteger();
integer dif = time - letzter;
time zeit = dif.ToTime();
if (dif > 240 ) {
! Hier kommt das Script rein… : Welches script ist gemeint?
} !Zeitabfrage Neustart
2. Einrichtung eines weiteren Programms: a.png Was muss ich an dem Script beachten, wie muss ich es vervollständigen?
Über eine Hilfe würde ich mich sehr freuen.
folgendes habe ich den Beiträgen entnommen und einige Fragen.
1. Einrichten eines Programms 00 Initialisierung welches ohne „Wenn“ Bedingung beim Start einmalig ausgeführt wird.
In diesem rufe ich unter anderem auf:
CODE: ALLES AUSWÄHLEN
!letzte Ausfuerung von 00 Initialisierung
time letzterstart = dom.GetObject("00 Initialisierungen").ProgramLastExecuteTime();
dom.GetObject("Neustart").State(letzterstart);
In allen Programmen / Skripten habe ich dann eine Abfrage ob der System Start X Sekunden her ist.
CODE: ALLES AUSWÄHLEN
integer time = system.Date("%Y-%m-%d %H:%M:%S").ToTime().ToInteger();
integer letzter = dom.GetObject("Neustart").Value().ToTime().ToInteger();
integer dif = time - letzter;
time zeit = dif.ToTime();
if (dif > 240 ) {
! Hier kommt das Script rein… : Welches script ist gemeint?
} !Zeitabfrage Neustart
2. Einrichtung eines weiteren Programms: a.png Was muss ich an dem Script beachten, wie muss ich es vervollständigen?
Über eine Hilfe würde ich mich sehr freuen.
Gruß
Hans
Hans
- Sammy
- Beiträge: 9172
- Registriert: 09.09.2008, 20:47
- Hat sich bedankt: 15 Mal
- Danksagung erhalten: 174 Mal
Re: Programme beim Start der CCU nicht ausführen
Programmnamen dürfen nicht mit Ziffern beginnen!
Links: CCU-Logik, Tipps für Anfänger, WebUI-Doku, Expertenparameter, virtuelle Aktorkanäle
Inventur vom 22.01.14: 516 Kanäle in 165 Geräten, 132 Programme, 270 Direkte Verknüpfungen
Ich übernehme für alle von mir gegebenen Hinweise, Tipps und Links keine Haftung! Das Befolgen meiner Tipps ist nur für Fachkundige gedacht und erfolgt auf eigene Gefahr!
Inventur vom 22.01.14: 516 Kanäle in 165 Geräten, 132 Programme, 270 Direkte Verknüpfungen
Ich übernehme für alle von mir gegebenen Hinweise, Tipps und Links keine Haftung! Das Befolgen meiner Tipps ist nur für Fachkundige gedacht und erfolgt auf eigene Gefahr!
Re: Programme beim Start der CCU nicht ausführen
Seit einem Jahr betreibe ich ca. Programme mit Vorzifferbezeichnung. Alle laufen einwandfrei.
Gruß
Hans
Hans
- Sammy
- Beiträge: 9172
- Registriert: 09.09.2008, 20:47
- Hat sich bedankt: 15 Mal
- Danksagung erhalten: 174 Mal
Re: Programme beim Start der CCU nicht ausführen
bekomme es jedesmal wieder durcheinander...
auf jeden Fall dürfen Variablen nicht mit Ziffern beginnen: http://homematic-forum.de/forum/viewtop ... 340#p58735
Es ist aber nicht auszuschließen, dass andere Objekte nicht auch unter bestimmten Umständen Probleme machen, wenn sie mit einer Ziffer beginnen oder Sonderzeichen beinhalten. Von daher meine allgemeine Empfehlung, grundsätzlich darauf zu verzichten, bevor man sich die Sonderfälle, wo es geht oder nicht, merkt und sich nie sicher sein kann, dass es unter gewissen Umständen (z.B. bei späterem Einsatz von Scripten) doch zu Problemen kommt.
Gruß Sammy
auf jeden Fall dürfen Variablen nicht mit Ziffern beginnen: http://homematic-forum.de/forum/viewtop ... 340#p58735
Es ist aber nicht auszuschließen, dass andere Objekte nicht auch unter bestimmten Umständen Probleme machen, wenn sie mit einer Ziffer beginnen oder Sonderzeichen beinhalten. Von daher meine allgemeine Empfehlung, grundsätzlich darauf zu verzichten, bevor man sich die Sonderfälle, wo es geht oder nicht, merkt und sich nie sicher sein kann, dass es unter gewissen Umständen (z.B. bei späterem Einsatz von Scripten) doch zu Problemen kommt.
Gruß Sammy
Links: CCU-Logik, Tipps für Anfänger, WebUI-Doku, Expertenparameter, virtuelle Aktorkanäle
Inventur vom 22.01.14: 516 Kanäle in 165 Geräten, 132 Programme, 270 Direkte Verknüpfungen
Ich übernehme für alle von mir gegebenen Hinweise, Tipps und Links keine Haftung! Das Befolgen meiner Tipps ist nur für Fachkundige gedacht und erfolgt auf eigene Gefahr!
Inventur vom 22.01.14: 516 Kanäle in 165 Geräten, 132 Programme, 270 Direkte Verknüpfungen
Ich übernehme für alle von mir gegebenen Hinweise, Tipps und Links keine Haftung! Das Befolgen meiner Tipps ist nur für Fachkundige gedacht und erfolgt auf eigene Gefahr!
- JPS
- Beiträge: 1093
- Registriert: 07.08.2010, 22:51
- System: Alternative CCU (auf Basis OCCU)
- Hat sich bedankt: 8 Mal
- Danksagung erhalten: 20 Mal
- Kontaktdaten:
Re: Programme beim Start der CCU nicht ausführen
Da ich immer mal wieder gefragt wurde, was es mit der Abfrage der Systemvariablen “CCU_im_Reboot” in einigen meiner Programme auf sich hat, habe ich mal eine...
Schritt für Schritt Anleitung zu diesem Thema
...verfasst, die vielleicht jemandem nützlich ist. An dieser Stelle nochmals Danke an berTTi für den Impuls damals.
Schritt für Schritt Anleitung zu diesem Thema
...verfasst, die vielleicht jemandem nützlich ist. An dieser Stelle nochmals Danke an berTTi für den Impuls damals.
Verwendung meiner Hinweise und Skripte auf eigenes Risiko | Ich übernehme hierfür keinerlei Gewährleistung bzw. Haftung
Re: Programme beim Start der CCU nicht ausführen
Hallo,
vielen Dank für deine strukturierte und verständliche Erklärung. Du hast mir sehr geholfen!
vielen Dank für deine strukturierte und verständliche Erklärung. Du hast mir sehr geholfen!
Gruß
Hans
Hans
- JPS
- Beiträge: 1093
- Registriert: 07.08.2010, 22:51
- System: Alternative CCU (auf Basis OCCU)
- Hat sich bedankt: 8 Mal
- Danksagung erhalten: 20 Mal
- Kontaktdaten:
Re: Programme beim Start der CCU nicht ausführen
Sehr gerne, freut mich, wenn es hilfthjd55 hat geschrieben:Hallo,
vielen Dank für deine strukturierte und verständliche Erklärung. Du hast mir sehr geholfen!
Verwendung meiner Hinweise und Skripte auf eigenes Risiko | Ich übernehme hierfür keinerlei Gewährleistung bzw. Haftung
-
- Beiträge: 18
- Registriert: 07.04.2014, 12:43
- Danksagung erhalten: 1 Mal
Re: Programme beim Start der CCU nicht ausführen
Hallo zusammen,
ich habe eine interessante Entdeckung gemacht. Wie bekannt werden beim CCU reboot alle Programme ausgeführt. Falls diese keine WENN Bedienung beinhalten folgt sofort der DANN Teil und das Haus entfaltet ungewollt seine Performance
Nach einem Reboot wunderte ich mich allerdings, dass ich dieses Problem nicht habe, bzw. nur ein Teil an Programmen ausgeführt würde. Ich hätte jedoch mit mehr gerechnet.
Die Programme, die nicht ausgeführt wurden konnte ich wie folgt identifizieren:
In der Auflistung alle vorhandenen Programme hatten einige Programme in der Spalte "Bedingung" ein Fragezeichen "?". Dieses habe ich jedoch nicht manuell eingetragen.
Wenn man dieses Programm nun öffnet sieht man, dass scheinbar das grüne Plus Symbol gedrückt wurde, jedoch keine weitere Auswahl getätigt wurde, also das Feld einfach dunkel hinterlegt ist (normalerweise kann man hier Geräteauswahl, Kanalzustand, Zeitsteuerung wählen). Dies scheint ebenfalls der Grund für das Fragezeichen in der "Bedingung" Spalte zu sein.
Bug oder Feature? ... kann ich leider nicht beantworten, jedoch führt es zu dem gewünschten Effekt, dass Programme nach einem Reboot nicht ausgeführt werden. Ich kann mir vorstellen, dass eine nicht vollständig ausgefüllte WENN Bedingung den gleichen Effekt hat.
Das künstliche Erzeugen einer WENN Bedingung (z.B. durch eine virtuelle Variable oder Taster) mag auch eine Lösung sein.
Grüße
BlastFurnace
ich habe eine interessante Entdeckung gemacht. Wie bekannt werden beim CCU reboot alle Programme ausgeführt. Falls diese keine WENN Bedienung beinhalten folgt sofort der DANN Teil und das Haus entfaltet ungewollt seine Performance
Nach einem Reboot wunderte ich mich allerdings, dass ich dieses Problem nicht habe, bzw. nur ein Teil an Programmen ausgeführt würde. Ich hätte jedoch mit mehr gerechnet.
Die Programme, die nicht ausgeführt wurden konnte ich wie folgt identifizieren:
In der Auflistung alle vorhandenen Programme hatten einige Programme in der Spalte "Bedingung" ein Fragezeichen "?". Dieses habe ich jedoch nicht manuell eingetragen.
Wenn man dieses Programm nun öffnet sieht man, dass scheinbar das grüne Plus Symbol gedrückt wurde, jedoch keine weitere Auswahl getätigt wurde, also das Feld einfach dunkel hinterlegt ist (normalerweise kann man hier Geräteauswahl, Kanalzustand, Zeitsteuerung wählen). Dies scheint ebenfalls der Grund für das Fragezeichen in der "Bedingung" Spalte zu sein.
Bug oder Feature? ... kann ich leider nicht beantworten, jedoch führt es zu dem gewünschten Effekt, dass Programme nach einem Reboot nicht ausgeführt werden. Ich kann mir vorstellen, dass eine nicht vollständig ausgefüllte WENN Bedingung den gleichen Effekt hat.
Das künstliche Erzeugen einer WENN Bedingung (z.B. durch eine virtuelle Variable oder Taster) mag auch eine Lösung sein.
Grüße
BlastFurnace