I created a new api key but I am still getting a 401 error.
I will remove the module and re-install. Maybe that will work.
Any suggestions?
Thank you.
I created a new api key but I am still getting a 401 error.
I will remove the module and re-install. Maybe that will work.
Any suggestions?
Thank you.
I am using the same api key for the default weather module that came with MagicMirror (and it works fine). Does that mean I need separate api keys for separate modules? Or I can only use one weather module at a time?
I made the change from 2.5 to 3.0 on the node_helper.js.
Thank you.
Apologies for the mix-up. Noob mistake. I was looking at the wrong node_helper.js. I changed the correct node_helper.js and got an error message that says ** bad status ** 401. What does that mean? Thank you.
Below is the complete module node_helper,js that came with the module. Can you please send me back what it should contain to get more info about the error? Thank you.
/* Magic Mirror
* Module: MMM-BMW-OW
*
* By Mykle1
*
* MIT Licensed
*/
const NodeHelper = require('node_helper');
const request = require('request');
module.exports = NodeHelper.create({
start: function() {
console.log("Starting node_helper for: " + this.name);
},
getWeather: function(url) {
request({
url: 'https://api.openweathermap.org/data/2.5/onecall?lat=' + this.config.lat + '&lon=' + this.config.lon + '&units=' + this.config.units + '&lang=' + this.config.language + '&appid=' + this.config.api,
method: 'GET'
}, (error, response, body) => {
if (!error && response.statusCode == 200) {
var result = JSON.parse(body);
// console.log(body); // for checking
this.sendSocketNotification('WEATHER_RESULT', result);
}
});
},
socketNotificationReceived: function(notification, payload) {
if (notification === 'GET_WEATHER') {
this.getWeather(payload);
}
if (notification === 'CONFIG') {
this.config = payload;
}
}
});
I changed the module node_helper.js and restarted MagicMirror. However, I am still not getting any new error message. It’s still the same NULL error. Can you please check below and see if I changed it properly? Thank you.
/* Magic Mirror
* Module: MMM-BMW-OW
*
* By Mykle1
*
* MIT Licensed
*/
const NodeHelper = require('node_helper');
const request = require('request');
module.exports = NodeHelper.create({
start: function() {
console.log("Starting node_helper for: " + this.name);
},
getWeather: function(url) {
request({
url: 'https://api.openweathermap.org/data/2.5/onecall?lat=' + this.config.lat + '&lon=' + this.config.lon + '&units=' + this.config.units + '&lang=' + this.config.language + '&appid=' + this.config.api,
method: 'GET'
}, (error, response, body) => {
if (!error){
// Good response
if(response.statusCode == 200) {
var resp = body; //needle automagically parses the response as JSON
resp.instanceId = payload.instanceId;
console.log(" needle responding="+JSON.stringify(resp))
self.sendSocketNotification("OPENWEATHER_ONE_CALL_FORECAST_DATA", resp);
}
else {
console.log("[MMM-OpenWeatherMapForecast] " + moment().format("D-MMM-YY HH:mm") + " ** bad status ** " + response.statusCode);
}
}
}
});
},
socketNotificationReceived: function(notification, payload) {
if (notification === 'GET_WEATHER') {
this.getWeather(payload);
}
if (notification === 'CONFIG') {
this.config = payload;
}
}
});
Here is my module config:
{
module: "MMM-OpenWeatherMapForecast",
header: "MY CITY",
position: "top_right",
classes: "default everyone",
disabled: false,
config: {
apikey: "MY OWN APIKEY",
latitude: "MY LATITUDE",
longitude: "MY LONGITUDE",
iconset: "4c",
concise: false,
forecastLayout: "table"
}
},
It is the MMM-OpenWeatherMapForecast module.
I copied the sample configuration from the github page (providing my own apikey, changing the header, latitude, and longitude). However, all I see is the header and “Loading…”
All the other modules are running (default weather, compliment, news, clock, and calendar).
On Terminal, I see two lines that pertains to MMM-OpenWeatherMapForecast.
Any idea what these means? Any suggestions on how to fix it?
Thank you.
Hello. I am new to MagicMirror. I installed it on my Mac mini and I got the default calendar, weather, news, and compliment modules working.
I installed a different weather module (git cloned and npm installed). I added the new module to my config file. I ran the config check and no errors were found. However, when I ran Magic Mirror, I don’t see the new module.
Any suggestions?
Thank you.