@Umivicci what device are you using? Can you get to the command line?
I’m using an old desktop computer I had collecting dust. I’m new to all this… what do you mean by command line?
reading through the tutorials again i realise i forgot MMM-kalliope, im going to install that now a test things out, not sure if it makes a difference
I tried it and it didnt make a difference
I just re installed the skill and it managed to solve my problem
Hi, I installed the modules and it shows the listening and the responds on the magic mirror but when I try to control the magic mirror " there was an error processing a request in MM skill" and it shows that the error is in the init.py sile in ‘status’, can you please help me with that.
thank you.
That’s happening to me aswell.
me: refresh mirror
An error occurred while processing a request in Magic Mirror Voice Control Skill
11:16:07.524 | ERROR | 867 | mycroft.skills.mycroft_skill.mycroft_skill:on_error:835 | An error occurred while processing a request in Magic Mirror Voice Control Skill
Traceback (most recent call last):
File “/home/pi/mycroft-core/mycroft/skills/mycroft_skill/event_container.py”, line 66, in wrapper
handler(message)
File “/opt/mycroft/skills/magic-mirror-voice-control-skill/init.py”, line 258, in handle_System_command
response = status[‘status’]
KeyError: ‘status’
Hope I help
First of all, thank you for the hard work.
I have a problem I get always the same error message, when I say swipe right or refresh mirror (An error occurred while processing a request in Magic Mirror Voice Control Skill)… But otherwise it works perfect… How do we get rid of this message.
I tried this but it didn’t work for me.
in row 341 and after i changed the following:
print (“response json:”, r.json())
if status[‘success’] == True:
self.speak_dialog(‘success’)
else:
reason = status[‘reason’]
Thank you
@Papblo I will help you if I can however I haven’t looked at this code in quite some time. I would not know where to begin with debugging this code. I don’t even know what the latest version of Mycroft is or what changes may have broken the code. If you give me a few days I will see if I can take a look. Sorry I don’t have a quick answer for you.
Yes I do, the problem is every time when you say for example swipe right it goes to to the next page, that means the Module works great!..but the only problem i have is that this message appears )An error occurred while processing a request in Magic Mirror Voice Control Skill) instead of success.
That would be great if you could fix this problem 
Thank you
@Papblo In order for me to fix, I need to know what your MMM-Remote-Control is returning for the PAGE_INCREMENT/DECREMENT command. From a whitelisted browser in the address bar type ```
http://ip:8080/remote?action=NOTIFICATION¬ification=PAGE_DECREMENT where you replace “ip” with the ip of your MagicMirror
Sorry for replying so late, i’m a little bit busy at the moment :).
The message I get is {success":true}, that’s really weird because when I speak swipe right the error message still shows up.
I really want just to get rid of this message, because otherwise it works perfect :))… For example when I say hide clock this message doesn’t shows up, i’m a little bit confused I think my magic mirror doesn’t like the word swipe :)).
Thanks
@Papblo sorry I realized my other reply was wrong. You could comment out everything from line 341 to 347. If that fixes your problem then bingo you’re done. I think the issue is a newer version of the MMM-Remote-Control module responds differently than when I wrote the skill. If I remember it right (cause I don’t have a working mirror to check it on) the previous version responded {‘status’: ‘success’}. So if you’re interested in changing the code instead of commenting it out, you can change line 341 to
response = status['success']
if response == 'true':
self.speak_dialog('success')
else:
self.speak('There was an error processing your request.')
That might be the code change you need. This is all from memory on my part because I have no way to verify.
Now I get this error, but I think we are really close :).
~~~~here was an error processing your request. The error was caused by', reason)
UnboundLocalError: local variable 'reason' referenced before assignment
^--- NEWEST ---^
I have mycroft-core 20.2.4
Do you know maybe what I have to do?,
if not, I think I have to live with this message error :)
@Papblo did you comment out the lines? Or change the code? Look very carefully at the code I suggested. Make sure you have it exactly as I suggested. I think you left ‘reason’ at the end of there was an error.
i still get the error
reason = status['reason']
KeyError: 'reason'
That's are my settings, i just changed success and true
response = status['success']
if response == 'true':
self.speak_dialog('success')
else:
reason = status['reason']
reason = reason.replace('_', ' ')
self.speak('There was an error processing your request
Sorry I forgot to tell you that, yes I did comment the lines out, but I didn’t have success… So I put everything how it was back 
So for now I’m going to leave it how it is, I still love the Module :).
Maybe one day someone is going to come with a good solution.
Thank you for your support and Time dmwilsonkc
@Papblo So I’m pretty sure the error is related to the different response from the MMM-Remote-Control module. When I wrote the skill, the module responded {“status”: “success”}. You said the module now responds {“success”: “true”}. So changing the code should work, but you’d need to change more than just the lines 341 & 342 because I’m sure it is not responding with {“status”: “error”, “reason”: “whatever the reason was”}. So that means there is no “reason” in the json file returned, thus causing the error in the skill’s code. So if we rewrite the code and remove all references to “reason” etc. the skill should not return the error. Like this:
response = status['success']
if response == 'true':
self.speak_dialog('success')
else:
self.speak('There was an error processing your request.')
Now a good way to test this hypothesis would be to comment out the code and add back as you go line by line (that makes sense) for example starting at line 340 it should look like this:
status = r.json()
#response = status['success']
#if response == 'true':
#self.speak_dialog('success')
#else:
#reason = status['reason']
#reason = reason.replace('_', ' ')
#self.speak('There was an error processing your request. The error was caused by', reason)
Oh, I should also point out that case matters. So check your response from the MMM-Remote-Control module. Is it’s response {“success”: “true”} or is it {“Success”: “True”}? Because it does matter! The skill’s code should match the case of the json response from the MMM-Remote-Control module. Fixing this error will just require a little trial and error on your part. If you get it working let me know.
Cheers!
Thank you sooooo much, I just did like you said to comment everything out and save it, and look everything works perfect now, so many thanks again dmwilsonkc :))
status = r.json()
#response = status[‘success’]
#if response == ‘true’:
#self.speak_dialog(‘success’)
#else:
#reason = status[‘reason’]
#reason = reason.replace(’_’, ’ ')
#self.speak('There was an error processing your request.