Guten Abend zusammen,
danke für den Hinweis auf die Custom-Logik. Die adressiert genau das Problem, das ich auch habe. Mit der von
@AndererStefan angepassten Version bin ich auch schon fast ans Ziel gekommen: der Name des eingebuchten Geräts wird weitergegeben, wenn es im WLAN ist, andernfalls eben der Fehlerwert und somit kein "leerer Wert". Super!
Da ich nun schon einmal mit dem Thema Custom-Logik warm geworden bin - was wirklich nicht besonders schwer war - möchte ich nun gerne mit ihr direkt die Anwesenheit in true/false ausgeben. Dazu habe ich am Ende ein
Stringcompare ergänzt, aber leider führt das noch nicht zum gewünschten Ergebnis - der Ausgang
$out_status bleibt immer auf false stehen. Die Weitergabe des Gerätenamens
$pass_on_value funktioniert hingegen einwandfrei.
Habt Ihr eine Idee, warum der letzte Schritt mit
Stringcompare nicht funktioniert? Steht er vielleicht an der falschen Stelle in Module?
Code: Alles auswählen
{
"Level": [
// Eingänge
["$in_value","string,32",""],
["$in_request_run","bool",false],
// Ausgang
["$out_status","bool",false],
// Interne Variablen
["$is_triggered_by_value","bool",false],
["$was_triggered_by_value","bool",false],
["$is_triggered_by_run","bool",false],
["$pass_on_value","string,32",""],
// Konstanten
["$in_error_value","string,32","ERROR"],
["$compare_to","string,32","Gerätename"],
["$compare_mode","string","e"]
],
"Input": [
["Wert", "Eingangswert (String)", "$in_value", "a"],
["Trigger", "Trigger für Ausführung", "$in_request_run", "a"]
],
"Output": [
["Status", "Status anwesend (Boolean)", "$out_status", "a"],
["Pass-on-Value", "Weitergegebener Wert", "$pass_on_value", "a"]
],
"Module": [
[ "Triggered", "$in_value", "$is_triggered_by_value" ],
[ "Triggered", "$in_request_run", "$is_triggered_by_run" ],
// Durch Eingangswert ausgelöst - Abbruch
["Latch","$true","$was_triggered_by_value","$is_triggered_by_value",0],
["Break", ["$is_triggered_by_value"]],
// Eingangswert weiterreichen
["Latch","$in_value","$pass_on_value","$was_triggered_by_value",0],
// Fehlerwert weiterreichen, da durch Trigger ausgelöst
["Latch","$in_error_value","$pass_on_value","-$was_triggered_by_value",0],
// 'was triggered by value' zurücksetzen
["Latch","$false","$was_triggered_by_value","$was_triggered_by_value",0],
// Weitergereichten Wert vergleichen, Boolean (true/false) erzeugen
["Stringcompare","$pass_on_value","$out_status","$compare_to","$compare_mode"]
]
}
Wenn wir den letzten Schritt auch noch hinbekommen, stelle ich die Logik gerne unter der TOLL im zitierten Thread bereit.
Danke für Eure Hilfe und viele Grüße
Micha