Hallo zusammen,
auf der Grundlage von 66er's Beitrag "SHELLY DIMMER2 GOES HOMEMATIC - MIT DER ORIGINALFIRMWARE" habe ich meinen Shelly Dimmer in Homematic angelernt. Leider fehlt im Beitrag die Rückmeldung des Shelly's über das Dimm-Level, dies möchte ich in diesem Beitrag ergänzen.
Als Erstes erstellen wir ein Programm (Programme und Verknüpfungen -> Programme und Zentrallenverknüpfungen)
Bei der Bedingung "Wenn" wählen wir Zeitsteuerung und setzen folgende Einstellungen.
Nachdem Ihr die Einstellungen vorgenommen habt, erstellt Ihr unter Aktivität ein Skript und kopiert den folgenden Code hinein, bitte die Url und System Variable (wird im nächsten Schritt erstellt) anpassen:
string lGetOut;
string lGetErr;
string lUrl="http://192.168.xxx.xx/light/0?brightness";
system.Exec("wget -q -O - " # lUrl, &lGetOut, &lGetErr);
string brightnessJSON = lGetOut;
string brightnessKeyPaar = brightnessJSON.StrValueByIndex(",", 6);
string brightness = brightnessKeyPaar .StrValueByIndex(":", 1);
var brightnessInt = brightness .Replace("}", "");
dom.GetObject("Shelly_Dimmer_Helligkeit_2ET_WZ").State(brightnessInt );
Wir sollten jetzt folgendes Ergebnis haben:
Jetzt wird im Intervall von 3 Sekunden das Level des Dimmers abgefragt.
Um uns das Level anzeigen zu lassen, speichern wir den Wert in einer System Variable, in diesem Fall "Shelly_Dimmer_Helligkeit_2ET_WZ".
Hierzu legen folgende Systemvariable an (Einstellungen->Systemvariable -> Neu
- Name: Shelly_Dimmer_Helligkeit_2ET_WZ
- Variablentyp: Zahl
- Wert: Min. 0 Max. 100
- Maßeinheit: %
- Kanalzuordnung: VG Shelly Dimmer2 EZ:2
Der Kanalzurodnung weist Ihr bitte noch das CUxD Gerät zu, das Ihr im Beitrag von 66er erstellt habt.
Ihr solltet jetzt in der Geräteübersicht folgendes Ergebnis haben:
Bei fragen, Anregungen oder fehler einfach melde.
Viel Spaß!!!