DOIF mit "or" und statt "set lampe on" > "delete GHoma_192.*"

Begonnen von Depechem, 15 August 2017, 10:33:03

Vorheriges Thema - Nächstes Thema

Depechem

Hi ich möchte ein DOIF anlegen und es klappt nicht ganz.
(Ich habe 4 GHoma Schaltsteckdosen die nach einem fhem reset/neustart ab und zu einzeln nicht online gehen und somit im Status(state) offline stehen bleiben.)
Wenn ich dann in fhem händisch "delete GHoma_192.*" ausführe gehen sie alle wie gewünscht online.

Das ganze soll nun mit einem DOIF geschehen. Folgendes habe ich ohne Erfolg probiert:
define doif_GHomaDelete_LED_Terrasse DOIF ([GHoma_3f0154:state] eq "offline")(delete GHoma_192.*)
attr doif_GHomaDelete_LED_Terrasse do always

define doif_GHomaDelete_LED_Wand DOIF ([GHoma_3f0e32:state] eq "offline")(delete GHoma_192.*)
attr doif_GHomaDelete_LED_Wand do always

define doif_GHomaDelete_Terrasse_Lampe DOIF ([GHoma_3f1792:state] eq "offline")(delete GHoma_192.*)
attr doif_GHomaDelete_Terrasse_Lampe do always

define doif_GHomaDelete_Gartenpumpe DOIF ([GHoma_3ed138:state] eq "offline")(delete GHoma_192.*)
attr doif_GHomaDelete_Gartenpumpe do always


Nach Neustart funktioniert dies leider aber nicht. einzelne Dosen bleiben weiterhin offline.
alternativ habe ich folgendes probiert:
define doif_GHomaDelete DOIF ([GHoma_3f0154:state] eq "offline" or [GHoma_3f0e32:state] eq "offline" or [GHoma_3f1792:state] eq "offline" or [GHoma_3ed138:state] eq "offline") (delete GHoma_192.*)

dies klappt aber auch nicht.
Nun meine Frage liegt es am falschen DOIF oder geht so etwas mit DOIF gar nicht?
Gruß Thomas


RaspberryPi2 / FHEM / 3 Wand-Tablets mit Tablet UI / HM USB / verschiedene HM-Aktoren / JeeLink USB für WS1600 und mehrere LaCrosse Sensoren / HEOS ...

Frank_Huber

das OR nennt sich DOELSEIF.

define doif_GHomaDelete DOIF
([GHoma_3f0154:state] eq "offline") (delete GHoma_192.*)
DOELSEIF ([GHoma_3f0e32:state] eq "offline") (delete GHoma_192.*)
DOELSEIF ([GHoma_3f1792:state] eq "offline") (delete GHoma_192.*)
DOELSEIF ([GHoma_3ed138:state] eq "offline") (delete GHoma_192.*)
attr doif_GHomaDelete do always


man könnte dann weitergehend die 4 Pfade mit einer Wildcard vereinen.
Hier bin ich mir nur gerade mit dem Syntax nicht sicher.

Frank_Huber

nicht 100%ig sicher, aber versuch mal:

define doif_GHomaDelete DOIF
([^GHoma] eq "offline") (delete GHoma_192.*)
attr doif_GHomaDelete do always

nils_

was ich mich eher frage ist, warum das so passiert  :o

und du einfach was rauslöscht und dann gehts wieder.


nur so als nachfrage ::)
viele Wege in FHEM es gibt!

Depechem

Zitat von: Frank_Huber am 15 August 2017, 10:55:29
nicht 100%ig sicher, aber versuch mal:

define doif_GHomaDelete DOIF
([GHoma] eq "offline") (delete GHoma_192.*)
attr doif_GHomaDelete do always


Das funktioniert grundlegend soweit ganz gut, also nach reset startet deas DOIF, nur werden wieder nicht alle "offline" GHoma-Dosen aus dem offline geholt.
Löse ich kurz darauf "händisch" noch einmal ein "set doif_GHomaDelete cmd_1" aus, gehen alle GHoma online.
Vieleicht muss ich das DOIF irgendwie zeitverzögert starten? Wenn ja, wie am besten?

Zitat von: nils_ am 15 August 2017, 10:57:26
was ich mich eher frage ist, warum das so passiert  :o

und du einfach was rauslöscht und dann gehts wieder.


nur so als nachfrage ::)
Das habe ich mit dem GHoma-Modulersteller schon ausführlich geschrieben.
Scheinbar gibts niemand der mehr als 2 solcher Dosen in FHEM hat und dies bei mehreren Dosen auftritt.
Bis dato konnte mir keiner helfen und die einzige Abhilfe die ich selbst finden konnte ist ein "delete GHoma_192*"

RaspberryPi2 / FHEM / 3 Wand-Tablets mit Tablet UI / HM USB / verschiedene HM-Aktoren / JeeLink USB für WS1600 und mehrere LaCrosse Sensoren / HEOS ...

CoolTux

Die
GHoma_192.*
Sind offene Socketverbindungen von den Dosen zu FHEM. Hier scheint der Entwickler nicht sauber gearbeitet zu haben. Dies ist aber nur eine Vermutung. Man müsste sich das genau an schauen.


Grüße
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net