-
Autor
Hallo,
mit folgenden Script lassen sich die Wetterdaten von Wunderground.com abrufen. Voraussetzung ist, das man einen APIKey besitzt.
Die Daten lassen sich nach dieser API konfigurieren.
mfG
Mario
Code
let WGID = "Your Station"; //StationID
let WGKey= "Your APIKey"; //APIKey
let WGUnit= "m"; //Units: m=metric e=english h=hybrid (UK)
let WGUrl = "https://api.weather.com/v2/pws/observations/current?stationId=" + WGID +"&format=json&units=" + WGUnit + "&apiKey=" + WGKey;
Shelly.call("http.get",{url: WGUrl},
function (response, error_code, error_message, ud) {
let weatherData = JSON.parse(response.body);
//print(JSON.stringify(response.body));
print("-----------------------------------------------------------------------------------------");
print("stationID : " , JSON.stringify(weatherData["observations"][0]["stationID"]));
print("obsTimeUtc : " , JSON.stringify(weatherData["observations"][0]["obsTimeUtc"]));
print("obsTimeLocal : " , JSON.stringify(weatherData["observations"][0]["obsTimeLocal"]));
print("neighborhood : " , JSON.stringify(weatherData["observations"][0]["neighborhood"]));
print("softwareType : " , JSON.stringify(weatherData["observations"][0]["softwareType"]));
print("country : " , JSON.stringify(weatherData["observations"][0]["country"]));
print("solarRadiation : " , JSON.stringify(weatherData["observations"][0]["solarRadiation"]));
print("lon : " , JSON.stringify(weatherData["observations"][0]["lon"]));
print("realtimeFrequency : " , JSON.stringify(weatherData["observations"][0]["realtimeFrequency"]));
print("epoch : " , JSON.stringify(weatherData["observations"][0]["epoch"]));
print("lat : " , JSON.stringify(weatherData["observations"][0]["lat"]));
print("uv : " , JSON.stringify(weatherData["observations"][0]["uv"]));
print("winddir : " , JSON.stringify(weatherData["observations"][0]["winddir"]));
print("humidity : " , JSON.stringify(weatherData["observations"][0]["humidity"]));
print("qcStatus : " , JSON.stringify(weatherData["observations"][0]["qcStatus"]));
print("metric.temp : " , JSON.stringify(weatherData["observations"][0]["metric"]["temp"]));
print("metric.heatIndex : " , JSON.stringify(weatherData["observations"][0]["metric"]["heatIndex"]));
print("metric.dewpt : " , JSON.stringify(weatherData["observations"][0]["metric"]["dewpt"]));
print("metric.windChill : " , JSON.stringify(weatherData["observations"][0]["metric"]["windChill"]));
print("metric.windSpeed : " , JSON.stringify(weatherData["observations"][0]["metric"]["windSpeed"]));
print("metric.windGust : " , JSON.stringify(weatherData["observations"][0]["metric"]["windGust"]));
print("metric.pressure : " , JSON.stringify(weatherData["observations"][0]["metric"]["pressure"]));
print("metric.precipRate : " , JSON.stringify(weatherData["observations"][0]["metric"]["precipRate"]));
print("metric.precipTotal : " , JSON.stringify(weatherData["observations"][0]["metric"]["precipTotal"]));
print("metric.elev : " , JSON.stringify(weatherData["observations"][0]["metric"]["elev"]));
print("-----------------------------------------------------------------------------------------");
},
null
);
Alles anzeigen