Die Raw Definition nutze ich dank
der Änderung von Rudi immer häufiger wie eine Art FHEM Script Umgebung. Also ein paar Zeilen FHEM Code einfach als Block reinkopieren und starten.
Das ist teilweise tricky: wenn ein Programm mit PopUp endet wird das "Script" jäh beendet. Aber mit einem sleep davor kann man es in den Hintergrund schicken und der Rest läuft weiter.
Wenn eine der Zeilen im Script nach der Ausführung einen Event erzeugt, würde ich gern einmalig darauf reagieren.
Beispiel:
set ... attrTemplate fragt einen Parameter ab.
Wenn das fertig ist (Eingabe erfolgt) wird durch setzen eines Attributes ein Event gefeuert (global:ATTR.SonosBridge.stateFormat.connected)
Auf den will ich reagieren und das Script abschließen. In dem Fall geht "sleep x; Befehl" schlecht weil die Zeit sehr unbestimmt ist.
Hier könnte man ein einmaliges notify gebrauchen. Ich behelfe mir jetzt mit einem notifý welches sich selbst wieder löscht:
define global_notify_1 notify global:ATTR.SonosBridge.stateFormat.connected "pm2 -s start sonos2mqtt";;delete $SELF
Ich habe zum Thema $SELF diese
Diskussion gefunden.
Fragen:
- Ist es legitim sich ein notify selbst löschen zu lassen? Vielleicht schlagen ja bei meiner Idee die "alten FHEM Hasen" die Hände über dem Kopf zusammen.
- Wäre das nicht eine Idee so ein einmaliges notify zu implementieren. In der Art sleep regExp;Befehl
- Oder gibt es eine Lösung die ich nicht gefunden habe?
Gruß Otto