Read the statement by Michael Teeuw here.
MMM-Random Fact
-
I am still having an Unhandled promise rejection:
UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 13): TypeError: Cannot read property 'refs' of undefined
My config is completely stripped down now as the new Readme suggests. No config entries.
Loading message is in German which is my language.
However translation still does not seem to work here.Any suggestions?
-
I will look at it again tonight they may have changed the api… stay tuned.
-
I just tested mine and it’s working fine… I reuploaded mine to make sure there are no errors in the one on Github…
Also here is my config:
{ disabled: f, module: 'MMM-rfacts', position: 'top_left', },
The language selection is taken directly from your language selected in the config file… I switched mine to ‘de’ and it worked fine. So what I would do if I were you is to delete it all and do the git clone thing and then run npm install in the MMM-rfacts dir …
-
@cowboysdude
Thanks dude :-), will try it out later today -
Hi guys.
I’ve tried to get this module working again and am still failing.
I was able to find out the following:
My general config is mentioning
language: 'de'
When I set this to en, the module works.
With language de, it does not give a translated fact.Now the above mentioned “unhandled promise rejection” warning is not the problem.
You can solve this issue by adding a .catch() phrase after the .this in the promise part to catch and process a rejected promise.Since the translate() function does not properly work, the promise gets rejected, and since there is no rejection handing in the code, we get the “unhandled rejection” warning. I’ll try to set up a solution and send a PR.
The translation problem with this module apparently lies in the google-translate-api.
I was able to console.log the error message
at /home/pi/MagicMirror/modules/MMM-rfacts/node_modules/google-translate-api/index.js:106:17 at <anonymous> at process._tickCallback (internal/process/next_tick.js:188:7) code: 'BAD_REQUEST' }
This error is well known for the google-translate-api since 2018.
The question is:
Does this module work for anyone in another language? (and if yes: WHY?) -
Well…
“Eureka!”Apparently the problem is solved using this hack. There seems to be an issue with the google-translate-api npm module that some users solved with a fork.
@cowboysdude look at it and let me know what you think.
If the issue/solution is confirmed a workaround would be to have a working fork installed via npm.(need to get back to work now!!..)
-
It’s odd that noone else seems to have the translation problem.
However, I have just pushed a PR including a promise.catch function in case translation does not work.
This module still only works with the “manipulated” google-translate-api" for me.Love your module, @cowboysdude . Many great facts received in recent months.
-
@cowboysdude
I’m afraid the link is broken in your module.
Directly visiting http://www.fayd.org/api/fact.xml redirects to a facebook page.Node_helper.js returns a promise rejection because there’s no
body
element to be fetched.
Can you please check? -
@lavolp3 Thank you!! That is very interesting and I will look into that right now!!! Will let you know.
I looked…looks like I’ll have to rewrite parts of it and I will and repost as soon as it’s done…later tonight :)
-
@lavolp3 I have it working… it’ll be a day or so to upload it as I do have one very strange error that I want to correct :)