Wenn dies dein erster Besuch hier ist, lies bitte zuerst die Hilfe - Häufig gestellte Fragen durch. Du musst dich vermutlich registrieren, bevor du Beiträge verfassen kannst. Klicke oben auf 'Registrieren', um den Registrierungsprozess zu starten. Du kannst auch jetzt schon Beiträge lesen. Suche dir einfach das Forum aus, das dich am meisten interessiert.
Ok. Dacht ich mir schon.
wenn ich aber nun eine logik nur einmal mit einer zeitverzögerung ausführen will, bleibt doch nur time.sleep.
mit item.age() klappt das doch auch nicht wenn die logik zb durch den einbruch der Nacht ausgelöst wird.
Seh ich das falsch?
logger.info("Logic Test start")
if trigger['value'] == "jetztwirdverzoegert":
logger.info("Logic Test ist jetzt um 10sec verzoegert worden")
sh.Test.Lampe1Schalten(1)
else:
logger.info("Logic Test wird um 10sec verzoegert")
logic.trigger(dt=sh.now() + datetime.timedelta(seconds=10), value='jetztwirdverzoegert')
probiere gerade mit dem Triggern von Logiken herum. Bitte mal Brett vor meinem Kopf entfernen:
Es scheint, als würde jede Instanz der Logik einen eigenen Satz an Variablen benutzen (was auch irgendwie schlüssig ist). Das heisst, dass die nach xx Sekunden getriggerte Logik nicht auf Python-Variablen der ursprünglichen Logik zugreifen kann (z.B. Status, Messwert, Ausgangswert ...) .
Gibt es außer dem item_value noch irgendeine andere Möglichkeit, Informationen zwischen den einzelnen Instanzen auszutauschen (sozusagen "globale Variablen" für alle Logikinstanzen)? Wahrscheinlich stehe ich nur mal wieder auf dem Schlauch ...
Am Rande: trigger['source'] bei der getriggerten Logik ist auch leer. Tut dat Not bzw soll dat so? [Meister Röhrricht off]
/tom
Edit: nvm, hab es über ein weiteres dummy-Item gelöst, das ist vermutlich der dafür vorgesehene Weg. Vor lauter Python-lernen denkt man gar nicht daran, dass da hinten ja noch eine "kleine" Automation sitzt:
Code:
[FONT=Courier New][[booster_mode]]
type = bool
helios_var = boost_active
visu_acl = rw[/FONT]
[FONT=Courier New] [[[switch]]]
type = bool
visu_acl = rw
[[[value_before_switch]]]
type = num
cache = True[/FONT]
Wir verarbeiten personenbezogene Daten über die Nutzer unserer Website mithilfe von Cookies und anderen Technologien, um unsere Dienste bereitzustellen. Weitere Informationen findest Du in unserer Datenschutzerklärung.
Indem Du unten auf "ICH stimme zu" klickst, stimmst Du unserer Datenschutzerklärung und unseren persönlichen Datenverarbeitungs- und Cookie-Praktiken zu, wie darin beschrieben. Du erkennst außerdem an, dass dieses Forum möglicherweise außerhalb Deines Landes gehostet wird und bist damit einverstanden, dass Deine Daten in dem Land, in dem dieses Forum gehostet wird, gesammelt, gespeichert und verarbeitet werden.
Kommentar