Hallo,
Ich versuche es auch mal in diesem Forum.
Ich besitze ein V5+ Gateway und möchte ein Script bauen das mir die Wetterdaten aus der der wunderground API abholt.
Habe mir folgendes gedacht:
var Temperatur = "temp";
var url ="http://api.weather.com/v2/pws/observati ... 29cc909b1b";
// schreibe Temperatur in Gateway Variable (String Typ)
executeDeviceCommand(
"Variablen",
"dataTemperatur_C",
{"value":"setValue","ext":Temperatur},
function(err) {
err && console.error(err);
}
);
Mein Problem ist nur das ich die Daten nicht in die Var Temperatur bekomme.
Kann mir einer weiter helfen ?
Danke
Wetterdaten aus API abholen
Moderator: Co-Administratoren
Re: Wetterdaten aus API abholen
sollte so funktionieren
Code: Alles auswählen
var url = "http://api.weather.com/v2/pws/observations/current?stationId=IOBERTIE6&format=json&units=m&apiKey=84b4902129cc409bb4902129cc909b1b";
var http = require('http');
var req = http.get(url, function(res) {
var body = '';
res.on('data', function(chunk) {
body += String(chunk);
});
res.on('end', function() {
var tbody = JSON.parse( body );
console.log(tbody.observations[0].metric.temp);
var Temperatur = tbody.observations[0].metric.temp;
console.log(Temperatur);
// schreibe Temperatur in Gateway Variable (String Typ)
executeDeviceCommand(
"Variablen",
"dataTemperatur_C",
{"value":"setValue","ext":Temperatur},
function(err) {
err && console.error(err);
}
);
});
});
Re: Wetterdaten aus API abholen
Vielen Dank funktioniert.
Kannst du mir auch noch schreiben wie ich noch andere Daten hinzufügen kann.
windSpeed
windGust
precipRate
precipTotal
humidity
Windrichtung wäre auch noch klasse. (müsste winddir sein)
Dann hast du was bei mir gut.
mfg Manuel
Kannst du mir auch noch schreiben wie ich noch andere Daten hinzufügen kann.
windSpeed
windGust
precipRate
precipTotal
humidity
Windrichtung wäre auch noch klasse. (müsste winddir sein)
Dann hast du was bei mir gut.
mfg Manuel
Re: Wetterdaten aus API abholen
Code: Alles auswählen
var url = "http://api.weather.com/v2/pws/observations/current?stationId=IOBERTIE6&format=json&units=m&apiKey=84b4902129cc409bb4902129cc909b1b";
var http = require('http');
var req = http.get(url, function(res) {
var body = '';
res.on('data', function(chunk) {
body += String(chunk);
});
res.on('end', function() {
var tbody = JSON.parse( body );
var Temperatur = tbody.observations[0].metric.temp;
var WindGeschwindigkeit = tbody.observations[0].metric.windSpeed;
var WindGeschwindigkeitMax = tbody.observations[0].metric.windGust;
var Niederschlag = tbody.observations[0].metric.precipRate;
var NiederschlagTag = tbody.observations[0].metric.precipTotal;
var Luftfeuchtigkeit = tbody.observations[0].humidity;
var Windrichtung = tbody.observations[0].winddir;
console.log(Temperatur);
console.log(WindGeschwindigkeit);
console.log(WindGeschwindigkeitMax);
console.log(Niederschlag);
console.log(NiederschlagTag);
console.log(Luftfeuchtigkeit);
console.log(Windrichtung);
});
});