OC3 Daten an wunderground
Moderator: Co-Administratoren
- AudioSonic
- Beiträge: 236
- Registriert: 31.08.2014, 20:15
Re: OC3 Daten an wunderground
hi,
schön das es jetzt - endlich - funktioniert...vermutlich warst du wirklich der Erste....
Danke an BP mit der Auflösung, dass die WebUI "systemeigene" Systemvariablen übersetzt, das is ja echt mal ein Stolperstein....
Grüße
schön das es jetzt - endlich - funktioniert...vermutlich warst du wirklich der Erste....
Danke an BP mit der Auflösung, dass die WebUI "systemeigene" Systemvariablen übersetzt, das is ja echt mal ein Stolperstein....
Grüße
Re: OC3 Daten an wunderground
Vielen Dank an AudioSonic!!!!!
Der Script für Wunderground hat sofort geklappt.So liebe ich diese Scriptsprache.
Vielleicht zur besseren Übersicht für Nachmacher:
Mit HQ WebUI (Auch ein geniales Tool aus diesem Forum) unter Ausführen den Script und die Variablen geprüft. Erleichtert die Übersicht ob alles klappt.
Gruß
Stefan
Der Script für Wunderground hat sofort geklappt.So liebe ich diese Scriptsprache.
Vielleicht zur besseren Übersicht für Nachmacher:
Mit HQ WebUI (Auch ein geniales Tool aus diesem Forum) unter Ausführen den Script und die Variablen geprüft. Erleichtert die Übersicht ob alles klappt.
Gruß
Stefan
-
- Beiträge: 219
- Registriert: 02.01.2016, 14:24
- Danksagung erhalten: 21 Mal
Re: OC3 Daten an wunderground
Code: Alles auswählen
!Wetterdaten des OC3 an Wunderground senden - by AudioSonic
!Daten der PWS (Personal Weather Station) eingeben, zuvor PWS Anlegen unter www.wunderground.com -> more -> register your PWS
!eigene Daten hier eingeben
string ID = "ABCDEFG5"; !eigene Wunderground Station ID eingeben
string PW = "12345ABC"; !eigenen Wunderground Station Key eingeben
string OC3 = "LEQ1234567"; !eigene Seriennr. des OC3 eintragen
!zu übermittelnde Werte aus OC3
!ab hier muss nichts mehr geändert werden.
real tempc = dom.GetObject("BidCos-RF."#OC3#":1.TEMPERATURE").Value(); !Messwert vom OC3 in Grad Celsius
integer humidity = dom.GetObject("BidCos-RF."#OC3#":1.HUMIDITY").Value(); !Messwert vom OC3 in %
real windspeedkmh = dom.GetObject("BidCos-RF."#OC3#":1.WIND_SPEED").Value(); !Messwert vom OC3 in km/h
integer winddir = dom.GetObject("BidCos-RF."#OC3#":1.WIND_DIRECTION").Value(); !Messwert vom OC3
real dailyrainmm = dom.GetObject("Regen heute").Value(); !Messwert vom OC3 in mm, die Regenmenge muss in der Systemvariablen "Regen heute" vorliegen. WICHTIG! Wurde die SV "Regen heute" von der CCU beim Anlernen des OC3 automatisch erzeugt, muss sie einmalig in "Regen heute1" und dann wieder zurück in "Regen heute" umbenannt werden, da sie sonst vom Skript nicht als solche erkannt wird und das Skript dann abbricht und die Daten nicht an WU gesendet werden.
!Umrechnung der Werte, da Wunderground nur "Englische-Einheiten" akzeptiert, z.B. von Grad Celsius in Grad Fahrenheit
real tempf = (1.8 * tempc) + 32.0;
real windspeedmph = 0.621371192 * windspeedkmh;
real dailyrainin = 0.03937 * dailyrainmm;
!Wetterdaten an Wunderground übermitteln
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("extra/curl -s -k 'http://weatherstation.wunderground.com/weatherstation/updateweatherstation.php?ID="#ID#"&PASSWORD="#PW#"&dateutc=now&tempf="#tempf#"&humidity="#humidity#"&windspeedmph="#windspeedmph#"&winddir="#winddir#"&dailyrainin="#dailyrainin#"&action=updateraw'");
Grüße
-
- Beiträge: 219
- Registriert: 02.01.2016, 14:24
- Danksagung erhalten: 21 Mal
Re: OC3 Daten an wunderground
Code: Alles auswählen
!Wetterdaten an Wunderground übermitteln
string stdout;
string stderr;
system.Exec ("curl -s -k 'http://weatherstation.wunderground.com/weatherstation/updateweatherstation.php?ID="#ID#"&PASSWORD="#PW#"&dateutc=now&tempf="#tempf#"&humidity="#humidity#"&windspeedmph="#windspeedmph#"&winddir="#winddir#"&dailyrainin="#dailyrainin#"&action=updateraw'", &stdout ,&stderr);
May 20 14:24:48 homematic-ccu2 local0.err ReGaHss: Error: Failed to close mutex 'mtxStaticIseEsp'! [../Platform/Common/iseSysLx.cpp (123)]
Re: OC3 Daten an wunderground
Hallo,
Ich nutze das Script um die Daten an WU über ioBroker zu senden, das funktioniert perfekt dank diesem Forum.
Jetzt habe ich auch eine WDC 7000 und möchte gerne den Luftdruck auch übetragen.
Da ich im Skripten nicht der hellste bin möchte ich fragen ob mir wer dabei helfen könnte oder schon jemand die entsprechenden Werte in seinen Script integriert hat.
Anbei noch der Script welcher gerade bei mir in Verwendung ist.
Danke, Thomas
Ich nutze das Script um die Daten an WU über ioBroker zu senden, das funktioniert perfekt dank diesem Forum.
Jetzt habe ich auch eine WDC 7000 und möchte gerne den Luftdruck auch übetragen.
Da ich im Skripten nicht der hellste bin möchte ich fragen ob mir wer dabei helfen könnte oder schon jemand die entsprechenden Werte in seinen Script integriert hat.
Anbei noch der Script welcher gerade bei mir in Verwendung ist.
Danke, Thomas
Code: Alles auswählen
/* Skript zum Beschreiben der Personal Weather Station
Autor: pix (30.6.2016), mit Anpassungen durch dtp
nach dem Vorbild dieses HM-Skriptes von mape http://homematic-forum.de/forum/viewtopic.php?f=27&t=31045&start=140#p293007
Voraussetzung: Anmeldung einer PWS unter https://www.wunderground.com/personal-weather-station/signup (Hardware: other)
*/
var pws_id = "??????"; // "Station ID" der PWS
var pws_key = "??????"; // "Station Key" der PWS
var idtempc = "hm-rpc.0.NEQ0293866.1.TEMPERATURE"; // Tempertur in °C
var idhumidity = "hm-rpc.0.NEQ0293866.1.HUMIDITY"; // Luftfeuchtigkeit in %
var idwinddir = "hm-rpc.0.NEQ0293866.1.WIND_DIRECTION"; // Windrichtung (0-360°)
var idwindspeedkmh = "hm-rpc.0.NEQ0293866.1.WIND_SPEED"; // Windgeschwindigkeit in km/h
var iddailyrainmm = "hm-rega.0.1587"; // Regen heute in mm
// Ab hier nix mehr anpassen
var request = require('request');
function weatherupdate() {
var tempc = getState(idtempc).val;
var tempf = (tempc * 1.8) + 32; // Umwandlung °C in °F
var humidity = getState(idhumidity).val;
var winddir = getState(idwinddir).val;
var windspeedkmh = getState(idwindspeedkmh).val;
var windspeedmph = windspeedkmh * 0.621371; // Umwandlung km/h in mph
var dailyrainmm = getState(iddailyrainmm).val;
var dailyrainin = dailyrainmm * 0.0393701; // Umwandlung mm in in
var weatherURL = 'https://rtupdate.wunderground.com/weatherstation/updateweatherstation.php?ID=' + pws_id + '&PASSWORD=' + pws_key + '&dateutc=now&tempf=' + tempf + '&humidity=' + humidity + '&winddir=' + winddir + '&windspeedmph=' + windspeedmph + '&dailyrainin=' + dailyrainin + '&action=updateraw' + '&realtime=1&rtfreq=2.5';
try {
request(weatherURL,function (error, response, body) {
if (!error && response.statusCode == 200) {
// Update ok
log('Wunderground Personal Weather Station successfully updated','debug');
} else {
log('Error updating Wunderground PWS (Status Code' + response.statusCode + ')', 'warn');
log(error,'error');
}
});
} catch (e) {
log('Fehler (try) beim Update der Wunderground Personal Weather Station (PWS): ' + e, 'error');
}
}
on(idtempc, weatherupdate); // aktualisieren, wenn neuer Temperaturwert von HM-Kombisensor
on(idhumidity, weatherupdate); // aktualisieren, wenn neuer Luftfeuchtigkeitswert von HM-Kombisensor
on(idwinddir, weatherupdate); // aktualisieren, wenn neuer Windrichtungswert von HM-Kombisensor
on(idwindspeedkmh, weatherupdate); // aktualisieren, wenn neuer Windgeschwindigkeitswert von HM-Kombisensor
on(iddailyrainmm, weatherupdate); // aktualisieren, wenn neuer Regenwert von HM-Kombisensor
-
- Beiträge: 194
- Registriert: 22.01.2015, 19:44
- Danksagung erhalten: 1 Mal
Re: OC3 Daten an wunderground
Hi Korra82,
Ich hab auf iobroker Dein Script mal erweitert und kann es Dir gerne zukommenlassen.
Was möchtest Du denn noch gerne erweitert haben?
Gruß
Johnny
Ich hab auf iobroker Dein Script mal erweitert und kann es Dir gerne zukommenlassen.
Was möchtest Du denn noch gerne erweitert haben?
Gruß
Johnny
Re: OC3 Daten an wunderground
Hallo Prinzeisenherz1,
Ich möchte gerne den Luftdruck der WDC 7000 in den Script einbinden und mitsenden.
liegt unter hm-rpc.0.NEQ0187263/ HM-WDC7000 NEQ0187263:10.AIR_PRESSURE
Falls du den Luftdruck schon eingebunden hast kannst du mir den Script schicken und ich ändere mir die Werte wo die Daten unter hm-rpc.0 liegen selber, das bring ich hin.
Gruß
Thomas
Ich möchte gerne den Luftdruck der WDC 7000 in den Script einbinden und mitsenden.
liegt unter hm-rpc.0.NEQ0187263/ HM-WDC7000 NEQ0187263:10.AIR_PRESSURE
Falls du den Luftdruck schon eingebunden hast kannst du mir den Script schicken und ich ändere mir die Werte wo die Daten unter hm-rpc.0 liegen selber, das bring ich hin.
Gruß
Thomas
Re: OC3 Daten an wunderground
Abend,
ich würde gerne das Script von AudioSonic soweit anpassen, dass noch Windgeschwindigkeit,Windrichtung,Regen,Luftdruck und Helligkeit,
an Wunderground übermittelt werden kann.
Leider fehlen mir hierfür die Kenntnisse. Bisher ist es mir nur anhand dieses Skript gelungen die Außentemperatur zu übermitteln.
Es handelt sich hierbei um einzelne Sensoren.
Kann mir bitte jemand hierfür Support geben?
ich würde gerne das Script von AudioSonic soweit anpassen, dass noch Windgeschwindigkeit,Windrichtung,Regen,Luftdruck und Helligkeit,
an Wunderground übermittelt werden kann.
Leider fehlen mir hierfür die Kenntnisse. Bisher ist es mir nur anhand dieses Skript gelungen die Außentemperatur zu übermitteln.
Es handelt sich hierbei um einzelne Sensoren.
Kann mir bitte jemand hierfür Support geben?
Code: Alles auswählen
!eigene Wetterdaten an Wunderground senden - by AudioSonic
!Daten der PWS (Personal Weather Station) eingeben, zuvor PWS Anlegen unter www.wunderground.com -> more -> register your PWS
string ID = "ABCDEFG5"; !eigene Wunderground Station ID eingeben
string PW = "12345ABC"; !eigenen Wunderground Station Key eingeben
!zu übermittelnde Werte definieren
real tempc = dom.GetObject("Aussentemperatur").Value(); ! die Außentemperatur liegt in der Systemvariable "Aussentemperatur" vor
!Umrechnung der Werte, da Wunderground nur "Englische-Einheiten" akzeptiert, z.B. von Grad Celsius in Grad Fahrenheit
real tempf = (1.8 * tempc) + 32.0;
!weitere mögliche Umrechnungen, je nach Bedarf:
!real windspeedmph = 0.621371192 * windspeedkmh;
!real dailyrainin = 0.03937 * dailyrainmm;
!real baromin = 0.0295301 * barommb;
!Werte an Wunderground senden. Die Url unten nach " State("extra/curl -s -k " um gewünschte Variablen ergänzen, welche oben definiert worden sind, nach dem Muster: &tempf="#tempf#", die Variablen vor " &action=updateraw " einfügen. Unbedingt die festgelegten Bezeichnungen von Wunderground für die Parameter verwenden, siehe http://wiki.wunderground.com/index.php/PWS_-_Upload_Protocol siehe Abschnitt "List of Fields"
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("extra/curl -s -k 'http://weatherstation.wunderground.com/weatherstation/updateweatherstation.php?ID="#ID#"&PASSWORD="#PW#"&dateutc=now&tempf="#tempf#"&action=updateraw'");
Re: OC3 Daten an wunderground
Morgen,
habe es nun doch nach langen testen hinbekommen.
Was ich leider nicht gefunden habe, ist die Übermittlung von der Station (W_Station).
Wie müsste die Station im Skript wiedergegeben werden?
Dazu habe ich leider nichts bei wunderground im Wiki gefunden.
Gruß
bibo
habe es nun doch nach langen testen hinbekommen.
Was ich leider nicht gefunden habe, ist die Übermittlung von der Station (W_Station).
Wie müsste die Station im Skript wiedergegeben werden?
Dazu habe ich leider nichts bei wunderground im Wiki gefunden.
Gruß
bibo
Re: OC3 Daten an wunderground
Könntest du bitte dein angepasstes Skript zur Verfügung stellen?
Beste Grüße
Alex
Beste Grüße
Alex
--------------------------------------------
Rasperrymatic mit 144 Kanälen in 54 Geräten und 72 CUxD-Kanäle in 12 CUxD-Geräten
--------------------------------------------
Rasperrymatic mit 144 Kanälen in 54 Geräten und 72 CUxD-Kanäle in 12 CUxD-Geräten
--------------------------------------------