FHEM Forum

FHEM - Hausautomations-Systeme => MQTT => Thema gestartet von: Cludch am 21 Mai 2017, 12:53:12

Titel: [Gelöst]publishSet_* publishen bei Veränderung von userReading
Beitrag von: Cludch am 21 Mai 2017, 12:53:12
Hallo,

ich versuche aktuell die RGB-Daten aus dem Colorpicker umzuformattieren in einem userReading und das dann via MQTT zu publishen.
Hier erstmal mein Device:

Internals:
   IODev      MQTT
   NAME       esp01_LEDStripe
   NR         29
   STATE      state
   TYPE       MQTT_DEVICE
   qos        0
   retain     0
   Readings:
     2017-05-20 23:52:21   RGB             ffe29e
     2017-05-20 23:52:22   commandRGB      rgb,255,226,158
     2017-05-20 23:52:22   transmission-state outgoing publish sent
   Publishsets:
     Rgb:
       topic      /esp01/cmd
       values:
     Commandrgb:
       topic      /esp01/cmd
       values:
   Sets:
     RGB
     commandRGB
   subscribe:
   subscribeExpr:
Attributes:
   IODev      MQTT
   alias      LED Stripe
   group      Licht
   icon       light_led_stripe_rgb
   publishSet_RGB /esp01/cmd
   publishSet_commandRGB /esp01/cmd
   room       Zimmer,MQTT
   stateFormat state
   userReadings commandRGB { getRGBCommand(ReadingsVal($name, 'RGB', '000000')) }
   webCmd     RGB
   widgetOverride RGB:colorpicker,RGB


Wenn ich die Farben verändere, wird die RGB-Variable direkt gepublished. Daraufhin wird auch direkt das Reading commandRGB umformatiert, aber nicht gepublished.
Gibt es ein Eveent, welches ich feuern muss?

Vielen Dank im Voraus,
Cludch

Edit:
Ich habe nun den Colorpicker in ein dummy device verlegt und per notify device in dem MQTT device gepublished.
Titel: Antw:publishSet_* publishen bei Veränderung von userReading
Beitrag von: Cludch am 09 Juni 2017, 21:47:24
push.
Niemand der eine Idee hat? Oder undeutlich geschildert?

Edit: Problem gelöst, s. Startpost.
Titel: Antw:[Gelöst]publishSet_* publishen bei Veränderung von userReading
Beitrag von: P.A.Trick am 10 Juni 2017, 16:22:06
Baue dir doch ein notify auf das Userreading!? Nicht schön, sollte aber funktionen!
Titel: Antw:[Gelöst]publishSet_* publishen bei Veränderung von userReading
Beitrag von: derfhem am 04 Januar 2018, 12:04:22
Moin,

stehe gerade an gleicher Stelle. Habe mir ebenfalls ein userreading (RGBTEST) zusammengebaut. Wenn ich mir nun das attr <Device> publishSet_RGBTEST /Topic setze, verändert sich zwar bei Farbauswahl das reading, es wird aber nicht gepublished.

Warum funktioniert das ganze mit dem "RGB-Reading" und nicht mit dem was ich gestellt habe und wie funktioniert das mit dem notify
Titel: Antw:[Gelöst]publishSet_* publishen bei Veränderung von userReading
Beitrag von: derfhem am 05 Januar 2018, 18:43:57
push. Unklar ausgedrückt oder keiner eine Lösung :)
Titel: Antw:[Gelöst]publishSet_* publishen bei Veränderung von userReading
Beitrag von: blecher-at am 06 Januar 2018, 11:49:34
der publish passiert bevor das reading upgedatet wird.
lässt sich eventuell mit einer eventmap lösen.



attr LED_DEVICE eventMap { dev=>{}, usr=>{'.*'=>'".getRGBCommand(ReadingsVal('LED_DEVICE', 'RGB', '000000'))."'} }