Seite 1 von 1

Map Transformation MQTT

Verfasst: 27. Jun 2019 22:23
von winni
Guten Abend zusammen,

ich versuche einen shelly 2.5 als switch für meine Terassenbeleuchtung in OH 2.4 einzubinden.

Folgendes habe ich gemacht:

Auszug aus Thing:

Code: Alles auswählen

Type         switch: Shellyswitch2500448C_switch   "Terasse"                 [ stateTopic="shellies/shellyswitch25-00448C/relay/0", commandTopic="shellies/shellyswitch25-00448C/relay/0/command", transformationPattern="MAP:shellyswitch.map"]
shellyswitch.map:

Code: Alles auswählen

ON=on
OFF=off
on=ON
off=OFF


switch.rules:

Code: Alles auswählen

rule "switch Terasse"
when
Item Shellyswitch2500448CSwitch received command
then
val mqttActions = getActions("mqtt","mqtt:broker:3448a27a")

if(Shellyswitch2500448CSwitch.state.toString == "0") {
mqttActions.publishMQTT("shellies/shellyswitch25-00448C/relay/0/command","off")
}
else if (Shellyswitch2500448CSwitch.state.toString == "1") {
mqttActions.publishMQTT("shellies/shellyswitch25-00448C/relay/0/command","on")
}
end 
item:

Code: Alles auswählen

Switch Shellyswitch2500448CSwitch "Terasse"                                  {channel="mqtt:topic:3448a27a:shelly:Shellyswitch2500448C_switch"}
Map Transformation ist installiert.
Leider bekomme ich es nicht hin, den shelly über OH zu schalten.

Der shelly erwartet on und off. Wenn ich über OH schalte, erscheint in MQTT.fx lediglich 0 und 1.

Über jegliche Hilfe wäre ich sehr dankbar!

Re: Map Transformation MQTT

Verfasst: 28. Jun 2019 05:21
von udo1toni
Probiere es mal so

Code: Alles auswählen

Type switch: Shellyswitch2500448C_switch "Terasse" [ stateTopic="shellies/shellyswitch25-00448C/relay/0", commandTopic="shellies/shellyswitch25-00448C/relay/0/command", on="on", off="off" ]
und lass alles andere weg, keine Rule, keine Transformation.

Re: Map Transformation MQTT

Verfasst: 28. Jun 2019 09:27
von winni
udo1toni hat geschrieben: 28. Jun 2019 05:21 Probiere es mal so

Code: Alles auswählen

Type switch: Shellyswitch2500448C_switch "Terasse" [ stateTopic="shellies/shellyswitch25-00448C/relay/0", commandTopic="shellies/shellyswitch25-00448C/relay/0/command", on="on", off="off" ]
und lass alles andere weg, keine Rule, keine Transformation.
Guten Morgen Udo,

vielen Dank!

Es läuft, der Schalter lässt sich jetzt über OH schalten!

Re: Map Transformation MQTT

Verfasst: 1. Jul 2019 09:38
von winni
Hallo zusammen,

jetzt habe ich ein Problem mit dem dynamischen icon "light" für den Schalter. Egal, welcher Zustand der Schalter hat, die Glühbirne bleibt gelb.
Ich habe mir auch schon die icons light on/off als .svg runtergeladen, in den icon/classic Ordner kopiert und umbenannt in "mylight.svg", "mylight-on.svg" und "mylight-off.svg. In der UI ist svg als Standardformat eingestellt. Wenn ich das icon "mylight" auswähle, wird gar kein icon in der sidemap angezeigt.

Hat es evtl. auch etwas mit der Transformation zu tun?

Re: Map Transformation MQTT

Verfasst: 2. Jul 2019 11:08
von winni
Habe es selber geschafft, indem ich meine Thing Datei wie folgt geändert habe:

Code: Alles auswählen

Type switch: Shellyswitch2500448C_switch "Terasse" [ stateTopic="shellies/shellyswitch25-00448C/relay/0", on="on", off="off", commandTopic="shellies/shellyswitch25-00448C/relay/0/command", on="on", off="off" ]