Aktuelles Wetter über wunderground.com
Moderator: Co-Administratoren
-
- Beiträge: 10685
- Registriert: 21.09.2012, 08:09
- System: CCU
- Wohnort: Stuttgart
- Hat sich bedankt: 330 Mal
- Danksagung erhalten: 507 Mal
Re: Aktuelles Wetter über wunderground.com
Nur mal eine Frage. Habe aber aus Zeitgründen nicht den gesamten Thread lesen können, daher verzeihe man mir, wenn die Frage bereits gestellt wurde.
Gibt es für Wunderground ggf. schon einen entsprechenden Adapter für DashUI bzw. ioBroker? Nutze aktuell yr.no, und das Ding ist sowas von ungenau mit täglich mehreren Grad Abweichung vom realen Wert.
Wunderground.com wird z.B. auch von PocketInformant genutzt, und da sind die mir angezeigten Werte und Prognosen ziemlich gut.
Gruß,
Thorsten
Gibt es für Wunderground ggf. schon einen entsprechenden Adapter für DashUI bzw. ioBroker? Nutze aktuell yr.no, und das Ding ist sowas von ungenau mit täglich mehreren Grad Abweichung vom realen Wert.
Wunderground.com wird z.B. auch von PocketInformant genutzt, und da sind die mir angezeigten Werte und Prognosen ziemlich gut.
Gruß,
Thorsten
CCU3 mit stets aktueller FW und den Addons "CUxD" und "Programmedrucken", ioBroker auf Synology DiskStation DS718+ im Docker-Container;
einige Projekte: zentrales Push-Nachrichten-Programm zPNP, DoorPi-Videotürsprechanlage, An- und Abwesenheitsdetektion per Haustürschloss, zentrales Programm zur Steuerung von Beschattungsgeräten zBSP.
einige Projekte: zentrales Push-Nachrichten-Programm zPNP, DoorPi-Videotürsprechanlage, An- und Abwesenheitsdetektion per Haustürschloss, zentrales Programm zur Steuerung von Beschattungsgeräten zBSP.
Re: Aktuelles Wetter über wunderground.com
Hallo,
habe das Skript für Wunderground über API in Der CCU.Wie bekomme ich zusätzlich den Niederschlag in der CCU.
Habe dafür das Skript eingefügt und eine Systemvariable W_Niederschlag_heute vom Typ Zahl angelegt aber es werden keine Werte hinter der Kommastelle angezeigt.
habe das Skript für Wunderground über API in Der CCU.Wie bekomme ich zusätzlich den Niederschlag in der CCU.
Habe dafür das Skript eingefügt und eine Systemvariable W_Niederschlag_heute vom Typ Zahl angelegt aber es werden keine Werte hinter der Kommastelle angezeigt.
Code: Alles auswählen
string word = "precip_today_metric";
integer word_laenge = word.Length();
integer word_position = wetter_xml.Find(word);
string daten = wetter_xml.Substr((word_position + word_laenge +1), 100);
integer word_position = daten.Find(word);
daten = daten.Substr(0, (word_position -2));
real zahl = daten.ToFloat();
dom.GetObject("W_Niederschlag_heute").State(zahl);
LXCCU im Standby,Yahm auf Raspberry Pi3, 3xHomeduino, 1xHM-Sen-LI-O, 1xHM-WDS10-TH-O, 1xHM-PBI-4-FM, 4xHM-LC-Bl1-FM, 3xHM-LC-Sw1-FM, 2xHM-WDS40-TH-I,
2x HM-Sen-MDIR-O, 6xHMW-IO-12-Sw14-DR, 1xHM-RC-4-2, 1xHM-LC-Sw4-PCB, 1xHM-ES-PMSw1-Pl, 1xHM-WDS30-OT2-SM,
1xHM-LC-Bl1PBU-FM, 1xHM-WDS30-T-O, 1xHM-TC-IT-WM-W-EU, 1xHM-Sen-MDIR-WM55, 1xHM-LC-Bl1PBU-FM
2x HM-Sen-MDIR-O, 6xHMW-IO-12-Sw14-DR, 1xHM-RC-4-2, 1xHM-LC-Sw4-PCB, 1xHM-ES-PMSw1-Pl, 1xHM-WDS30-OT2-SM,
1xHM-LC-Bl1PBU-FM, 1xHM-WDS30-T-O, 1xHM-TC-IT-WM-W-EU, 1xHM-Sen-MDIR-WM55, 1xHM-LC-Bl1PBU-FM
- papi
- Beiträge: 372
- Registriert: 18.12.2013, 08:40
- Wohnort: Willich, NRW
- Hat sich bedankt: 2 Mal
- Danksagung erhalten: 6 Mal
Re: Aktuelles Wetter über wunderground.com
Zunächst mal sollte sichergestellt sein, dass die angezapfte Wetterstation auch wirklich Niederschlag erfasst.
Ich musste heute meine Station wechseln, da die bislang von mir Genutzte offenbar den Geist aufgegeben hat.
Dabei musste ich eine ganze Weile suchen, bis ich eine Alternative gefunden habe, die auch alle von mir geforderten Werte, vor allem in angemessenen Zeitabständen, liefern kann.
Ich musste heute meine Station wechseln, da die bislang von mir Genutzte offenbar den Geist aufgegeben hat.
Dabei musste ich eine ganze Weile suchen, bis ich eine Alternative gefunden habe, die auch alle von mir geforderten Werte, vor allem in angemessenen Zeitabständen, liefern kann.
Re: Aktuelles Wetter über wunderground.com
Guten Tag zusammen,
aus Zeitgründen konnte ich leider nicht den ganzen Thread lesen können.
Im Moment möchte ich auch das wunderground Wetter in meine CCU2 einbinden.
Leider scheitere ich berets beim füllen der Variablen.
Habe folgendes Script verwendet:
Variablen:
Script:
leider füllen sich die entsprechenden Variablen nicht. Im Status stehen immer ??? und mehr nicht.
Könnt Ihr mir hier weiterhelfen?
Konfiguration:
- CCU 2
- CuxD in der aktuellen Version installiert
- über WebUI erstelltes Programm das alle 30 Minuten das obige Script abfragt
Bitte verzeiht mir falls ich mich an einem Punkt falsch ausgedrückt haben sollte oder Infos nun doppelt im Thread vorhanden sind.
Danke euch für die Infos.
aus Zeitgründen konnte ich leider nicht den ganzen Thread lesen können.
Im Moment möchte ich auch das wunderground Wetter in meine CCU2 einbinden.
Leider scheitere ich berets beim füllen der Variablen.
Habe folgendes Script verwendet:
Variablen:
Code: Alles auswählen
!Stand 03.04.2014 http://homematic-forum.de/forum/viewtopic.php?f=31&t=17209
!zuerst folgende Systemvariablen anlegen
!Achtung: keine vergessen und exakte Schreibweise mit Drag&Drop
!W_Station Zeichenkette
!W_Aktualisierung Zeichenkette
!W_Bedingungen Zeichenkette
!W_Temperatur Zahl °C
!W_Luftfeuchte Zahl %
!W_Windbedingungen Zeichenkette
!W_Windrichtung Zeichenkette
!W_Windrichtg Zahl °
!W_Windgeschwindigkeit Zahl km/h
!W_Windboeen Zahl km/h
!W_Luftdruck Zahl mb
!W_Luftdrucktrend Zeichenkette
!W_Taupunkt Zahl °C
!W_UV Zeichenkette
Script:
Code: Alles auswählen
var url = "http://api.wunderground.com/api/5dc438c76a265174/conditions/lang:DL/q/Germany/Neuwied.xml";
!hier ist die Abfrage mit CUxD
dom.GetObject("CUxD.CUX2801001:1.CMD_SETS").State("wget -q -O - '"#url#"'");
dom.GetObject("CUxD.CUX2801001:1.CMD_QUERY_RET").State(1);
string wetter_xml = dom.GetObject("CUxD.CUX2801001:1.CMD_RETS").State();
!hier ist die Abfrage mit system.Exec
!string stdout;
!string stderr;
!system.Exec("wget -q -O - '"#url#"'", &stdout, &stderr);
!WriteLine(stdout);
!string wetter_xml = stdout;
!WriteLine(wetter_xml);
!Beim XML-File den ueberfluessigen Header entfernen
integer laenge = wetter_xml.Length();
integer wort_position = wetter_xml.Find("display_location");
wetter_xml = wetter_xml.Substr(wort_position, (laenge - wort_position));
!WriteLine(wetter_xml);
!Daten mit Suchworten aus XML-File ausfiltern:
!string word = "full";
string word = "city";
integer word_laenge = word.Length();
integer word_position = wetter_xml.Find(word);
string daten = wetter_xml.Substr((word_position + word_laenge +1), 100);
integer word_position = daten.Find(word);
daten = daten.Substr(0, (word_position -2));
dom.GetObject("W_Station").State(daten);
!string word = "observation_time";
string word = "observation_time_rfc822";
integer word_laenge = word.Length();
integer word_position = wetter_xml.Find(word);
string daten = wetter_xml.Substr((word_position + word_laenge +1), 100);
integer word_position = daten.Find(word);
!daten = daten.Substr(0, (word_position -2));
daten = daten.Substr(0, (word_position -11));
dom.GetObject("W_Aktualisierung").State(daten);
string word = "weather";
integer word_laenge = word.Length();
integer word_position = wetter_xml.Find(word);
string daten = wetter_xml.Substr((word_position + word_laenge +1), 100);
integer word_position = daten.Find(word);
daten = daten.Substr(0, (word_position -2));
dom.GetObject("W_Bedingungen").State(daten);
string word = "temp_c";
integer word_laenge = word.Length();
integer word_position = wetter_xml.Find(word);
string daten = wetter_xml.Substr((word_position + word_laenge +1), 100);
integer word_position = daten.Find(word);
daten = daten.Substr(0, (word_position -2));
real zahl = daten.ToFloat();
dom.GetObject("W_Temperatur").State(zahl);
string word = "relative_humidity";
integer word_laenge = word.Length();
integer word_position = wetter_xml.Find(word);
string daten = wetter_xml.Substr((word_position + word_laenge +1), 100);
integer word_position = daten.Find(word);
daten = daten.Substr(0, (word_position -2));
integer zahl = daten.ToFloat();
dom.GetObject("W_Luftfeuchte").State(zahl);
string word = "wind_string";
integer word_laenge = word.Length();
integer word_position = wetter_xml.Find(word);
string daten = wetter_xml.Substr((word_position + word_laenge +1), 100);
integer word_position = daten.Find(word);
daten = daten.Substr(0, (word_position -2));
dom.GetObject("W_Windbedingungen").State(daten);
string word = "wind_dir";
integer word_laenge = word.Length();
integer word_position = wetter_xml.Find(word);
string daten = wetter_xml.Substr((word_position + word_laenge +1), 100);
integer word_position = daten.Find(word);
daten = daten.Substr(0, (word_position -2));
word_laenge =daten.Length();
string anfangsbuchstabe = daten.Substr(0,1);
! Umlaute korrigieren
!
! N # Nord ***
if (anfangsbuchstabe == "N") {
!
if (daten == "Nordwest") {daten = "Nord-West" ;}
}
! S # Süd ***
if (anfangsbuchstabe == "S") {
! 4 # Süd
if (word_laenge == 4) {daten = "Süd";}
! 8 # Südwest
if (word_laenge == 8) {daten = "Süd-West";}
! 12 # Süd-Südost
if (word_laenge == 12) {daten = "Süd-Süd-Ost" ;}
! 13
if (word_laenge == 13) {daten = "Süd-Süd-West" ;}
}
! W # Westen
if (anfangsbuchstabe == "W") {
! 13 # West-Südwest
if (word_laenge == 13) {daten = "West-Süd-West" ;}
}
! O # Osten
if (anfangsbuchstabe == "O") {
! 11 # Ost-Südost
if (word_laenge == 11) {daten = "Ost-Süd-Ost" ;}
}
dom.GetObject("W_Windrichtung").State(daten);
!WriteLine(daten);
string word = "wind_degrees";
integer word_laenge = word.Length();
integer word_position = wetter_xml.Find(word);
string daten = wetter_xml.Substr((word_position + word_laenge +1), 100);
integer word_position = daten.Find(word);
daten = daten.Substr(0, (word_position -2));
integer zahl = daten.ToFloat();
dom.GetObject("W_Windrichtg").State(zahl);
string word = "wind_kph";
integer word_laenge = word.Length();
integer word_position = wetter_xml.Find(word);
string daten = wetter_xml.Substr((word_position + word_laenge +1), 100);
integer word_position = daten.Find(word);
daten = daten.Substr(0, (word_position -2));
integer zahl = daten.ToFloat();
dom.GetObject("W_Windgeschwindigkeit").State(zahl);
string word = "wind_gust_kph";
integer word_laenge = word.Length();
integer word_position = wetter_xml.Find(word);
string daten = wetter_xml.Substr((word_position + word_laenge +1), 100);
integer word_position = daten.Find(word);
daten = daten.Substr(0, (word_position -2));
integer zahl = daten.ToFloat();
dom.GetObject("W_Windboeen").State(zahl);
string word = "pressure_mb";
integer word_laenge = word.Length();
integer word_position = wetter_xml.Find(word);
string daten = wetter_xml.Substr((word_position + word_laenge +1), 100);
integer word_position = daten.Find(word);
daten = daten.Substr(0, (word_position -2));
integer zahl = daten.ToFloat();
dom.GetObject("W_Luftdruck").State(zahl);
string word = "pressure_trend";
integer word_laenge = word.Length();
integer word_position = wetter_xml.Find(word);
string daten = wetter_xml.Substr((word_position + word_laenge +1), 100);
integer word_position = daten.Find(word);
daten = daten.Substr(0, (word_position -2));
dom.GetObject("W_Luftdrucktrend").State(daten);
string word = "dewpoint_c";
integer word_laenge = word.Length();
integer word_position = wetter_xml.Find(word);
string daten = wetter_xml.Substr((word_position + word_laenge +1), 100);
integer word_position = daten.Find(word);
daten = daten.Substr(0, (word_position -2));
real zahl = daten.ToFloat();
dom.GetObject("W_Taupunkt").State(zahl);
string word = "UV";
integer word_laenge = word.Length();
integer word_position = wetter_xml.Find(word);
string daten = wetter_xml.Substr((word_position + word_laenge +1), 100);
integer word_position = daten.Find(word);
daten = daten.Substr(0, (word_position -2));
real zahl = daten.ToFloat();
dom.GetObject("W_UV").State(zahl);
Könnt Ihr mir hier weiterhelfen?
Konfiguration:
- CCU 2
- CuxD in der aktuellen Version installiert
- über WebUI erstelltes Programm das alle 30 Minuten das obige Script abfragt
Bitte verzeiht mir falls ich mich an einem Punkt falsch ausgedrückt haben sollte oder Infos nun doppelt im Thread vorhanden sind.
Danke euch für die Infos.
Re: Aktuelles Wetter über wunderground.com
Hast du auch das Gerät CUX2801001 erstellt?
Manchmal hilft das komplette Lesen eines Threads ungemein.
Manchmal hilft das komplette Lesen eines Threads ungemein.
Re: Aktuelles Wetter über wunderground.com
Ja das Gerät ist angelegt. In der angelegten Fernbediedung ist auch unter dem Punkt KEY|CMD_SHORT der API Link hinterlegt worden
Re: Aktuelles Wetter über wunderground.com
Der Server von http://api.wunderground.com scheint down zu sein? oder bekommt ihr noch Wetterdaten?
- AndiN
- Beiträge: 2622
- Registriert: 10.06.2015, 08:54
- Wohnort: Hennef
- Hat sich bedankt: 10 Mal
- Danksagung erhalten: 28 Mal
Re: Aktuelles Wetter über wunderground.com
War down. Hatte auch alle 5 Minuten eine Fehlermeldung im Log, weil die Daten nicht kamen. Aber jetzt läuft es wieder
Andi
Andi
Andi (Greenhorn)
Letzter Reboot: 01.06.24 => FW Update (Uptime:Rekord:153 Tage)
Systeminfos: Raspberry Pi3 Firmware: 3.75.7.20240601 142 Geräte
System angebunden: 3 Roomba 650 - Sprachausgabe via Home24 Media - Pocket Control - Zentrale: Asus TF103 mit Home24 Tablet
Addons: Drucken 2.5 - HQ WebUI 2.5.9 - XML-API 1.22 - CUx-Daemon 2.9.3 - E-Mail 1.7.4 - hm_pdetect 1.11 - VPN cloudmatic
Diverse Links
Letzter Reboot: 01.06.24 => FW Update (Uptime:Rekord:153 Tage)
Systeminfos: Raspberry Pi3 Firmware: 3.75.7.20240601 142 Geräte
System angebunden: 3 Roomba 650 - Sprachausgabe via Home24 Media - Pocket Control - Zentrale: Asus TF103 mit Home24 Tablet
Addons: Drucken 2.5 - HQ WebUI 2.5.9 - XML-API 1.22 - CUx-Daemon 2.9.3 - E-Mail 1.7.4 - hm_pdetect 1.11 - VPN cloudmatic
Diverse Links
Re: Aktuelles Wetter über wunderground.com
Hallo zusammen,
habe mich dort angemeldet finde aber den Key nicht.
Kann mir einer dabei helfen?
Suche Wetter für Wuppertal Berglehne.
Wie ist der Link mit dem Key
Vielen Dank
habe mich dort angemeldet finde aber den Key nicht.
Kann mir einer dabei helfen?
Suche Wetter für Wuppertal Berglehne.
Wie ist der Link mit dem Key
Vielen Dank
Raspberry
Aktuelle Firmwareversion: 3.43.15.20190223
Aktuelle Firmwareversion: 3.43.15.20190223