ich habe heute meinen dritten Shelly Dimmer (shellydimmer_Hausgang_OG) mittels MQTT in OH2 eingebunden. Davor lief alles problemlos. Jetzt erhalte ich folgende Fehlermeldung im log:
Code: Alles auswählen
2020-03-10 10:42:24.573 [WARN ] [t.generic.ChannelStateTransformation] - Executing the JS-transformation failed: An error occurred while executing script. SyntaxError: Invalid JSON: <json>:1:0 Expected json literal but found o
off
^ in <eval> at line number 2
Code: Alles auswählen
Bridge mqtt:broker:Mosquitto "Mosquitto MQTT Broker" @ "MQTT" [ host="192.168.178.79", secure=false ]
{
Thing topic shelly "shelly" @ "MQTT" {
Channels:
Type switch : Shottimer "Shottimer" [stateTopic="shellies/shelly1-E09579/relay/0", off="OFF", commandTopic="shellies/shelly1-E09579/relay/0/command", on="on", off="off"]
}
Thing topic wemos_1 "Klima & Motion" @ "MQTT" {
Channels:
Type number : Luftfeuchtigkeit_WZ "Luftfeuchte" [ stateTopic="Klimatele/DHT22/SENSOR", transformationPattern="JSONPATH:$.AM2301.Humidity" ]
Type number : Temperatur_WZ "Temperatur" [ stateTopic="Klimatele/DHT22/SENSOR", transformationPattern="JSONPATH:$.AM2301.Temperature" ]
Type switch : Bewegung "Bewegung" [ stateTopic="Klimastat/DHT22/POWER", commandTopic="Klimacmnd/DHT22/POWER" ]
Type string : Online "Online" [ stateTopic="Klimatele/DHT22/LWT" ]
Type number : rssi "Wlan Stärke" [ stateTopic="Klimatele/DHT22/STATE", transformationPattern="JSONPATH:$.Wifi.RSSI"]
}
Thing topic CT_Klingel "CT-Klingel" @ "MQTT" {
Channels:
Type switch : CT_Klingel "Türklingel" [ stateTopic="CT-Klingel/klingel", on="on", commandTopic="CT-Klingel/klingel"]
}
Thing topic shelly1pm_EZ "LEDstripe_shelly" @ "MQTT" {
Channels:
Type switch : power "LEDstripe Power" [stateTopic="shellies/shelly1pm-76B926/relay/0", off="OFF", commandTopic="shellies/shelly1pm-76B926/relay/0/command", on="on", off="off"]
Type number : energy "LEDstripe Verbrauch" [stateTopic="shellies/shelly1pm-76B926/relay/0/power"]
Type number : temperature "LEDstripe Shelly Temp" [StateTopic="shellies/shelly1pm-76B926/temperature"]
}
Thing topic shellydimmer_LEDspot_EZ "LEDspot_Dimmer" @ "MQTT" {
Channels:
Type switch : power "Power" [ stateTopic="shellies/shellydimmer-D0ECFF/light/0/", transformationPattern="JS:shelly_dimmer-status.js", commandTopic="shellies/shellydimmer-D0ECFF/light/0/command", on="on", off="off" ]
Type dimmer : dimmer "Dimmer" [ stateTopic="shellies/shellydimmer-D0ECFF/light/0/status", transformationPattern="JSONPATH:$.brightness", commandTopic="shellies/shellydimmer-D0ECFF/light/0/set", transformationPatternOut="JS:shelly_dimmer-bright.js"]
Type number : temperature "Temperature" [ stateTopic="shellies/shellydimmer-D0ECFF/temperature"]
Type number : energy "Energy" [ stateTopic="shellies/shellydimmer-D0ECFF/light/0/power"]
}
Thing topic shellydimmer_LED_WZ "LED_WZ_Dimmer" @ "MQTT" {
Channels:
Type switch : power "Power" [ stateTopic="shellies/shellydimmer-D0ED8C/light/0/", transformationPattern="JS:shelly_dimmer-status.js", commandTopic="shellies/shellydimmer-D0ED8C/light/0/command", on="on", off="off" ]
Type dimmer : dimmer "Dimmer" [ stateTopic="shellies/shellydimmer-D0ED8C/light/0/status", transformationPattern="JSONPATH:$.brightness", commandTopic="shellies/shellydimmer-D0ED8C/light/0/set", transformationPatternOut="JS:shelly_dimmer-bright.js"]
Type number : temperature "Temperature" [ stateTopic="shellies/shellydimmer-D0ED8C/temperature"]
Type number : energy "Energy" [ stateTopic="shellies/shellydimmer-D0ED8C/light/0/power"]
}
Thing topic shellydimmer_Hausgang_EG "Hausgang_EG" @ "MQTT" {
Channels:
Type switch : power "Power" [ stateTopic="shellies/shellydimmer-Hausgang_EG/light/0/", transformationPattern="JS:shelly_dimmer-status.js", commandTopic="shellies/shellydimmer-Hausgang_EG/light/0/command", on="on", off="off" ]
Type dimmer : dimmer "Dimmer" [ stateTopic="shellies/shellydimmer-Hausgang_EG/light/0/status", transformationPattern="JSONPATH:$.brightness", commandTopic="shellies/shellydimmer-Hausgang_EG/light/0/set", transformationPatternOut="JS:shelly_dimmer-bright.js"]
Type number : temperature "Temperature" [ stateTopic="shellies/shellydimmer-Hausgang_EG/temperature"]
Type number : energy "Energy" [ stateTopic="shellies/shellydimmer-Hausgang_EG/light/0/power"]
}
Thing topic shellydimmer_Hausgang_OG "Hausgang_OG" @ "MQTT" {
Channels:
Type switch : power "Power" [ stateTopic="shellies/shellydimmer-Hausgang_OG/light/0", transformationPattern="JS:shelly_dimmer-status.js", commandTopic="shellies/shellydimmer-Hausgang_OG/light/0/command", on="on", off="off" ]
Type dimmer : dimmer "Dimmer" [ stateTopic="shellies/shellydimmer-Hausgang_OG/light/0/status", transformationPattern="JSONPATH:$.brightness", commandTopic="shellies/shellydimmer-Hausgang_OG/light/0/set", transformationPatternOut="JS:shelly_dimmer-bright.js"]
Type number : temperature "Temperature" [ stateTopic="shellies/shellydimmer-Hausgang_OG/temperature"]
Type number : energy "Energy" [ stateTopic="shellies/shellydimmer-Hausgang_OG/light/0/power"]
}
}
Dazu noch die Json dateien
shelly_dimmer-bright.js
Code: Alles auswählen
(function(brightness) {
if (brightness > 0) {
var shellyobj = { "turn":"on", "brightness":brightness};
} else {
var shellyobj = { "turn":"off", "brightness":0 };
}
var data = JSON.stringify(shellyobj);
return data;
})(input)
Code: Alles auswählen
(function(jsonString) {
var data = JSON.parse(jsonString);
var isonState = data.ison;
if (isonState === null) isonState = UNDEF;
if (isonState == true) isonState = 'ON';
if (isonState == false) isonState = 'OFF';
return isonState;
})(input)
Bin für jede Hilfe Dankbar!
VG
Gerhard