Seite 1 von 2

formatBeforePublish transformiert nix :-(

Verfasst: 9. Jul 2022 17:42
von Frank_33
Hallo,

ich versuche eine Shelly Plus 2PM per MQTT an Openhab 3.3 zu binden.

Habe dazu folgedes Thing definiert:

Code: Alles auswählen

UID: mqtt:topic:d60207dd58
label: Shelly Plus 2PM (Rollo 2)
thingTypeUID: mqtt:topic
configuration:
  payloadNotAvailable: "false"
  availabilityTopic: shellyplus2pm-4855199b4084/online
  payloadAvailable: "true"
bridgeUID: mqtt:broker:4efecebca1
location: Terrasse
channels:
  - id: cover
    channelTypeUID: mqtt:rollershutter
    label: Cover
    description: ""
    configuration:
      postCommand: true
      formatBeforePublish: '{"id":0,"src":"shellyplus1pm-4855199b4084","method":"Cover.%s","params":{"id":0}}'
      stop: Stop
      commandTopic: shellyplus2pm-4855199b4084/rpc
      stateTopic: shellyplus2pm-4855199b4084/rpc
      off: Close
      on: Open
Leider wird aber das formatBeforePubish nicht angewendet, beim MQTT-Broker kommt beim Open folgendes an:

Code: Alles auswählen

2022-07-09T17:39:59+0200 shellyplus2pm-4855199b4084/rpc Open
Was übersehe ich?

Danke für ein Tipp, damit ich in der richtigen Richtung weiterschuaen kann.

Frank

Re: formatBeforePublish transformiert nix :-(

Verfasst: 9. Jul 2022 20:51
von udo1toni
Ich bin mir nicht sicher, ob das mit den Anführungszeichen so funktioniert. Als ersten Schritt möchte ich empfehlen, mal einen String zu probieren, der keine Anführungszeichen enthält. Funktioniert das, so kannst du mal probieren, ob es reicht, das Anführungszeichen zu escapen, also z.B. mit \". Ober probiere mal die umgekehrte Logik, also einfache Anführungszeichen statt doppelter und umgekehrt. Innerhalb JSON sollte das gewöhnlich keinen Unterschied machen.

Re: formatBeforePublish transformiert nix :-(

Verfasst: 10. Jul 2022 09:24
von Frank_33
Hallo udo1toni,

danke für Deine Idee. Aber leider funktioniert das auch nicht. Ich hatte bereits mal "test%s" probiert, auch da wird lediglich Open an den MQTT-Broker geschickt :-(

Hast Du noch ei Idee? Kann ich was debuggen?

Re: formatBeforePublish transformiert nix :-(

Verfasst: 10. Jul 2022 10:02
von udo1toni
Ich fürchte, Du wirst einen Issue dazu öffnen müssen. Ich habe das gerade mal hier getestet, und kann leider bestätigen, dass formatBeforePublish bei Rollershutter Channels wirkungslos ist. In einem String Channel hingegen funktioniert es wie gewünscht (nutzt aber nichts...)

Re: formatBeforePublish transformiert nix :-(

Verfasst: 10. Jul 2022 10:12
von Frank_33
Danke fürs Testen. Dann weiß ich schonmal, daß ich es grundsätzlich richtig mache :-)
Ich werde dann mal einen Issue dazu aufmachen.

Re: formatBeforePublish transformiert nix :-(

Verfasst: 18. Feb 2023 08:55
von EmptySoft
Hi Frank.!
Frank_33 hat geschrieben: 9. Jul 2022 17:42 ich versuche eine Shelly Plus 2PM per MQTT an Openhab 3.3 zu binden.
Hast Du den Shelly zum laufen bekommen?

Re: formatBeforePublish transformiert nix :-(

Verfasst: 18. Feb 2023 11:00
von Frank_33
Hallo Harald,

ja, die Shelly Plus 2PM werden ja inzwischen vom Shelly-Binding unterstützt. Ich verwende aktuell Openhab 3.4.2.

LG,
Frank

Re: formatBeforePublish transformiert nix :-(

Verfasst: 18. Feb 2023 16:01
von EmptySoft
Hi Frank.!
Frank_33 hat geschrieben: 18. Feb 2023 11:00 ja, die Shelly Plus 2PM werden ja inzwischen vom Shelly-Binding unterstützt. Ich verwende aktuell Openhab 3.4.2.
Ich habe openhab in der Version 3.3.0 und es mit Shelly Binding Version 3.3.0 versucht, in der Doku steht auch, dass Geräte der Gen2 unterstützt werden, mein Plus und Pro tauchen aber leider nicht auf, bei Versuch sie manuell hinzuzufügen, werden keine Plus oder Pro Geräte in der Auswahlliste angezeigt. Binding deinstalliert und neu installiert habe ich schon.

Re: formatBeforePublish transformiert nix :-(

Verfasst: 18. Feb 2023 16:17
von Frank_33
Was spricht denn dagegen Openhab zu aktualisieren?

Re: formatBeforePublish transformiert nix :-(

Verfasst: 19. Feb 2023 07:18
von EmptySoft
Frank_33 hat geschrieben: 18. Feb 2023 16:17 Was spricht denn dagegen Openhab zu aktualisieren?
Lauft bei mir direkt unter Linux, 3.3.0 ist derzeit die letzte Version für mein System :cry: