MQTT2_Server - reading vs state Problem

Begonnen von moerte, 16 März 2019, 09:08:01

Vorheriges Thema - Nächstes Thema

moerte

Guten Morgen meine lieben.

IODev = MQTT2_Server
Ich habe mit einem Mqqt device beim zusammenspiel vom reading und state ein Problem.

Ich habe ein mqtt device in fhem angelegt .. (normal läuft alles über einen esp32).

Bei einem normalen schalter an/aus werden die Readings nicht aktualisiert wenn ich aus fhem schalte!

Beispiel bzw TEST Konfiguration:
Schalter in Android app MQTT Dash angelegt und auch retained aktiviert!
Topic:
aziiinrw/MQTT_Client01/Test/schalter_2

Wenn ich am device, aus der App MQTT Dash schalte, kommen die Readings super in fhem an, jedoch state ändert sich nicht.
Schalte ich in fhem, ändert es nichts an den Readings obwohl das device in wirklichkeit geschaltet hat (nach Kontrolle in mqqt dash)

Standart Konfiguration wäre so:
List:

Internals:
   DEVICETOPIC schalter_3
   FUUID      5c8368da-f33f-599c-c0c2-6bda96fec6c00ed2
   IODev      myBroker
   LASTInputDev myBroker
   MSGCNT     9
   NAME       schalter_3
   NR         501
   STATE      off
   TYPE       MQTT2_DEVICE
   myBroker_MSGCNT 9
   myBroker_TIME 2019-03-15 22:21:05
   READINGS:
     2019-03-15 22:21:05   schalter_3      1
     2019-03-15 22:27:27   state           off
Attributes:
   IODev      myBroker
   readingList aziiinrw/MQTT_Client01/Test/schalter_3:.* schalter_3
   room       MQTT2_DEVICE
   setList    on aziiinrw/MQTT_Client01/Test/schalter_3 1
off aziiinrw/MQTT_Client01/Test/schalter_3 0



Wie zu sehen, reading schalter_3 = 1 (on)
...state bleib bei off

Hier wäre eine Beispielkonfiguration wo Fhem auf die Schaltzustände reagiert, aber wenn ich aus fhem schalte sollte nun auch das reading vom device geändert werden - das tut es leider nicht:

Internals:
   DEVICETOPIC schalter_2
   FUUID      5c8368b7-f33f-599c-2239-cabce5271307e1aa
   IODev      myBroker
   LASTInputDev myBroker
   MSGCNT     42
   NAME       schalter_2
   NR         500
   STATE      on
   TYPE       MQTT2_DEVICE
   myBroker_MSGCNT 42
   myBroker_TIME 2019-03-16 08:47:42
   READINGS:
     2019-03-16 08:47:42   schalter_2      1
     2019-03-16 08:51:21   state           0
Attributes:
   IODev      myBroker
   eventMap   1:on 0:off
   readingList aziiinrw/MQTT_Client01/Test/schalter_2:.* schalter_2
   room       MQTT2_DEVICE
   setList    1 aziiinrw/MQTT_Client01/Test/schalter_2 1
0 aziiinrw/MQTT_Client01/Test/schalter_2 0
   stateFormat schalter_2



Ich hätte gern dass egal von wo geschaltet wird, mir den Schaltzustand anzeigt.

Kann mir jemand sagen was hier falsch läuft??
Ich hoffe dass ich mich verständlich ausgedrückt habe.

Wünsche ein tolles Wochenende


rudolfkoenig

Beim Schalten wird state direkt gesetzt, es sei denn man hat den Befehl in setStateList erwaehnt, dann wird set_<befehl> nach state geschrieben, damit man gesendet vs. bestaetigt unterscheiden kann.

Beim Empfang muss man angeben, was angezeigt wird, dafuer gibt es mehrere Moeglichkeiten:
- stateFormat
- mit userReading namens state
- indem man in readingList state direkt zuweist

moerte

Möchte erstmal danke für die Antwort sagen..
Bin noch am ausprobieren, leider bisher ohne Erfolg.