Wetterdaten abfragen
Die Dokumentation über die einzelnen zurückgelieferten Daten sowie die Beschreibung des API-Endpunktes finden sich auf der Smarthome Wetter API Seite.
Paketabhängigkeit
Je nach Art des gebuchten Paketes stehen unterschiedliche Daten zur Verfügung. Die Daten sind in der API-Dokumentation entsprechend gekennzeichnet.
HomeMatic
Kein Homematic IP Access Point
Der Dienst kann nur mit einer Homematic Zentrale verwendet werden. Der Homematic IP Acces Point wird nicht unterstützt.
Die nachfolgende Tabelle zeigt die Verfügbarkeit der Skripte in Abhängigkeit des gebuchten Paketes.
Skript | Lite | Photovoltaik | Pro |
---|---|---|---|
Abfragen des aktuellen Wetters (gemittelt) | |||
Abfrage der Wettervorhersage (gemittelt) | |||
Aktuelle Prognose zu PV Werten | |||
Vorhersage von PV Werten | |||
Premium Vorhersage von PV Werten |
Das entsprechende Skript kann in ein Programm eingefügt werden, welches im Zeitintervall die Daten abruft.
Schlüssel | Beschreibung |
---|---|
temp | Temperatur |
uv | UV-Index |
press | Luftdruck |
clouds | Wolkenbedeckung |
solarrad | Sonnenstrahlung |
windspd | Windgeschwindigkeit |
dewpt | Taupunkt |
ghi | Globale horizontale Strahlung |
dhi | Globale diffuse Strahlung |
aqi | Luftqualitätsindex |
vis | Sichtweite |
rh | Feuchtigkeit |
ci | Wolkenindex |
easyKw | Vorhergesage kW |
pro1 | Winkel 1 |
pro2 | Winkel 2 |
pro3 | Winkel 3 |
pro4 | Winkel 4 |
pro5 | Winkel 5 |
pro6 | Winkel 6 |
pro7 | Winkel 7 |
pro8 | Winkel 8 |
pro9 | Winkel 9 |
In diesem Skript werden Systemvariablen erstellt und die gemittelten Daten des aktuellen Wetters eingetragen.
Das Präfix kann selbst bestimmt werden. Dieser dient zur Übersicht, da zwei Skripte für zwei unterschiedliche Orte laufen können. So kann besser zwischen den Variablen unterschieden werden. Das Präfix kann dann zum Beispiel mit einem Ort versehen werden. In unserem Beispiel lautet dieser: SHW_
.
string apiKey = "Hier den API-Key eintragen";
string prefix = "SHW_";
var url = "https://www.smarthome-wetter.de/public/api/weatherMid/" # apiKey;
string output;
string svName;
object svObj;
object svObjects;
string stderr;
var weatherMidData = system.Exec("wget --quiet --method GET --header 'content-type: text/xml' --header 'cache-control: no-cache' --output-document - " # url, &output, &stderr);
integer temp = output.StrValueByIndex(":",2).StrValueByIndex(",",0);
integer press = output.StrValueByIndex(":",3).StrValueByIndex(",",0);
integer cloud = output.StrValueByIndex(":",4).StrValueByIndex(",",0);
integer solar = output.StrValueByIndex(":",5).StrValueByIndex(",",0);
integer wind = output.StrValueByIndex(":",6).StrValueByIndex(",",0);
integer uv = output.StrValueByIndex(":",7).StrValueByIndex(",",0);
integer winddir = output.StrValueByIndex(":",8).StrValueByIndex(",",0);
integer dewpt = output.StrValueByIndex(":",9).StrValueByIndex(",",0);
integer ghi = output.StrValueByIndex(":",10).StrValueByIndex(",",0);
integer dhi = output.StrValueByIndex(":",11).StrValueByIndex(",",0);
integer aqi = output.StrValueByIndex(":",12).StrValueByIndex(",",0);
integer vis = output.StrValueByIndex(":",13).StrValueByIndex(",",0);
integer rh = output.StrValueByIndex(":",14).StrValueByIndex("}",0);
WriteLine("Temp: " + temp);
WriteLine("Press: " + press);
WriteLine("Cloud: " + cloud);
WriteLine("Solar: " + solar);
WriteLine("Wind: " + wind);
WriteLine("UV: " + uv);
WriteLine("WindDir: " + winddir);
WriteLine("Dewpt: " + dewpt);
WriteLine("GHI: " + ghi);
WriteLine("DHI: " + dhi);
WriteLine("AQI: " + aqi);
WriteLine("VIS: " + vis);
WriteLine("RH: " + rh);
svName = "temp_Temperatur";
svName = prefix # svName ;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Temperatur in Grad");
svObj.ValueUnit("°C");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(temp);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "temp_Temperatur").State(temp);
svName = "press_Luftdruck";
svName = prefix # svName ;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Luftdruck in hPa");
svObj.ValueUnit("hPa");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(press);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "press_Luftdruck").State(press);
svName = "cloud_Bewoelkungsgrad";
svName = prefix # svName ;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Bewoelungsgrad in Prozent");
svObj.ValueUnit("%");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(cloud);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "cloud_Bewoelkungsgrad").State(cloud);
svName = "solar_Sonnenstrahlung";
svName = prefix # svName ;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Sonnenstrahlung in W/m²");
svObj.ValueUnit("W/m²");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(solar);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "solar_Sonnenstrahlung").State(solar);
svName = "wind_Windgeschwindigkeit";
svName = prefix # svName ;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Windgeschwindigkeit in km/h");
svObj.ValueUnit("km/h");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(wind);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "wind_Windgeschwindigkeit").State(wind);
svName = "uv_UV-Index";
svName = prefix # svName ;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("UV-Index");
svObj.ValueUnit("UV-Index");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(uv);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "uv_UV-Index").State(uv);
svName = "winddir_Windrichtung";
svName = prefix # svName ;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Windrichtung in °");
svObj.ValueUnit("°");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(winddir);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "winddir_Windrichtung").State(winddir);
svName = "dewpt_Taupunkt";
svName = prefix # svName ;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Taupunkt in °C");
svObj.ValueUnit("°C");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(dewpt);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "dewpt_Taupunkt").State(dewpt);
svName = "ghi_GlobaleStrahlung";
svName = prefix # svName ;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Globale Strahlung in W/m²");
svObj.ValueUnit("W/m²");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(ghi);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "ghi_GlobaleStrahlung").State(ghi);
svName = "dhi_Diffuse_Globale_Horizontalstrahlung";
svName = prefix # svName ;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Diffuse Globale Strahlung in W/m²");
svObj.ValueUnit("W/m²");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(dhi);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "dhi_Diffuse_Globale_Horizontalstrahlung").State(dhi);
svName = "aqi_Luftqualitätsindex";
svName = prefix # svName ;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Luftqualitätsindex");
svObj.ValueUnit("Luftqualitätsindex");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(aqi);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "aqi_Luftqualitätsindex").State(aqi);
svName = "vis_Sichtweite";
svName = prefix # svName ;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Sichtweite in km");
svObj.ValueUnit("km");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(vis);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "vis_Sichtweite").State(vis);
svName = "rh_Relative_Luftfeuchtigkeit";
svName = prefix # svName ;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Relative Luftfeuchtigkeit in Prozent");
svObj.ValueUnit("%");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(rh);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "rh_Relative_Luftfeuchtigkeit").State(rh);
In diesem Skript werden Systemvariablen erstellt und die gemittelten Daten der aktuellen Wettervorhersage eingetragen.
Das Präfix kann selbst bestimmt werden. Dieser dient zur Übersicht, da zwei Skripte für zwei unterschiedliche Orte laufen können. So kann besser zwischen den Variablen unterschieden werden. Das Präfix kann dann zum Beispiel mit einem Ort versehen werden. In unserem Beispiel lautet dieser: SHW_
.
string apiKey = "Hier den API-Key eintragen";
string prefix = "SHW_";
var url = "https://www.smarthome-wetter.de/public/api/forecastMid/" # apiKey;
string output;
string temp;
string stderr;
var weatherMidData = system.Exec("wget --quiet --method GET --header 'content-type: text/xml' --header 'cache-control: no-cache' --output-document - " # url, &output, &stderr);
output = output.Substr(0,13339);
integer temp = output.StrValueByIndex(":", 5).StrValueByIndex(",", 0);
integer press = output.StrValueByIndex(":", 6).StrValueByIndex(",", 0);
integer cloud = output.StrValueByIndex(":", 7).StrValueByIndex(",", 0);
integer solar = output.StrValueByIndex(":", 8).StrValueByIndex(",", 0);
integer wind = output.StrValueByIndex(":", 9).StrValueByIndex(",", 0);
integer uv = output.StrValueByIndex(":", 10).StrValueByIndex(",", 0);
integer winddir = output.StrValueByIndex(":", 11).StrValueByIndex(",", 0);
integer dewpt= output.StrValueByIndex(":", 12).StrValueByIndex(",", 0);
integer ghi = output.StrValueByIndex(":", 13).StrValueByIndex(",", 0);
integer dhi = output.StrValueByIndex(":", 14).StrValueByIndex(",", 0);
integer aqi = output.StrValueByIndex(":", 15).StrValueByIndex(",", 0);
integer vis = output.StrValueByIndex(":", 16).StrValueByIndex(",", 0);
integer rh = output.StrValueByIndex(":", 17).StrValueByIndex("}", 0);
WriteLine("Temp: " + temp);
WriteLine("Press: " + press);
WriteLine("Cloud: " + cloud);
WriteLine("Solar: " + solar);
WriteLine("Wind: " + wind);
WriteLine("UV: " + uv);
WriteLine("Winddir: " + winddir);
WriteLine("Dewpt: " + dewpt);
WriteLine("GHI: " + ghi);
WriteLine("DHI: " + dhi);
WriteLine("AQI: " + aqi);
WriteLine("VIS: " + vis);
WriteLine("RH: " + rh);
string svName = "temp_Temperatur";
svName = prefix # svName ;
object svObj = dom.GetObject(svName);
if (!svObj){
object svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Temperatur in Grad");
svObj.ValueUnit("°C");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(temp);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "temp_Temperatur").State(temp);
string svName = "press_Luftdruck";
svName = prefix # svName ;
object svObj = dom.GetObject(svName);
if (!svObj){
object svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Luftdruck in hPa");
svObj.ValueUnit("hPa");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(press);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "press_Luftdruck").State(press);
string svName = "cloud_Bewoelkungsgrad";
svName = prefix # svName ;
object svObj = dom.GetObject(svName);
if (!svObj){
object svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Bewölungsgrad in Prozent");
svObj.ValueUnit("%");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(cloud);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "cloud_Bewoelkungsgrad").State(cloud);
string svName = "solar_Sonnenstrahlung";
svName = prefix # svName ;
object svObj = dom.GetObject(svName);
if (!svObj){
object svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Sonnenstrahlung in W/m²");
svObj.ValueUnit("W/m²");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(solar);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "solar_Sonnenstrahlung").State(solar);
string svName = "wind_Windgeschwindigkeit";
svName = prefix # svName ;
object svObj = dom.GetObject(svName);
if (!svObj){
object svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Windgeschwindigkeit in km/h");
svObj.ValueUnit("km/h");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(wind);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "wind_Windgeschwindigkeit").State(wind);
string svName = "uv_UV-Index";
svName = prefix # svName ;
object svObj = dom.GetObject(svName);
if (!svObj){
object svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("UV-Index");
svObj.ValueUnit("UV-Index");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(uv);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "uv_UV-Index").State(uv);
string svName = "winddir_Windrichtung";
svName = prefix # svName ;
object svObj = dom.GetObject(svName);
if (!svObj){
object svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Windrichtung in °");
svObj.ValueUnit("°");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(winddir);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "winddir_Windrichtung").State(winddir);
string svName = "dewpt_Taupunkt";
svName = prefix # svName ;
object svObj = dom.GetObject(svName);
if (!svObj){
object svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Taupunkt in °C");
svObj.ValueUnit("°C");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(dewpt);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "dewpt_Taupunkt").State(dewpt);
string svName = "ghi_GlobaleStrahlung";
svName = prefix # svName ;
object svObj = dom.GetObject(svName);
if (!svObj){
object svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Globale Strahlung in W/m²");
svObj.ValueUnit("W/m²");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(ghi);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "ghi_GlobaleStrahlung").State(ghi);
string svName = "dhi_Diffuse_Globale_Horizontalstrahlung";
svName = prefix # svName ;
object svObj = dom.GetObject(svName);
if (!svObj){
object svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Diffuse Globale Strahlung in W/m²");
svObj.ValueUnit("W/m²");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(dhi);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "dhi_Diffuse_Globale_Horizontalstrahlung").State(dhi);
string svName = "aqi_Luftqualitätsindex";
svName = prefix # svName ;
object svObj = dom.GetObject(svName);
if (!svObj){
object svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Luftqualitätsindex");
svObj.ValueUnit("Luftqualitätsindex");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(aqi);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "aqi_Luftqualitätsindex").State(aqi);
string svName = "vis_Sichtweite";
svName = prefix # svName ;
object svObj = dom.GetObject(svName);
if (!svObj){
object svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Sichtweite in km");
svObj.ValueUnit("km");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(vis);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "vis_Sichtweite").State(vis);
string svName = "rh_Relative_Luftfeuchtigkeit";
svName = prefix # svName ;
object svObj = dom.GetObject(svName);
if (!svObj){
object svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Relative Luftfeuchtigkeit in Prozent");
svObj.ValueUnit("%");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(rh);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "rh_Relative_Luftfeuchtigkeit").State(rh);
In diesem Skript werden Systemvariablen erstellt und die Daten der aktuellen Photovoltaik Prognose eingetragen.
Das Präfix kann selbst bestimmt werden. Dieser dient zur Übersicht, da zwei Skripte für zwei unterschiedliche Orte laufen können. So kann besser zwischen den Variablen unterschieden werden. Das Präfix kann dann zum Beispiel mit einem Ort versehen werden. In unserem Beispiel lautet dieser: SHW_
.
string apiKey = "Hier den API-Key eintragen";
string prefix = "SHW_";
var url = "https://www.smarthome-wetter.de/public/api/pv/" # apiKey;
string output;
string stderr;
string svName;
object svObj;
object svObjects;
var weatherMidData = system.Exec("wget --quiet --method GET --header 'content-type: text/xml' --header 'cache-control: no-cache' --output-document - " # url, &output, &stderr);
integer solar = output.StrValueByIndex(":",2).StrValueByIndex(",",0);
integer ci = output.StrValueByIndex(":",3).StrValueByIndex(",",0);
integer kw = output.StrValueByIndex(":", 4).StrValueByIndex("}",0);
WriteLine("Solar: " + solar);
WriteLine("CI: " + ci);
WriteLine("KW: " + kw);
svName = "solar_Sonnenstrahlung";
svName = prefix # svName ;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Sonnenstrahlung in W/m²");
svObj.ValueUnit("W/m²");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(solar);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "solar_Sonnenstrahlung").State(solar);
svName = "ci_Wolkenindex";
svName = prefix # svName ;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Cloud Index");
svObj.ValueUnit("Cloud Index");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(ci);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "ci_Wolkenindex").State(ci);
svName = "kw_Berechnete_KW_Leistung";
svName = prefix # svName ;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Berechnete KW-Leistung");
svObj.ValueUnit("kw");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(kw);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "kw_Berechnete_KW_Leistung").State(kw);
WriteLine("Done");
In diesem Skript werden Systemvariablen erstellt und die Daten der aktuellen Vorhersage von PV Werten eingetragen.
Das Präfix kann selbst bestimmt werden. Dieser dient zur Übersicht, da zwei Skripte für zwei unterschiedliche Orte laufen können. So kann besser zwischen den Variablen unterschieden werden. Das Präfix kann dann zum Beispiel mit einem Ort versehen werden. In unserem Beispiel lautet dieser: SHW_
.
string apiKey = "Hier den API-Key eintragen";
var url = "https://www.smarthome-wetter.de/public/api/pvForecast/" # apiKey;
string output;
string stderr;
string svName;
object svObj;
object svObjects;
string prefix = "SHW_";
var weatherMidData = system.Exec("wget --quiet --method GET --header 'content-type: text/xml' --header 'cache-control: no-cache' --output-document - " # url, &output, &stderr);
integer todayEveningSolar= output.StrValueByIndex(":",3).StrValueByIndex(",",0);
integer todayEveningCloud= output.StrValueByIndex(":",4).StrValueByIndex(",",0);
integer todayEveningEasyKW= output.StrValueByIndex(":",5).StrValueByIndex(",",0);
integer todayEveningPV0= output.StrValueByIndex(":",6).StrValueByIndex(",",0);
integer todayEveningPV1= output.StrValueByIndex(":",7).StrValueByIndex(",",0);
integer todayEveningPV2= output.StrValueByIndex(":",8).StrValueByIndex(",",0);
integer todayEveningPV3= output.StrValueByIndex(":",9).StrValueByIndex("}",0);
integer todayNightSolar = output.StrValueByIndex(":",11).StrValueByIndex(",",0);
integer todayNightCloud = output.StrValueByIndex(":",12).StrValueByIndex(",",0);
integer todayNightEasyKW = output.StrValueByIndex(":",13).StrValueByIndex(",",0);
integer todayNightPV0 = output.StrValueByIndex(":",14).StrValueByIndex(",",0);
integer todayNightPV1 = output.StrValueByIndex(":",15).StrValueByIndex(",",0);
integer todayNightPV2 = output.StrValueByIndex(":",16).StrValueByIndex(",",0);
integer todayNightPV3 = output.StrValueByIndex(":",17).StrValueByIndex("}",0);
integer tomorrowMorningSolar = output.StrValueByIndex(":",19).StrValueByIndex(",",0);
integer tomorrowMorningCloud = output.StrValueByIndex(":",20).StrValueByIndex(",",0);
integer tomorrowMorningEasyKW = output.StrValueByIndex(":",21).StrValueByIndex(",",0);
integer tomorrowMorningPV0 = output.StrValueByIndex(":",22).StrValueByIndex(",",0);
integer tomorrowMorningPV1 = output.StrValueByIndex(":",23).StrValueByIndex(",",0);
integer tomorrowMorningPV2 = output.StrValueByIndex(":",24).StrValueByIndex(",",0);
integer tomorrowMorningPV3 = output.StrValueByIndex(":",25).StrValueByIndex("}",0);
integer tomorrowNoonSolar = output.StrValueByIndex(":",27).StrValueByIndex(",",0);
integer tomorrowNoonCloud = output.StrValueByIndex(":",28).StrValueByIndex(",",0);
integer tomorrowNoonEasyKW = output.StrValueByIndex(":",29).StrValueByIndex(",",0);
integer tomorrowNoonPV0 = output.StrValueByIndex(":",30).StrValueByIndex(",",0);
integer tomorrowNoonPV1 = output.StrValueByIndex(":",31).StrValueByIndex(",",0);
integer tomorrowNoonPV2 = output.StrValueByIndex(":",32).StrValueByIndex(",",0);
integer tomorrowNoonPV3 = output.StrValueByIndex(":",33).StrValueByIndex("}",0);
integer tomorrowEveningSolar = output.StrValueByIndex(":",35).StrValueByIndex(",",0);
integer tomorrowEveningCloud = output.StrValueByIndex(":",36).StrValueByIndex(",",0);
integer tomorrowEveningEasyKW = output.StrValueByIndex(":",37).StrValueByIndex(",",0);
integer tomorrowEveningPV0 = output.StrValueByIndex(":",38).StrValueByIndex(",",0);
integer tomorrowEveningPV1 = output.StrValueByIndex(":",39).StrValueByIndex(",",0);
integer tomorrowEveningPV2 = output.StrValueByIndex(":",40).StrValueByIndex(",",0);
integer tomorrowEveningPV3 = output.StrValueByIndex(":",41).StrValueByIndex("}",0);
integer tomorrowNightSolar = output.StrValueByIndex(":",43).StrValueByIndex(",",0);
integer tomorrowNightCloud = output.StrValueByIndex(":",44).StrValueByIndex(",",0);
integer tomorrowNightEasyKW = output.StrValueByIndex(":",45).StrValueByIndex(",",0);
integer tomorrowNightPV0 = output.StrValueByIndex(":",46).StrValueByIndex(",",0);
integer tomorrowNightPV1 = output.StrValueByIndex(":",47).StrValueByIndex(",",0);
integer tomorrowNightPV2 = output.StrValueByIndex(":",48).StrValueByIndex(",",0);
integer tomorrowNightPV3 = output.StrValueByIndex(":",49).StrValueByIndex("}",0);
WriteLine("");
WriteLine("TodayEveningSolar: " + todayEveningSolar);
WriteLine("TodayEveningCloud: " + todayEveningCloud);
WriteLine("TodayEveningEasyKW: " + todayEveningEasyKW);
WriteLine("TodayEveningPV0: " + todayEveningPV0);
WriteLine("TodayEveningPV1: " + todayEveningPV1);
WriteLine("TodayEveningPV2: " + todayEveningPV2);
WriteLine("TodayEveningPV3: " + todayEveningPV3);
WriteLine("");
WriteLine("TodayNightSolar: " + todayNightSolar);
WriteLine("TodayNightCloud: " + todayNightCloud);
WriteLine("TodayNightEasyKW: " + todayNightEasyKW);
WriteLine("TodayNightPV0: " + todayNightPV0);
WriteLine("TodayNightPV1: " + todayNightPV1);
WriteLine("TodayNightPV2: " + todayNightPV2);
WriteLine("TodayNightPV3: " + todayNightPV3);
WriteLine("");
WriteLine("TomorrowMorningSolar: "+ tomorrowMorningSolar);
WriteLine("TomorrowMorningCloud: " + tomorrowMorningCloud);
WriteLine("TomorrowMorningEasyKW: " + tomorrowMorningEasyKW);
WriteLine("TomorrowMorningPV0: " + tomorrowMorningPV0);
WriteLine("TomorrowMorningPV1: " + tomorrowMorningPV1);
WriteLine("TomorrowMorningPV2: " + tomorrowMorningPV2);
WriteLine("TomorrowMorningPV3: " + tomorrowMorningPV3);
WriteLine("");
WriteLine("TomorrowNoonSolar: "+ tomorrowNoonSolar);
WriteLine("TomorrowNoonCloud: "+ tomorrowNoonCloud);
WriteLine("TomorrowNoonEasyKW: "+ tomorrowNoonEasyKW);
WriteLine("TomorrowNoonPV0: " + tomorrowNoonPV0);
WriteLine("TomorrowNoonPV1: " + tomorrowNoonPV1);
WriteLine("TomorrowNoonPV2: " + tomorrowNoonPV2);
WriteLine("TomorrowNoonPV3: " + tomorrowNoonPV3);
WriteLine("");
WriteLine("TomorrowEveningSolar: "+ tomorrowEveningSolar);
WriteLine("TomorrowEveningCloud: " + tomorrowEveningCloud);
WriteLine("TomorrowEveningEasyKW: " + tomorrowEveningEasyKW);
WriteLine("TomorrowEveningPV0: " + tomorrowEveningPV0);
WriteLine("TomorrowEveningPV1: " + tomorrowEveningPV1);
WriteLine("TomorrowEveningPV2: " + tomorrowEveningPV2);
WriteLine("TomorrowEveningPV3: " + tomorrowEveningPV3);
WriteLine("");
WriteLine("TomorrowNightSolar: " + tomorrowNightSolar);
WriteLine("TomorrowNightCloud: " + tomorrowNightCloud);
WriteLine("TomorrowNightEasyKW: " + tomorrowNightEasyKW);
WriteLine("TomorrowNightPV0: " + tomorrowNightPV0);
WriteLine("TomorrowNightPV1: " + tomorrowNightPV1);
WriteLine("TomorrowNightPV2: " + tomorrowNightPV2);
WriteLine("TomorrowNightPV3: " + tomorrowNightPV3);
svName = "Sonnenstrahlung_Heute_Abend";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Sonnenstrahlung in W/m²");
svObj.ValueUnit("W/m²");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(todayEveningSolar);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "Sonnenstrahlung_Heute_Abend").State(todayEveningSolar);
svName = "Bewoelkungsgrad_Heute_Abend";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Bewölungsgrad in Prozent");
svObj.ValueUnit("%");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(todayEveningCloud);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "Bewoelkungsgrad_Heute_Abend").State(todayEveningCloud);
svName = "EasyKW_Heute_Abend";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("");
svObj.ValueUnit("");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(todayEveningEasyKW);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "EasyKW_Heute_Abend").State(todayEveningEasyKW);
svName = "PV0_Heute_Abend";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("");
svObj.ValueUnit("");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(todayEveningPV0);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "PV0_Heute_Abend").State(todayEveningPV0);
svName = "PV1_Heute_Abend";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("");
svObj.ValueUnit("");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(todayEveningPV1);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "PV1_Heute_Abend").State(todayEveningPV1);
svName = "PV2_Heute_Abend";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("");
svObj.ValueUnit("");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(todayEveningPV2);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "PV2_Heute_Abend").State(todayEveningPV2);
svName = "PV3_Heute_Abend";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("");
svObj.ValueUnit("");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(todayEveningPV3);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "PV3_Heute_Abend").State(todayEveningPV3);
svName = "Sonnenstrahlung_Heute_Nacht";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Sonnenstrahlung in W/m²");
svObj.ValueUnit("W/m²");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(todayNightSolar);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "Sonnenstrahlung_Heute_Nacht").State(todayNightSolar);
svName = "Bewoelkungsgrad_Heute_Nacht";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Bewölungsgrad in Prozent");
svObj.ValueUnit("%");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(todayNightCloud);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "Bewoelkungsgrad_Heute_Nacht").State(todayNightCloud);
svName = "EasyKW_Heute_Nacht";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("");
svObj.ValueUnit("");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(todayNightEasyKW);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "EasyKW_Heute_Nacht").State(todayNightEasyKW);
svName = "PV0_Heute_Nacht";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("");
svObj.ValueUnit("");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(todayNightPV0);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "PV0_Heute_Nacht").State(todayNightPV0);
svName = "PV1_Heute_Nacht";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("");
svObj.ValueUnit("");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(todayNightPV1);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "PV1_Heute_Nacht").State(todayNightPV1);
svName = "PV2_Heute_Nacht";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("");
svObj.ValueUnit("");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(todayNightPV2);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "PV2_Heute_Nacht").State(todayNightPV2);
svName = "PV3_Heute_Nacht";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("");
svObj.ValueUnit("");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(todayNightPV3);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "PV3_Heute_Nacht").State(todayNightPV3);
svName = "Sonnenstrahlung_Morgen_Frueh";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Sonnenstrahlung in W/m²");
svObj.ValueUnit("W/m²");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(tomorrowMorningSolar);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "Sonnenstrahlung_Morgen_Frueh").State(tomorrowMorningSolar);
svName = "Bewoelkungsgrad_Morgen_Frueh";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Bewölungsgrad in Prozent");
svObj.ValueUnit("%");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(tomorrowMorningCloud);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "Bewoelkungsgrad_Morgen_Frueh").State(tomorrowMorningCloud);
svName = "EasyKW_Morgen_Frueh";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("");
svObj.ValueUnit("");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(tomorrowMorningEasyKW);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "EasyKW_Morgen_Frueh").State(tomorrowMorningEasyKW);
svName = "PV0_Morgen_Frueh";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("");
svObj.ValueUnit("");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(tomorrowMorningPV0);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "PV0_Morgen_Frueh").State(tomorrowMorningPV0);
svName = "PV1_Morgen_Frueh";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("");
svObj.ValueUnit("");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(tomorrowMorningPV1);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "PV1_Morgen_Frueh").State(tomorrowMorningPV1);
svName = "PV2_Morgen_Frueh";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("");
svObj.ValueUnit("");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(tomorrowMorningPV2);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "PV2_Morgen_Frueh").State(tomorrowMorningPV2);
svName = "PV3_Morgen_Frueh";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("");
svObj.ValueUnit("");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(tomorrowMorningPV3);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "PV3_Morgen_Frueh").State(tomorrowMorningPV3);
svName = "Sonnenstrahlung_Morgen_Mittag";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Sonnenstrahlung in W/m²");
svObj.ValueUnit("W/m²");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(tomorrowNoonSolar);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "Sonnenstrahlung_Morgen_Mittag").State(tomorrowNoonSolar);
svName = "Bewoelkungsgrad_Morgen_Mittag";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Bewölungsgrad in Prozent");
svObj.ValueUnit("%");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(tomorrowNoonCloud);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "Bewoelkungsgrad_Morgen_Mittag").State(tomorrowNoonCloud);
svName = "EasyKW_Morgen_Mittag";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("");
svObj.ValueUnit("");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(tomorrowNoonEasyKW);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "EasyKW_Morgen_Mittag").State(tomorrowNoonEasyKW);
svName = "PV0_Morgen_Mittag";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("");
svObj.ValueUnit("");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(tomorrowNoonPV0);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "PV0_Morgen_Mittag").State(tomorrowNoonPV0);
svName = "PV1_Morgen_Mittag";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("");
svObj.ValueUnit("");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(tomorrowNoonPV1);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "PV1_Morgen_Mittag").State(tomorrowNoonPV1);
svName = "PV2_Morgen_Mittag";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("");
svObj.ValueUnit("");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(tomorrowNoonPV2);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "PV2_Morgen_Mittag").State(tomorrowNoonPV2);
svName = "PV3_Morgen_Mittag";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("");
svObj.ValueUnit("");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(tomorrowNoonPV3);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "PV3_Morgen_Mittag").State(tomorrowNoonPV3);
svName = "Sonnenstrahlung_Morgen_Abend";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Sonnenstrahlung in W/m²");
svObj.ValueUnit("W/m²");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(tomorrowEveningSolar);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "Sonnenstrahlung_Morgen_Abend").State(tomorrowEveningSolar);
svName = "Bewoelkungsgrad_Morgen_Abend";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Bewölungsgrad in Prozent");
svObj.ValueUnit("%");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(tomorrowEveningCloud);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "Bewoelkungsgrad_Morgen_Abend").State(tomorrowEveningCloud);
svName = "EasyKW_Morgen_Abend";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("");
svObj.ValueUnit("");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(tomorrowEveningEasyKW);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "EasyKW_Morgen_Abend").State(tomorrowEveningEasyKW);
svName = "PV0_Morgen_Abend";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("");
svObj.ValueUnit("");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(tomorrowEveningPV0);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "PV0_Morgen_Abend").State(tomorrowEveningPV0);
svName = "PV1_Morgen_Abend";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("");
svObj.ValueUnit("");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(tomorrowEveningPV1);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "PV1_Morgen_Abend").State(tomorrowEveningPV1);
svName = "PV2_Morgen_Abend";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("");
svObj.ValueUnit("");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(tomorrowEveningPV2);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "PV2_Morgen_Abend").State(tomorrowEveningPV2);
svName = "PV3_Morgen_Abend";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("");
svObj.ValueUnit("");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(tomorrowEveningPV3);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "PV3_Morgen_Abend").State(tomorrowEveningPV3);
svName = "Sonnenstrahlung_Morgen_Nacht";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Sonnenstrahlung in W/m²");
svObj.ValueUnit("W/m²");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(tomorrowNightSolar);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "Sonnenstrahlung_Morgen_Nacht").State(tomorrowNightSolar);
svName = "Bewoelkungsgrad_Morgen_Nacht";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Bewölungsgrad in Prozent");
svObj.ValueUnit("%");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(tomorrowNightCloud);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "Bewoelkungsgrad_Morgen_Nacht").State(tomorrowNightCloud);
svName = "EasyKW_Morgen_Nacht";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("");
svObj.ValueUnit("");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(tomorrowNightEasyKW);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "EasyKW_Morgen_Nacht").State(tomorrowNightEasyKW);
svName = "PV0_Morgen_Nacht";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("");
svObj.ValueUnit("");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(tomorrowNightPV0);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "PV0_Morgen_Nacht").State(tomorrowNightPV0);
svName = "PV1_Morgen_Nacht";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("");
svObj.ValueUnit("");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(tomorrowNightPV1);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "PV1_Morgen_Nacht").State(tomorrowNightPV1);
svName = "PV2_Morgen_Nacht";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("");
svObj.ValueUnit("");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(tomorrowNightPV2);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "PV2_Morgen_Nacht").State(tomorrowNightPV2);
svName = "PV3_Morgen_Nacht";
svName = prefix # svName;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("");
svObj.ValueUnit("");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(tomorrowNightPV3);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(prefix # "PV3_Morgen_Nacht").State(tomorrowNightPV3);
string apiKey = "Smarthome-Wetter API Key";
string prefix = "SHW_";
integer mode = 1;
string output;
string svName;
object svObj;
object svObjects;
string stderr;
var url = "https://www.smarthome-wetter.de/public/api/pvPremiumForecast/" # apiKey;
system.Exec("wget --quiet --method GET --header 'content-type: text/xml' --header 'cache-control: no-cache' --output-document - " # url, &output, &stderr);
! Verfügbare Modi
!Modus 1: Aktuelle Vorhersage
!Modus 2: 3 Stunden Vorhersage
!Modus 3: 6 Stunden Vorhersage
! Der Modus kann oben verändert werden.
if(mode == 1){
WriteLine("Akutelle Daten von Modus: 1");
integer solar = output.StrValueByIndex(":",5).StrValueByIndex(",",0);
integer cloud = output.StrValueByIndex(":",6).StrValueByIndex(",",0);
integer easyKw = output.StrValueByIndex(":",7).StrValueByIndex(",",0);
integer pro1 = output.StrValueByIndex(":",9).StrValueByIndex(",",0);
integer pro2 = output.StrValueByIndex(":",10).StrValueByIndex(",",0);
integer pro3 = output.StrValueByIndex(":",11).StrValueByIndex(",",0);
integer pro4 = output.StrValueByIndex(":",12).StrValueByIndex(",",0);
integer pro5 = output.StrValueByIndex(":",13).StrValueByIndex(",",0);
integer pro6 = output.StrValueByIndex(":",14).StrValueByIndex(",",0);
integer pro7 = output.StrValueByIndex(":",15).StrValueByIndex(",",0);
integer pro8 = output.StrValueByIndex(":",16).StrValueByIndex(",",0);
integer pro9 = output.StrValueByIndex(":",17).StrValueByIndex("}",0);
}
if(mode == 2){
WriteLine("Akutelle Daten von Modus: 2");
integer solar = output.StrValueByIndex(":",53).StrValueByIndex(",",0);
integer cloud = output.StrValueByIndex(":",54).StrValueByIndex(",",0);
integer easyKw = output.StrValueByIndex(":",55).StrValueByIndex(",",0);
integer pro1 = output.StrValueByIndex(":",57).StrValueByIndex(",",0);
integer pro2 = output.StrValueByIndex(":",58).StrValueByIndex(",",0);
integer pro3 = output.StrValueByIndex(":",59).StrValueByIndex(",",0);
integer pro4 = output.StrValueByIndex(":",60).StrValueByIndex(",",0);
integer pro5 = output.StrValueByIndex(":",61).StrValueByIndex(",",0);
integer pro6 = output.StrValueByIndex(":",62).StrValueByIndex(",",0);
integer pro7 = output.StrValueByIndex(":",63).StrValueByIndex(",",0);
integer pro8 = output.StrValueByIndex(":",64).StrValueByIndex(",",0);
integer pro9 = output.StrValueByIndex(":",65).StrValueByIndex("}",0);
}
if(mode == 3){
WriteLine("Akutelle Daten von Modus: 3");
integer solar = output.StrValueByIndex(":",101).StrValueByIndex(",",0);
integer cloud = output.StrValueByIndex(":",102).StrValueByIndex(",",0);
integer easyKw = output.StrValueByIndex(":",103).StrValueByIndex(",",0);
integer pro1 = output.StrValueByIndex(":",105).StrValueByIndex(",",0);
integer pro2 = output.StrValueByIndex(":",106).StrValueByIndex(",",0);
integer pro3 = output.StrValueByIndex(":",107).StrValueByIndex(",",0);
integer pro4 = output.StrValueByIndex(":",108).StrValueByIndex(",",0);
integer pro5 = output.StrValueByIndex(":",109).StrValueByIndex(",",0);
integer pro6 = output.StrValueByIndex(":",110).StrValueByIndex(",",0);
integer pro7 = output.StrValueByIndex(":",111).StrValueByIndex(",",0);
integer pro8 = output.StrValueByIndex(":",112).StrValueByIndex(",",0);
integer pro9 = output.StrValueByIndex(":",113).StrValueByIndex("}",0);
}
vName = "Sonnenstrahlung";
svName = prefix # svName ;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Sonnenstrahlung in W/m²");
svObj.ValueUnit("W/m²");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(solar);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(svName).State(solar);
svName = "Bewölkung";
svName = prefix # svName ;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("Bewölkungsindex in Okta");
svObj.ValueUnit("Okta");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(cloud);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(svName).State(cloud);
svName = "EASY kW";
svName = prefix # svName ;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("EASY kW Vorhersage");
svObj.ValueUnit("kW");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(easyKw);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(svName).State(easyKw);
svName = "EASY kW - Winkel 1";
svName = prefix # svName ;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("EASY kW Vorhersage - Winkel 1");
svObj.ValueUnit("kW");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(pro1);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(svName).State(pro1);
svName = "EASY kW - Winkel 2";
svName = prefix # svName ;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("EASY kW Vorhersage - Winkel 2");
svObj.ValueUnit("kW");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(pro2);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(svName).State(pro2);
svName = "EASY kW - Winkel 3";
svName = prefix # svName ;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("EASY kW Vorhersage - Winkel 3");
svObj.ValueUnit("kW");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(pro3);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(svName).State(pro3);
svName = "EASY kW - Winkel 4";
svName = prefix # svName ;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("EASY kW Vorhersage - Winkel 4");
svObj.ValueUnit("kW");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(pro4);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(svName).State(pro4);
svName = "EASY kW - Winkel 5";
svName = prefix # svName ;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("EASY kW Vorhersage - Winkel 5");
svObj.ValueUnit("kW");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(pro5);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(svName).State(pro5);
svName = "EASY kW - Winkel 6";
svName = prefix # svName ;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("EASY kW Vorhersage - Winkel 6");
svObj.ValueUnit("kW");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(pro6);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(svName).State(pro6);
svName = "EASY kW - Winkel 7";
svName = prefix # svName ;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("EASY kW Vorhersage - Winkel 7");
svObj.ValueUnit("kW");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(pro7);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(svName).State(pro7);
svName = "EASY kW - Winkel 8";
svName = prefix # svName ;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("EASY kW Vorhersage - Winkel 8");
svObj.ValueUnit("kW");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(pro8);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(svName).State(pro8);
svName = "EASY kW - Winkel 9";
svName = prefix # svName ;
svObj = dom.GetObject(svName);
if (!svObj){
svObjects = dom.GetObject(ID_SYSTEM_VARIABLES);
svObj = dom.CreateObject(OT_VARDP);
svObjects.Add(svObj.ID());
svObj.Name(svName);
svObj.ValueType(ivtFloat);
svObj.ValueSubType(istGeneric);
svObj.DPInfo("EASY kW Vorhersage - Winkel 9");
svObj.ValueUnit("kW");
svObj.ValueMin(-100);
svObj.ValueMax(100);
svObj.DPArchive(false);
svObj.State(pro9);
svObj.Internal(false);
svObj.Visible(true);
dom.RTUpdate(false);
}
dom.GetObject(svName).State(pro9);
WriteLine("Solar: " + solar);
WriteLine("Cloud: " + cloud);
WriteLine("EasyKW: " + easyKw);
WriteLine("Pro1: " + pro1);
WriteLine("Pro2: " + pro2);
WriteLine("Pro3: " + pro3);
WriteLine("Pro4: " + pro4);
WriteLine("Pro5: " + pro5);
WriteLine("Pro6: " + pro6);
WriteLine("Pro7: " + pro7);
WriteLine("Pro8: " + pro8);
WriteLine("Pro9: " + pro9);
Systemvariablen löschen
Damit die erstellten Systemvariablen nicht immer per Hand gelöscht werden müssen, haben wir ein Skript zum Löschen der Systemvariablen zur Verfügung gestellt. Das entsprechende Skript muss einmalig ausgeführt werden, um alle von dem Skript erstellten Systemvariablen zu löschen.
!Hier den Prefix für die Variablen eintragen, die gelöscht werden sollen.
string prefix = "SHW_";
string svName;
object svObj;
svName = "temp_Temperatur";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "press_Luftdruck";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "cloud_Bewoelkungsgrad";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "solar_Sonnenstrahlung";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "wind_Windgeschwindigkeit";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "uv_UV-Index";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "winddir_Windrichtung";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "dewpt_Taupunkt";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "ghi_GlobaleStrahlung";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "dhi_Diffuse_Globale_Horizontalstrahlung";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "aqi_Luftqualitätsindex";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "vis_Sichtweite";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "rh_Relative_Luftfeuchtigkeit";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
WriteLine("Done");
!Hier den Prefix für die Variablen eintragen, die gelöscht werden sollen.
string prefix = "SHW_";
string svName = "temp_Temperatur";
svName = prefix # svName;
object svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
string svName = "press_Luftdruck";
svName = prefix # svName;
object svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
string svName = "cloud_Bewoelkungsgrad";
svName = prefix # svName;
object svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
string svName = "solar_Sonnenstrahlung";
svName = prefix # svName;
object svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
string svName = "wind_Windgeschwindigkeit";
svName = prefix # svName;
object svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
string svName = "uv_UV-Index";
svName = prefix # svName;
object svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
string svName = "winddir_Windrichtung";
svName = prefix # svName;
object svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
string svName = "dewpt_Taupunkt";
svName = prefix # svName;
object svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
string svName = "ghi_GlobaleStrahlung";
svName = prefix # svName;
object svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
string svName = "dhi_Diffuse_Globale_Horizontalstrahlung";
svName = prefix # svName;
object svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
string svName = "aqi_Luftqualitätsindex";
svName = prefix # svName;
object svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
string svName = "vis_Sichtweite";
svName = prefix # svName;
object svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
string svName = "rh_Relative_Luftfeuchtigkeit";
svName = prefix # svName;
object svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
WriteLine("Done");
!Hier den Prefix für die Variablen eintragen, die gelöscht werden sollen.
string prefix = "SHW_";
string svName;
object svObj;
svName = "solar_Sonnenstrahlung";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "ci_Wolkenindex";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "kw_Berechnete_KW_Leistung";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
WriteLine("Done");
!Hier den Prefix für die Variablen eintragen, die gelöscht werden sollen.
string prefix = "SHW_";
string svName;
object svObj;
svName = "Sonnenstrahlung_Heute_Abend";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "Bewoelkungsgrad_Heute_Abend";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "EasyKW_Heute_Abend";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "PV0_Heute_Abend";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "PV1_Heute_Abend";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "PV2_Heute_Abend";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "PV3_Heute_Abend";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "Sonnenstrahlung_Heute_Nacht";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "Bewoelkungsgrad_Heute_Nacht";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "EasyKW_Heute_Nacht";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "PV0_Heute_Nacht";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "PV1_Heute_Nacht";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "PV2_Heute_Nacht";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "PV3_Heute_Nacht";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "Sonnenstrahlung_Morgen_Frueh";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "Bewoelkungsgrad_Morgen_Frueh";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "EasyKW_Morgen_Frueh";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "PV0_Morgen_Frueh";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "PV1_Morgen_Frueh";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "PV2_Morgen_Frueh";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "PV3_Morgen_Frueh";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "Sonnenstrahlung_Morgen_Mittag";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "Bewoelkungsgrad_Morgen_Mittag";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "EasyKW_Morgen_Mittag";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "PV0_Morgen_Mittag";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "PV1_Morgen_Mittag";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "PV2_Morgen_Mittag";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "PV3_Morgen_Mittag";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "Sonnenstrahlung_Morgen_Abend";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "Bewoelkungsgrad_Morgen_Abend";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "EasyKW_Morgen_Abend";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "Bewoelkungsgrad_Morgen_Abend";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "PV0_Morgen_Abend";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "PV1_Morgen_Abend";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "PV2_Morgen_Abend";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "PV3_Morgen_Abend";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "Sonnenstrahlung_Morgen_Nacht";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "Bewoelkungsgrad_Morgen_Nacht";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "EasyKW_Morgen_Nacht";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "PV0_Morgen_Nacht";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "PV1_Morgen_Nacht";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "PV2_Morgen_Nacht";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "PV3_Morgen_Nacht";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
WriteLine("Done");
!Hier den Prefix für die Variablen eintragen, die gelöscht werden sollen.
string prefix = "SHW_";
string svName;
object svObj;
svName = "Bewölkung";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "EASY kW";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "EASY kW - Winkel 1";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "EASY kW - Winkel 2";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "EASY kW - Winkel 3";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "EASY kW - Winkel 4";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "EASY kW - Winkel 5";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "EASY kW - Winkel 6";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "EASY kW - Winkel 7";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "EASY kW - Winkel 8";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "EASY kW - Winkel 9";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
svName = "Sonnenstrahlung";
svName = prefix # svName;
svObj = dom.GetObject(svName);
dom.DeleteObject(svObj.ID());
WriteLine("Done");
smartha home
In der smartha home wird zur Visualisierung der Daten das Smarthome Wetter Gerät aus dem Modul Miscellaneous
verwendet.