Fix weather plugin
This commit is contained in:
parent
e5f83ec639
commit
58eaafa685
@ -56,29 +56,30 @@ class Weather extends BasePlugin {
|
||||
|
||||
return promise
|
||||
}
|
||||
|
||||
getTemperatures(cities, code) {
|
||||
logger.info('getting temperatures ', cities, code)
|
||||
if (typeof code === 'undefined') {
|
||||
code = 'fi'
|
||||
}
|
||||
getTemperatureById(cityId) {
|
||||
var language = 'fi'
|
||||
|
||||
var idList = ''
|
||||
for (var city in cities) {
|
||||
idList += cities[city] + ','
|
||||
}
|
||||
idList = idList.substring(0, idList.length - 1)
|
||||
|
||||
var urlArgs = {
|
||||
'id': idList,
|
||||
'id': cityId,
|
||||
'lang': language,
|
||||
'APPID': this.apikey
|
||||
}
|
||||
var url = 'http://api.openweathermap.org/data/2.5/group'
|
||||
var promise = requestPromise(url, urlArgs).catch(e => {
|
||||
logger.error('Failed to retrieve openweathermap data')
|
||||
})
|
||||
var url = 'http://api.openweathermap.org/data/2.5/weather'
|
||||
var promise = requestPromise(url, urlArgs)
|
||||
|
||||
return promise
|
||||
}
|
||||
getTemperatures(cities, code) {
|
||||
const allQueries = Promise.allSettled(Object.keys(cities).map(city => this.getTemperatureById(cities[city])))
|
||||
const promise = new Promise((resolve) => {
|
||||
allQueries.then(responses => {
|
||||
console.log('done!')
|
||||
console.log(responses)
|
||||
resolve({
|
||||
list: responses.filter(r => r.status === 'fulfilled').map(r => r.value)
|
||||
})
|
||||
})
|
||||
});
|
||||
|
||||
return promise
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user