Das klingt gut. Allerdings würd ich euch bitten, die aktuelle Version 1.7.0 zu testen. Da habe ich nun einiges geändert, gerade um auch das Problem der zeitgleichen Auslösungen zu beheben. Meine Tests liefen absolut erfolgreich, aber das kann bei anderen Setups durchaus anders sein.
Zieht euch doch bitte den aktuellen PR https://github.com/smarthomeNG/plugins/pull/386
bzw. die Version hier: https://github.com/onkelandy/plugins/tree/stateengine (Download als zip und den Ordner stateengine ersetzen)
Ankündigung
Einklappen
Keine Ankündigung bisher.
Stateengine Plugin Support
Einklappen
X
-
Hallo
ich bin auch erst seit ein paar Wochen von autblind auf stateengine mit struct umgezogen. Da autolbind-Umzugsbedingt noch nicht alles so 100% bei mir lief ist, mir das Problem beim Hochfahren zwar aufgefallen, jeoch dachte ich dass dies mit der Umstellung zu tun hatte.Zitat von Onkelandy Beitrag anzeigenKann die Probleme vielleicht jemand bestätigen bzw. mal mit dem develop Branch entsprechende Tests machen? Danke!
Hab jetzt die Develop-Version laufen, und zumindest heute lief alles Problemlos. Auch nach diversen Neustart's und Manuell- Schaltungen.
Gruß Ivan
Einen Kommentar schreiben:
-
Seit 1.6.1 hat sich sehr viel getan. Bitte updaten und beobachten. Hast du manual_exclude überall richtig gesetzt? Aktiviere beim betroffenen Item das manual_log zusätzlich
Seitenlange Logs halte ich für sinnfrei, bitte Bearbeiten und nur relevante Teile drin lassen.
für zeitgleiche triggerungen bin ich an ner Lösung dranZuletzt geändert von Onkelandy; 13.06.2020, 09:16.
Einen Kommentar schreiben:
-
Schau mal, heute wurde wieder ein Dauer-Suspend erzeugt. Ich poste unten das gesamte Log. Die wichtigen Uhrzeiten sind folgende:
10:08:07 - das Manuel-Item wird getriggert, weil über den Taster die Rollladen gefahren wird, es folgt ein Suspend mit Suspend-End für 11:38:07
10:39:22 - es erfolgt ein Release, weil wir aus dem Haus gehen (Gehen-Taster) und dann für alle Rollladen-Items das Release-Item auf True gesetzt wird
10:39:24 - aufgrund des ausgelösten Retriggers kommt es zu einer Neuevaluierung und (nach 4 Sekunden Berechnung!) zu dem Ergebnis, dass der Zustand "tags" nun aktiv ist, bis hierin alles richtig.
10:39:30 - es kommt wieder zum Triggern des Manuel-Items, analog 10:08:07. Dabei hat gar kein neuer Fahrbefehl für den Rollladen über den Schalter stattgefunden. Dies ist, was ich einmal als "Geisterbefehl" beschrieben hatte. Das passiert sogar, wenn ich den betreffenden Schalter vom Bus nehme. Suspend-End ist nun 12:09:30
10:39:53 - nochmal ein Release (ich habe den Gehen-Taster wohl zweimal gedrückt)
10:39:54 - wieder ein Retrigger, wieder 4 Sekunden Berechnung, dann erneut der Zustand "tags"
10:40:01 - wieder der Geisterbefehl, Suspend-End ist nun 12:10:01
12:10:05 - wieder der Geisterbefehl, Suspend-End is nun 13:40:05
und so geht das munter weiter. Immer wenn Suspend-End erreicht ist, taucht der Befehl vom Schalter wieder auf und löst ein neues Triggern des Manuel-Items und damit einen neuen Suspend aus.
Meine shng-Version ist 1.6.master
Plugins-Version ist 1.6.1 Master
Ich werde updaten, aber wenn ich dich richtig verstanden habe, hat es dazu gar keine Entwicklung gegeben, oder?
Code:2020-06-12 10:05:01.597154 Staying at Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.ausschlafen ('Anna Ausschlafen') based on conditionset Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.ausschlafen.enter ('enter') 2020-06-12 10:05:01.621522 Running action 'fahren' 2020-06-12 10:05:01.628868 Action 'fahren': Set 'Rollladen.Dachgeschoss.Anna.Gaube.Fahren' to 'True'. Repeat allowed by item configuration. 2020-06-12 10:05:03.473446 Update state of item Zustandsautomat =========================================== 2020-06-12 10:05:03.504890 Update triggered by Eval (item=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules source=Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell dest=None) 2020-06-12 10:05:03.515389 Eval initially triggered by StateEngine Plugin (item=Rollladen.Dachgeschoss.Anna.Gaube.Fahren source=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules) 2020-06-12 10:05:03.519397 Ignoring changes from StateEngine Plugin 2020-06-12 10:08:07.342588 Update state of item Zustandsautomat =========================================== 2020-06-12 10:08:07.344287 Update triggered by Eval (item=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules source=Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell dest=None) 2020-06-12 10:08:07.345744 Eval initially triggered by knx (item=Rollladen.Dachgeschoss.Anna.Gaube.Fahren source=11.1.2:ga=2/3/40) 2020-06-12 10:08:07.347337 Checking eval: se_eval.get_relative_itemproperty('..settings.suspendduration', 'value') * 60. 2020-06-12 10:08:07.348324 Executing method 'get_relative_itemproperty(..settings.suspendduration, value)' 2020-06-12 10:08:07.348841 Testing for relative item declaration ..settings.suspendduration 2020-06-12 10:08:07.349829 Item property value from Rollladen.Dachgeschoss.Anna.Gaube.automatik.settings.suspendduration is: 90 2020-06-12 10:08:07.350565 Last state: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.ausschlafen ('Anna Ausschlafen') 2020-06-12 10:08:07.351775 Testing for relative item declaration ..conditionset_id 2020-06-12 10:08:07.352704 Testing for relative item declaration ..conditionset_name 2020-06-12 10:08:07.353533 Last Conditionset: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.ausschlafen.enter ('enter') 2020-06-12 10:08:07.354690 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.release' ('release') can be entered: 2020-06-12 10:08:07.355796 Check condition set 'enter' 2020-06-12 10:08:07.356976 Condition 'release': Checking all relevant stuff 2020-06-12 10:08:07.357707 Condition 'release': value=True negate=False current=False 2020-06-12 10:08:07.358185 not OK -> not matching 2020-06-12 10:08:07.358709 State can not be entered 2020-06-12 10:08:07.359822 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.lock' ('gesperrt') can be entered: 2020-06-12 10:08:07.360899 Check condition set 'enter' 2020-06-12 10:08:07.362075 Condition 'lock': Checking all relevant stuff 2020-06-12 10:08:07.366292 Condition 'lock': value=True negate=False current=False 2020-06-12 10:08:07.368382 not OK -> not matching 2020-06-12 10:08:07.370859 State can not be entered 2020-06-12 10:08:07.373606 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend' ('ausgesetzt') can be entered: 2020-06-12 10:08:07.382083 Check condition set 'enter_manuell' 2020-06-12 10:08:07.384932 Condition 'trigger_source': Checking all relevant stuff 2020-06-12 10:08:07.388452 Trying to get value of eval <bound method SeItem.get_update_trigger_source of Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules> 2020-06-12 10:08:07.389661 Checking eval: se_eval.get_relative_itemproperty('..manuell', 'path'). 2020-06-12 10:08:07.393873 Executing method 'get_relative_itemproperty(..manuell, path)' 2020-06-12 10:08:07.394758 Testing for relative item declaration ..manuell 2020-06-12 10:08:07.397239 Item property path from Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell is: Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell 2020-06-12 10:08:07.400430 Condition 'trigger_source': value=Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell negate=False current=Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell 2020-06-12 10:08:07.401202 OK -> matching 2020-06-12 10:08:07.402733 Age of 'trigger_source': No limits given 2020-06-12 10:08:07.405457 Condition 'suspend_active': Checking all relevant stuff 2020-06-12 10:08:07.406999 Condition 'suspend_active': value=True negate=False current=True 2020-06-12 10:08:07.407764 OK -> matching 2020-06-12 10:08:07.409461 Age of 'suspend_active': No limits given 2020-06-12 10:08:07.418273 State can be entered 2020-06-12 10:08:07.420119 Testing for relative item declaration ..conditionset_id 2020-06-12 10:08:07.422223 Testing for relative item declaration ..conditionset_name 2020-06-12 10:08:07.432364 Leaving Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.ausschlafen ('Anna Ausschlafen'). Condition set was: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.ausschlafen.enter 2020-06-12 10:08:07.451541 Entering Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend ('ausgesetzt') based on conditionset Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend.enter_manuell ('enter_manuell') 2020-06-12 10:08:07.460042 Running action 'suspend' 2020-06-12 10:08:07.461885 Action 'suspend': Executing special action 'suspend' using item '['Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend', 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell']'. 2020-06-12 10:08:07.465984 Set 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend' to 'True'. 2020-06-12 10:08:07.480938 Updated variable 'item.suspend_remaining' to 5400 2020-06-12 10:08:07.481833 Running action 'suspend_end' 2020-06-12 10:08:07.482815 Checking eval: se_eval.insert_suspend_time('..suspend', suspend_text='%X'). 2020-06-12 10:08:07.483475 Executing method 'insert_suspend_time(..suspend, %X)' 2020-06-12 10:08:07.484107 Suspend time is 5400 2020-06-12 10:08:07.485604 Testing for relative item declaration ..suspend 2020-06-12 10:08:07.486284 Suspend item is Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend 2020-06-12 10:08:07.486938 Current suspend age: 0.018783 2020-06-12 10:08:07.488056 Remaining suspend time: 5399.981217 2020-06-12 10:08:07.488744 Suspend finished at 2020-06-12 11:38:07.469605+02:00 2020-06-12 10:08:07.490439 Action 'suspend_end': Set 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend_end' to '11:38:07'. 2020-06-12 10:08:07.494020 Action 'retrigger: Removing previous delay timer 'retrigger-SeSpecialDelayTimer'. 2020-06-12 10:08:07.503641 Action 'retrigger: Add 5400 second timer 'retrigger-SeSpecialDelayTimer' for delayed execution. 2020-06-12 10:10:01.051726 Update state of item Zustandsautomat =========================================== 2020-06-12 10:10:01.057515 Update triggered by Eval (item=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules source=Trigger_se.trigger_1 dest=None) 2020-06-12 10:10:01.063231 Eval initially triggered by Logic (item=Trigger_se.trigger_1 source=None) 2020-06-12 10:10:01.066874 Checking eval: se_eval.get_relative_itemproperty('..settings.suspendduration', 'value') * 60. 2020-06-12 10:10:01.069602 Executing method 'get_relative_itemproperty(..settings.suspendduration, value)' 2020-06-12 10:10:01.073474 Testing for relative item declaration ..settings.suspendduration 2020-06-12 10:10:01.075183 Item property value from Rollladen.Dachgeschoss.Anna.Gaube.automatik.settings.suspendduration is: 90 2020-06-12 10:10:01.085410 Last state: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend ('ausgesetzt') 2020-06-12 10:10:01.096417 Testing for relative item declaration ..conditionset_id 2020-06-12 10:10:01.098241 Testing for relative item declaration ..conditionset_name 2020-06-12 10:10:01.105667 Last Conditionset: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend.enter_manuell ('enter_manuell') 2020-06-12 10:10:01.137306 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.release' ('release') can be entered: 2020-06-12 10:10:01.164267 Check condition set 'enter' 2020-06-12 10:10:01.206599 Condition 'release': Checking all relevant stuff 2020-06-12 10:10:01.207868 Condition 'release': value=True negate=False current=False 2020-06-12 10:10:01.209612 not OK -> not matching 2020-06-12 10:10:01.220346 State can not be entered 2020-06-12 10:10:01.249775 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.lock' ('gesperrt') can be entered: 2020-06-12 10:10:01.264631 Check condition set 'enter' 2020-06-12 10:10:01.295783 Condition 'lock': Checking all relevant stuff 2020-06-12 10:10:01.297404 Condition 'lock': value=True negate=False current=False 2020-06-12 10:10:01.300696 not OK -> not matching 2020-06-12 10:10:01.301924 State can not be entered 2020-06-12 10:10:01.321503 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend' ('ausgesetzt') can be entered: 2020-06-12 10:10:01.368876 Check condition set 'enter_manuell' 2020-06-12 10:10:01.400756 Condition 'trigger_source': Checking all relevant stuff 2020-06-12 10:10:01.404419 Trying to get value of eval <bound method SeItem.get_update_trigger_source of Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules> 2020-06-12 10:10:01.420730 Checking eval: se_eval.get_relative_itemproperty('..manuell', 'path'). 2020-06-12 10:10:01.425666 Executing method 'get_relative_itemproperty(..manuell, path)' 2020-06-12 10:10:01.431256 Testing for relative item declaration ..manuell 2020-06-12 10:10:01.437066 Item property path from Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell is: Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell 2020-06-12 10:10:01.439104 Condition 'trigger_source': value=Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell negate=False current=Trigger_se.trigger_1 2020-06-12 10:10:01.442016 not OK -> not matching 2020-06-12 10:10:01.444107 Check condition set 'enter_stay' 2020-06-12 10:10:01.484985 Condition 'laststate': Checking all relevant stuff 2020-06-12 10:10:01.492702 Trying to get value of eval <bound method SeItem.get_laststate_id of Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules> 2020-06-12 10:10:01.515395 Condition 'laststate': value=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend negate=False current=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend 2020-06-12 10:10:01.518432 OK -> matching 2020-06-12 10:10:01.524395 Age of 'laststate': No limits given 2020-06-12 10:10:01.554270 Condition 'suspend_active': Checking all relevant stuff 2020-06-12 10:10:01.560072 Condition 'suspend_active': value=True negate=False current=True 2020-06-12 10:10:01.561808 OK -> matching 2020-06-12 10:10:01.567385 Age of 'suspend_active': No limits given 2020-06-12 10:10:01.616693 Condition 'suspend': Checking all relevant stuff 2020-06-12 10:10:01.623985 Condition 'suspend': value=True negate=False current=True 2020-06-12 10:10:01.627103 OK -> matching 2020-06-12 10:10:01.639318 Age of 'suspend': min=[None] max=[5400] negate=None current=114.171119 2020-06-12 10:10:01.658086 Testing valuepair min None and max 5400 2020-06-12 10:10:01.673242 given limits ok -> matching 2020-06-12 10:10:01.698777 State can be entered 2020-06-12 10:10:01.793410 Testing for relative item declaration ..conditionset_id 2020-06-12 10:10:01.806122 Testing for relative item declaration ..conditionset_name 2020-06-12 10:10:01.816498 Staying at Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend ('ausgesetzt') based on conditionset Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend.enter_stay ('enter_stay') 2020-06-12 10:10:01.867397 Running action 'suspend' 2020-06-12 10:10:01.872835 Action 'suspend': Executing special action 'suspend' using item '['Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend', 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell']'. Repeat allowed by action configuration. 2020-06-12 10:10:01.927989 Leaving 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend' untouched. 2020-06-12 10:10:01.940774 Updated variable 'item.suspend_remaining' to 5286 2020-06-12 10:10:01.948207 Running action 'suspend_end' 2020-06-12 10:10:01.971336 Checking eval: se_eval.insert_suspend_time('..suspend', suspend_text='%X'). 2020-06-12 10:10:01.989473 Executing method 'insert_suspend_time(..suspend, %X)' 2020-06-12 10:10:02.001012 Suspend time is 5400 2020-06-12 10:10:02.004016 Testing for relative item declaration ..suspend 2020-06-12 10:10:02.012038 Suspend item is Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend 2020-06-12 10:10:02.027445 Current suspend age: 114.559203 2020-06-12 10:10:02.030159 Remaining suspend time: 5285.440797 2020-06-12 10:10:02.041799 Suspend finished at 2020-06-12 11:38:07.481941+02:00 2020-06-12 10:10:02.062162 Action 'suspend_end': Set 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend_end' to '11:38:07'. Repeat allowed by action configuration. 2020-06-12 10:10:02.091469 Action 'retrigger: Removing previous delay timer 'retrigger-SeSpecialDelayTimer'. 2020-06-12 10:10:02.245494 Action 'retrigger: Add 5286 second timer 'retrigger-SeSpecialDelayTimer' for delayed execution. Repeat allowed by action configuration. 2020-06-12 10:15:00.844827 Update state of item Zustandsautomat =========================================== 2020-06-12 10:15:00.852449 Update triggered by Eval (item=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules source=Trigger_se.trigger_1 dest=None) 2020-06-12 10:15:00.862725 Eval initially triggered by Logic (item=Trigger_se.trigger_1 source=None) 2020-06-12 10:15:00.870438 Checking eval: se_eval.get_relative_itemproperty('..settings.suspendduration', 'value') * 60. 2020-06-12 10:15:00.871451 Executing method 'get_relative_itemproperty(..settings.suspendduration, value)' 2020-06-12 10:15:00.874243 Testing for relative item declaration ..settings.suspendduration 2020-06-12 10:15:00.878289 Item property value from Rollladen.Dachgeschoss.Anna.Gaube.automatik.settings.suspendduration is: 90 2020-06-12 10:15:00.881529 Last state: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend ('ausgesetzt') 2020-06-12 10:15:00.893644 Testing for relative item declaration ..conditionset_id 2020-06-12 10:15:00.899635 Testing for relative item declaration ..conditionset_name 2020-06-12 10:15:00.922787 Last Conditionset: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend.enter_stay ('enter_stay') 2020-06-12 10:15:00.989720 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.release' ('release') can be entered: 2020-06-12 10:15:01.026703 Check condition set 'enter' 2020-06-12 10:15:01.058300 Condition 'release': Checking all relevant stuff 2020-06-12 10:15:01.064286 Condition 'release': value=True negate=False current=False 2020-06-12 10:15:01.064620 not OK -> not matching 2020-06-12 10:15:01.077358 State can not be entered 2020-06-12 10:15:01.094952 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.lock' ('gesperrt') can be entered: 2020-06-12 10:15:01.128667 Check condition set 'enter' 2020-06-12 10:15:01.157630 Condition 'lock': Checking all relevant stuff 2020-06-12 10:15:01.159100 Condition 'lock': value=True negate=False current=False 2020-06-12 10:15:01.160517 not OK -> not matching 2020-06-12 10:15:01.162169 State can not be entered 2020-06-12 10:15:01.194075 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend' ('ausgesetzt') can be entered: 2020-06-12 10:15:01.228967 Check condition set 'enter_manuell' 2020-06-12 10:15:01.265072 Condition 'trigger_source': Checking all relevant stuff 2020-06-12 10:15:01.265586 Trying to get value of eval <bound method SeItem.get_update_trigger_source of Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules> 2020-06-12 10:15:01.270291 Checking eval: se_eval.get_relative_itemproperty('..manuell', 'path'). 2020-06-12 10:15:01.274098 Executing method 'get_relative_itemproperty(..manuell, path)' 2020-06-12 10:15:01.275851 Testing for relative item declaration ..manuell 2020-06-12 10:15:01.278798 Item property path from Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell is: Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell 2020-06-12 10:15:01.279926 Condition 'trigger_source': value=Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell negate=False current=Trigger_se.trigger_1 2020-06-12 10:15:01.293439 not OK -> not matching 2020-06-12 10:15:01.295024 Check condition set 'enter_stay' 2020-06-12 10:15:01.366989 Condition 'laststate': Checking all relevant stuff 2020-06-12 10:15:01.370554 Trying to get value of eval <bound method SeItem.get_laststate_id of Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules> 2020-06-12 10:15:01.374202 Condition 'laststate': value=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend negate=False current=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend 2020-06-12 10:15:01.377040 OK -> matching 2020-06-12 10:15:01.385368 Age of 'laststate': No limits given 2020-06-12 10:15:01.455182 Condition 'suspend_active': Checking all relevant stuff 2020-06-12 10:15:01.460061 Condition 'suspend_active': value=True negate=False current=True 2020-06-12 10:15:01.480793 OK -> matching 2020-06-12 10:15:01.481448 Age of 'suspend_active': No limits given 2020-06-12 10:15:01.552132 Condition 'suspend': Checking all relevant stuff 2020-06-12 10:15:01.555891 Condition 'suspend': value=True negate=False current=True 2020-06-12 10:15:01.563219 OK -> matching 2020-06-12 10:15:01.580259 Age of 'suspend': min=[None] max=[5400] negate=None current=414.111822 2020-06-12 10:15:01.585108 Testing valuepair min None and max 5400 2020-06-12 10:15:01.601630 given limits ok -> matching 2020-06-12 10:15:01.616092 State can be entered 2020-06-12 10:15:01.672170 Testing for relative item declaration ..conditionset_id 2020-06-12 10:15:01.674819 Testing for relative item declaration ..conditionset_name 2020-06-12 10:15:01.689668 Staying at Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend ('ausgesetzt') based on conditionset Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend.enter_stay ('enter_stay') 2020-06-12 10:15:01.781857 Running action 'suspend' 2020-06-12 10:15:01.813936 Action 'suspend': Executing special action 'suspend' using item '['Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend', 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell']'. Repeat allowed by action configuration. 2020-06-12 10:15:01.881828 Leaving 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend' untouched. 2020-06-12 10:15:01.887199 Updated variable 'item.suspend_remaining' to 4986 2020-06-12 10:15:01.890458 Running action 'suspend_end' 2020-06-12 10:15:01.895932 Checking eval: se_eval.insert_suspend_time('..suspend', suspend_text='%X'). 2020-06-12 10:15:01.906086 Executing method 'insert_suspend_time(..suspend, %X)' 2020-06-12 10:15:01.907024 Suspend time is 5400 2020-06-12 10:15:01.912051 Testing for relative item declaration ..suspend 2020-06-12 10:15:01.918286 Suspend item is Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend 2020-06-12 10:15:01.920046 Current suspend age: 414.451803 2020-06-12 10:15:01.934294 Remaining suspend time: 4985.548197 2020-06-12 10:15:01.938975 Suspend finished at 2020-06-12 11:38:07.486473+02:00 2020-06-12 10:15:01.950857 Action 'suspend_end': Set 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend_end' to '11:38:07'. Repeat allowed by action configuration. 2020-06-12 10:15:01.957804 Action 'retrigger: Removing previous delay timer 'retrigger-SeSpecialDelayTimer'. 2020-06-12 10:15:02.082133 Action 'retrigger: Add 4986 second timer 'retrigger-SeSpecialDelayTimer' for delayed execution. Repeat allowed by action configuration. 2020-06-12 10:20:00.791860 Update state of item Zustandsautomat =========================================== 2020-06-12 10:20:00.802261 Update triggered by Eval (item=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules source=Trigger_se.trigger_1 dest=None) 2020-06-12 10:20:00.817240 Eval initially triggered by Logic (item=Trigger_se.trigger_1 source=None) 2020-06-12 10:20:00.825000 Checking eval: se_eval.get_relative_itemproperty('..settings.suspendduration', 'value') * 60. 2020-06-12 10:20:00.827283 Executing method 'get_relative_itemproperty(..settings.suspendduration, value)' 2020-06-12 10:20:00.838538 Testing for relative item declaration ..settings.suspendduration 2020-06-12 10:20:00.843375 Item property value from Rollladen.Dachgeschoss.Anna.Gaube.automatik.settings.suspendduration is: 90 2020-06-12 10:20:00.853057 Last state: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend ('ausgesetzt') 2020-06-12 10:20:00.873927 Testing for relative item declaration ..conditionset_id 2020-06-12 10:20:00.875118 Testing for relative item declaration ..conditionset_name 2020-06-12 10:20:00.886549 Last Conditionset: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend.enter_stay ('enter_stay') 2020-06-12 10:20:00.906072 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.release' ('release') can be entered: 2020-06-12 10:20:00.922616 Check condition set 'enter' 2020-06-12 10:20:00.987230 Condition 'release': Checking all relevant stuff 2020-06-12 10:20:00.999790 Condition 'release': value=True negate=False current=False 2020-06-12 10:20:01.016059 not OK -> not matching 2020-06-12 10:20:01.019420 State can not be entered 2020-06-12 10:20:01.042361 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.lock' ('gesperrt') can be entered: 2020-06-12 10:20:01.068821 Check condition set 'enter' 2020-06-12 10:20:01.109454 Condition 'lock': Checking all relevant stuff 2020-06-12 10:20:01.111365 Condition 'lock': value=True negate=False current=False 2020-06-12 10:20:01.121120 not OK -> not matching 2020-06-12 10:20:01.123082 State can not be entered 2020-06-12 10:20:01.170938 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend' ('ausgesetzt') can be entered: 2020-06-12 10:20:01.211496 Check condition set 'enter_manuell' 2020-06-12 10:20:01.238021 Condition 'trigger_source': Checking all relevant stuff 2020-06-12 10:20:01.252823 Trying to get value of eval <bound method SeItem.get_update_trigger_source of Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules> 2020-06-12 10:20:01.261315 Checking eval: se_eval.get_relative_itemproperty('..manuell', 'path'). 2020-06-12 10:20:01.271646 Executing method 'get_relative_itemproperty(..manuell, path)' 2020-06-12 10:20:01.275769 Testing for relative item declaration ..manuell 2020-06-12 10:20:01.280635 Item property path from Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell is: Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell 2020-06-12 10:20:01.285273 Condition 'trigger_source': value=Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell negate=False current=Trigger_se.trigger_1 2020-06-12 10:20:01.294298 not OK -> not matching 2020-06-12 10:20:01.296739 Check condition set 'enter_stay' 2020-06-12 10:20:01.355740 Condition 'laststate': Checking all relevant stuff 2020-06-12 10:20:01.364200 Trying to get value of eval <bound method SeItem.get_laststate_id of Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules> 2020-06-12 10:20:01.375548 Condition 'laststate': value=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend negate=False current=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend 2020-06-12 10:20:01.383130 OK -> matching 2020-06-12 10:20:01.395238 Age of 'laststate': No limits given 2020-06-12 10:20:01.454677 Condition 'suspend_active': Checking all relevant stuff 2020-06-12 10:20:01.467573 Condition 'suspend_active': value=True negate=False current=True 2020-06-12 10:20:01.473500 OK -> matching 2020-06-12 10:20:01.478385 Age of 'suspend_active': No limits given 2020-06-12 10:20:01.541374 Condition 'suspend': Checking all relevant stuff 2020-06-12 10:20:01.543929 Condition 'suspend': value=True negate=False current=True 2020-06-12 10:20:01.552119 OK -> matching 2020-06-12 10:20:01.563137 Age of 'suspend': min=[None] max=[5400] negate=None current=714.0947 2020-06-12 10:20:01.570176 Testing valuepair min None and max 5400 2020-06-12 10:20:01.571494 given limits ok -> matching 2020-06-12 10:20:01.597720 State can be entered 2020-06-12 10:20:01.626392 Testing for relative item declaration ..conditionset_id 2020-06-12 10:20:01.629866 Testing for relative item declaration ..conditionset_name 2020-06-12 10:20:01.649854 Staying at Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend ('ausgesetzt') based on conditionset Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend.enter_stay ('enter_stay') 2020-06-12 10:20:01.670052 Running action 'suspend' 2020-06-12 10:20:01.672431 Action 'suspend': Executing special action 'suspend' using item '['Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend', 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell']'. Repeat allowed by action configuration. 2020-06-12 10:20:01.693879 Leaving 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend' untouched. 2020-06-12 10:20:01.698444 Updated variable 'item.suspend_remaining' to 4686 2020-06-12 10:20:01.702337 Running action 'suspend_end' 2020-06-12 10:20:01.704828 Checking eval: se_eval.insert_suspend_time('..suspend', suspend_text='%X'). 2020-06-12 10:20:01.705873 Executing method 'insert_suspend_time(..suspend, %X)' 2020-06-12 10:20:01.708306 Suspend time is 5400 2020-06-12 10:20:01.709601 Testing for relative item declaration ..suspend 2020-06-12 10:20:01.712352 Suspend item is Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend 2020-06-12 10:20:01.716399 Current suspend age: 714.248335 2020-06-12 10:20:01.720953 Remaining suspend time: 4685.751665 2020-06-12 10:20:01.726543 Suspend finished at 2020-06-12 11:38:07.477858+02:00 2020-06-12 10:20:01.729888 Action 'suspend_end': Set 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend_end' to '11:38:07'. Repeat allowed by action configuration. 2020-06-12 10:20:01.751176 Action 'retrigger: Removing previous delay timer 'retrigger-SeSpecialDelayTimer'. 2020-06-12 10:20:01.799443 Action 'retrigger: Add 4686 second timer 'retrigger-SeSpecialDelayTimer' for delayed execution. Repeat allowed by action configuration. 2020-06-12 10:25:00.683347 Update state of item Zustandsautomat =========================================== 2020-06-12 10:25:00.710142 Update triggered by Eval (item=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules source=Trigger_se.trigger_1 dest=None) 2020-06-12 10:25:00.719377 Eval initially triggered by Logic (item=Trigger_se.trigger_1 source=None) 2020-06-12 10:25:00.726041 Checking eval: se_eval.get_relative_itemproperty('..settings.suspendduration', 'value') * 60. 2020-06-12 10:25:00.729463 Executing method 'get_relative_itemproperty(..settings.suspendduration, value)' 2020-06-12 10:25:00.731727 Testing for relative item declaration ..settings.suspendduration 2020-06-12 10:25:00.733086 Item property value from Rollladen.Dachgeschoss.Anna.Gaube.automatik.settings.suspendduration is: 90 2020-06-12 10:25:00.735592 Last state: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend ('ausgesetzt') 2020-06-12 10:25:00.753721 Testing for relative item declaration ..conditionset_id 2020-06-12 10:25:00.761651 Testing for relative item declaration ..conditionset_name 2020-06-12 10:25:00.767405 Last Conditionset: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend.enter_stay ('enter_stay') 2020-06-12 10:25:00.783615 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.release' ('release') can be entered: 2020-06-12 10:25:00.817373 Check condition set 'enter' 2020-06-12 10:25:00.844584 Condition 'release': Checking all relevant stuff 2020-06-12 10:25:00.853598 Condition 'release': value=True negate=False current=False 2020-06-12 10:25:00.855167 not OK -> not matching 2020-06-12 10:25:00.856122 State can not be entered 2020-06-12 10:25:00.890436 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.lock' ('gesperrt') can be entered: 2020-06-12 10:25:00.969649 Check condition set 'enter' 2020-06-12 10:25:01.002701 Condition 'lock': Checking all relevant stuff 2020-06-12 10:25:01.007950 Condition 'lock': value=True negate=False current=False 2020-06-12 10:25:01.022232 not OK -> not matching 2020-06-12 10:25:01.025665 State can not be entered 2020-06-12 10:25:01.064925 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend' ('ausgesetzt') can be entered: 2020-06-12 10:25:01.103411 Check condition set 'enter_manuell' 2020-06-12 10:25:01.141061 Condition 'trigger_source': Checking all relevant stuff 2020-06-12 10:25:01.142249 Trying to get value of eval <bound method SeItem.get_update_trigger_source of Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules> 2020-06-12 10:25:01.144090 Checking eval: se_eval.get_relative_itemproperty('..manuell', 'path'). 2020-06-12 10:25:01.150609 Executing method 'get_relative_itemproperty(..manuell, path)' 2020-06-12 10:25:01.153177 Testing for relative item declaration ..manuell 2020-06-12 10:25:01.157565 Item property path from Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell is: Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell 2020-06-12 10:25:01.159283 Condition 'trigger_source': value=Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell negate=False current=Trigger_se.trigger_1 2020-06-12 10:25:01.164790 not OK -> not matching 2020-06-12 10:25:01.175390 Check condition set 'enter_stay' 2020-06-12 10:25:01.253488 Condition 'laststate': Checking all relevant stuff 2020-06-12 10:25:01.259204 Trying to get value of eval <bound method SeItem.get_laststate_id of Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules> 2020-06-12 10:25:01.289349 Condition 'laststate': value=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend negate=False current=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend 2020-06-12 10:25:01.309581 OK -> matching 2020-06-12 10:25:01.319838 Age of 'laststate': No limits given 2020-06-12 10:25:01.395391 Condition 'suspend_active': Checking all relevant stuff 2020-06-12 10:25:01.401300 Condition 'suspend_active': value=True negate=False current=True 2020-06-12 10:25:01.420399 OK -> matching 2020-06-12 10:25:01.443317 Age of 'suspend_active': No limits given 2020-06-12 10:25:01.538857 Condition 'suspend': Checking all relevant stuff 2020-06-12 10:25:01.546746 Condition 'suspend': value=True negate=False current=True 2020-06-12 10:25:01.562416 OK -> matching 2020-06-12 10:25:01.568634 Age of 'suspend': min=[None] max=[5400] negate=None current=1014.100215 2020-06-12 10:25:01.570953 Testing valuepair min None and max 5400 2020-06-12 10:25:01.589523 given limits ok -> matching 2020-06-12 10:25:01.615191 State can be entered 2020-06-12 10:25:01.698662 Testing for relative item declaration ..conditionset_id 2020-06-12 10:25:01.703311 Testing for relative item declaration ..conditionset_name 2020-06-12 10:25:01.715968 Staying at Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend ('ausgesetzt') based on conditionset Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend.enter_stay ('enter_stay') 2020-06-12 10:25:01.773579 Running action 'suspend' 2020-06-12 10:25:01.791077 Action 'suspend': Executing special action 'suspend' using item '['Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend', 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell']'. Repeat allowed by action configuration. 2020-06-12 10:25:01.843700 Leaving 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend' untouched. 2020-06-12 10:25:01.850354 Updated variable 'item.suspend_remaining' to 4386 2020-06-12 10:25:01.858642 Running action 'suspend_end' 2020-06-12 10:25:01.860278 Checking eval: se_eval.insert_suspend_time('..suspend', suspend_text='%X'). 2020-06-12 10:25:01.872797 Executing method 'insert_suspend_time(..suspend, %X)' 2020-06-12 10:25:01.878277 Suspend time is 5400 2020-06-12 10:25:01.889874 Testing for relative item declaration ..suspend 2020-06-12 10:25:01.900413 Suspend item is Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend 2020-06-12 10:25:01.904053 Current suspend age: 1014.435813 2020-06-12 10:25:01.915292 Remaining suspend time: 4385.564187 2020-06-12 10:25:01.933137 Suspend finished at 2020-06-12 11:38:07.496691+02:00 2020-06-12 10:25:01.948155 Action 'suspend_end': Set 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend_end' to '11:38:07'. Repeat allowed by action configuration. 2020-06-12 10:25:01.960554 Action 'retrigger: Removing previous delay timer 'retrigger-SeSpecialDelayTimer'. 2020-06-12 10:25:02.140114 Action 'retrigger: Add 4386 second timer 'retrigger-SeSpecialDelayTimer' for delayed execution. Repeat allowed by action configuration. 2020-06-12 10:30:00.874397 Update state of item Zustandsautomat =========================================== 2020-06-12 10:30:00.891935 Update triggered by Eval (item=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules source=Trigger_se.trigger_1 dest=None) 2020-06-12 10:30:00.893627 Eval initially triggered by Logic (item=Trigger_se.trigger_1 source=None) 2020-06-12 10:30:00.896124 Checking eval: se_eval.get_relative_itemproperty('..settings.suspendduration', 'value') * 60. 2020-06-12 10:30:00.898954 Executing method 'get_relative_itemproperty(..settings.suspendduration, value)' 2020-06-12 10:30:00.902974 Testing for relative item declaration ..settings.suspendduration 2020-06-12 10:30:00.927558 Item property value from Rollladen.Dachgeschoss.Anna.Gaube.automatik.settings.suspendduration is: 90 2020-06-12 10:30:00.940076 Last state: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend ('ausgesetzt') 2020-06-12 10:30:00.986241 Testing for relative item declaration ..conditionset_id 2020-06-12 10:30:00.990617 Testing for relative item declaration ..conditionset_name 2020-06-12 10:30:00.998916 Last Conditionset: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend.enter_stay ('enter_stay') 2020-06-12 10:30:01.023113 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.release' ('release') can be entered: 2020-06-12 10:30:01.049340 Check condition set 'enter' 2020-06-12 10:30:01.078643 Condition 'release': Checking all relevant stuff 2020-06-12 10:30:01.083925 Condition 'release': value=True negate=False current=False 2020-06-12 10:30:01.086301 not OK -> not matching 2020-06-12 10:30:01.088958 State can not be entered 2020-06-12 10:30:01.108523 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.lock' ('gesperrt') can be entered: 2020-06-12 10:30:01.131961 Check condition set 'enter' 2020-06-12 10:30:01.161696 Condition 'lock': Checking all relevant stuff 2020-06-12 10:30:01.162787 Condition 'lock': value=True negate=False current=False 2020-06-12 10:30:01.163652 not OK -> not matching 2020-06-12 10:30:01.177718 State can not be entered 2020-06-12 10:30:01.206000 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend' ('ausgesetzt') can be entered: 2020-06-12 10:30:01.242400 Check condition set 'enter_manuell' 2020-06-12 10:30:01.291031 Condition 'trigger_source': Checking all relevant stuff 2020-06-12 10:30:01.294468 Trying to get value of eval <bound method SeItem.get_update_trigger_source of Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules> 2020-06-12 10:30:01.298368 Checking eval: se_eval.get_relative_itemproperty('..manuell', 'path'). 2020-06-12 10:30:01.343842 Executing method 'get_relative_itemproperty(..manuell, path)' 2020-06-12 10:30:01.358420 Testing for relative item declaration ..manuell 2020-06-12 10:30:01.379004 Item property path from Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell is: Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell 2020-06-12 10:30:01.385174 Condition 'trigger_source': value=Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell negate=False current=Trigger_se.trigger_1 2020-06-12 10:30:01.389062 not OK -> not matching 2020-06-12 10:30:01.394532 Check condition set 'enter_stay' 2020-06-12 10:30:01.429745 Condition 'laststate': Checking all relevant stuff 2020-06-12 10:30:01.435078 Trying to get value of eval <bound method SeItem.get_laststate_id of Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules> 2020-06-12 10:30:01.437469 Condition 'laststate': value=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend negate=False current=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend 2020-06-12 10:30:01.441147 OK -> matching 2020-06-12 10:30:01.454842 Age of 'laststate': No limits given 2020-06-12 10:30:01.494765 Condition 'suspend_active': Checking all relevant stuff 2020-06-12 10:30:01.498676 Condition 'suspend_active': value=True negate=False current=True 2020-06-12 10:30:01.501847 OK -> matching 2020-06-12 10:30:01.522560 Age of 'suspend_active': No limits given 2020-06-12 10:30:01.557697 Condition 'suspend': Checking all relevant stuff 2020-06-12 10:30:01.565455 Condition 'suspend': value=True negate=False current=True 2020-06-12 10:30:01.568567 OK -> matching 2020-06-12 10:30:01.575446 Age of 'suspend': min=[None] max=[5400] negate=None current=1314.107309 2020-06-12 10:30:01.581929 Testing valuepair min None and max 5400 2020-06-12 10:30:01.594716 given limits ok -> matching 2020-06-12 10:30:01.601776 State can be entered 2020-06-12 10:30:01.648517 Testing for relative item declaration ..conditionset_id 2020-06-12 10:30:01.650794 Testing for relative item declaration ..conditionset_name 2020-06-12 10:30:01.656107 Staying at Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend ('ausgesetzt') based on conditionset Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend.enter_stay ('enter_stay') 2020-06-12 10:30:01.684493 Running action 'suspend' 2020-06-12 10:30:01.690136 Action 'suspend': Executing special action 'suspend' using item '['Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend', 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell']'. Repeat allowed by action configuration. 2020-06-12 10:30:01.719642 Leaving 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend' untouched. 2020-06-12 10:30:01.726555 Updated variable 'item.suspend_remaining' to 4086 2020-06-12 10:30:01.730249 Running action 'suspend_end' 2020-06-12 10:30:01.735465 Checking eval: se_eval.insert_suspend_time('..suspend', suspend_text='%X'). 2020-06-12 10:30:01.754084 Executing method 'insert_suspend_time(..suspend, %X)' 2020-06-12 10:30:01.759427 Suspend time is 5400 2020-06-12 10:30:01.764810 Testing for relative item declaration ..suspend 2020-06-12 10:30:01.767143 Suspend item is Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend 2020-06-12 10:30:01.774620 Current suspend age: 1314.306563 2020-06-12 10:30:01.784034 Remaining suspend time: 4085.693437 2020-06-12 10:30:01.796536 Suspend finished at 2020-06-12 11:38:07.489607+02:00 2020-06-12 10:30:01.805413 Action 'suspend_end': Set 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend_end' to '11:38:07'. Repeat allowed by action configuration. 2020-06-12 10:30:01.810334 Action 'retrigger: Add 4086 second timer 'retrigger-SeSpecialDelayTimer' for delayed execution. Repeat allowed by action configuration. 2020-06-12 10:35:00.748980 Update state of item Zustandsautomat =========================================== 2020-06-12 10:35:00.761013 Update triggered by Eval (item=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules source=Trigger_se.trigger_1 dest=None) 2020-06-12 10:35:00.778658 Eval initially triggered by Logic (item=Trigger_se.trigger_1 source=None) 2020-06-12 10:35:00.783226 Checking eval: se_eval.get_relative_itemproperty('..settings.suspendduration', 'value') * 60. 2020-06-12 10:35:00.788343 Executing method 'get_relative_itemproperty(..settings.suspendduration, value)' 2020-06-12 10:35:00.796176 Testing for relative item declaration ..settings.suspendduration 2020-06-12 10:35:00.805135 Item property value from Rollladen.Dachgeschoss.Anna.Gaube.automatik.settings.suspendduration is: 90 2020-06-12 10:35:00.811107 Last state: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend ('ausgesetzt') 2020-06-12 10:35:00.846760 Testing for relative item declaration ..conditionset_id 2020-06-12 10:35:00.848359 Testing for relative item declaration ..conditionset_name 2020-06-12 10:35:00.851405 Last Conditionset: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend.enter_stay ('enter_stay') 2020-06-12 10:35:00.874017 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.release' ('release') can be entered: 2020-06-12 10:35:00.892376 Check condition set 'enter' 2020-06-12 10:35:00.906009 Condition 'release': Checking all relevant stuff 2020-06-12 10:35:00.970386 Condition 'release': value=True negate=False current=False 2020-06-12 10:35:00.990322 not OK -> not matching 2020-06-12 10:35:00.995064 State can not be entered 2020-06-12 10:35:01.047467 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.lock' ('gesperrt') can be entered: 2020-06-12 10:35:01.087695 Check condition set 'enter' 2020-06-12 10:35:01.125859 Condition 'lock': Checking all relevant stuff 2020-06-12 10:35:01.127615 Condition 'lock': value=True negate=False current=False 2020-06-12 10:35:01.130564 not OK -> not matching 2020-06-12 10:35:01.132013 State can not be entered 2020-06-12 10:35:01.153575 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend' ('ausgesetzt') can be entered: 2020-06-12 10:35:01.196439 Check condition set 'enter_manuell' 2020-06-12 10:35:01.236037 Condition 'trigger_source': Checking all relevant stuff 2020-06-12 10:35:01.240458 Trying to get value of eval <bound method SeItem.get_update_trigger_source of Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules> 2020-06-12 10:35:01.248608 Checking eval: se_eval.get_relative_itemproperty('..manuell', 'path'). 2020-06-12 10:35:01.252734 Executing method 'get_relative_itemproperty(..manuell, path)' 2020-06-12 10:35:01.256471 Testing for relative item declaration ..manuell 2020-06-12 10:35:01.261616 Item property path from Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell is: Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell 2020-06-12 10:35:01.263819 Condition 'trigger_source': value=Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell negate=False current=Trigger_se.trigger_1 2020-06-12 10:35:01.265217 not OK -> not matching 2020-06-12 10:35:01.267017 Check condition set 'enter_stay' 2020-06-12 10:35:01.347787 Condition 'laststate': Checking all relevant stuff 2020-06-12 10:35:01.356490 Trying to get value of eval <bound method SeItem.get_laststate_id of Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules> 2020-06-12 10:35:01.369969 Condition 'laststate': value=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend negate=False current=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend 2020-06-12 10:35:01.372146 OK -> matching 2020-06-12 10:35:01.380377 Age of 'laststate': No limits given 2020-06-12 10:35:01.452691 Condition 'suspend_active': Checking all relevant stuff 2020-06-12 10:35:01.456448 Condition 'suspend_active': value=True negate=False current=True 2020-06-12 10:35:01.464201 OK -> matching 2020-06-12 10:35:01.469957 Age of 'suspend_active': No limits given 2020-06-12 10:35:01.497612 Condition 'suspend': Checking all relevant stuff 2020-06-12 10:35:01.505564 Condition 'suspend': value=True negate=False current=True 2020-06-12 10:35:01.511358 OK -> matching 2020-06-12 10:35:01.516050 Age of 'suspend': min=[None] max=[5400] negate=None current=1614.047867 2020-06-12 10:35:01.519699 Testing valuepair min None and max 5400 2020-06-12 10:35:01.522704 given limits ok -> matching 2020-06-12 10:35:01.535677 State can be entered 2020-06-12 10:35:01.574655 Testing for relative item declaration ..conditionset_id 2020-06-12 10:35:01.582673 Testing for relative item declaration ..conditionset_name 2020-06-12 10:35:01.583858 Staying at Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend ('ausgesetzt') based on conditionset Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend.enter_stay ('enter_stay') 2020-06-12 10:35:01.631176 Running action 'suspend' 2020-06-12 10:35:01.634328 Action 'suspend': Executing special action 'suspend' using item '['Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend', 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell']'. Repeat allowed by action configuration. 2020-06-12 10:35:01.660904 Leaving 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend' untouched. 2020-06-12 10:35:01.665856 Updated variable 'item.suspend_remaining' to 3786 2020-06-12 10:35:01.669639 Running action 'suspend_end' 2020-06-12 10:35:01.676029 Checking eval: se_eval.insert_suspend_time('..suspend', suspend_text='%X'). 2020-06-12 10:35:01.682190 Executing method 'insert_suspend_time(..suspend, %X)' 2020-06-12 10:35:01.684621 Suspend time is 5400 2020-06-12 10:35:01.687370 Testing for relative item declaration ..suspend 2020-06-12 10:35:01.691365 Suspend item is Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend 2020-06-12 10:35:01.700728 Current suspend age: 1614.232643 2020-06-12 10:35:01.705920 Remaining suspend time: 3785.7673569999997 2020-06-12 10:35:01.711353 Suspend finished at 2020-06-12 11:38:07.478162+02:00 2020-06-12 10:35:01.719551 Action 'suspend_end': Set 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend_end' to '11:38:07'. Repeat allowed by action configuration. 2020-06-12 10:35:01.725820 Action 'retrigger: Add 3786 second timer 'retrigger-SeSpecialDelayTimer' for delayed execution. Repeat allowed by action configuration. 2020-06-12 10:39:22.403201 Update state of item Zustandsautomat =========================================== 2020-06-12 10:39:22.427573 Update triggered by Eval (item=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules source=Rollladen.Dachgeschoss.Anna.Gaube.automatik.release dest=None) 2020-06-12 10:39:22.430570 Eval initially triggered by Logic (item=Rollladen.Dachgeschoss.Anna.Gaube.automatik.release source=None) 2020-06-12 10:39:22.432447 Checking eval: se_eval.get_relative_itemproperty('..settings.suspendduration', 'value') * 60. 2020-06-12 10:39:22.434488 Executing method 'get_relative_itemproperty(..settings.suspendduration, value)' 2020-06-12 10:39:22.442601 Testing for relative item declaration ..settings.suspendduration 2020-06-12 10:39:22.450755 Item property value from Rollladen.Dachgeschoss.Anna.Gaube.automatik.settings.suspendduration is: 90 2020-06-12 10:39:22.462346 Last state: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend ('ausgesetzt') 2020-06-12 10:39:22.477848 Testing for relative item declaration ..conditionset_id 2020-06-12 10:39:22.485029 Testing for relative item declaration ..conditionset_name 2020-06-12 10:39:22.490679 Last Conditionset: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend.enter_stay ('enter_stay') 2020-06-12 10:39:22.506701 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.release' ('release') can be entered: 2020-06-12 10:39:22.517300 Check condition set 'enter' 2020-06-12 10:39:22.538866 Condition 'release': Checking all relevant stuff 2020-06-12 10:39:22.544101 Condition 'release': value=True negate=False current=True 2020-06-12 10:39:22.572913 OK -> matching 2020-06-12 10:39:22.585748 Age of 'release': No limits given 2020-06-12 10:39:22.627884 State can be entered 2020-06-12 10:39:22.648562 Testing for relative item declaration ..conditionset_id 2020-06-12 10:39:22.650194 Testing for relative item declaration ..conditionset_name 2020-06-12 10:39:22.673707 Leaving Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend ('ausgesetzt'). Condition set was: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend.enter_stay 2020-06-12 10:39:22.704202 Running action 'suspend_end' 2020-06-12 10:39:22.716300 Action 'suspend_end': Set 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend_end' to ''. 2020-06-12 10:39:22.721632 Running action 'suspend' 2020-06-12 10:39:22.726997 Action 'suspend': Set 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend' to 'False'. 2020-06-12 10:39:22.852941 Entering Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.release ('release') based on conditionset Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.release.enter ('enter') 2020-06-12 10:39:22.990359 Running action 'suspend' 2020-06-12 10:39:23.011059 Action 'suspend': Set 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend' to 'False'. 2020-06-12 10:39:23.035628 Running action 'lock' 2020-06-12 10:39:23.053025 Action 'lock': Set 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.lock' to 'False'. 2020-06-12 10:39:23.078330 Running action 'suspend_end' 2020-06-12 10:39:23.090923 Action 'suspend_end': Set 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend_end' to ''. 2020-06-12 10:39:23.117256 Running action 'release' 2020-06-12 10:39:23.124593 Action 'release': Set 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.release' to 'False'. 2020-06-12 10:39:23.257752 Running action 'retrigger' 2020-06-12 10:39:23.277086 Action 'retrigger': Executing special action 'retrigger' using item 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.retrigger'. 2020-06-12 10:39:23.669934 Update state of item Zustandsautomat =========================================== 2020-06-12 10:39:23.777282 Update triggered by Eval (item=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules source=Rollladen.Dachgeschoss.Anna.Gaube.automatik.release dest=None) 2020-06-12 10:39:23.791629 Eval initially triggered by StateEngine Plugin (item=Rollladen.Dachgeschoss.Anna.Gaube.automatik.release source=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules) 2020-06-12 10:39:23.804476 Ignoring changes from StateEngine Plugin 2020-06-12 10:39:24.022093 Update state of item Zustandsautomat =========================================== 2020-06-12 10:39:24.086463 Update triggered by Eval (item=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules source=Rollladen.Dachgeschoss.Anna.Gaube.automatik.retrigger dest=None) 2020-06-12 10:39:24.098832 Eval initially triggered by StateEngine Plugin (item=Rollladen.Dachgeschoss.Anna.Gaube.automatik.retrigger source=retrigger) 2020-06-12 10:39:24.109131 Checking eval: se_eval.get_relative_itemproperty('..settings.suspendduration', 'value') * 60. 2020-06-12 10:39:24.120570 Executing method 'get_relative_itemproperty(..settings.suspendduration, value)' 2020-06-12 10:39:24.128395 Testing for relative item declaration ..settings.suspendduration 2020-06-12 10:39:24.135046 Item property value from Rollladen.Dachgeschoss.Anna.Gaube.automatik.settings.suspendduration is: 90 2020-06-12 10:39:24.148223 Last state: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.release ('release') 2020-06-12 10:39:24.236473 Testing for relative item declaration ..conditionset_id 2020-06-12 10:39:24.260443 Testing for relative item declaration ..conditionset_name 2020-06-12 10:39:24.272377 Last Conditionset: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.release.enter ('enter') 2020-06-12 10:39:24.369071 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.release' ('release') can be entered: 2020-06-12 10:39:24.417986 Check condition set 'enter' 2020-06-12 10:39:24.484279 Condition 'release': Checking all relevant stuff 2020-06-12 10:39:24.493499 Condition 'release': value=True negate=False current=False 2020-06-12 10:39:24.509199 not OK -> not matching 2020-06-12 10:39:24.531142 State can not be entered 2020-06-12 10:39:24.586391 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.lock' ('gesperrt') can be entered: 2020-06-12 10:39:24.644027 Check condition set 'enter' 2020-06-12 10:39:24.684824 Condition 'lock': Checking all relevant stuff 2020-06-12 10:39:24.688380 Condition 'lock': value=True negate=False current=False 2020-06-12 10:39:24.699331 not OK -> not matching 2020-06-12 10:39:24.703120 State can not be entered 2020-06-12 10:39:24.780194 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend' ('ausgesetzt') can be entered: 2020-06-12 10:39:24.840527 Check condition set 'enter_manuell' 2020-06-12 10:39:24.904757 Condition 'trigger_source': Checking all relevant stuff 2020-06-12 10:39:24.908911 Trying to get value of eval <bound method SeItem.get_update_trigger_source of Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules> 2020-06-12 10:39:24.915264 Checking eval: se_eval.get_relative_itemproperty('..manuell', 'path'). 2020-06-12 10:39:24.921611 Executing method 'get_relative_itemproperty(..manuell, path)' 2020-06-12 10:39:24.927363 Testing for relative item declaration ..manuell 2020-06-12 10:39:24.931785 Item property path from Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell is: Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell 2020-06-12 10:39:24.934708 Condition 'trigger_source': value=Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell negate=False current=Rollladen.Dachgeschoss.Anna.Gaube.automatik.retrigger 2020-06-12 10:39:24.939968 not OK -> not matching 2020-06-12 10:39:24.950941 Check condition set 'enter_stay' 2020-06-12 10:39:25.016620 Condition 'laststate': Checking all relevant stuff 2020-06-12 10:39:25.027940 Trying to get value of eval <bound method SeItem.get_laststate_id of Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules> 2020-06-12 10:39:25.044376 Condition 'laststate': value=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend negate=False current=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.release 2020-06-12 10:39:25.058796 not OK -> not matching 2020-06-12 10:39:25.074933 State can not be entered 2020-06-12 10:39:25.149985 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.ausschlafen' ('Anna Ausschlafen') can be entered: 2020-06-12 10:39:25.212716 Check condition set 'enter' 2020-06-12 10:39:25.258797 Condition 'Anna_schlaeft': Checking all relevant stuff 2020-06-12 10:39:25.272843 Condition 'Anna_schlaeft': value=True negate=False current=False 2020-06-12 10:39:25.278370 not OK -> not matching 2020-06-12 10:39:25.285211 State can not be entered 2020-06-12 10:39:25.352598 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.nachts_dg' ('Rollladen Nacht_DG') can be entered: 2020-06-12 10:39:25.407208 Check condition set 'enter_1' 2020-06-12 10:39:25.451045 Condition 'Daemmerung2': Checking all relevant stuff 2020-06-12 10:39:25.459856 Condition 'Daemmerung2': value=True negate=False current=False 2020-06-12 10:39:25.464786 not OK -> not matching 2020-06-12 10:39:25.466290 Check condition set 'enter_2' 2020-06-12 10:39:25.520040 Condition 'automatik_aus': Checking all relevant stuff 2020-06-12 10:39:25.522875 Condition 'automatik_aus': value=False negate=False current=False 2020-06-12 10:39:25.527456 OK -> matching 2020-06-12 10:39:25.531239 Age of 'automatik_aus': No limits given 2020-06-12 10:39:25.595685 Condition 'Daemmerung3': Checking all relevant stuff 2020-06-12 10:39:25.599812 Condition 'Daemmerung3': value=True negate=False current=False 2020-06-12 10:39:25.602265 not OK -> not matching 2020-06-12 10:39:25.614325 Check condition set 'enter_3' 2020-06-12 10:39:25.671019 Condition 'automatik_aus': Checking all relevant stuff 2020-06-12 10:39:25.676606 Condition 'automatik_aus': value=False negate=False current=False 2020-06-12 10:39:25.687396 OK -> matching 2020-06-12 10:39:25.691102 Age of 'automatik_aus': No limits given 2020-06-12 10:39:25.737451 Condition 'month': Checking all relevant stuff 2020-06-12 10:39:25.747123 Trying to get value of eval <bound method SeCurrent.get_month of <plugins.stateengine.StateEngineCurrent.SeCurrent object at 0x67f85e90>> 2020-06-12 10:39:25.752003 Condition 'month': min=[3] max=[11] negate=True current=6 2020-06-12 10:39:25.761383 Checking minvalue 3 and maxvalue 11 2020-06-12 10:39:25.778288 not lower than min -> not matching 2020-06-12 10:39:25.790626 Check condition set 'enter_4' 2020-06-12 10:39:25.860989 Condition 'automatik_aus': Checking all relevant stuff 2020-06-12 10:39:25.869174 Condition 'automatik_aus': value=False negate=False current=False 2020-06-12 10:39:25.875584 OK -> matching 2020-06-12 10:39:25.883968 Age of 'automatik_aus': No limits given 2020-06-12 10:39:25.953637 Condition 'month': Checking all relevant stuff 2020-06-12 10:39:25.959585 Trying to get value of eval <bound method SeCurrent.get_month of <plugins.stateengine.StateEngineCurrent.SeCurrent object at 0x67f85e90>> 2020-06-12 10:39:25.978307 Condition 'month': min=[4] max=[10] negate=False current=6 2020-06-12 10:39:25.985373 Checking minvalue 4 and maxvalue 10 2020-06-12 10:39:25.994737 given limits ok -> matching 2020-06-12 10:39:26.004684 Age of 'month': No limits given 2020-06-12 10:39:26.058113 Condition 'time': Checking all relevant stuff 2020-06-12 10:39:26.068941 Trying to get value of eval <bound method SeCurrent.get_time of <plugins.stateengine.StateEngineCurrent.SeCurrent object at 0x67f85e90>> 2020-06-12 10:39:26.083578 Condition 'time': min=[datetime.time(20, 45)] max=[datetime.time(21, 0)] negate=False current=10:39:26.038137 2020-06-12 10:39:26.088358 Checking minvalue 20:45:00 and maxvalue 21:00:00 2020-06-12 10:39:26.098416 too low -> not matching 2020-06-12 10:39:26.108652 Check condition set 'enter_5' 2020-06-12 10:39:26.147803 Condition 'automatik_aus': Checking all relevant stuff 2020-06-12 10:39:26.164162 Condition 'automatik_aus': value=False negate=False current=False 2020-06-12 10:39:26.168428 OK -> matching 2020-06-12 10:39:26.170001 Age of 'automatik_aus': No limits given 2020-06-12 10:39:26.208093 Condition 'sun_altitude': Checking all relevant stuff 2020-06-12 10:39:26.210484 Trying to get value of eval <bound method SeCurrent.get_sun_altitude of <plugins.stateengine.StateEngineCurrent.SeCurrent object at 0x67f85e90>> 2020-06-12 10:39:26.216546 Condition 'sun_altitude': min=[-4] max=[None] negate=False current=48.38324666514569 2020-06-12 10:39:26.222075 Checking minvalue -4 and maxvalue None 2020-06-12 10:39:26.224276 given limits ok -> matching 2020-06-12 10:39:26.233542 Age of 'sun_altitude': No limits given 2020-06-12 10:39:26.282643 Condition 'time': Checking all relevant stuff 2020-06-12 10:39:26.290293 Trying to get value of eval <bound method SeCurrent.get_time of <plugins.stateengine.StateEngineCurrent.SeCurrent object at 0x67f85e90>> 2020-06-12 10:39:26.296584 Condition 'time': min=[datetime.time(4, 0)] max=[datetime.time(6, 0)] negate=False current=10:39:26.038137 2020-06-12 10:39:26.298212 Checking minvalue 04:00:00 and maxvalue 06:00:00 2020-06-12 10:39:26.302196 too high -> not matching 2020-06-12 10:39:26.307089 Check condition set 'enter_6' 2020-06-12 10:39:26.337313 Condition 'automatik_aus': Checking all relevant stuff 2020-06-12 10:39:26.344427 Condition 'automatik_aus': value=False negate=False current=False 2020-06-12 10:39:26.357005 OK -> matching 2020-06-12 10:39:26.358769 Age of 'automatik_aus': No limits given 2020-06-12 10:39:26.400752 Condition 'time': Checking all relevant stuff 2020-06-12 10:39:26.403933 Trying to get value of eval <bound method SeCurrent.get_time of <plugins.stateengine.StateEngineCurrent.SeCurrent object at 0x67f85e90>> 2020-06-12 10:39:26.409373 Condition 'time': min=[datetime.time(6, 0)] max=[datetime.time(7, 0)] negate=False current=10:39:26.339958 2020-06-12 10:39:26.422452 Checking minvalue 06:00:00 and maxvalue 07:00:00 2020-06-12 10:39:26.427237 too high -> not matching 2020-06-12 10:39:26.439940 Check condition set 'enter_7' 2020-06-12 10:39:26.469669 Condition 'height': Checking all relevant stuff 2020-06-12 10:39:26.473324 Condition 'height': min=[245] max=[None] negate=False current=0 2020-06-12 10:39:26.490485 Checking minvalue 245 and maxvalue None 2020-06-12 10:39:26.491125 too low -> not matching 2020-06-12 10:39:26.510903 Check condition set 'enter_8' 2020-06-12 10:39:26.523994 Condition 'height': Checking all relevant stuff 2020-06-12 10:39:26.527790 Condition 'height': min=[245] max=[None] negate=False current=0 2020-06-12 10:39:26.535688 Checking minvalue 245 and maxvalue None 2020-06-12 10:39:26.554371 too low -> not matching 2020-06-12 10:39:26.556107 State can not be entered 2020-06-12 10:39:26.576476 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.Nachfuehrung' ('Rollladen Nachfuehung_DG_Nord') can be entered: 2020-06-12 10:39:26.591401 Check condition set 'enter_1' 2020-06-12 10:39:26.612752 Condition 'nachfuehren': Checking all relevant stuff 2020-06-12 10:39:26.624436 Condition 'nachfuehren': value=True negate=False current=True 2020-06-12 10:39:26.626164 OK -> matching 2020-06-12 10:39:26.629185 Age of 'nachfuehren': No limits given 2020-06-12 10:39:26.655207 Condition 'automatik_aus': Checking all relevant stuff 2020-06-12 10:39:26.664551 Condition 'automatik_aus': value=False negate=False current=False 2020-06-12 10:39:26.675486 OK -> matching 2020-06-12 10:39:26.690293 Age of 'automatik_aus': No limits given 2020-06-12 10:39:26.704242 Condition 'sun_altitude': Checking all relevant stuff 2020-06-12 10:39:26.714071 Trying to get value of eval <bound method SeCurrent.get_sun_altitude of <plugins.stateengine.StateEngineCurrent.SeCurrent object at 0x67f85e90>> 2020-06-12 10:39:26.715294 Condition 'sun_altitude': min=[5] max=[70] negate=False current=48.38400481614356 2020-06-12 10:39:26.721323 Checking minvalue 5 and maxvalue 70 2020-06-12 10:39:26.725874 given limits ok -> matching 2020-06-12 10:39:26.728120 Age of 'sun_altitude': No limits given 2020-06-12 10:39:26.751972 Condition 'sun_azimut': Checking all relevant stuff 2020-06-12 10:39:26.757859 Trying to get value of eval <bound method SeCurrent.get_sun_azimut of <plugins.stateengine.StateEngineCurrent.SeCurrent object at 0x67f85e90>> 2020-06-12 10:39:26.778996 Condition 'sun_azimut': min=[290] max=[330] negate=False current=113.07511359644924 2020-06-12 10:39:26.785181 Checking minvalue 290 and maxvalue 330 2020-06-12 10:39:26.800762 too low -> not matching 2020-06-12 10:39:26.808637 State can not be entered 2020-06-12 10:39:26.826345 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.tags' ('Rollalden Tags_DG') can be entered: 2020-06-12 10:39:26.844185 Check condition set 'enter_1' 2020-06-12 10:39:26.868906 Condition 'party': Checking all relevant stuff 2020-06-12 10:39:26.875584 Condition 'party': value=False negate=False current=False 2020-06-12 10:39:26.885301 OK -> matching 2020-06-12 10:39:26.893615 Age of 'party': No limits given 2020-06-12 10:39:26.919399 Condition 'automatik_aus': Checking all relevant stuff 2020-06-12 10:39:26.925065 Condition 'automatik_aus': value=False negate=False current=False 2020-06-12 10:39:26.935794 OK -> matching 2020-06-12 10:39:26.940648 Age of 'automatik_aus': No limits given 2020-06-12 10:39:26.959039 Condition 'time': Checking all relevant stuff 2020-06-12 10:39:26.963964 Trying to get value of eval <bound method SeCurrent.get_time of <plugins.stateengine.StateEngineCurrent.SeCurrent object at 0x67f85e90>> 2020-06-12 10:39:26.967774 Condition 'time': min=[datetime.time(7, 0)] max=[datetime.time(20, 0)] negate=False current=10:39:26.747908 2020-06-12 10:39:26.974101 Checking minvalue 07:00:00 and maxvalue 20:00:00 2020-06-12 10:39:26.986172 given limits ok -> matching 2020-06-12 10:39:26.993287 Age of 'time': No limits given 2020-06-12 10:39:27.014028 State can be entered 2020-06-12 10:39:27.020856 Testing for relative item declaration ..conditionset_id 2020-06-12 10:39:27.029165 Testing for relative item declaration ..conditionset_name 2020-06-12 10:39:27.935376 Leaving Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.release ('release'). Condition set was: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.release.enter 2020-06-12 10:39:28.037006 Entering Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.tags ('Rollalden Tags_DG') based on conditionset Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.tags.enter_1 ('enter_1') 2020-06-12 10:39:28.144608 Running action 'fahren' 2020-06-12 10:39:28.226528 Action 'fahren': Set 'Rollladen.Dachgeschoss.Anna.Gaube.Fahren' to 'False'. 2020-06-12 10:39:30.505750 Update state of item Zustandsautomat =========================================== 2020-06-12 10:39:30.507350 Update triggered by Eval (item=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules source=Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell dest=None) 2020-06-12 10:39:30.508712 Eval initially triggered by knx (item=Rollladen.Dachgeschoss.Anna.Gaube.Fahren source=11.1.2:ga=2/3/40) 2020-06-12 10:39:30.510099 Checking eval: se_eval.get_relative_itemproperty('..settings.suspendduration', 'value') * 60. 2020-06-12 10:39:30.511041 Executing method 'get_relative_itemproperty(..settings.suspendduration, value)' 2020-06-12 10:39:30.511584 Testing for relative item declaration ..settings.suspendduration 2020-06-12 10:39:30.512567 Item property value from Rollladen.Dachgeschoss.Anna.Gaube.automatik.settings.suspendduration is: 90 2020-06-12 10:39:30.514966 Last state: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.tags ('Rollalden Tags_DG') 2020-06-12 10:39:30.519304 Testing for relative item declaration ..conditionset_id 2020-06-12 10:39:30.520947 Testing for relative item declaration ..conditionset_name 2020-06-12 10:39:30.523814 Last Conditionset: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.tags.enter_1 ('enter_1') 2020-06-12 10:39:30.526614 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.release' ('release') can be entered: 2020-06-12 10:39:30.530227 Check condition set 'enter' 2020-06-12 10:39:30.532450 Condition 'release': Checking all relevant stuff 2020-06-12 10:39:30.533246 Condition 'release': value=True negate=False current=False 2020-06-12 10:39:30.533865 not OK -> not matching 2020-06-12 10:39:30.534416 State can not be entered 2020-06-12 10:39:30.535682 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.lock' ('gesperrt') can be entered: 2020-06-12 10:39:30.537015 Check condition set 'enter' 2020-06-12 10:39:30.538398 Condition 'lock': Checking all relevant stuff 2020-06-12 10:39:30.539160 Condition 'lock': value=True negate=False current=False 2020-06-12 10:39:30.539654 not OK -> not matching 2020-06-12 10:39:30.540242 State can not be entered 2020-06-12 10:39:30.541434 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend' ('ausgesetzt') can be entered: 2020-06-12 10:39:30.542622 Check condition set 'enter_manuell' 2020-06-12 10:39:30.543932 Condition 'trigger_source': Checking all relevant stuff 2020-06-12 10:39:30.544513 Trying to get value of eval <bound method SeItem.get_update_trigger_source of Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules> 2020-06-12 10:39:30.545218 Checking eval: se_eval.get_relative_itemproperty('..manuell', 'path'). 2020-06-12 10:39:30.546049 Executing method 'get_relative_itemproperty(..manuell, path)' 2020-06-12 10:39:30.546575 Testing for relative item declaration ..manuell 2020-06-12 10:39:30.547662 Item property path from Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell is: Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell 2020-06-12 10:39:30.548299 Condition 'trigger_source': value=Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell negate=False current=Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell 2020-06-12 10:39:30.548832 OK -> matching 2020-06-12 10:39:30.549325 Age of 'trigger_source': No limits given 2020-06-12 10:39:30.550629 Condition 'suspend_active': Checking all relevant stuff 2020-06-12 10:39:30.551371 Condition 'suspend_active': value=True negate=False current=True 2020-06-12 10:39:30.551859 OK -> matching 2020-06-12 10:39:30.552356 Age of 'suspend_active': No limits given 2020-06-12 10:39:30.557445 State can be entered 2020-06-12 10:39:30.559003 Testing for relative item declaration ..conditionset_id 2020-06-12 10:39:30.560073 Testing for relative item declaration ..conditionset_name 2020-06-12 10:39:30.572796 Leaving Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.tags ('Rollalden Tags_DG'). Condition set was: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.tags.enter_1 2020-06-12 10:39:30.585616 Entering Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend ('ausgesetzt') based on conditionset Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend.enter_manuell ('enter_manuell') 2020-06-12 10:39:30.591576 Running action 'suspend' 2020-06-12 10:39:30.592736 Action 'suspend': Executing special action 'suspend' using item '['Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend', 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell']'. 2020-06-12 10:39:30.594627 Set 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend' to 'True'. 2020-06-12 10:39:30.610008 Updated variable 'item.suspend_remaining' to 5400 2020-06-12 10:39:30.611300 Running action 'suspend_end' 2020-06-12 10:39:30.611963 Checking eval: se_eval.insert_suspend_time('..suspend', suspend_text='%X'). 2020-06-12 10:39:30.612948 Executing method 'insert_suspend_time(..suspend, %X)' 2020-06-12 10:39:30.613476 Suspend time is 5400 2020-06-12 10:39:30.613996 Testing for relative item declaration ..suspend 2020-06-12 10:39:30.614960 Suspend item is Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend 2020-06-12 10:39:30.616100 Current suspend age: 0.020178 2020-06-12 10:39:30.616686 Remaining suspend time: 5399.979822 2020-06-12 10:39:30.618002 Suspend finished at 2020-06-12 12:09:30.597151+02:00 2020-06-12 10:39:30.619308 Action 'suspend_end': Set 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend_end' to '12:09:30'. 2020-06-12 10:39:30.622068 Action 'retrigger: Add 5400 second timer 'retrigger-SeSpecialDelayTimer' for delayed execution. 2020-06-12 10:39:53.523845 Update state of item Zustandsautomat =========================================== 2020-06-12 10:39:53.545772 Update triggered by Eval (item=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules source=Rollladen.Dachgeschoss.Anna.Gaube.automatik.release dest=None) 2020-06-12 10:39:53.549722 Eval initially triggered by Logic (item=Rollladen.Dachgeschoss.Anna.Gaube.automatik.release source=None) 2020-06-12 10:39:53.564088 Checking eval: se_eval.get_relative_itemproperty('..settings.suspendduration', 'value') * 60. 2020-06-12 10:39:53.576630 Executing method 'get_relative_itemproperty(..settings.suspendduration, value)' 2020-06-12 10:39:53.589374 Testing for relative item declaration ..settings.suspendduration 2020-06-12 10:39:53.596760 Item property value from Rollladen.Dachgeschoss.Anna.Gaube.automatik.settings.suspendduration is: 90 2020-06-12 10:39:53.608259 Last state: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend ('ausgesetzt') 2020-06-12 10:39:53.629794 Testing for relative item declaration ..conditionset_id 2020-06-12 10:39:53.639127 Testing for relative item declaration ..conditionset_name 2020-06-12 10:39:53.642367 Last Conditionset: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend.enter_manuell ('enter_manuell') 2020-06-12 10:39:53.669012 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.release' ('release') can be entered: 2020-06-12 10:39:53.690486 Check condition set 'enter' 2020-06-12 10:39:53.722514 Condition 'release': Checking all relevant stuff 2020-06-12 10:39:53.732242 Condition 'release': value=True negate=False current=True 2020-06-12 10:39:53.734829 OK -> matching 2020-06-12 10:39:53.738981 Age of 'release': No limits given 2020-06-12 10:39:53.759514 State can be entered 2020-06-12 10:39:53.781697 Testing for relative item declaration ..conditionset_id 2020-06-12 10:39:53.790322 Testing for relative item declaration ..conditionset_name 2020-06-12 10:39:53.882196 Leaving Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend ('ausgesetzt'). Condition set was: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend.enter_manuell 2020-06-12 10:39:53.938082 Running action 'suspend_end' 2020-06-12 10:39:53.959238 Action 'suspend_end': Set 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend_end' to ''. 2020-06-12 10:39:53.975007 Running action 'suspend' 2020-06-12 10:39:53.985426 Action 'suspend': Set 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend' to 'False'. 2020-06-12 10:39:54.200060 Entering Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.release ('release') based on conditionset Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.release.enter ('enter') 2020-06-12 10:39:54.305873 Running action 'suspend' 2020-06-12 10:39:54.314488 Action 'suspend': Set 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend' to 'False'. 2020-06-12 10:39:54.319904 Running action 'lock' 2020-06-12 10:39:54.325958 Action 'lock': Set 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.lock' to 'False'. 2020-06-12 10:39:54.335315 Running action 'suspend_end' 2020-06-12 10:39:54.364853 Action 'suspend_end': Set 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend_end' to ''. 2020-06-12 10:39:54.406183 Running action 'release' 2020-06-12 10:39:54.432925 Action 'release': Set 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.release' to 'False'. 2020-06-12 10:39:54.548337 Running action 'retrigger' 2020-06-12 10:39:54.560905 Action 'retrigger': Executing special action 'retrigger' using item 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.retrigger'. 2020-06-12 10:39:54.883007 Update state of item Zustandsautomat =========================================== 2020-06-12 10:39:54.947126 Update triggered by Eval (item=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules source=Rollladen.Dachgeschoss.Anna.Gaube.automatik.retrigger dest=None) 2020-06-12 10:39:54.976097 Eval initially triggered by StateEngine Plugin (item=Rollladen.Dachgeschoss.Anna.Gaube.automatik.retrigger source=retrigger) 2020-06-12 10:39:54.987387 Checking eval: se_eval.get_relative_itemproperty('..settings.suspendduration', 'value') * 60. 2020-06-12 10:39:54.997347 Executing method 'get_relative_itemproperty(..settings.suspendduration, value)' 2020-06-12 10:39:55.006682 Testing for relative item declaration ..settings.suspendduration 2020-06-12 10:39:55.028490 Item property value from Rollladen.Dachgeschoss.Anna.Gaube.automatik.settings.suspendduration is: 90 2020-06-12 10:39:55.037357 Last state: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.release ('release') 2020-06-12 10:39:55.088546 Testing for relative item declaration ..conditionset_id 2020-06-12 10:39:55.100149 Testing for relative item declaration ..conditionset_name 2020-06-12 10:39:55.104482 Last Conditionset: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.release.enter ('enter') 2020-06-12 10:39:55.172100 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.release' ('release') can be entered: 2020-06-12 10:39:55.257718 Check condition set 'enter' 2020-06-12 10:39:55.317147 Condition 'release': Checking all relevant stuff 2020-06-12 10:39:55.339541 Condition 'release': value=True negate=False current=False 2020-06-12 10:39:55.341695 not OK -> not matching 2020-06-12 10:39:55.365724 State can not be entered 2020-06-12 10:39:55.451386 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.lock' ('gesperrt') can be entered: 2020-06-12 10:39:55.501970 Check condition set 'enter' 2020-06-12 10:39:55.557961 Condition 'lock': Checking all relevant stuff 2020-06-12 10:39:55.582525 Condition 'lock': value=True negate=False current=False 2020-06-12 10:39:55.597622 not OK -> not matching 2020-06-12 10:39:55.607700 State can not be entered 2020-06-12 10:39:55.707237 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend' ('ausgesetzt') can be entered: 2020-06-12 10:39:55.783048 Check condition set 'enter_manuell' 2020-06-12 10:39:55.839854 Condition 'trigger_source': Checking all relevant stuff 2020-06-12 10:39:55.843603 Trying to get value of eval <bound method SeItem.get_update_trigger_source of Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules> 2020-06-12 10:39:55.847265 Checking eval: se_eval.get_relative_itemproperty('..manuell', 'path'). 2020-06-12 10:39:55.851483 Executing method 'get_relative_itemproperty(..manuell, path)' 2020-06-12 10:39:55.858555 Testing for relative item declaration ..manuell 2020-06-12 10:39:55.868623 Item property path from Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell is: Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell 2020-06-12 10:39:55.879300 Condition 'trigger_source': value=Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell negate=False current=Rollladen.Dachgeschoss.Anna.Gaube.automatik.retrigger 2020-06-12 10:39:55.903745 not OK -> not matching 2020-06-12 10:39:55.912988 Check condition set 'enter_stay' 2020-06-12 10:39:55.989810 Condition 'laststate': Checking all relevant stuff 2020-06-12 10:39:56.006948 Trying to get value of eval <bound method SeItem.get_laststate_id of Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules> 2020-06-12 10:39:56.014857 Condition 'laststate': value=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend negate=False current=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.release 2020-06-12 10:39:56.021493 not OK -> not matching 2020-06-12 10:39:56.038346 State can not be entered 2020-06-12 10:39:56.091948 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.ausschlafen' ('Anna Ausschlafen') can be entered: 2020-06-12 10:39:56.127973 Check condition set 'enter' 2020-06-12 10:39:56.192764 Condition 'Anna_schlaeft': Checking all relevant stuff 2020-06-12 10:39:56.203030 Condition 'Anna_schlaeft': value=True negate=False current=False 2020-06-12 10:39:56.220521 not OK -> not matching 2020-06-12 10:39:56.243173 State can not be entered 2020-06-12 10:39:56.334399 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.nachts_dg' ('Rollladen Nacht_DG') can be entered: 2020-06-12 10:39:56.379565 Check condition set 'enter_1' 2020-06-12 10:39:56.427620 Condition 'Daemmerung2': Checking all relevant stuff 2020-06-12 10:39:56.430714 Condition 'Daemmerung2': value=True negate=False current=False 2020-06-12 10:39:56.438480 not OK -> not matching 2020-06-12 10:39:56.444726 Check condition set 'enter_2' 2020-06-12 10:39:56.503721 Condition 'automatik_aus': Checking all relevant stuff 2020-06-12 10:39:56.508588 Condition 'automatik_aus': value=False negate=False current=False 2020-06-12 10:39:56.515016 OK -> matching 2020-06-12 10:39:56.521907 Age of 'automatik_aus': No limits given 2020-06-12 10:39:56.590271 Condition 'Daemmerung3': Checking all relevant stuff 2020-06-12 10:39:56.598488 Condition 'Daemmerung3': value=True negate=False current=False 2020-06-12 10:39:56.602755 not OK -> not matching 2020-06-12 10:39:56.611677 Check condition set 'enter_3' 2020-06-12 10:39:56.681389 Condition 'automatik_aus': Checking all relevant stuff 2020-06-12 10:39:56.684723 Condition 'automatik_aus': value=False negate=False current=False 2020-06-12 10:39:56.697076 OK -> matching 2020-06-12 10:39:56.704570 Age of 'automatik_aus': No limits given 2020-06-12 10:39:56.752236 Condition 'month': Checking all relevant stuff 2020-06-12 10:39:56.760973 Trying to get value of eval <bound method SeCurrent.get_month of <plugins.stateengine.StateEngineCurrent.SeCurrent object at 0x67f85e90>> 2020-06-12 10:39:56.769679 Condition 'month': min=[3] max=[11] negate=True current=6 2020-06-12 10:39:56.779121 Checking minvalue 3 and maxvalue 11 2020-06-12 10:39:56.788010 not lower than min -> not matching 2020-06-12 10:39:56.794053 Check condition set 'enter_4' 2020-06-12 10:39:56.869727 Condition 'automatik_aus': Checking all relevant stuff 2020-06-12 10:39:56.893408 Condition 'automatik_aus': value=False negate=False current=False 2020-06-12 10:39:56.914798 OK -> matching 2020-06-12 10:39:56.937994 Age of 'automatik_aus': No limits given 2020-06-12 10:39:56.996560 Condition 'month': Checking all relevant stuff 2020-06-12 10:39:56.999477 Trying to get value of eval <bound method SeCurrent.get_month of <plugins.stateengine.StateEngineCurrent.SeCurrent object at 0x67f85e90>> 2020-06-12 10:39:57.009518 Condition 'month': min=[4] max=[10] negate=False current=6 2020-06-12 10:39:57.016419 Checking minvalue 4 and maxvalue 10 2020-06-12 10:39:57.023525 given limits ok -> matching 2020-06-12 10:39:57.039752 Age of 'month': No limits given 2020-06-12 10:39:57.103126 Condition 'time': Checking all relevant stuff 2020-06-12 10:39:57.109212 Trying to get value of eval <bound method SeCurrent.get_time of <plugins.stateengine.StateEngineCurrent.SeCurrent object at 0x67f85e90>> 2020-06-12 10:39:57.122584 Condition 'time': min=[datetime.time(20, 45)] max=[datetime.time(21, 0)] negate=False current=10:39:56.960244 2020-06-12 10:39:57.171863 Checking minvalue 20:45:00 and maxvalue 21:00:00 2020-06-12 10:39:57.196067 too low -> not matching 2020-06-12 10:39:57.202442 Check condition set 'enter_5' 2020-06-12 10:39:57.246232 Condition 'automatik_aus': Checking all relevant stuff 2020-06-12 10:39:57.259272 Condition 'automatik_aus': value=False negate=False current=False 2020-06-12 10:39:57.268988 OK -> matching 2020-06-12 10:39:57.280152 Age of 'automatik_aus': No limits given 2020-06-12 10:39:57.318142 Condition 'sun_altitude': Checking all relevant stuff 2020-06-12 10:39:57.331918 Trying to get value of eval <bound method SeCurrent.get_sun_altitude of <plugins.stateengine.StateEngineCurrent.SeCurrent object at 0x67f85e90>> 2020-06-12 10:39:57.341509 Condition 'sun_altitude': min=[-4] max=[None] negate=False current=48.46141818019649 2020-06-12 10:39:57.353494 Checking minvalue -4 and maxvalue None 2020-06-12 10:39:57.377621 given limits ok -> matching 2020-06-12 10:39:57.390604 Age of 'sun_altitude': No limits given 2020-06-12 10:39:57.431248 Condition 'time': Checking all relevant stuff 2020-06-12 10:39:57.447200 Trying to get value of eval <bound method SeCurrent.get_time of <plugins.stateengine.StateEngineCurrent.SeCurrent object at 0x67f85e90>> 2020-06-12 10:39:57.462791 Condition 'time': min=[datetime.time(4, 0)] max=[datetime.time(6, 0)] negate=False current=10:39:57.441949 2020-06-12 10:39:57.483482 Checking minvalue 04:00:00 and maxvalue 06:00:00 2020-06-12 10:39:57.544735 too high -> not matching 2020-06-12 10:39:57.558221 Check condition set 'enter_6' 2020-06-12 10:39:57.626272 Condition 'automatik_aus': Checking all relevant stuff 2020-06-12 10:39:57.636510 Condition 'automatik_aus': value=False negate=False current=False 2020-06-12 10:39:57.654539 OK -> matching 2020-06-12 10:39:57.694948 Age of 'automatik_aus': No limits given 2020-06-12 10:39:57.760326 Condition 'time': Checking all relevant stuff 2020-06-12 10:39:57.785139 Trying to get value of eval <bound method SeCurrent.get_time of <plugins.stateengine.StateEngineCurrent.SeCurrent object at 0x67f85e90>> 2020-06-12 10:39:57.794032 Condition 'time': min=[datetime.time(6, 0)] max=[datetime.time(7, 0)] negate=False current=10:39:57.649824 2020-06-12 10:39:57.798802 Checking minvalue 06:00:00 and maxvalue 07:00:00 2020-06-12 10:39:57.803515 too high -> not matching 2020-06-12 10:39:57.820789 Check condition set 'enter_7' 2020-06-12 10:39:57.870547 Condition 'height': Checking all relevant stuff 2020-06-12 10:39:57.880701 Condition 'height': min=[245] max=[None] negate=False current=0 2020-06-12 10:39:57.892334 Checking minvalue 245 and maxvalue None 2020-06-12 10:39:57.908529 too low -> not matching 2020-06-12 10:39:57.918047 Check condition set 'enter_8' 2020-06-12 10:39:57.970923 Condition 'height': Checking all relevant stuff 2020-06-12 10:39:57.975648 Condition 'height': min=[245] max=[None] negate=False current=0 2020-06-12 10:39:57.979383 Checking minvalue 245 and maxvalue None 2020-06-12 10:39:57.988899 too low -> not matching 2020-06-12 10:39:57.993509 State can not be entered 2020-06-12 10:39:58.027200 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.Nachfuehrung' ('Rollladen Nachfuehung_DG_Nord') can be entered: 2020-06-12 10:39:58.060351 Check condition set 'enter_1' 2020-06-12 10:39:58.100331 Condition 'nachfuehren': Checking all relevant stuff 2020-06-12 10:39:58.114863 Condition 'nachfuehren': value=True negate=False current=True 2020-06-12 10:39:58.140902 OK -> matching 2020-06-12 10:39:58.159796 Age of 'nachfuehren': No limits given 2020-06-12 10:39:58.218975 Condition 'automatik_aus': Checking all relevant stuff 2020-06-12 10:39:58.224141 Condition 'automatik_aus': value=False negate=False current=False 2020-06-12 10:39:58.235102 OK -> matching 2020-06-12 10:39:58.247367 Age of 'automatik_aus': No limits given 2020-06-12 10:39:58.288241 Condition 'sun_altitude': Checking all relevant stuff 2020-06-12 10:39:58.302741 Trying to get value of eval <bound method SeCurrent.get_sun_altitude of <plugins.stateengine.StateEngineCurrent.SeCurrent object at 0x67f85e90>> 2020-06-12 10:39:58.312359 Condition 'sun_altitude': min=[5] max=[70] negate=False current=48.46389070867603 2020-06-12 10:39:58.322681 Checking minvalue 5 and maxvalue 70 2020-06-12 10:39:58.339138 given limits ok -> matching 2020-06-12 10:39:58.345116 Age of 'sun_altitude': No limits given 2020-06-12 10:39:58.392090 Condition 'sun_azimut': Checking all relevant stuff 2020-06-12 10:39:58.401551 Trying to get value of eval <bound method SeCurrent.get_sun_azimut of <plugins.stateengine.StateEngineCurrent.SeCurrent object at 0x67f85e90>> 2020-06-12 10:39:58.407007 Condition 'sun_azimut': min=[290] max=[330] negate=False current=113.21188130438958 2020-06-12 10:39:58.417788 Checking minvalue 290 and maxvalue 330 2020-06-12 10:39:58.429081 too low -> not matching 2020-06-12 10:39:58.434900 State can not be entered 2020-06-12 10:39:58.472617 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.tags' ('Rollalden Tags_DG') can be entered: 2020-06-12 10:39:58.545487 Check condition set 'enter_1' 2020-06-12 10:39:58.606745 Condition 'party': Checking all relevant stuff 2020-06-12 10:39:58.616629 Condition 'party': value=False negate=False current=False 2020-06-12 10:39:58.623105 OK -> matching 2020-06-12 10:39:58.626759 Age of 'party': No limits given 2020-06-12 10:39:58.678832 Condition 'automatik_aus': Checking all relevant stuff 2020-06-12 10:39:58.688444 Condition 'automatik_aus': value=False negate=False current=False 2020-06-12 10:39:58.697127 OK -> matching 2020-06-12 10:39:58.703101 Age of 'automatik_aus': No limits given 2020-06-12 10:39:58.736740 Condition 'time': Checking all relevant stuff 2020-06-12 10:39:58.741664 Trying to get value of eval <bound method SeCurrent.get_time of <plugins.stateengine.StateEngineCurrent.SeCurrent object at 0x67f85e90>> 2020-06-12 10:39:58.754649 Condition 'time': min=[datetime.time(7, 0)] max=[datetime.time(20, 0)] negate=False current=10:39:58.661352 2020-06-12 10:39:58.757856 Checking minvalue 07:00:00 and maxvalue 20:00:00 2020-06-12 10:39:58.760751 given limits ok -> matching 2020-06-12 10:39:58.767033 Age of 'time': No limits given 2020-06-12 10:39:58.864381 State can be entered 2020-06-12 10:39:58.912194 Testing for relative item declaration ..conditionset_id 2020-06-12 10:39:58.915741 Testing for relative item declaration ..conditionset_name 2020-06-12 10:39:58.949272 Leaving Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.release ('release'). Condition set was: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.release.enter 2020-06-12 10:39:59.011650 Entering Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.tags ('Rollalden Tags_DG') based on conditionset Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.tags.enter_1 ('enter_1') 2020-06-12 10:39:59.063589 Running action 'fahren' 2020-06-12 10:39:59.071547 Action 'fahren': Set 'Rollladen.Dachgeschoss.Anna.Gaube.Fahren' to 'False'. 2020-06-12 10:40:00.973761 Update state of item Zustandsautomat =========================================== 2020-06-12 10:40:01.031337 Update triggered by Eval (item=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules source=Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell dest=None) 2020-06-12 10:40:01.038203 Eval initially triggered by knx (item=Rollladen.Dachgeschoss.Anna.Gaube.Fahren source=11.1.2:ga=2/3/40) 2020-06-12 10:40:01.039480 Checking eval: se_eval.get_relative_itemproperty('..settings.suspendduration', 'value') * 60. 2020-06-12 10:40:01.049356 Executing method 'get_relative_itemproperty(..settings.suspendduration, value)' 2020-06-12 10:40:01.052826 Testing for relative item declaration ..settings.suspendduration 2020-06-12 10:40:01.056651 Item property value from Rollladen.Dachgeschoss.Anna.Gaube.automatik.settings.suspendduration is: 90 2020-06-12 10:40:01.062726 Last state: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.tags ('Rollalden Tags_DG') 2020-06-12 10:40:01.071708 Testing for relative item declaration ..conditionset_id 2020-06-12 10:40:01.074330 Testing for relative item declaration ..conditionset_name 2020-06-12 10:40:01.075356 Last Conditionset: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.tags.enter_1 ('enter_1') 2020-06-12 10:40:01.077768 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.release' ('release') can be entered: 2020-06-12 10:40:01.087970 Check condition set 'enter' 2020-06-12 10:40:01.090322 Condition 'release': Checking all relevant stuff 2020-06-12 10:40:01.092693 Condition 'release': value=True negate=False current=False 2020-06-12 10:40:01.093945 not OK -> not matching 2020-06-12 10:40:01.095035 State can not be entered 2020-06-12 10:40:01.096072 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.lock' ('gesperrt') can be entered: 2020-06-12 10:40:01.097717 Check condition set 'enter' 2020-06-12 10:40:01.098555 Condition 'lock': Checking all relevant stuff 2020-06-12 10:40:01.098997 Condition 'lock': value=True negate=False current=False 2020-06-12 10:40:01.099302 not OK -> not matching 2020-06-12 10:40:01.099649 State can not be entered 2020-06-12 10:40:01.100474 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend' ('ausgesetzt') can be entered: 2020-06-12 10:40:01.101806 Check condition set 'enter_manuell' 2020-06-12 10:40:01.102732 Condition 'trigger_source': Checking all relevant stuff 2020-06-12 10:40:01.103443 Trying to get value of eval <bound method SeItem.get_update_trigger_source of Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules> 2020-06-12 10:40:01.104799 Checking eval: se_eval.get_relative_itemproperty('..manuell', 'path'). 2020-06-12 10:40:01.105868 Executing method 'get_relative_itemproperty(..manuell, path)' 2020-06-12 10:40:01.106187 Testing for relative item declaration ..manuell 2020-06-12 10:40:01.107347 Item property path from Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell is: Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell 2020-06-12 10:40:01.109143 Condition 'trigger_source': value=Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell negate=False current=Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell 2020-06-12 10:40:01.118275 OK -> matching 2020-06-12 10:40:01.132225 Age of 'trigger_source': No limits given 2020-06-12 10:40:01.149567 Condition 'suspend_active': Checking all relevant stuff 2020-06-12 10:40:01.151895 Condition 'suspend_active': value=True negate=False current=True 2020-06-12 10:40:01.154158 OK -> matching 2020-06-12 10:40:01.166843 Age of 'suspend_active': No limits given 2020-06-12 10:40:01.191671 State can be entered 2020-06-12 10:40:01.200132 Testing for relative item declaration ..conditionset_id 2020-06-12 10:40:01.207145 Testing for relative item declaration ..conditionset_name 2020-06-12 10:40:01.229244 Leaving Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.tags ('Rollalden Tags_DG'). Condition set was: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.tags.enter_1 2020-06-12 10:40:01.258427 Entering Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend ('ausgesetzt') based on conditionset Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend.enter_manuell ('enter_manuell') 2020-06-12 10:40:01.280241 Running action 'suspend' 2020-06-12 10:40:01.282666 Action 'suspend': Executing special action 'suspend' using item '['Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend', 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell']'. 2020-06-12 10:40:01.320035 Set 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend' to 'True'. 2020-06-12 10:40:01.389124 Updated variable 'item.suspend_remaining' to 5400 2020-06-12 10:40:01.390820 Running action 'suspend_end' 2020-06-12 10:40:01.394108 Checking eval: se_eval.insert_suspend_time('..suspend', suspend_text='%X'). 2020-06-12 10:40:01.395190 Executing method 'insert_suspend_time(..suspend, %X)' 2020-06-12 10:40:01.396154 Suspend time is 5400 2020-06-12 10:40:01.401156 Testing for relative item declaration ..suspend 2020-06-12 10:40:01.404093 Suspend item is Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend 2020-06-12 10:40:01.417571 Current suspend age: 0.095944 2020-06-12 10:40:01.424688 Remaining suspend time: 5399.904056 2020-06-12 10:40:01.432143 Suspend finished at 2020-06-12 12:10:01.335847+02:00 2020-06-12 10:40:01.443667 Action 'suspend_end': Set 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend_end' to '12:10:01'. 2020-06-12 10:40:01.454797 Action 'retrigger: Add 5400 second timer 'retrigger-SeSpecialDelayTimer' for delayed execution. 2020-06-12 10:40:01.596230 Update state of item Zustandsautomat =========================================== 2020-06-12 10:40:01.643874 Update triggered by Eval (item=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules source=Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend dest=None) 2020-06-12 10:40:01.650677 Eval initially triggered by Logic (item=Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend source=None) 2020-06-12 10:40:01.654416 Checking eval: se_eval.get_relative_itemproperty('..settings.suspendduration', 'value') * 60. 2020-06-12 10:40:01.660684 Executing method 'get_relative_itemproperty(..settings.suspendduration, value)' 2020-06-12 10:40:01.664841 Testing for relative item declaration ..settings.suspendduration 2020-06-12 10:40:01.684317 Item property value from Rollladen.Dachgeschoss.Anna.Gaube.automatik.settings.suspendduration is: 90 2020-06-12 10:40:01.687662 Last state: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend ('ausgesetzt') 2020-06-12 10:40:01.745915 Testing for relative item declaration ..conditionset_id 2020-06-12 10:40:01.750308 Testing for relative item declaration ..conditionset_name 2020-06-12 10:40:01.755365 Last Conditionset: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend.enter_manuell ('enter_manuell') 2020-06-12 10:40:01.784096 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.release' ('release') can be entered: 2020-06-12 10:40:01.821936 Check condition set 'enter' 2020-06-12 10:40:01.854134 Condition 'release': Checking all relevant stuff 2020-06-12 10:40:01.868486 Condition 'release': value=True negate=False current=False 2020-06-12 10:40:01.870922 not OK -> not matching 2020-06-12 10:40:01.881059 State can not be entered 2020-06-12 10:40:01.915271 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.lock' ('gesperrt') can be entered: 2020-06-12 10:40:01.947061 Check condition set 'enter' 2020-06-12 10:40:01.983976 Condition 'lock': Checking all relevant stuff 2020-06-12 10:40:01.986034 Condition 'lock': value=True negate=False current=False 2020-06-12 10:40:01.986383 not OK -> not matching 2020-06-12 10:40:01.990611 State can not be entered 2020-06-12 10:40:01.993642 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend' ('ausgesetzt') can be entered: 2020-06-12 10:40:02.022059 Check condition set 'enter_manuell' 2020-06-12 10:40:02.052662 Condition 'trigger_source': Checking all relevant stuff 2020-06-12 10:40:02.054689 Trying to get value of eval <bound method SeItem.get_update_trigger_source of Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules> 2020-06-12 10:40:02.057374 Checking eval: se_eval.get_relative_itemproperty('..manuell', 'path'). 2020-06-12 10:40:02.059176 Executing method 'get_relative_itemproperty(..manuell, path)' 2020-06-12 10:40:02.061766 Testing for relative item declaration ..manuell 2020-06-12 10:40:02.071064 Item property path from Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell is: Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell 2020-06-12 10:40:02.075530 Condition 'trigger_source': value=Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell negate=False current=Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend 2020-06-12 10:40:02.079581 not OK -> not matching 2020-06-12 10:40:02.083407 Check condition set 'enter_stay' 2020-06-12 10:40:02.124278 Condition 'laststate': Checking all relevant stuff 2020-06-12 10:40:02.126249 Trying to get value of eval <bound method SeItem.get_laststate_id of Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules> 2020-06-12 10:40:02.127107 Condition 'laststate': value=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend negate=False current=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend 2020-06-12 10:40:02.129135 OK -> matching 2020-06-12 10:40:02.130967 Age of 'laststate': No limits given 2020-06-12 10:40:02.160874 Condition 'suspend_active': Checking all relevant stuff 2020-06-12 10:40:02.161620 Condition 'suspend_active': value=True negate=False current=True 2020-06-12 10:40:02.162638 OK -> matching 2020-06-12 10:40:02.164130 Age of 'suspend_active': No limits given 2020-06-12 10:40:02.190689 Condition 'suspend': Checking all relevant stuff 2020-06-12 10:40:02.192647 Condition 'suspend': value=True negate=False current=True 2020-06-12 10:40:02.197409 OK -> matching 2020-06-12 10:40:02.203327 Age of 'suspend': min=[None] max=[5400] negate=None current=0.881567 2020-06-12 10:40:02.215363 Testing valuepair min None and max 5400 2020-06-12 10:40:02.218291 given limits ok -> matching 2020-06-12 10:40:02.241391 State can be entered 2020-06-12 10:40:02.283284 Testing for relative item declaration ..conditionset_id 2020-06-12 10:40:02.287371 Testing for relative item declaration ..conditionset_name 2020-06-12 10:40:02.292269 Staying at Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend ('ausgesetzt') based on conditionset Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend.enter_stay ('enter_stay') 2020-06-12 10:40:02.320857 Running action 'suspend' 2020-06-12 10:40:02.325810 Action 'suspend': Executing special action 'suspend' using item '['Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend', 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell']'. Repeat allowed by action configuration. 2020-06-12 10:40:02.352052 Leaving 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend' untouched. 2020-06-12 10:40:02.354058 Updated variable 'item.suspend_remaining' to 5399 2020-06-12 10:40:02.360530 Running action 'suspend_end' 2020-06-12 10:40:02.362625 Checking eval: se_eval.insert_suspend_time('..suspend', suspend_text='%X'). 2020-06-12 10:40:02.370776 Executing method 'insert_suspend_time(..suspend, %X)' 2020-06-12 10:40:02.379776 Suspend time is 5400 2020-06-12 10:40:02.401536 Testing for relative item declaration ..suspend 2020-06-12 10:40:02.415409 Suspend item is Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend 2020-06-12 10:40:02.433726 Current suspend age: 1.111942 2020-06-12 10:40:02.447264 Remaining suspend time: 5398.888058 2020-06-12 10:40:02.463492 Suspend finished at 2020-06-12 12:10:01.350902+02:00 2020-06-12 10:40:02.483877 Action 'suspend_end': Set 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend_end' to '12:10:01'. Repeat allowed by action configuration. 2020-06-12 10:40:02.500773 Action 'retrigger: Removing previous delay timer 'retrigger-SeSpecialDelayTimer'. 2020-06-12 10:40:02.648619 Action 'retrigger: Add 5399 second timer 'retrigger-SeSpecialDelayTimer' for delayed execution. Repeat allowed by action configuration. 2020-06-12 10:45:00.845546 Update state of item Zustandsautomat =========================================== [...] 2020-06-12 12:00:00.631188 Update state of item Zustandsautomat =========================================== 2020-06-12 12:00:00.646193 Update triggered by Eval (item=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules source=Trigger_se.trigger_1 dest=None) 2020-06-12 12:00:00.648078 Eval initially triggered by Logic (item=Trigger_se.trigger_1 source=None) 2020-06-12 12:00:00.649719 Checking eval: se_eval.get_relative_itemproperty('..settings.suspendduration', 'value') * 60. 2020-06-12 12:00:00.651086 Executing method 'get_relative_itemproperty(..settings.suspendduration, value)' 2020-06-12 12:00:00.653885 Testing for relative item declaration ..settings.suspendduration 2020-06-12 12:00:00.657341 Item property value from Rollladen.Dachgeschoss.Anna.Gaube.automatik.settings.suspendduration is: 90 2020-06-12 12:00:00.659494 Last state: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend ('ausgesetzt') 2020-06-12 12:00:00.692425 Testing for relative item declaration ..conditionset_id 2020-06-12 12:00:00.697002 Testing for relative item declaration ..conditionset_name 2020-06-12 12:00:00.700268 Last Conditionset: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend.enter_stay ('enter_stay') 2020-06-12 12:00:00.721862 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.release' ('release') can be entered: 2020-06-12 12:00:00.738893 Check condition set 'enter' 2020-06-12 12:00:00.762034 Condition 'release': Checking all relevant stuff 2020-06-12 12:00:00.763077 Condition 'release': value=True negate=False current=False 2020-06-12 12:00:00.768841 not OK -> not matching 2020-06-12 12:00:00.777068 State can not be entered 2020-06-12 12:00:00.878648 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.lock' ('gesperrt') can be entered: 2020-06-12 12:00:00.901980 Check condition set 'enter' 2020-06-12 12:00:00.925766 Condition 'lock': Checking all relevant stuff 2020-06-12 12:00:00.944535 Condition 'lock': value=True negate=False current=False 2020-06-12 12:00:00.951545 not OK -> not matching 2020-06-12 12:00:00.957578 State can not be entered 2020-06-12 12:00:00.987850 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend' ('ausgesetzt') can be entered: 2020-06-12 12:00:01.040938 Check condition set 'enter_manuell' 2020-06-12 12:00:01.075470 Condition 'trigger_source': Checking all relevant stuff 2020-06-12 12:00:01.088050 Trying to get value of eval <bound method SeItem.get_update_trigger_source of Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules> 2020-06-12 12:00:01.098549 Checking eval: se_eval.get_relative_itemproperty('..manuell', 'path'). 2020-06-12 12:00:01.103064 Executing method 'get_relative_itemproperty(..manuell, path)' 2020-06-12 12:00:01.123142 Testing for relative item declaration ..manuell 2020-06-12 12:00:01.164118 Item property path from Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell is: Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell 2020-06-12 12:00:01.221325 Condition 'trigger_source': value=Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell negate=False current=Trigger_se.trigger_1 2020-06-12 12:00:01.241185 not OK -> not matching 2020-06-12 12:00:01.246493 Check condition set 'enter_stay' 2020-06-12 12:00:01.282855 Condition 'laststate': Checking all relevant stuff 2020-06-12 12:00:01.285722 Trying to get value of eval <bound method SeItem.get_laststate_id of Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules> 2020-06-12 12:00:01.307624 Condition 'laststate': value=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend negate=False current=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend 2020-06-12 12:00:01.308050 OK -> matching 2020-06-12 12:00:01.311147 Age of 'laststate': No limits given 2020-06-12 12:00:01.365409 Condition 'suspend_active': Checking all relevant stuff 2020-06-12 12:00:01.366676 Condition 'suspend_active': value=True negate=False current=True 2020-06-12 12:00:01.371476 OK -> matching 2020-06-12 12:00:01.405654 Age of 'suspend_active': No limits given 2020-06-12 12:00:01.439446 Condition 'suspend': Checking all relevant stuff 2020-06-12 12:00:01.441339 Condition 'suspend': value=True negate=False current=True 2020-06-12 12:00:01.444144 OK -> matching 2020-06-12 12:00:01.446530 Age of 'suspend': min=[None] max=[5400] negate=None current=4800.124804 2020-06-12 12:00:01.448394 Testing valuepair min None and max 5400 2020-06-12 12:00:01.457444 given limits ok -> matching 2020-06-12 12:00:01.467411 State can be entered 2020-06-12 12:00:01.485505 Testing for relative item declaration ..conditionset_id 2020-06-12 12:00:01.494322 Testing for relative item declaration ..conditionset_name 2020-06-12 12:00:01.499379 Staying at Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend ('ausgesetzt') based on conditionset Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend.enter_stay ('enter_stay') 2020-06-12 12:00:01.520298 Running action 'suspend' 2020-06-12 12:00:01.525213 Action 'suspend': Executing special action 'suspend' using item '['Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend', 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell']'. Repeat allowed by action configuration. 2020-06-12 12:00:01.551629 Leaving 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend' untouched. 2020-06-12 12:00:01.557399 Updated variable 'item.suspend_remaining' to 600 2020-06-12 12:00:01.559946 Running action 'suspend_end' 2020-06-12 12:00:01.563515 Checking eval: se_eval.insert_suspend_time('..suspend', suspend_text='%X'). 2020-06-12 12:00:01.576300 Executing method 'insert_suspend_time(..suspend, %X)' 2020-06-12 12:00:01.584502 Suspend time is 5400 2020-06-12 12:00:01.589534 Testing for relative item declaration ..suspend 2020-06-12 12:00:01.594245 Suspend item is Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend 2020-06-12 12:00:01.596285 Current suspend age: 4800.274669 2020-06-12 12:00:01.598343 Remaining suspend time: 599.7253309999996 2020-06-12 12:00:01.603818 Suspend finished at 2020-06-12 12:10:01.328793+02:00 2020-06-12 12:00:01.615001 Action 'suspend_end': Set 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend_end' to '12:10:01'. Repeat allowed by action configuration. 2020-06-12 12:00:01.624386 Action 'retrigger: Removing previous delay timer 'retrigger-SeSpecialDelayTimer'. 2020-06-12 12:00:01.672443 Action 'retrigger: Add 600 second timer 'retrigger-SeSpecialDelayTimer' for delayed execution. Repeat allowed by action configuration. 2020-06-12 12:05:00.733061 Update state of item Zustandsautomat =========================================== 2020-06-12 12:05:00.772734 Update triggered by Eval (item=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules source=Trigger_se.trigger_1 dest=None) 2020-06-12 12:05:00.775931 Eval initially triggered by Logic (item=Trigger_se.trigger_1 source=None) 2020-06-12 12:05:00.777967 Checking eval: se_eval.get_relative_itemproperty('..settings.suspendduration', 'value') * 60. 2020-06-12 12:05:00.789480 Executing method 'get_relative_itemproperty(..settings.suspendduration, value)' 2020-06-12 12:05:00.821426 Testing for relative item declaration ..settings.suspendduration 2020-06-12 12:05:00.844741 Item property value from Rollladen.Dachgeschoss.Anna.Gaube.automatik.settings.suspendduration is: 90 2020-06-12 12:05:00.848594 Last state: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend ('ausgesetzt') 2020-06-12 12:05:00.870230 Testing for relative item declaration ..conditionset_id 2020-06-12 12:05:00.875685 Testing for relative item declaration ..conditionset_name 2020-06-12 12:05:00.877921 Last Conditionset: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend.enter_stay ('enter_stay') 2020-06-12 12:05:00.907497 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.release' ('release') can be entered: 2020-06-12 12:05:00.924496 Check condition set 'enter' 2020-06-12 12:05:00.950316 Condition 'release': Checking all relevant stuff 2020-06-12 12:05:00.953401 Condition 'release': value=True negate=False current=False 2020-06-12 12:05:00.954779 not OK -> not matching 2020-06-12 12:05:00.957902 State can not be entered 2020-06-12 12:05:00.992858 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.lock' ('gesperrt') can be entered: 2020-06-12 12:05:01.002854 Check condition set 'enter' 2020-06-12 12:05:01.028475 Condition 'lock': Checking all relevant stuff 2020-06-12 12:05:01.029857 Condition 'lock': value=True negate=False current=False 2020-06-12 12:05:01.030211 not OK -> not matching 2020-06-12 12:05:01.031668 State can not be entered 2020-06-12 12:05:01.069951 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend' ('ausgesetzt') can be entered: 2020-06-12 12:05:01.125157 Check condition set 'enter_manuell' 2020-06-12 12:05:01.161333 Condition 'trigger_source': Checking all relevant stuff 2020-06-12 12:05:01.162508 Trying to get value of eval <bound method SeItem.get_update_trigger_source of Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules> 2020-06-12 12:05:01.166345 Checking eval: se_eval.get_relative_itemproperty('..manuell', 'path'). 2020-06-12 12:05:01.169939 Executing method 'get_relative_itemproperty(..manuell, path)' 2020-06-12 12:05:01.171886 Testing for relative item declaration ..manuell 2020-06-12 12:05:01.173266 Item property path from Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell is: Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell 2020-06-12 12:05:01.184047 Condition 'trigger_source': value=Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell negate=False current=Trigger_se.trigger_1 2020-06-12 12:05:01.191873 not OK -> not matching 2020-06-12 12:05:01.194927 Check condition set 'enter_stay' 2020-06-12 12:05:01.216991 Condition 'laststate': Checking all relevant stuff 2020-06-12 12:05:01.221642 Trying to get value of eval <bound method SeItem.get_laststate_id of Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules> 2020-06-12 12:05:01.225350 Condition 'laststate': value=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend negate=False current=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend 2020-06-12 12:05:01.245534 OK -> matching 2020-06-12 12:05:01.254025 Age of 'laststate': No limits given 2020-06-12 12:05:01.302399 Condition 'suspend_active': Checking all relevant stuff 2020-06-12 12:05:01.304520 Condition 'suspend_active': value=True negate=False current=True 2020-06-12 12:05:01.310866 OK -> matching 2020-06-12 12:05:01.317355 Age of 'suspend_active': No limits given 2020-06-12 12:05:01.359820 Condition 'suspend': Checking all relevant stuff 2020-06-12 12:05:01.366301 Condition 'suspend': value=True negate=False current=True 2020-06-12 12:05:01.374666 OK -> matching 2020-06-12 12:05:01.379620 Age of 'suspend': min=[None] max=[5400] negate=None current=5100.057628 2020-06-12 12:05:01.386950 Testing valuepair min None and max 5400 2020-06-12 12:05:01.393443 given limits ok -> matching 2020-06-12 12:05:01.402407 State can be entered 2020-06-12 12:05:01.468706 Testing for relative item declaration ..conditionset_id 2020-06-12 12:05:01.476349 Testing for relative item declaration ..conditionset_name 2020-06-12 12:05:01.478962 Staying at Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend ('ausgesetzt') based on conditionset Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend.enter_stay ('enter_stay') 2020-06-12 12:05:01.504389 Running action 'suspend' 2020-06-12 12:05:01.509882 Action 'suspend': Executing special action 'suspend' using item '['Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend', 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell']'. Repeat allowed by action configuration. 2020-06-12 12:05:01.531606 Leaving 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend' untouched. 2020-06-12 12:05:01.534756 Updated variable 'item.suspend_remaining' to 300 2020-06-12 12:05:01.540958 Running action 'suspend_end' 2020-06-12 12:05:01.543236 Checking eval: se_eval.insert_suspend_time('..suspend', suspend_text='%X'). 2020-06-12 12:05:01.557824 Executing method 'insert_suspend_time(..suspend, %X)' 2020-06-12 12:05:01.561584 Suspend time is 5400 2020-06-12 12:05:01.565370 Testing for relative item declaration ..suspend 2020-06-12 12:05:01.571816 Suspend item is Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend 2020-06-12 12:05:01.581991 Current suspend age: 5100.260377 2020-06-12 12:05:01.595677 Remaining suspend time: 299.7396230000004 2020-06-12 12:05:01.599652 Suspend finished at 2020-06-12 12:10:01.338915+02:00 2020-06-12 12:05:01.602937 Action 'suspend_end': Set 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend_end' to '12:10:01'. Repeat allowed by action configuration. 2020-06-12 12:05:01.605732 Action 'retrigger: Removing previous delay timer 'retrigger-SeSpecialDelayTimer'. 2020-06-12 12:05:01.662634 Action 'retrigger: Add 300 second timer 'retrigger-SeSpecialDelayTimer' for delayed execution. Repeat allowed by action configuration. 2020-06-12 12:10:00.527620 Update state of item Zustandsautomat =========================================== 2020-06-12 12:10:00.548315 Update triggered by Eval (item=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules source=Trigger_se.trigger_1 dest=None) 2020-06-12 12:10:00.549586 Eval initially triggered by Logic (item=Trigger_se.trigger_1 source=None) 2020-06-12 12:10:00.550960 Checking eval: se_eval.get_relative_itemproperty('..settings.suspendduration', 'value') * 60. 2020-06-12 12:10:00.554410 Executing method 'get_relative_itemproperty(..settings.suspendduration, value)' 2020-06-12 12:10:00.560413 Testing for relative item declaration ..settings.suspendduration 2020-06-12 12:10:00.564491 Item property value from Rollladen.Dachgeschoss.Anna.Gaube.automatik.settings.suspendduration is: 90 2020-06-12 12:10:00.577532 Last state: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend ('ausgesetzt') 2020-06-12 12:10:00.595697 Testing for relative item declaration ..conditionset_id 2020-06-12 12:10:00.602726 Testing for relative item declaration ..conditionset_name 2020-06-12 12:10:00.607806 Last Conditionset: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend.enter_stay ('enter_stay') 2020-06-12 12:10:00.641813 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.release' ('release') can be entered: 2020-06-12 12:10:00.675296 Check condition set 'enter' 2020-06-12 12:10:00.707136 Condition 'release': Checking all relevant stuff 2020-06-12 12:10:00.712935 Condition 'release': value=True negate=False current=False 2020-06-12 12:10:00.715120 not OK -> not matching 2020-06-12 12:10:00.716208 State can not be entered 2020-06-12 12:10:00.754867 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.lock' ('gesperrt') can be entered: 2020-06-12 12:10:00.805183 Check condition set 'enter' 2020-06-12 12:10:00.834367 Condition 'lock': Checking all relevant stuff 2020-06-12 12:10:00.837246 Condition 'lock': value=True negate=False current=False 2020-06-12 12:10:00.844205 not OK -> not matching 2020-06-12 12:10:00.848703 State can not be entered 2020-06-12 12:10:00.880261 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend' ('ausgesetzt') can be entered: 2020-06-12 12:10:00.917372 Check condition set 'enter_manuell' 2020-06-12 12:10:00.963686 Condition 'trigger_source': Checking all relevant stuff 2020-06-12 12:10:00.964837 Trying to get value of eval <bound method SeItem.get_update_trigger_source of Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules> 2020-06-12 12:10:00.973704 Checking eval: se_eval.get_relative_itemproperty('..manuell', 'path'). 2020-06-12 12:10:00.983534 Executing method 'get_relative_itemproperty(..manuell, path)' 2020-06-12 12:10:00.984117 Testing for relative item declaration ..manuell 2020-06-12 12:10:00.986479 Item property path from Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell is: Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell 2020-06-12 12:10:00.988045 Condition 'trigger_source': value=Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell negate=False current=Trigger_se.trigger_1 2020-06-12 12:10:00.991557 not OK -> not matching 2020-06-12 12:10:00.995004 Check condition set 'enter_stay' 2020-06-12 12:10:01.061680 Condition 'laststate': Checking all relevant stuff 2020-06-12 12:10:01.075246 Trying to get value of eval <bound method SeItem.get_laststate_id of Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules> 2020-06-12 12:10:01.078266 Condition 'laststate': value=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend negate=False current=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend 2020-06-12 12:10:01.082862 OK -> matching 2020-06-12 12:10:01.090990 Age of 'laststate': No limits given 2020-06-12 12:10:01.181262 Condition 'suspend_active': Checking all relevant stuff 2020-06-12 12:10:01.220704 Condition 'suspend_active': value=True negate=False current=True 2020-06-12 12:10:01.239631 OK -> matching 2020-06-12 12:10:01.280061 Age of 'suspend_active': No limits given 2020-06-12 12:10:01.360851 Condition 'suspend': Checking all relevant stuff 2020-06-12 12:10:01.362465 Condition 'suspend': value=True negate=False current=True 2020-06-12 12:10:01.365050 OK -> matching 2020-06-12 12:10:01.370752 Age of 'suspend': min=[None] max=[5400] negate=None current=5400.048722 2020-06-12 12:10:01.375742 Testing valuepair min None and max 5400 2020-06-12 12:10:01.402849 too old -> not matching 2020-06-12 12:10:01.422016 State can not be entered 2020-06-12 12:10:01.491425 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.ausschlafen' ('Anna Ausschlafen') can be entered: 2020-06-12 12:10:01.543649 Check condition set 'enter' 2020-06-12 12:10:01.599174 Condition 'Anna_schlaeft': Checking all relevant stuff 2020-06-12 12:10:01.606586 Condition 'Anna_schlaeft': value=True negate=False current=False 2020-06-12 12:10:01.617027 not OK -> not matching 2020-06-12 12:10:01.622639 State can not be entered 2020-06-12 12:10:01.665636 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.nachts_dg' ('Rollladen Nacht_DG') can be entered: 2020-06-12 12:10:01.748464 Check condition set 'enter_1' 2020-06-12 12:10:01.793032 Condition 'Daemmerung2': Checking all relevant stuff 2020-06-12 12:10:01.800108 Condition 'Daemmerung2': value=True negate=False current=False 2020-06-12 12:10:01.807036 not OK -> not matching 2020-06-12 12:10:01.815221 Check condition set 'enter_2' 2020-06-12 12:10:01.867257 Condition 'automatik_aus': Checking all relevant stuff 2020-06-12 12:10:01.879778 Condition 'automatik_aus': value=False negate=False current=False 2020-06-12 12:10:01.895967 OK -> matching 2020-06-12 12:10:01.911671 Age of 'automatik_aus': No limits given 2020-06-12 12:10:01.963421 Condition 'Daemmerung3': Checking all relevant stuff 2020-06-12 12:10:01.966738 Condition 'Daemmerung3': value=True negate=False current=False 2020-06-12 12:10:01.970551 not OK -> not matching 2020-06-12 12:10:01.978071 Check condition set 'enter_3' 2020-06-12 12:10:02.036220 Condition 'automatik_aus': Checking all relevant stuff 2020-06-12 12:10:02.038692 Condition 'automatik_aus': value=False negate=False current=False 2020-06-12 12:10:02.042043 OK -> matching 2020-06-12 12:10:02.048525 Age of 'automatik_aus': No limits given 2020-06-12 12:10:02.087055 Condition 'month': Checking all relevant stuff 2020-06-12 12:10:02.089345 Trying to get value of eval <bound method SeCurrent.get_month of <plugins.stateengine.StateEngineCurrent.SeCurrent object at 0x67f85e90>> 2020-06-12 12:10:02.099713 Condition 'month': min=[3] max=[11] negate=True current=6 2020-06-12 12:10:02.123254 Checking minvalue 3 and maxvalue 11 2020-06-12 12:10:02.134390 not lower than min -> not matching 2020-06-12 12:10:02.150659 Check condition set 'enter_4' 2020-06-12 12:10:02.188581 Condition 'automatik_aus': Checking all relevant stuff 2020-06-12 12:10:02.203601 Condition 'automatik_aus': value=False negate=False current=False 2020-06-12 12:10:02.205457 OK -> matching 2020-06-12 12:10:02.222275 Age of 'automatik_aus': No limits given 2020-06-12 12:10:02.292470 Condition 'month': Checking all relevant stuff 2020-06-12 12:10:02.311775 Trying to get value of eval <bound method SeCurrent.get_month of <plugins.stateengine.StateEngineCurrent.SeCurrent object at 0x67f85e90>> 2020-06-12 12:10:02.318999 Condition 'month': min=[4] max=[10] negate=False current=6 2020-06-12 12:10:02.327283 Checking minvalue 4 and maxvalue 10 2020-06-12 12:10:02.343245 given limits ok -> matching 2020-06-12 12:10:02.345468 Age of 'month': No limits given 2020-06-12 12:10:02.382950 Condition 'time': Checking all relevant stuff 2020-06-12 12:10:02.386486 Trying to get value of eval <bound method SeCurrent.get_time of <plugins.stateengine.StateEngineCurrent.SeCurrent object at 0x67f85e90>> 2020-06-12 12:10:02.396663 Condition 'time': min=[datetime.time(20, 45)] max=[datetime.time(21, 0)] negate=False current=12:10:01.610627 2020-06-12 12:10:02.398078 Checking minvalue 20:45:00 and maxvalue 21:00:00 2020-06-12 12:10:02.423715 too low -> not matching 2020-06-12 12:10:02.435754 Check condition set 'enter_5' 2020-06-12 12:10:02.462167 Condition 'automatik_aus': Checking all relevant stuff 2020-06-12 12:10:02.481679 Condition 'automatik_aus': value=False negate=False current=False 2020-06-12 12:10:02.494948 OK -> matching 2020-06-12 12:10:02.506122 Age of 'automatik_aus': No limits given 2020-06-12 12:10:02.577262 Condition 'sun_altitude': Checking all relevant stuff 2020-06-12 12:10:02.602485 Trying to get value of eval <bound method SeCurrent.get_sun_altitude of <plugins.stateengine.StateEngineCurrent.SeCurrent object at 0x67f85e90>> 2020-06-12 12:10:02.633107 Condition 'sun_altitude': min=[-4] max=[None] negate=False current=60.12863462229096 2020-06-12 12:10:02.639640 Checking minvalue -4 and maxvalue None 2020-06-12 12:10:02.643447 given limits ok -> matching 2020-06-12 12:10:02.655673 Age of 'sun_altitude': No limits given 2020-06-12 12:10:02.702840 Condition 'time': Checking all relevant stuff 2020-06-12 12:10:02.719531 Trying to get value of eval <bound method SeCurrent.get_time of <plugins.stateengine.StateEngineCurrent.SeCurrent object at 0x67f85e90>> 2020-06-12 12:10:02.732861 Condition 'time': min=[datetime.time(4, 0)] max=[datetime.time(6, 0)] negate=False current=12:10:02.605099 2020-06-12 12:10:02.750276 Checking minvalue 04:00:00 and maxvalue 06:00:00 2020-06-12 12:10:02.765469 too high -> not matching 2020-06-12 12:10:02.772239 Check condition set 'enter_6' 2020-06-12 12:10:02.805975 Condition 'automatik_aus': Checking all relevant stuff 2020-06-12 12:10:02.808701 Condition 'automatik_aus': value=False negate=False current=False 2020-06-12 12:10:02.815247 OK -> matching 2020-06-12 12:10:02.823005 Age of 'automatik_aus': No limits given 2020-06-12 12:10:02.875056 Condition 'time': Checking all relevant stuff 2020-06-12 12:10:02.881352 Trying to get value of eval <bound method SeCurrent.get_time of <plugins.stateengine.StateEngineCurrent.SeCurrent object at 0x67f85e90>> 2020-06-12 12:10:02.883994 Condition 'time': min=[datetime.time(6, 0)] max=[datetime.time(7, 0)] negate=False current=12:10:02.854202 2020-06-12 12:10:02.885801 Checking minvalue 06:00:00 and maxvalue 07:00:00 2020-06-12 12:10:02.886696 too high -> not matching 2020-06-12 12:10:02.906189 Check condition set 'enter_7' 2020-06-12 12:10:02.937798 Condition 'height': Checking all relevant stuff 2020-06-12 12:10:02.956080 Condition 'height': min=[245] max=[None] negate=False current=0 2020-06-12 12:10:02.968824 Checking minvalue 245 and maxvalue None 2020-06-12 12:10:02.983229 too low -> not matching 2020-06-12 12:10:02.989295 Check condition set 'enter_8' 2020-06-12 12:10:03.031522 Condition 'height': Checking all relevant stuff 2020-06-12 12:10:03.046454 Condition 'height': min=[245] max=[None] negate=False current=0 2020-06-12 12:10:03.063250 Checking minvalue 245 and maxvalue None 2020-06-12 12:10:03.075991 too low -> not matching 2020-06-12 12:10:03.079032 State can not be entered 2020-06-12 12:10:03.108277 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.Nachfuehrung' ('Rollladen Nachfuehung_DG_Nord') can be entered: 2020-06-12 12:10:03.136585 Check condition set 'enter_1' 2020-06-12 12:10:03.169410 Condition 'nachfuehren': Checking all relevant stuff 2020-06-12 12:10:03.170455 Condition 'nachfuehren': value=True negate=False current=True 2020-06-12 12:10:03.175904 OK -> matching 2020-06-12 12:10:03.179961 Age of 'nachfuehren': No limits given 2020-06-12 12:10:03.205901 Condition 'automatik_aus': Checking all relevant stuff 2020-06-12 12:10:03.212468 Condition 'automatik_aus': value=False negate=False current=False 2020-06-12 12:10:03.216453 OK -> matching 2020-06-12 12:10:03.225142 Age of 'automatik_aus': No limits given 2020-06-12 12:10:03.250564 Condition 'sun_altitude': Checking all relevant stuff 2020-06-12 12:10:03.254971 Trying to get value of eval <bound method SeCurrent.get_sun_altitude of <plugins.stateengine.StateEngineCurrent.SeCurrent object at 0x67f85e90>> 2020-06-12 12:10:03.258800 Condition 'sun_altitude': min=[5] max=[70] negate=False current=60.12937228272132 2020-06-12 12:10:03.263522 Checking minvalue 5 and maxvalue 70 2020-06-12 12:10:03.276346 given limits ok -> matching 2020-06-12 12:10:03.282963 Age of 'sun_altitude': No limits given 2020-06-12 12:10:03.309328 Condition 'sun_azimut': Checking all relevant stuff 2020-06-12 12:10:03.312395 Trying to get value of eval <bound method SeCurrent.get_sun_azimut of <plugins.stateengine.StateEngineCurrent.SeCurrent object at 0x67f85e90>> 2020-06-12 12:10:03.316763 Condition 'sun_azimut': min=[290] max=[330] negate=False current=143.03075918280524 2020-06-12 12:10:03.322037 Checking minvalue 290 and maxvalue 330 2020-06-12 12:10:03.323767 too low -> not matching 2020-06-12 12:10:03.340989 State can not be entered 2020-06-12 12:10:03.376359 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.tags' ('Rollalden Tags_DG') can be entered: 2020-06-12 12:10:03.406076 Check condition set 'enter_1' 2020-06-12 12:10:03.433898 Condition 'party': Checking all relevant stuff 2020-06-12 12:10:03.442511 Condition 'party': value=False negate=False current=False 2020-06-12 12:10:03.475222 OK -> matching 2020-06-12 12:10:03.484207 Age of 'party': No limits given 2020-06-12 12:10:03.512657 Condition 'automatik_aus': Checking all relevant stuff 2020-06-12 12:10:03.518548 Condition 'automatik_aus': value=False negate=False current=False 2020-06-12 12:10:03.522690 OK -> matching 2020-06-12 12:10:03.523300 Age of 'automatik_aus': No limits given 2020-06-12 12:10:03.552689 Condition 'time': Checking all relevant stuff 2020-06-12 12:10:03.555741 Trying to get value of eval <bound method SeCurrent.get_time of <plugins.stateengine.StateEngineCurrent.SeCurrent object at 0x67f85e90>> 2020-06-12 12:10:03.561840 Condition 'time': min=[datetime.time(7, 0)] max=[datetime.time(20, 0)] negate=False current=12:10:03.056315 2020-06-12 12:10:03.571103 Checking minvalue 07:00:00 and maxvalue 20:00:00 2020-06-12 12:10:03.577205 given limits ok -> matching 2020-06-12 12:10:03.583528 Age of 'time': No limits given 2020-06-12 12:10:03.635302 State can be entered 2020-06-12 12:10:03.689172 Testing for relative item declaration ..conditionset_id 2020-06-12 12:10:03.695065 Testing for relative item declaration ..conditionset_name 2020-06-12 12:10:03.738866 Leaving Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend ('ausgesetzt'). Condition set was: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend.enter_stay 2020-06-12 12:10:03.758484 Running action 'suspend_end' 2020-06-12 12:10:03.774067 Action 'suspend_end': Set 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend_end' to ''. 2020-06-12 12:10:03.836298 Running action 'retrigger' 2020-06-12 12:10:03.856213 Delay Timer 'retrigger-SeSpecialDelayTimer': Executing special action 'retrigger' using item 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.retrigger'. 2020-06-12 12:10:03.854873 Running action 'suspend' 2020-06-12 12:10:03.885821 Action 'suspend': Set 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend' to 'False'. 2020-06-12 12:10:04.076962 Entering Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.tags ('Rollalden Tags_DG') based on conditionset Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.tags.enter_1 ('enter_1') 2020-06-12 12:10:04.206252 Running action 'fahren' 2020-06-12 12:10:04.216061 Action 'fahren': Set 'Rollladen.Dachgeschoss.Anna.Gaube.Fahren' to 'False'. 2020-06-12 12:10:05.465280 Update state of item Zustandsautomat =========================================== 2020-06-12 12:10:05.466631 Update triggered by Eval (item=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules source=Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell dest=None) 2020-06-12 12:10:05.468073 Eval initially triggered by knx (item=Rollladen.Dachgeschoss.Anna.Gaube.Fahren source=11.1.2:ga=2/3/40) 2020-06-12 12:10:05.469391 Checking eval: se_eval.get_relative_itemproperty('..settings.suspendduration', 'value') * 60. 2020-06-12 12:10:05.470268 Executing method 'get_relative_itemproperty(..settings.suspendduration, value)' 2020-06-12 12:10:05.470780 Testing for relative item declaration ..settings.suspendduration 2020-06-12 12:10:05.471709 Item property value from Rollladen.Dachgeschoss.Anna.Gaube.automatik.settings.suspendduration is: 90 2020-06-12 12:10:05.472344 Last state: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.tags ('Rollalden Tags_DG') 2020-06-12 12:10:05.473538 Testing for relative item declaration ..conditionset_id 2020-06-12 12:10:05.474459 Testing for relative item declaration ..conditionset_name 2020-06-12 12:10:05.475330 Last Conditionset: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.tags.enter_1 ('enter_1') 2020-06-12 12:10:05.476509 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.release' ('release') can be entered: 2020-06-12 12:10:05.480325 Check condition set 'enter' 2020-06-12 12:10:05.484779 Condition 'release': Checking all relevant stuff 2020-06-12 12:10:05.485562 Condition 'release': value=True negate=False current=False 2020-06-12 12:10:05.486044 not OK -> not matching 2020-06-12 12:10:05.486575 State can not be entered 2020-06-12 12:10:05.490735 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.lock' ('gesperrt') can be entered: 2020-06-12 12:10:05.491862 Check condition set 'enter' 2020-06-12 12:10:05.493031 Condition 'lock': Checking all relevant stuff 2020-06-12 12:10:05.493716 Condition 'lock': value=True negate=False current=False 2020-06-12 12:10:05.494191 not OK -> not matching 2020-06-12 12:10:05.494715 State can not be entered 2020-06-12 12:10:05.495795 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend' ('ausgesetzt') can be entered: 2020-06-12 12:10:05.496964 Check condition set 'enter_manuell' 2020-06-12 12:10:05.498396 Condition 'trigger_source': Checking all relevant stuff 2020-06-12 12:10:05.498992 Trying to get value of eval <bound method SeItem.get_update_trigger_source of Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules> 2020-06-12 12:10:05.499645 Checking eval: se_eval.get_relative_itemproperty('..manuell', 'path'). 2020-06-12 12:10:05.500443 Executing method 'get_relative_itemproperty(..manuell, path)' 2020-06-12 12:10:05.500978 Testing for relative item declaration ..manuell 2020-06-12 12:10:05.502317 Item property path from Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell is: Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell 2020-06-12 12:10:05.502994 Condition 'trigger_source': value=Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell negate=False current=Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell 2020-06-12 12:10:05.503548 OK -> matching 2020-06-12 12:10:05.504031 Age of 'trigger_source': No limits given 2020-06-12 12:10:05.505224 Condition 'suspend_active': Checking all relevant stuff 2020-06-12 12:10:05.505875 Condition 'suspend_active': value=True negate=False current=True 2020-06-12 12:10:05.506341 OK -> matching 2020-06-12 12:10:05.507021 Age of 'suspend_active': No limits given 2020-06-12 12:10:05.511263 State can be entered 2020-06-12 12:10:05.512603 Testing for relative item declaration ..conditionset_id 2020-06-12 12:10:05.513594 Testing for relative item declaration ..conditionset_name 2020-06-12 12:10:05.518647 Leaving Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.tags ('Rollalden Tags_DG'). Condition set was: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.tags.enter_1 2020-06-12 12:10:05.524012 Entering Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend ('ausgesetzt') based on conditionset Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend.enter_manuell ('enter_manuell') 2020-06-12 12:10:05.530039 Running action 'suspend' 2020-06-12 12:10:05.532123 Action 'suspend': Executing special action 'suspend' using item '['Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend', 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell']'. 2020-06-12 12:10:05.534015 Set 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend' to 'True'. 2020-06-12 12:10:05.547840 Updated variable 'item.suspend_remaining' to 5400 2020-06-12 12:10:05.548760 Running action 'suspend_end' 2020-06-12 12:10:05.549175 Checking eval: se_eval.insert_suspend_time('..suspend', suspend_text='%X'). 2020-06-12 12:10:05.549641 Executing method 'insert_suspend_time(..suspend, %X)' 2020-06-12 12:10:05.549894 Suspend time is 5400 2020-06-12 12:10:05.550124 Testing for relative item declaration ..suspend 2020-06-12 12:10:05.550601 Suspend item is Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend 2020-06-12 12:10:05.551049 Current suspend age: 0.016234 2020-06-12 12:10:05.551297 Remaining suspend time: 5399.983766 2020-06-12 12:10:05.551863 Suspend finished at 2020-06-12 13:40:05.535283+02:00 2020-06-12 12:10:05.552545 Action 'suspend_end': Set 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend_end' to '13:40:05'. 2020-06-12 12:10:05.554026 Action 'retrigger: Add 5400 second timer 'retrigger-SeSpecialDelayTimer' for delayed execution. 2020-06-12 12:15:00.605690 Update state of item Zustandsautomat =========================================== 2020-06-12 12:15:00.614122 Update triggered by Eval (item=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules source=Trigger_se.trigger_1 dest=None) 2020-06-12 12:15:00.616104 Eval initially triggered by Logic (item=Trigger_se.trigger_1 source=None) 2020-06-12 12:15:00.620241 Checking eval: se_eval.get_relative_itemproperty('..settings.suspendduration', 'value') * 60. 2020-06-12 12:15:00.626007 Executing method 'get_relative_itemproperty(..settings.suspendduration, value)' 2020-06-12 12:15:00.630240 Testing for relative item declaration ..settings.suspendduration 2020-06-12 12:15:00.632727 Item property value from Rollladen.Dachgeschoss.Anna.Gaube.automatik.settings.suspendduration is: 90 2020-06-12 12:15:00.646376 Last state: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend ('ausgesetzt') 2020-06-12 12:15:00.657461 Testing for relative item declaration ..conditionset_id 2020-06-12 12:15:00.664504 Testing for relative item declaration ..conditionset_name 2020-06-12 12:15:00.667206 Last Conditionset: Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend.enter_manuell ('enter_manuell') 2020-06-12 12:15:00.675017 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.release' ('release') can be entered: 2020-06-12 12:15:00.705970 Check condition set 'enter' 2020-06-12 12:15:00.761338 Condition 'release': Checking all relevant stuff 2020-06-12 12:15:00.784725 Condition 'release': value=True negate=False current=False 2020-06-12 12:15:00.787052 not OK -> not matching 2020-06-12 12:15:00.793695 State can not be entered 2020-06-12 12:15:00.817817 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.lock' ('gesperrt') can be entered: 2020-06-12 12:15:00.843139 Check condition set 'enter' 2020-06-12 12:15:00.858432 Condition 'lock': Checking all relevant stuff 2020-06-12 12:15:00.860975 Condition 'lock': value=True negate=False current=False 2020-06-12 12:15:00.875686 not OK -> not matching 2020-06-12 12:15:00.879005 State can not be entered 2020-06-12 12:15:00.924556 Check if state 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend' ('ausgesetzt') can be entered: 2020-06-12 12:15:00.965148 Check condition set 'enter_manuell' 2020-06-12 12:15:00.994034 Condition 'trigger_source': Checking all relevant stuff 2020-06-12 12:15:01.000929 Trying to get value of eval <bound method SeItem.get_update_trigger_source of Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules> 2020-06-12 12:15:01.022673 Checking eval: se_eval.get_relative_itemproperty('..manuell', 'path'). 2020-06-12 12:15:01.027778 Executing method 'get_relative_itemproperty(..manuell, path)' 2020-06-12 12:15:01.041649 Testing for relative item declaration ..manuell 2020-06-12 12:15:01.057718 Item property path from Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell is: Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell 2020-06-12 12:15:01.067218 Condition 'trigger_source': value=Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell negate=False current=Trigger_se.trigger_1 2020-06-12 12:15:01.073145 not OK -> not matching 2020-06-12 12:15:01.087289 Check condition set 'enter_stay' 2020-06-12 12:15:01.144431 Condition 'laststate': Checking all relevant stuff 2020-06-12 12:15:01.149060 Trying to get value of eval <bound method SeItem.get_laststate_id of Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules> 2020-06-12 12:15:01.153213 Condition 'laststate': value=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend negate=False current=Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend 2020-06-12 12:15:01.154816 OK -> matching 2020-06-12 12:15:01.169080 Age of 'laststate': No limits given 2020-06-12 12:15:01.240334 Condition 'suspend_active': Checking all relevant stuff 2020-06-12 12:15:01.244169 Condition 'suspend_active': value=True negate=False current=True 2020-06-12 12:15:01.248466 OK -> matching 2020-06-12 12:15:01.276454 Age of 'suspend_active': No limits given 2020-06-12 12:15:01.344835 Condition 'suspend': Checking all relevant stuff 2020-06-12 12:15:01.365737 Condition 'suspend': value=True negate=False current=True 2020-06-12 12:15:01.373516 OK -> matching 2020-06-12 12:15:01.376440 Age of 'suspend': min=[None] max=[5400] negate=None current=295.841243 2020-06-12 12:15:01.383267 Testing valuepair min None and max 5400 2020-06-12 12:15:01.388101 given limits ok -> matching 2020-06-12 12:15:01.417290 State can be entered 2020-06-12 12:15:01.503077 Testing for relative item declaration ..conditionset_id 2020-06-12 12:15:01.509718 Testing for relative item declaration ..conditionset_name 2020-06-12 12:15:01.527905 Staying at Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend ('ausgesetzt') based on conditionset Rollladen.Dachgeschoss.Anna.Gaube.automatik.rules.suspend.enter_stay ('enter_stay') 2020-06-12 12:15:01.556893 Running action 'suspend' 2020-06-12 12:15:01.559752 Action 'suspend': Executing special action 'suspend' using item '['Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend', 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.manuell']'. Repeat allowed by action configuration. 2020-06-12 12:15:01.597218 Leaving 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend' untouched. 2020-06-12 12:15:01.599758 Updated variable 'item.suspend_remaining' to 5104 2020-06-12 12:15:01.603844 Running action 'suspend_end' 2020-06-12 12:15:01.607479 Checking eval: se_eval.insert_suspend_time('..suspend', suspend_text='%X'). 2020-06-12 12:15:01.615647 Executing method 'insert_suspend_time(..suspend, %X)' 2020-06-12 12:15:01.620361 Suspend time is 5400 2020-06-12 12:15:01.623638 Testing for relative item declaration ..suspend 2020-06-12 12:15:01.633966 Suspend item is Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend 2020-06-12 12:15:01.639190 Current suspend age: 296.104363 2020-06-12 12:15:01.641384 Remaining suspend time: 5103.895637 2020-06-12 12:15:01.646048 Suspend finished at 2020-06-12 13:40:05.541325+02:00 2020-06-12 12:15:01.652672 Action 'suspend_end': Set 'Rollladen.Dachgeschoss.Anna.Gaube.automatik.suspend_end' to '13:40:05'. Repeat allowed by action configuration. 2020-06-12 12:15:01.660194 Action 'retrigger: Removing previous delay timer 'retrigger-SeSpecialDelayTimer'. 2020-06-12 12:15:01.732099 Action 'retrigger: Add 5104 second timer 'retrigger-SeSpecialDelayTimer' for delayed execution. Repeat allowed by action configuration.
Einen Kommentar schreiben:
-
Ad Docu: im aktuellsten Develop ist noch einiges aktualisiert, eben auch das Beispiel mit den beiden Himmelsrichtungen. Verbesserungsvorschläge jederzeit willkommen! Gerade für Einsteiger kann das sicher noch optimiert werden.
@arnix: Also genau genommen kannst du inzwischen eh PA und GAD nutzen. Früher hat das KNX Plugin nur die PA an shng gemeldet.
Dein Manuell Item reagiert auf Änderungen der Items "Fahren" und "Stop". Beide haben ein knx_listen, werden also durch den Bus aktualisiert. Und lösen somit dann auch deinen Suspendzustand aus. Du kannst nun beim manual_exclude ein..
definieren oder - nachdem vermutlich alle Jalousien an einem oder zwei Geräten hängen werden einfacher eben nur die Aktor PA. Im extended Logging für das suspend Item kannst du das dann nachvollziehen:Code:- KNX:*:ga=2/2/* - KNX: *:ga=2/x/y
Code:2020-06-10 06:31:16.463766 manual_item_update_eval ======================================================== 2020-06-10 06:31:16.464587 running for item 'jalousien.eg.osten_buero.automatik.manuell' source 'Eval' caller 'jalousien.eg.osten_buero.lamellen' 2020-06-10 06:31:16.465051 Current value of item jalousien.eg.osten_buero.automatik.manuell is False 2020-06-10 06:31:16.466487 get_caller(Eval, jalousien.eg.osten_buero.lamellen): updated by knx:1.1.4:ga=2/1/19 at 2020-06-10 06:31:16.453834+02:00 2020-06-10 06:31:16.467079 original trigger by 'knx:1.1.4:ga=2/1/19' 2020-06-10 06:31:16.467535 checking exclude values: ['database:*', 'init:*', 'KNX:1.1.4', 'KNX:1.1.5', 'KNX:1.1.26'] 2020-06-10 06:31:16.467932 Checking regex result None 2020-06-10 06:31:16.468265 re.compile('database:*', re.IGNORECASE): not matching 2020-06-10 06:31:16.468630 Checking regex result None 2020-06-10 06:31:16.468958 re.compile('init:*', re.IGNORECASE): not matching 2020-06-10 06:31:16.469334 Checking regex result <re.Match object; span=(0, 9), match='knx:1.1.4'> 2020-06-10 06:31:16.469691 re.compile('KNX:1.1.4', re.IGNORECASE): matching. Writing value False
Einen Kommentar schreiben:
-
Hi,Zitat von Onkelandy Beitrag anzeigenarnix Achtung physikalische Adresse des Aktors, nicht GAD
ja, das ist mir klar. Ich gebe bei "se_manual_exclude:" die physikalische Adresse des Aktors an. Ich verstehe nur nicht, warum die Stateengine auf eine Statusmeldung des Aktors reagiert. Die GAD, auf der der Aktor die Statusmeldungen sendet, sind überhaupt nicht unter "manuell / eval_trigger" gelistet. Die Items, die dort gelistet sind, haben eine andere GAD.
Einen Kommentar schreiben:
-
Ja, habe ich mehrmals gelesen. Ist sehr komplex und da hatte ich ja das Beispiel her. Dort gibt es im BeispielZitat von Onkelandy Beitrag anzeigen
Nachfuehren_Seite_Eins und Seite_Zwei, aber dann wird das gesamte default eingebunden (raffstore1) so dass beide gültig sind und keine Entscheidung nach der Seite stattfindet. Mit deinem aktuellen Beispiel wird mir einiges klarer (aber auch noch nicht alles). Ich versuche das jetzt mal auf meine Bedürfnisse anzupassen.
Einen Kommentar schreiben:
-
Danke. Dann werde ich gleich mal weiter basteln. Ich hatte die Doku im Net gesucht. Ich glaube ich werde dann gleich noch mal aktualisieren und deine ausführliche Beschreibung (danke auch dafür) mir genauer ansehen.Zitat von Onkelandy Beitrag anzeigenIm aktuellen develop Branch der plugins sollte das mit den beiden Hausseiten in der Doku nun auch verständlicher sein.
Gruss Andreas
Einen Kommentar schreiben:
-
Danke für die Antwort.
shng 1.7.1 und das Plugin aus dem Develop muss ich beides noch machen, ich bin da noch auf älteren Versionen. Aber steht eh schon auf meiner ToDo-Liste. Das exclude setze ich rein:
Allerdings kommen die Status-Rückmeldungen des Aktors doch auf einer anderen Gruppenadresse. Die beiden zu überwachenden Items für das Manuel-Item sind "fahren" und "stopp" und haben jeweils eine eigene GAD. Die Rückmeldungen werden auf einer anderen GAD gesendet.Code:stateengine_Rollladen_KG_manuell: manuell: eval_trigger: - ...Fahren - ...Stop - ......Zentral.alleZimmer.alle.Fahren - ......Zentral.alleZimmer.alle.Stop - ......Keller.alleZimmer.alle.Fahren - ......Keller.alleZimmer.alle.Stop se_manual_exclude: - 'Init:*' - 'database:*' - 'KNX:10.2.*'
- Likes 1
Einen Kommentar schreiben:
-
arnix
Das sieht doch schon mal gut aus. Und recht umfangreich. Das in einer Logik abzubilden könnte ein großer Spaß werden
Auf die Schnelle kann ich nix Falsches erkennen, außer dass du bei den manuell Items bei manual_exclude keinen KNX Eintrag hast. Da musst du unbedingt KNX:<Adresse des Aktors> eintragen! Also zB KNX:1.1.4 - ansonsten wird das Manuellitem über die Statusrückmeldung des Aktors nochmals getriggert. Das dürfte Hauptursache bei dir sein.
Das mit der Gleichzeitigkeit hatte ich bei mir auch schon in Verdacht. Das müsste ich mal in einer kontrollierten Umgebung an einem konkreten Beispiel testen. Teils kann es aber auch an den oben beschriebenen Situationen liegen. Sei doch so nett den letzten Develop zu ziehen und shng 1.7.1 neu zu starten und dann zu beobachten.
https://github.com/smarthomeNG/plugi...op/stateengine
Einen Kommentar schreiben:
-
Hi,Zitat von Onkelandy Beitrag anzeigenHi an alle, die das Stateengine Plugin nutzen. Mir sind letztens einige ganz grobe Probleme mit dem Manuell Item aufgefallen. Und da wundere ich mich grad, warum das nie aufgefallen ist - weder mir noch sonst wem.
...
also ich habe auch große Probleme mit dem Suspend und hatte auch schon mal versucht, das zu beschreiben. Siehe #36. Ich muss aber dazu sagen, dass ich vollkommen den Durchblick durch die Struktur der State-Engine verloren habe. Ihr seid da tief drin, aber wenn man sich nur ab und an damit beschäftigt, ist es echt schwer, diese sehr komplexen Konfigurationsmöglichkeiten und Wechselwirkungen im Blick zu haben. Letztendlich brauche ich eine Steuerung meiner Rollladen und teilweise Lampen, die an einigen Bedingungen hängt. Ich überlege schon, mit einfach ein paar Logiken zu schreiben, um wieder Herr des Verfahrens zu werden. Das alles ist keine Kritik, mir ist schon klar, dass die Komplexität der State-Enginge zustande gekommen ist, weil diese Anforderungen bei einigen oder vielen bestehen. Und ich bin ohnehin dankbar für alles, was ihr macht. Nur da ich vollkommen den Überblick verloren habe, muss ich mir wohl einen anderen Weg suchen.
Jedenfalls habe ich das Problem, dass nach Ablauf der Suspend-Time oftmals derselbe Befehl, der das Suspend ausgelöst hat, erneut registriert wird. Ohne dass ihn jemand ausgelöst hat. Das passiert aber auch nicht immer. Wenn ich teste, läuft oft alles so, wie es sein soll. Wenn ich dann in den Betrieb gehe, bleibt dann und wann irgendwo ein Rollladen im Dauer-Suspend.
Dann habe ich auch noch das Problem, dass ich einen Rollladen manuell öffne und wenn während der Öffnung (Rollladen läuft noch) der reguläre Trigger eine Neuberechnung auslöst, dann fährt der Rollladen wieder zurück. Also die normale Konfiguration wäre z.B. zu der Zeit "Rollladen geschlossen" und ich öffne ihn aber manuell. Dann kommt per Trigger in dem Moment eine Neuberechnung und er stoppt die Aufwärtsfahrt und fährt wieder nach unten. So, als ob der Suspend-Zustand nicht mehr rechtzeitig angekommen wäre...
Ich poste mal alle meine Konfigurationen. Vielleicht (oder ganz bestimmt) mache ich auch was Grundlegendes falsch.
Code:#\etc\struct.yaml stateengine_items_and_trigger_Rollladen: settings: suspendduration: cache: false initial_value: 90 rules: se_item_temperature: thz.outsideTemp se_item_anwesend: Hausmodi.Anwesenheit se_item_automatik_aus: Global.alle_Rollladen_manuell se_item_party: Hausmodi.Party se_item_urlaub: Hausmodi.Urlaub se_item_schulferien: Hausmodi.Schulferien se_item_Lara_schlaeft: Global.Lara_Rollladen_manuell se_item_Anna_schlaeft: Global.Anna_Rollladen_manuell se_item_Schlafzimmer_schlaeft: Global.Schlafzimmer_Rollladen_manuell se_item_Gaeste_schlaeft: Global.Gaeste_Rollladen_manuell se_item_Daemmerung1: Sonnenstand.normaleDaemmerung se_item_Daemmerung2: Sonnenstand.starkeDaemmerung se_item_Daemmerung3: Sonnenstand.Finsternis se_item_Helligkeit_morgens_wolkenlos: Sonnenstand.morgens_wolkenlos se_item_Helligkeit_gr43k: Sonnenstand.Helligkeit.gt43k se_item_Helligkeit_kl1k: Sonnenstand.Helligkeit.sm1k se_item_nachfuehren: Global.Rollladen_Hitzeschutz se_item_Frostschutz: Global.Rollladen_Frostschutz se_item_height: ...Position se_item_fahren: ...Fahren se_startup_delay: 30 eval_trigger: - Trigger_se.trigger_1 - ..manuell - ..lock - ..suspend - ..retrigger - ..release stateengine_items_and_trigger_Schaltungen: settings: remark: Use these settings for your condition values suspendduration: cache: false initial_value: 30 rules: se_item_temperature: thz.outsideTemp se_item_anwesend: Hausmodi.Anwesenheit se_item_automatik_aus: Global.alle_Rollladen_manuell se_item_party: Hausmodi.Party se_item_urlaub: Hausmodi.Urlaub se_item_Daemmerung1: Sonnenstand.normaleDaemmerung se_item_Daemmerung2: Sonnenstand.starkeDaemmerung se_item_Daemmerung3: Sonnenstand.Finsternis se_item_Helligkeit_morgens_wolkenlos: Sonnenstand.morgens_wolkenlos se_item_Helligkeit_gr43k: Sonnenstand.Helligkeit.gt43k se_item_Helligkeit_kl1k: Sonnenstand.Helligkeit.sm1k se_startup_delay: 30 eval_trigger: - Trigger_se.trigger_1 - ..manuell - ..lock - ..suspend - ..retrigger - ..release stateengine_nichtstun: rules: nichts_tun: type: foo name: letzter_Zustand_ohne_Aktion stateengine_Rollladen_KG_manuell: manuell: eval_trigger: - ...Fahren - ...Stop - ......Zentral.alleZimmer.alle.Fahren - ......Zentral.alleZimmer.alle.Stop - ......Keller.alleZimmer.alle.Fahren - ......Keller.alleZimmer.alle.Stop se_manual_exclude: - 'Init:*' - 'database:*' stateengine_Rollladen_KG_nachts: rules: nachts: type: foo name: Rollladen Nacht_KG #se_set_fahren: 1 se_action_fahren: - 'function: set' - 'to: 1' enter_1: se_value_Daemmerung1: 'True' se_min_time: 09:00 se_max_time: '16:00' se_negate_time: true # 16:00-09:00 se_value_automatik_aus: 'False' enter_2: se_min_time: 09:00 se_max_time: '16:00' se_negate_time: true # 16:00-09:00 se_min_height: 245 # 255 wäre ganz geschlossen se_value_automatik_aus: 'False' enter_3: se_value_urlaub: 'True' enter_4: se_min_time: 06:30 se_max_time: '18:00' se_negate_time: true # 18:00-06:30 se_min_height: 245 # 255 wäre ganz geschlossen se_value_party: 'False' se_value_automatik_aus: 'False' stateengine_Rollladen_KG_tags: rules: tags: type: foo name: Rollladen Tags se_action_fahren: - 'function: set' enter_1: se_min_weekday: 0 se_max_weekday: 4 se_min_time: 07:00 se_max_time: '20:00' se_value_party: 'False' se_value_schulferien: 'False' se_value_automatik_aus: 'False' enter_2: se_min_weekday: 5 se_max_weekday: 6 se_min_time: 08:30 se_max_time: '20:00' se_value_party: 'False' se_value_schulferien: 'False' se_value_automatik_aus: 'False' enter_3: se_min_time: 09:00 se_max_time: '20:00' se_value_party: 'False' se_value_schulferien: 'True' se_value_automatik_aus: 'False' stateengine_Rollladen_EG_manuell: manuell: eval_trigger: - ...Fahren - ...Stop - ......Zentral.alleZimmer.alle.Fahren - ......Zentral.alleZimmer.alle.Stop - ......Erdgeschoss.alleZimmer.alle.Fahren - ......Erdgeschoss.alleZimmer.alle.Stop se_manual_exclude: - 'Init:*' - 'database:*' stateengine_Rollladen_EG_nachts: rules: nachts_eg: type: foo name: Rollladen Nacht_EG se_action_fahren: - 'function: set' - 'to: 1' enter_1: se_value_Daemmerung2: 'True' se_min_time: 06:30 se_max_time: '16:00' se_negate_time: true # 16:00-09:00 se_min_month: 3 se_max_month: 11 se_negate_month: 'True' se_value_anwesend: 'True' se_value_party: 'False' se_value_automatik_aus: 'False' enter_2: se_value_Daemmerung2: 'True' se_min_time: 06:30 se_max_time: '16:00' se_negate_time: true # 16:00-09:00 se_min_month: 3 se_max_month: 11 se_negate_month: 'True' se_value_anwesend: 'False' se_value_party: 'False' se_value_automatik_aus: 'False' enter_3: se_value_Daemmerung3: 'True' se_min_time: 06:30 se_max_time: '16:00' se_negate_time: true # 16:00-09:00 se_min_month: 4 se_max_month: 10 se_value_anwesend: 'True' se_value_party: 'False' se_value_automatik_aus: 'False' enter_4: se_value_Daemmerung3: 'True' se_min_time: 06:30 se_max_time: '16:00' se_negate_time: true # 16:00-09:00 se_min_month: 4 se_max_month: 10 se_value_anwesend: 'False' se_value_party: 'False' se_value_automatik_aus: 'False' enter_5: se_min_time: 06:30 se_max_time: '16:00' se_negate_time: true # 16:00-09:00 se_min_height: 245 # 255 wäre ganz geschlossen se_value_party: 'False' se_value_automatik_aus: 'False' enter_6: se_value_Daemmerung1: 'True' se_min_time: 06:30 se_max_time: 08:15 se_min_height: 245 # 255 wäre ganz geschlossen se_value_party: 'False' se_value_automatik_aus: 'False' enter_7: se_min_time: 06:30 se_max_time: '18:00' se_negate_time: true # 18:00-06:30 se_min_height: 245 # 255 wäre ganz geschlossen se_value_party: 'False' se_value_automatik_aus: 'False' stateengine_Rollladen_EG_tags: rules: tags: type: foo name: Rollladen Tags se_action_fahren: - 'function: set' - 'to: 0' enter_1: se_min_weekday: 0 se_max_weekday: 4 se_min_time: 07:00 se_max_time: '20:00' se_value_party: 'False' se_value_schulferien: 'False' se_value_automatik_aus: 'False' enter_2: se_min_weekday: 5 se_max_weekday: 6 se_min_time: 08:30 se_max_time: '20:00' se_value_party: 'False' se_value_schulferien: 'False' enter_3: se_min_time: 09:00 se_max_time: '20:00' se_value_party: 'False' se_value_schulferien: 'True' se_value_automatik_aus: 'False' stateengine_Rollladen_DG_manuell: manuell: eval_trigger: - ...Fahren - ...Stop - ......Zentral.alleZimmer.alle.Fahren - ......Zentral.alleZimmer.alle.Stop - ......Dachgeschoss.alleZimmer.alle.Fahren - ......Dachgeschoss.alleZimmer.alle.Stop se_manual_exclude: - 'Init:*' - 'database:*' stateengine_Rollladen_DG_nachts: rules: nachts_dg: type: foo name: Rollladen Nacht_DG se_action_fahren: - 'function: set' - 'to: 1' enter_1: se_value_Daemmerung2: 'True' se_min_time: '16:00' se_max_time: '22:00' se_min_month: 3 se_max_month: 11 se_negate_month: 'True' se_value_automatik_aus: 'False' enter_2: se_value_Daemmerung3: 'True' se_min_time: '16:00' se_max_time: '22:00' se_min_month: 4 se_max_month: 10 se_value_automatik_aus: 'False' enter_3: se_min_time: '19:45' se_max_time: '20:00' se_min_month: 3 se_max_month: 11 se_negate_month: 'True' se_value_automatik_aus: 'False' enter_4: se_min_time: '20:45' se_max_time: '21:00' se_min_month: 4 se_max_month: 10 se_value_automatik_aus: 'False' enter_5: se_min_sun_altitude: -4 se_min_time: 04:00 se_max_time: 06:00 se_value_automatik_aus: 'False' enter_6: # se_min_sun_altitude = 0 se_min_time: 06:00 se_max_time: 07:00 se_value_automatik_aus: 'False' enter_7: se_min_time: 07:00 se_max_time: 09:00 # einige Zimmer weiter unten veraendert se_min_height: 245 # 255 wäre ganz geschlossen se_value_automatik_aus: 'False' enter_8: se_min_time: 07:00 se_max_time: '18:00' se_negate_time: true # 18:00-07:00 se_min_height: 245 # 255 wäre ganz geschlossen se_value_party: 'False' se_value_automatik_aus: 'False' stateengine_Rollladen_DG_tags: rules: tags: type: foo name: Rollalden Tags_DG se_action_fahren: - 'function: set' - 'to: 0' enter_1: se_min_time: 07:00 se_max_time: '20:00' se_value_party: 'False' se_value_automatik_aus: 'False' stateengine_Rollladen_EG_Ost_nachfuehrung: rules: Nachfuehrung: type: foo name: Rollladen Nachfuehung_EG_Ost se_action_height: - 'function: set' - 'to: 166' enter_1: se_value_nachfuehren: 'True' se_min_sun_altitude: 10 se_max_sun_altitude: 70 se_min_sun_azimut: 30 se_max_sun_azimut: 150 se_value_automatik_aus: 'False' stateengine_Rollladen_DG_Ost_nachfuehrung: rules: Nachfuehrung: type: foo name: Rollladen Nachfuehung_DG_Ost se_action_fahren: - 'function: set' - 'to: 1' enter_1: se_value_nachfuehren: 'True' se_min_sun_altitude: 10 se_max_sun_altitude: 70 se_min_sun_azimut: 30 se_max_sun_azimut: 150 se_value_automatik_aus: 'False' stateengine_Rollladen_DG_Sued_nachfuehrung: rules: Nachfuehrung: type: foo name: Rollladen Nachfuehung_DG_Sued #se_set_fahren: 1 # 100% se_action_fahren: - 'function: set' - 'to: 1' enter_1: se_value_nachfuehren: 'True' se_min_sun_altitude: 10 se_max_sun_altitude: 70 se_min_sun_azimut: 120 se_max_sun_azimut: 240 se_value_automatik_aus: 'False' stateengine_Rollladen_DG_West_nachfuehrung: rules: Nachfuehrung: type: foo name: Rollladen Nachfuehung_DG_West #se_set_fahren: 1 # 100% se_action_fahren: - 'function: set' - 'to: 1' enter_1: se_value_nachfuehren: 'True' se_min_sun_altitude: 5 se_max_sun_altitude: 70 se_min_sun_azimut: 210 se_max_sun_azimut: 330 se_value_automatik_aus: 'False' stateengine_Rollladen_DG_Nord_nachfuehrung: rules: Nachfuehrung: type: foo name: Rollladen Nachfuehung_DG_Nord #se_set_fahren: 1 # 100% se_action_fahren: - 'function: set' - 'to: 1' enter_1: se_value_nachfuehren: 'True' se_min_sun_altitude: 5 se_max_sun_altitude: 70 se_min_sun_azimut: 290 se_max_sun_azimut: 330 se_value_automatik_aus: 'False' stateengine_Rollladen_DG_Dachfenster_nachts: rules: nachtsWinter: type: foo name: Rollladen Nacht_Dachfenster se_action_fahren: - 'function: set' - 'to: 1' enter_3: se_value_Daemmerung2: 'True' se_min_time: '16:00' se_max_time: '22:00' se_min_month: 4 se_max_month: 10 se_negate_month: 'True' se_value_automatik_aus: 'False' enter_4: se_min_time: '20:00' se_max_time: '20:15' se_min_month: 4 se_max_month: 10 se_negate_month: 'True' se_value_automatik_aus: 'False' stateengine_Rollladen_DG_Dachfenster_nachfuehren: rules: nachfuehren: type: foo name: Rollladen Nachfuehung_DG_Dachfenster se_action_fahren: - 'function: set' - 'to: 1' enter: se_value_nachfuehren: 'True' se_min_time: '10:00' se_max_time: '20:00' se_min_sun_altitude: 10 se_max_sun_altitude: 70 se_min_sun_azimut: 120 se_max_sun_azimut: 260 se_value_automatik_aus: 'False' stateengine_Rollladen_EG_Kueche_Blendschutz: rules: Blendschutz: type: foo name: Rollladen Blendschutz_Kueche se_action_height: - 'function: set' - 'to: 133' enter_1: se_value_Helligkeit_morgens_wolkenlos: 'True' se_min_sun_altitude: 0 se_max_sun_altitude: 30 se_min_sun_azimut: 60 se_max_sun_azimut: 160 se_min_time: 07:00 se_max_time: '11:00' se_min_month: 3 se_max_month: 10 se_value_anwesend: 'True' se_value_party: 'False' se_value_automatik_aus: 'False' enter_2: se_min_time: 07:00 se_max_time: '11:00' se_min_height: 130 # 255 wäre ganz geschlossen se_max_height: 135 se_value_party: 'False' se_value_automatik_aus: 'False' stateengine_Schaltungen_EG_Wohnzimmer: rules: WZ_Licht_nachts: type: foo name: Licht Nacht_Wohnzimmer se_action_light: - 'function: set' - 'to: 1' enter_1: se_value_Helligkeit_kl1k: 'True' se_minage_Helligkeit_kl1k: 60 se_min_time: '16:00' se_max_time: '23:00' enter_2: se_min_time: 01:00 se_max_time: '16:00' se_negate_time: 'True' se_value_light: 1 enter_3: se_min_time: 01:00 se_max_time: 03:00 se_value_anwesend: 'True' se_value_light: 1 WZ_Licht_tags: type: foo name: Licht Tags_Wohnzimmer se_action_light: - 'function: set' - 'to: 0' enter: se_value_party: 'False' stateengine_Schaltungen_Aussen_Haustuer: rules: Haustuer_Licht_nachts: type: foo name: Licht Nacht_Haustuer se_action_light: - 'function: set' - 'to: 1' enter: se_value_Daemmerung2: 'True' se_min_time: '16:00' se_max_time: '23:59' Haustuer_Licht_tags: type: foo name: Licht Tags_Haustuer se_action_light: - 'function: set' - 'to: 0' enter: se_value_party: 'False' stateengine_Schaltungen_Aussen_Wintergarten: rules: Wintergarten_Ventilator_ein: type: foo name: Ventilator Wintergarten_ein se_action_light: - 'function: set' - 'to: 1' enter_1: se_min_time: '13:30' se_max_time: '14:00' enter_2: se_min_time: '22:00' se_max_time: '23:00' Wintergarten_Ventilator_aus: type: foo name: Ventilator Wintergarten_aus se_action_light: - 'function: set' - 'to: 0' stateengine_Lara_ausschlafen: rules: ausschlafen: type: foo name: Lara Ausschlafen se_action_fahren: - 'function: set' - 'to: 1' enter: se_value_Lara_schlaeft: 'True' se_value_automatik_aus: 'False' stateengine_Anna_ausschlafen: rules: ausschlafen: type: foo name: Anna Ausschlafen se_action_fahren: - 'function: set' - 'to: 1' enter: se_value_Anna_schlaeft: 'True' se_value_automatik_aus: 'False' stateengine_Schlafzimmer_ausschlafen: rules: ausschlafen: type: foo name: Schlafzimmer Ausschlafen se_action_fahren: - 'function: set' - 'to: 1' enter: se_value_Schlafzimmer_schlaeft: 'True' se_value_automatik_aus: 'False' stateengine_Gaeste_ausschlafen: rules: ausschlafen: type: foo name: Gaeste Ausschlafen se_action_fahren: - 'function: set' - 'to: 1' enter: se_value_Gaeste_schlaeft: 'True' se_value_automatik_aus: 'False'Und beispielhaft ein ItemCode:#\etc\plugin.yaml stateengine: plugin_name: stateengine log_level: 2 log_directory: var/log/stateengine/ log_maxage: 3
Code:#\items\rollladen.yaml Rollladen: Erdgeschoss: Badezimmer: alle: Fahren: type: bool knx_dpt: 1 visu_acl: rw enforce_updates: 'yes' knx_send: 2/2/140 knx_listen: 2/2/140 Stop: type: bool knx_dpt: 1 visu_acl: rw enforce_updates: 'yes' knx_send: 2/2/141 knx_listen: 2/2/141 Position: type: num knx_dpt: 5 enforce_updates: 'yes' knx_send: 2/2/144 knx_cache: 2/2/145 StatusEndlageOben: type: bool knx_dpt: 1 knx_cache: 2/2/149 StatusEndlageUnten: type: bool knx_dpt: 1 knx_cache: 2/2/150 StatusPosition_gueltig: type: bool knx_dpt: 1 knx_cache: 2/2/147 LEDSuspend: type: bool knx_dpt: 1 knx_send: 2/2/159 knx_listen: 2/2/159 knx_reply: 2/2/159 enforce_updates: 'yes' database@mysqldb: init uzsu: type: dict uzsu_item: Rollladen.Erdgeschoss.Badezimmer.alle.Fahren database@mysqldb: init visu_acl: rw automatik: struct: - stateengine.general - stateengine.state_release - stateengine.state_lock - stateengine.state_suspend - stateengine_items_and_trigger_Rollladen - stateengine_Rollladen_EG_manuell - stateengine_Rollladen_EG_nachts - stateengine_Rollladen_EG_tags - stateengine_nichtstun
Einen Kommentar schreiben:
-
Achtung - se_use nicht as_use. Allerdings brauchst du das eigentlich auch gar nicht, wenn du eh mit structs arbeitest. Im aktuellen develop Branch der plugins sollte das mit den beiden Hausseiten in der Doku nun auch verständlicher sein.
Hier mal ein Beispiel etc/struct.yaml:
Mein Item sieht dann zB so aus:Code:beschattung_se_state_suntrack: status: suntrack: osten: bool_helligkeit: type: bool visu_acl: ro cache: True eval: 1 if sh......settings.suntrack.min_helligkeit() <= sh.wetterstation.helligkeit.osten() else 0 eval_trigger: - wetterstation.helligkeit.osten - .....settings.suntrack.min_helligkeit settings: suntrack: himmelsrichtung: type: str visu_acl: rw cache: True eval: >- "suedosten" if ("sueden_stiegenhaus" in sh..self.property.path) else "osten" if ("osten" in sh..self.property.path) else "sueden" if ("sueden" in sh..self.property.path) else "sueden" if ("markise" in sh..self.property.path) else "westen" if ("westen" in sh..self.property.path) else "unknown" enforce_updates: True crontab: init = "unknown" min_helligkeit: type: num visu_acl: rw cache: True min_altitude: type: num visu_acl: rw cache: True max_altitude: type: num visu_acl: rw cache: True min_azimut: type: num visu_acl: rw cache: True max_azimut: type: num visu_acl: rw cache: True hysterese_dauer: type: num visu_acl: rw cache: True rules: se_eval_bool_helligkeit: se_eval.get_relative_item('..status.suntrack.{}.bool_helligkeit'.format(se_eval.get_relative_itemvalue('..settings.suntrack.himmelsrichtung'))) se_template_bool_age: eval:sh...settings.suntrack.hysterese_dauer() * 60 * sh...settings.suntrack.helligkeit_enter_faktor() / 100 suntrack: enter_helligkeit: se_agemin_bool_helligkeit: template:bool_age se_value_bool_helligkeit: True se_min_sun_azimut: item:..settings.suntrack.min_azimut se_max_sun_azimut: item:..settings.suntrack.max_azimut se_min_sun_altitude: item:..settings.suntrack.min_altitude se_max_sun_altitude: item:..settings.suntrack.max_altitude
Der Trick liegt eigentlich im "se_eval". Achtung: In meinem Beispiel haben tatsächlich ALLE Items ihre eigenen Settings von azimut, etc.Code:jalousien: eg: osten_bad: automatik: rules: eval_trigger: - merge_unique* - jalousien.stateengine.jalousientrigger_eg struct: - stateengine.general - beschattung_se_state_wind - stateengine.state_release - stateengine.state_lock - stateengine.state_suspend - beschattung_se_state_suntrack - beschattung_se_state_standard
Du kannst aber natürlich auch auf deine "gloablen" Settings referenzieren anstatt die relativen Itempfade in den rules zu nutzen. Dann hättest du ein globales Settings-Item oder Struct, wo du min_altitude, etc. in ein Unteritem "osten", "sueden", etc. stopfst.
Du könntest dann sogar substruct nutzen, die es seit dem letzten Release gibt:
etc/struct.yaml
Dann referenzierst du auf die entsprechende Angabe z.B. so - unter der Annahme dass jedes deiner Items die Himmelsrichtung in einem Item settings.suntrack.himmelsrichtung deklariert hat:Code:suntrack_settings_substruct: min_altitude: type: num visu_acl: rw cache: True max_altitude: type: num visu_acl: rw cache: True min_azimut: type: num visu_acl: rw cache: True max_azimut: type: num visu_acl: rw cache: True min_temperatur: type: num visu_acl: rw cache: True hysterese_temperatur: type: num visu_acl: rw cache: True force_temperatur: type: num visu_acl: rw cache: True min_helligkeit: type: num visu_acl: rw suntrack_settings: osten: struct: suntrack_settings_substruct sueden: struct: suntrack_settings_substruct westen: struct: suntrack_settings_substruct
Code:min_sun_altitude: eval:se_eval.get_relative_item('stateengine.suntrack_settings.{}.min_altitude'.format(se_eval.get_relative_itemvalue('..settings.suntrack.himmelsrichtung')))
- Likes 1
Einen Kommentar schreiben:
-
Ich bin gerade dabei, die bei mir laufende Version zu aktualisieren: (git pull und Umstellung nach struct. Ich hatte noch eine alte Version, in der ich nur die Notwendigen Sachen von Autoblind auf Stateengine umgestellt hatte.)
Dabei ist mir aufgefallen und trotz lesen des BlogEintrages und diverser Sachen im Forum, bin ich nicht weiter gekommen:
In der Anleitung kommen in der Definition des Default-struct die Regeln für beide Hausseiten vor.
Diese gelten doch dann auch gleichzeitig, wenn ich das dann als default einbinde, oder?
Dann gibt es die Infos von eib@home (von der vorigen Seite), der eine ähnliche Lösung anstrebt.
Ich habe jetzt schon seit 3 Tagen versucht aus diesen Informationen eine laufende Version zu basteln. Irgendwie habe ich mich da verrannt.
Kann mal jemand ein Muster schicken, wie man das Struct und verschiedene Hausseiten nutzen kann, oder muss ich 4 komplette Templates schreiben, und dann jeweils das passende auswählen? Mein Wunsch wäre ein Template mit den allgemeinen Sachen und dann nur noch
# - die Sonnenhöhe mindestens 1° ist
se_min_sun_altitude: 1
# - die Sonne aus Richtung 90° bis 270° kommt
se_min_sun_azimut: 90
se_max_sun_azimut: 270
diese Werte über ein Weiteres Struct (Ost, Süd, West, Nord) hinzuzufügen.
Ich bekomme es aber nicht hin, bzw finde kein entsprechendes Beispiel, was ich umschreiben kann.
Wer kann ein Muster posten?
Ich glaube ich habe es: Ich muss ein Item Nachführen definieren und dort via as_use das entsprechende Seitenobjekt referenzierten.
Ist das richtig gedacht?
Gruss AndreasZuletzt geändert von McTao; 10.06.2020, 12:07.
Einen Kommentar schreiben:
-
Hi an alle, die das Stateengine Plugin nutzen. Mir sind letztens einige ganz grobe Probleme mit dem Manuell Item aufgefallen. Und da wundere ich mich grad, warum das nie aufgefallen ist - weder mir noch sonst wem.
Folgende Probleme:
- Beim Manuell Item wurde der Original Caller (für manual_exclude/include) anhand des letzten Changes statt Updates eruiert. Ich habe bei meinem manual_exclude ein "Init:*" dabei, damit nicht versehentlich beim Neustart ein Item in den suspend Modus geht. Das ist dann sinnvoll, wenn zB ein Item zwar enforce_updates (rauf/runter Jalousie), aber kein cache: True Attribut hat. Führt aber auch dazu, dass man beim manuellen Hinauffahren der Jalousie (Item Value = false) nicht in den Suspendmodus kommt.
- Oftmals wird die Evaluierung des Suspend Items auch durch das Stateengine Plugin getriggert. Wenn das nun nicht im manual_exclude ist, kann es durchaus sein, dass man versehentlich im Suspendmodus landet.
Beide Situationen kamen bei mir primär bei shng Neustarts vor. Im laufenden Betrieb gab es keine wirklichen Probleme, sporadisch aber wohl schon.
Kann die Probleme vielleicht jemand bestätigen bzw. mal mit dem develop Branch entsprechende Tests machen? Danke!
Einen Kommentar schreiben:

Einen Kommentar schreiben: