Bisher dachte ich immer ein mit dt terminierter Aufruf einer Logik, wird durch einen Aufruf der vor dt liegt "überschrieben". Dies scheint nicht so zu sein:
Code:
>>> sh.trigger(name= 'Logi_Wecker_Hoch_Wenn_Hell', dest = 'Logi_Wecker_Hoch_Wenn_Hell', value = True, dt=sh.now() + datetime.timedelta(seconds=10)) >>> sh.trigger(name= 'Logi_Wecker_Hoch_Wenn_Hell', dest = 'Logi_Wecker_Hoch_Wenn_Hell', value = False)
Code:
2013-11-03 15:58:17,511 DEBUG Main Triggering Logi_Wecker_Hoch_Wenn_Hell - by: Logic source: None dest: Logi_Wecker_Hoch_Wenn_Hell value: True at: 2013-11-03 15:58:27.511285+01:00 -- scheduler.py:trigger:174
2013-11-03 15:58:19,319 DEBUG Main Triggering Logi_Wecker_Hoch_Wenn_Hell - by: Logic source: None dest: Logi_Wecker_Hoch_Wenn_Hell value: False -- scheduler.py:trigger:162
2013-11-03 15:58:19,320 DEBUG Logi_Wecker_Hoch_Wenn_Hell Trigger {'dest': 'Logi_Wecker_Hoch_Wenn_Hell', 'source': None, 'by': 'Logic', 'value': False} -- logi_wecker.py:<module>:7
2013-11-03 15:58:27,756 DEBUG Logi_Wecker_Hoch_Wenn_Hell Trigger {'dest': 'Logi_Wecker_Hoch_Wenn_Hell', 'source': None, 'by': 'Logic', 'value': True} -- logi_wecker.py:<module>:7
Edit: So stehts auch im manual:
dt timezone aware datetime object, which specifies the triggering time But watch out, if something else triggers that logic before the given datetime, it will not be triggered at the specified time!
Mode


Einen Kommentar schreiben: