Shelly Plus 1PM abfragen und Leistungwerte in SysVar schreiben

Anbindung von FS20-Komponenten, ELV-Wetterstationen, EnOcean und DMX an HomeMatic

Moderator: Co-Administratoren

Antworten
Galaxis
Beiträge: 7
Registriert: 03.02.2019, 16:41
System: Alternative CCU (auf Basis OCCU)
Wohnort: Odenthal

Shelly Plus 1PM abfragen und Leistungwerte in SysVar schreiben

Beitrag von Galaxis » 12.07.2022, 09:20

Hallo zusmmen,
ich habe folgendes Script angepasst damit es auch mit dem Shelly Plus 1PM funktioniert. Beim Plus 1PM funktioniert die Status -Abfrage etwas anders.
Vielleicht hilft es ja dem einen oder anderen.

###############################################################################################################

Code: Alles auswählen

!Skript zur Leistungsaktualisierung Shelly PM mit Originalfirmware (by MarcR V1.0.1)
!basiert auf :
!Skript zur Leistungsaktualisierung Shelly PlugS mit Originalfirmware (by 66er V1.0)
!Script zur Leistungaktualisierung Shelly Plus 1PM

!PV-Balkon (nur zur Orientierung, ggf anpassen)
!****Abfrage des Shelly Plug Plus 1PM*****

!In der folgenden Zeile IP des Shelly Plus 1PM anpassen und den CUxD-Gerätenamen!

var url = "http://192.168.178.104/rpc/Shelly.GetStatus";
var Cuxgeraet ="CUxD.CUX2801002:9"; ! Hier das CUxD Gerät angeben

dom.GetObject(""#Cuxgeraet#".CMD_SETS").State("wget -q -O - '"#url#"'");
dom.GetObject(""#Cuxgeraet#".CMD_QUERY_RET").State(1);

string t = dom.GetObject(""#Cuxgeraet#".CMD_RETS").State();

dom.GetObject(""#Cuxgeraet#".CMD_SETS").State("0");

!WriteLine(t);

!****Auswertung des Antwortstrings ****
!Hier NICHTS ändern

string s;
foreach (s,t.Split (",")) {
if (s.LTrim ("{").Contains ("apower")) {
string p = (s.StrValueByIndex (":",1).RTrim ("}"));

!WriteLine(p);

}

}

!**** SystemVariable setzen****
!SystemVariablennamen anpassen (hier: PV-Balkon)

dom.GetObject("PV-Balkon").State(p);

!Ende Skript
#####################################################################################
mit bestem Gruß
Zuletzt geändert von uwe111 am 12.07.2022, 17:24, insgesamt 1-mal geändert.
Grund: Code in Code-Tags

MichaelN
Beiträge: 9650
Registriert: 27.04.2020, 10:34
System: CCU
Hat sich bedankt: 697 Mal
Danksagung erhalten: 1617 Mal

Re: Shelly Plus 1PM abfragen und Leistungwerte in SysVar schreiben

Beitrag von MichaelN » 12.07.2022, 09:35

Wenn Du jetzt noch die Systemvariable korrekt referenzierst:

Code: Alles auswählen

dom.GetObject(ID_SYSTEM_VARIABLES).Get("PV-Balkon").State(p);
Und das ganze in Code-Tags packst, dann wäre es perfekt :wink:
LG, Michael.

Wenn du eine App zur Bedienung brauchst, dann hast du kein Smarthome.

Wettervorhersage über AccuWeather oder OpenWeatherMap+++ Rollladensteuerung 2.0 +++ JSON-API-Ausgaben auswerten +++ undokumentierte Skript-Befehle und Debugging-Tipps +++

66er
Beiträge: 3083
Registriert: 23.08.2015, 11:06
System: CCU
Hat sich bedankt: 116 Mal
Danksagung erhalten: 111 Mal

Re: Shelly Plus 1PM abfragen und Leistungwerte in SysVar schreiben

Beitrag von 66er » 10.12.2022, 17:59

@Galaxis:

Copyright zu missachten ist kein Kavaliersdelikt. Das mal nur als Hinweis.

(Urheberrechtshinweis ist durch den ursprünglichen Autor Marc.R auf der Seite der Publizierung gesetzt!)

Für den Plus1PM gibt es übrigens eine eigene Kopplung inkl. passendem Skript auf der gleichen Web-Seite. Link in meiner Signatur.
Ich übernehme keine Haftung für von mir gegebene Antworten, Tipps und veröffentlichte Projekte! Jeder ist für sich selbst verantwortlich! Arbeiten an 230V sind von einer Elektrofachkraft auszuführen!

Homematic in Betrieb seit 15.08.2015, > 60 HM-Komp. | 3x USV APC ES400 | Visualisierung auf ioBroker | Audio: Home24-Apps

Raspberrymatic auf DS923+ in VMM (Produktivsystem1)
Rollläden, SSD, Wetter, Logging, Licht, RM, Sonos, Shelly

Raspberrymatic auf DS923+ in VMM (Produktivsystem2 )
Erweiterung GMA, Heizung, Licht, Shelly, SSD, Sonos

>100 Shelly-Geräte an Homematic | CCU2 endgültig in Rente | 3 Raspis als Rückfallebene für Raspimatic und ioBroker

Shelly an Homematic | Infrarot-Heizungssteuerung | Fensteröffnungszeit überwachen

Antworten

Zurück zu „CUxD“