Seite 2 von 2

Re: MQTT 1.x: String verwerfen mit REGEX

Verfasst: 24. Aug 2019 23:12
von cammymyra
Harrr....
2019-08-24 22:57:40.431 [INFO ] [el.core.internal.ModelRepositoryImpl] - Refreshing model 'Home.rules'
Also keine Fehlermeldung.

Habe jetzt das Gleiche direkt mit einem einzigen Item ausprobiert:

Code: Alles auswählen

rule "set state if number"
when
    Item RolloIN_SchlafzimmerDG3 changed
then
	if(RolloIN_SchlafzimmerDG3.state instanceof Number)
	RolloOUT_SchlafzimmerDG3.postUpdate(RolloIN_SchlafzimmerDG3.state as Number) 
end
Mich beschleicht das Gefühl, dass eine rule nicht triggert, wenn das Item als String definiert wird?! Kann das sein?

Code: Alles auswählen

String RolloIN_SchlafzimmerDG3 (GrSTOPCutterIN) { mqtt="<[broker:stat/DG/RolloSchlafzimmer:state:default]" }
String RolloOUT_SchlafzimmerDG3 (GrSTOPCutterOUT)

Re: MQTT 1.x: String verwerfen mit REGEX

Verfasst: 25. Aug 2019 22:34
von udo1toni
Warum definierst Du einen Rollershutter als String? Das ist ein Rollershutter Item. Die Rule triggert, aber das if siebt alles aus, was keine Zahl ist, auch einen String, der ausschließlich eine Zahl enthält (denn das ist trotzdem keine Zahl...)

Dass die Rule triggert, kannst Du leicht überprüfen, indem Du ein logInfo nach dem then einfügst:

Code: Alles auswählen

logInfo("setState","Rule set state if number wurde getriggert.")

Re: MQTT 1.x: String verwerfen mit REGEX

Verfasst: 26. Aug 2019 21:39
von cammymyra
Was soll ich sagen... läuft. War der falsche Datentyp. Danke für die Hilfe.