Hallo
Ich hatte einen Fehler und möchte Euch davor warnen !
Folgendes Problem :
Ich hatte festgestellt das scenen die mit
fibaro.scene(„execute“, {programm_ID})
gestartet werden, nicht Starten wenn vorher ein Restart oder Backub erstellt wurde.
Erst eine Veränderung in der Szene die gestartet werden soll und deren Abspeicherung behebt das Problem.
Das habe ich erst gemerkt nach dem einige Rolladen nich gefahren sind und Heizungen ballerten obwohl das Fenster auf war.
Nach dem ich eine Ablaufüberprüfung in Main und Szenen eingebaut habe konnte ich das verifizieren.
Jetzt wird zwangsweise von der Main der Ablauf der Szenen kontrolliert und die Laufzeit überwacht.
Eine sehr unschöne Sache !!
Nach einigen Supportmails hin und her und Online Fehlersuchen wahr noch keine Lösung gefunden.
Erst Heute Morgen kam mir der Rettende Gedanke !
Ich habe den Fehler gefunden warum die Szenen nach einem Neustart/Backup nicht Starten und erst eine Änderung in den Scenen das behebt !
Ich hatte auf der Declarationsseite nur Komentarzeilen sonst nichts.
Nach dem ich „{}“ eingefügt habe, wahr der Fehler behoben.
Jetzt starten die Scenen wie gewohnt auch nach einem Neustart oder Backup.
Ein Dummer Fehler mit sehr Ärgerlicher Auswirkung.
Hier aber das Programm das den Start und den Ablauf einer Szene überwacht.
--Eine Globale Variabel PingPong muss angelegt werden !
----------------------------------------------------------------
function programmstart(programm_ID,max_laufzeit)
max_laufzeit = tonumber(max_laufzeit)
fibaro.setGlobalVariable("PingPong","1")
starttime = os.time()
fibaro.scene("execute", {programm_ID})-- Start testszene
repeat
pingpong = tonumber(fibaro.getGlobalVariable("PingPong"))
mom_time = os.time()
t_diff = (mom_time - starttime)
until pingpong == 0 or t_diff > max_laufzeit
if t_diff > 0 then --sprich länger als 1s
print("Laufzeit ",programm_ID," = ",t_diff," s")
end
if t_diff > max_laufzeit then
print("Fehlerhafter Programmstart von ID = ",programm_ID)
end
end --function programmstart
----------------------------------------------------------------
programmstart(366,3) -- 366 ist die ID der Szene die gestartet werden soll, 3 ist die maximale Laufzeit
--Das muss in der Szene stehen die gestartet werden soll in dem Beispiel ist es die szene 366
--Programmablauf bestätigen für Main! in die Szene ( hier ID366) am Ende einfügen
-------------------------------------
fibaro.setGlobalVariable("PingPong","0")
-------------------------------------
Gruß Frank