J-N-K hat geschrieben:Meine Überlegung war: wenn ich auf R[0]:1 und R[0]:0 matche und im gleichen Topic R[1]:1 kommt, könnte das eventuell einen solchen Fehler produzieren (weil das eben nichts matched).
Ja, das ist ein sehr guter Punkt!
Das mqtt Binding gibt dafür nichts her. Ausweg:
Du definierst zwei Channel, den einen für rein, den anderen für raus. Die beiden Channel verbindest Du mit zwei String Items.
Anschließend legst Du ungebundene Items für jeden Endpunkt (Relais, Temperatur, whatever, was halt über den Status rein kommen kann oder über den Command-Channel gesteuert wird) an. Nun brauchst Du noch zwei Rules. Die eine Rule triggert auf ein Update des rein-Channel-Items

, wertet den empfangenen String aus und setzt den Status des jeweils passenden Items.
Die andere Rule triggert auf eine Group, in der alle Items zusammengefasst sind, die einen Steuerbefehl an das Gerät senden dürfen. Dabei verwendest Du Member of GroupItem received command.
Nun muss die Rule aus dem triggeringItem.name und receivedCommand entscheiden, wie genau der zu sendende String lauten muss.
Dieser Weg ist natürlich unbequem, sollte aber ohne Fehlermeldungen funktionieren.
Es gibt noch eine weitere Möglichkeit: Du kannst eine incomming Transformation nutzen und dabei über ein Bool‘sches Verkettungs-Symbol mehrere Transformations koppeln. Das Zeichen sieht entfernt aus, wie ein auf dem Kopf stehendes U

und ich finde es nicht auf der iPad-Tastatur...
Auch auf einem Windows-PC ist das Zeichen nicht gut erreichbar.

Wenn Du in der offiziellen Doku nachschaust, sollte das Zeichen aber irgendwo (im Zusammenhang mit transformations) erscheinen, dann kannst Du es von dort in die Zwischenablage übernehmen... (ja, totale Glanzleistung der Entwickler, das so zu lösen...)
Gesendet von iPad mit Tapatalk