Hi,
ich weiß das ist eins der einfachsten Problemen, aber ich hab das notify immer noch nicht kapiert und habs immer mit doif umschifft.
Was ich möchte ist, bei Änderung den Wert des Reading Pos aus 02_Eltern_Rollo_West auf den state des Device 02_Eltern_Rollo_Dach zu schreiben. So das das Rollo_Dach immer die gleiche Pos hat wie das Rollo_West. Leider wird der state nicht aktualisiert, sondern Pos, wenn man am Schalter drückt.
defmod 02_Eltern_Rollo_West MQTT_DEVICE
attr 02_Eltern_Rollo_West IODev myBroker
attr 02_Eltern_Rollo_West devStateIcon 0:fts_shutter_100 10:fts_shutter_90 20:fts_shutter_80 30:fts_shutter_70 40:fts_shutter_60 50:fts_shutter_50 60:fts_shutter_40 70:fts_shutter_30 80:fts_shutter_20 90:fts_shutter_10 100:fts_shutter_10
attr 02_Eltern_Rollo_West publishSet 0 10 20 30 40 50 60 70 80 90 100 shellies/shellyswitch-654321/roller/0/command/pos
attr 02_Eltern_Rollo_West room DG_Eltern
attr 02_Eltern_Rollo_West subscribeReading_Energy shellies/shellyswitch-654321/relay/energy
attr 02_Eltern_Rollo_West subscribeReading_Pos shellies/shellyswitch-654321/roller/0/pos
attr 02_Eltern_Rollo_West subscribeReading_Power shellies/shellyswitch-654321/relay/power
attr 02_Eltern_Rollo_West subscribeReading_Status shellies/shellyswitch-654321/roller/0
attr 02_Eltern_Rollo_West webCmd 0:50:100
setstate 02_Eltern_Rollo_West 0
setstate 02_Eltern_Rollo_West 2018-12-28 22:16:38 Pos 0
setstate 02_Eltern_Rollo_West 2018-12-28 22:16:38 Power 0.00
setstate 02_Eltern_Rollo_West 2018-12-28 22:16:38 Status stop
setstate 02_Eltern_Rollo_West 2018-12-28 22:16:30 state 0
setstate 02_Eltern_Rollo_West 2018-12-28 22:16:38 transmission-state incoming publish received
defmod 02_Eltern_Rollo_Dach MQTT_DEVICE
attr 02_Eltern_Rollo_Dach IODev myBroker
attr 02_Eltern_Rollo_Dach devStateIcon 0:fts_shutter_100 10:fts_shutter_90 20:fts_shutter_80 30:fts_shutter_70 40:fts_shutter_60 50:fts_shutter_50 60:fts_shutter_40 70:fts_shutter_30 80:fts_shutter_20 90:fts_shutter_10 100:fts_shutter_10
attr 02_Eltern_Rollo_Dach publishSet 0 10 20 30 40 50 60 70 80 90 100 shellies/shellyswitch-123456/roller/0/command/pos
attr 02_Eltern_Rollo_Dach room DG_Eltern
attr 02_Eltern_Rollo_Dach subscribeReading_Energy shellies/shellyswitch-123456/relay/energy
attr 02_Eltern_Rollo_Dach subscribeReading_Pos shellies/shellyswitch-123456/roller/0/pos
attr 02_Eltern_Rollo_Dach subscribeReading_Power shellies/shellyswitch-123456/relay/power
attr 02_Eltern_Rollo_Dach subscribeReading_Status shellies/shellyswitch-123456/roller/0
attr 02_Eltern_Rollo_Dach webCmd 0:50:100
setstate 02_Eltern_Rollo_Dach 0
setstate 02_Eltern_Rollo_Dach 2018-12-28 22:15:42 Pos 0
setstate 02_Eltern_Rollo_Dach 2018-12-28 22:17:51 Power 0.00
setstate 02_Eltern_Rollo_Dach 2018-12-28 22:15:42 Status stop
setstate 02_Eltern_Rollo_Dach 2018-12-28 22:15:38 state 0
setstate 02_Eltern_Rollo_Dach 2018-12-28 22:17:51 transmission-state incoming publish received
Danke für kurze Erleuchtung,
Niels
Hallo Niels,
ich verstehe nicht genau ob das geht was Du willst. Aber zwei Tipps:
Mit dem Eventmonitor das notify anlegen lassen
https://wiki.fhem.de/wiki/Event_monitor
Dann den Befehl ins notify setzen und testen.
https://wiki.fhem.de/wiki/Notify
Die konkrete Zahl im notify regExp durch .* ersetzen.
Gruß Otto
Hi Otto,
danke, wieder was gelernt mit dem Event Monitor. Aber mit dem notify ist mir total nicht klar wie es Funktionieren kann....
2018-12-29 10:59:27.541 MQTT_DEVICE 02_Eltern_Rollo_West 100
2018-12-29 10:59:27.542 MQTT_DEVICE 02_Eltern_Rollo_West transmission-state: outgoing publish sent
2018-12-29 10:59:27.772 MQTT_DEVICE 02_Eltern_Rollo_West transmission-state: incoming publish received
2018-12-29 10:59:27.773 MQTT_DEVICE 02_Eltern_Rollo_West Status: open
2018-12-29 10:59:28.283 MQTT_DEVICE 02_Eltern_Rollo_West transmission-state: incoming publish received
2018-12-29 10:59:28.283 MQTT_DEVICE 02_Eltern_Rollo_West Power: 54.62
2018-12-29 10:59:28.361 MQTT_DEVICE 02_Eltern_Rollo_West transmission-state: incoming publish received
2018-12-29 10:59:28.362 MQTT_DEVICE 02_Eltern_Rollo_West Power: 95.18
2018-12-29 10:59:46.118 MQTT_DEVICE 02_Eltern_Rollo_West transmission-state: incoming publish received
2018-12-29 10:59:46.120 MQTT_DEVICE 02_Eltern_Rollo_West Power: 52.20
2018-12-29 10:59:46.205 MQTT_DEVICE 02_Eltern_Rollo_West transmission-state: incoming publish received
2018-12-29 10:59:46.207 MQTT_DEVICE 02_Eltern_Rollo_West Pos: 100
2018-12-29 10:59:46.209 MQTT_DEVICE 02_Eltern_Rollo_West transmission-state: incoming publish received
2018-12-29 10:59:46.211 MQTT_DEVICE 02_Eltern_Rollo_West Power: 0.00
2018-12-29 10:59:46.226 MQTT_DEVICE 02_Eltern_Rollo_West transmission-state: incoming publish received
2018-12-29 10:59:46.228 MQTT_DEVICE 02_Eltern_Rollo_West Status: stop
Der Wert 100 aus "2018-12-29 10:59:46.207 MQTT_DEVICE 02_Eltern_Rollo_West Pos: 100" muss jetzt per set 02_Eltern_Rollo_Dach 100 auf das andere Device.
Wenn da zB ne 32 kommt, soll auch 32 übertragen werden.
Danke
Niels
02_Eltern_Rollo_West:Pos:.* set 02_Eltern_Rollo_Dach $EVTPART1
Achtung das ist nur ein Teil der Definition des Notify.
Cooltux war schneller :)
Ich wollte sagen: Markiere diese Zeile:2018-12-29 10:59:46.207 MQTT_DEVICE 02_Eltern_Rollo_West Pos: 100
Erzeuge das notify und ersetze dann .100 durch .*
Cooltux hat auch gleich den Rest gemacht, der ist immer so ungeduldig ;D
Gruß Otto
Dann die Zeile 2018-12-29 10:59:46.207 MQTT_DEVICE 02_Eltern_Rollo_West Pos: 100
im Eventmonitor markieren und auf Create Device klicken.
Dann wie Otto schrieb die Zahl durch .* ersetzen und den Befehl setzen.
Zitat von: Otto123 am 29 Dezember 2018, 11:18:22
Cooltux war schneller :)
Ich wollte sagen: Markiere diese Zeile:2018-12-29 10:59:46.207 MQTT_DEVICE 02_Eltern_Rollo_West Pos: 100
Erzeuge das notify und ersetze dann .100 durch .*
Cooltux hat auch gleich den Rest gemacht, der ist immer so ungeduldig ;D
Gruß Otto
;D sorry Otto. Step bei Step lernt man natürlich deutlich besser da gebe ich Dir Recht.
Meine Empfehlung an Niels. Probiere Dich bezüglich Notify und Regex ruhig aus. Mit der Zeit bekommt man ein Gefühl dafür.
Grüße
Besten Dank an euch. Klappt, ihr seid super!
VG
Niels