Hallo,
bitte nicht gleich steinigen, falls die Frage zu doof ist. Ich habe versucht selber eine Antwort zu finden, bin aber leider nicht fündig geworden. Folgendes Szenario:
Ich habe ein Device "GarageWemos", das ein reading "result" hat. Und diese versuche ich mittels expandJSON aufzubereiten. Die Values sehen so (bzw. ähnlich) aus:
{"Switch2":{"Action":"ON"}}
Und ich hätte nun gern, dass dort ein reading "Switch2" mit dem Value "ON" draus wird. Mein expandJSON sieht wie folgt aus:
defmod ejRESULT expandJSON GarageWemos:result:.\{.*\}
Leider macht er mir dort ein Reading "Switch2_Action" draus. Der Value paßt.
Nun die Frage: Wie muss mein regExp aussehen, damit ich das "Action" loswerde?
( Erwartet Werte sind "Switch1","Switch2" und "Switch3", die jeweils "ON" oder "OFF" sein können. ]
Ich hoffe ich habe es nicht zu kryptisch beschrieben. Über Hilfe würde ich mich sehr freuen, da ich mir hier schon eine ganze Weile das Hirn zermartere :-)
P.S.:
sähe die Nachticht wie folgt aus, funktioniert es, aber so sieht sie halt nicht aus.
{"Switch2":"ON"}
Moin moin nochmal,
ich hab's hinbekommen. readingsChange war der Schlüssel. Und zwar habe ich das hier eingerichtet:
defmod rc_Wemos readingsChange GarageWemos result {"Action":(".*")} $1
das macht aus dem hier:
{"Switch2":{"Action":"ON"}}
das hier:
{"Switch2":"ON"}
Und nu löbbt's!
Also für alle, die ein ähnliches Problem haben... Bitteschön!
Die meisten lösen sowas mit MQTT2_DEVICE...
Aber mach doch noch ein "lc" dazu.
Verstehe ich das richtig? Du hast jetzt insgesamt DREI devices angelegt, nur um ein reading nach Wunsch zu bekommen?
Soviel Popcorn gibts überhaupt nicht...
Zitat von: betateilchen am 17 Februar 2022, 19:14:28
Verstehe ich das richtig? Du hast jetzt insgesamt DREI devices angelegt, nur um ein reading nach Wunsch zu bekommen?
Soviel Popcorn gibts überhaupt nicht...
Hilfreich <daumen_nach_oben>