Notifys automtisch erzeugen mit mehreren Befehlen

Begonnen von Marc1993, 19 Oktober 2015, 15:00:45

Vorheriges Thema - Nächstes Thema

Marc1993

Hallo Leute,
ich versuche nun seit gestern Abend folgendes:

Ich möchte beim erzeugen eines neuen FHEM-Device ein Notify erstellen. Dieses Notify soll einen State des neuen Devices abwarten und dann darauf reagieren.

Soweit funktioniert das wunderbar: define newDeviceNotify1 notify global:DEFINED.* define Stop_Service$EVTPART1 notify $EVTPART1:message:.Stop delete $EVTPART1

Nun möchte ich aber, dass das erzeugt Notify mehrere Befhle absetzt.

define newDeviceNotify1 notify global:DEFINED.* define Stop_Service$EVTPART1 notify $EVTPART1:message:.Stop delete $EVTPART1,delete Stop_Service$EVTPART1
Mit , funktioniert es nicht. Ebenso mit ;; komme ich nicht zum gewünschtem Ergebnis.

Habt ihr ne Lösung?

rapster

Was kommt denn im Log?

im DEF brauchst du alelrdings nur 1x ; falls du es dort gemacht haben solltest.

Marc1993

Ich habe das alles in der fhem.cfg gemacht.

Die Ergebnisse sind unterschiedlich. Je nachdem wie ich die Befehle trenne.
Die einzelnen Befehler klappen wunderbar.

Ich bekomme sie nur nicht automatisch in das automatisch erzeugte Notify.

Bei einem , ziwchen den Befehlen passiert einfach gar nichts. Es gibt auch keinen Fehler.
Bei einem ;; gibt es auch keine Fehler aber es werden die Befehle sofort ausgeführt. Das Notify wird also erstellt und dann direkt wieder gelöscht.

define newDeviceNotify1 notify global:DEFINED.* define Stop_Service$EVTPART1 notify $EVTPART1:message:.Stop delete $EVTPART1;;delete Stop_Service$EVTPART1

Ich möchte aber das "delete Stop_Service$EVTPART1" in das erzeugte Notify mit rein kommt.


rapster

Probiers  mal in Perl zu kapseln

define newDeviceNotify1 notify global:DEFINED.* { fhem("define Stop_Service$EVTPART1 notify $EVTPART1:message:.Stop delete $EVTPART1;;delete Stop_Service$EVTPART1") }

Marc1993

Danke.
Aber dieser Code erzeugt bei mir gar kein Notify. Gehen die Variabeln $EVTPART1 in Pearl zu Kapseln?
Das Log zeigt mir nichts an.

rapster

Ja,

wurde newDeviceNotify1 angelegt?

Falls ja mach mal ein "list newDeviceNotify1"

Marc1993


rapster

#7
Bearbeite mal nicht deine fhem.cfg direkt, sonder gib den inhalt des code-tags direkt in die fhem command-line ein.

Bei mir funktioniert das so wie du das vorhattest, ausgabe von

define newDeviceNotify1 notify global:DEFINED.* { fhem("define Stop_Service$EVTPART1 notify $EVTPART1:message:.Stop delete $EVTPART1;;delete Stop_Service$EVTPART1") }
define dummy dummy

Zitat2015-10-19 22:15:11.068 Global global DEFINED newDeviceNotify1
2015-10-19 22:15:11.068 Global global DEFINED Stop_ServicenewDeviceNotify1
2015-10-19 22:15:11.068 Global global DELETED Stop_ServicenewDeviceNotify1
2015-10-19 22:15:20.730 Global global DEFINED dummy
2015-10-19 22:15:20.730 Global global DEFINED Stop_Servicedummy
2015-10-19 22:15:20.730 Global global DELETED Stop_Servicedummy