Hey there @pcwii, thanks for that information, super helpful. The way I’ve approached this is to install the Skill, give it a run through and then try and isolate the regex
issue.
Install Skill
(.venv) kathyreid@kathyreid-Oryx-Pro:~/mycroft-core$ msm install https://github.com/pcwii/help-skill.git
INFO - Downloading skill: https://github.com/pcwii/help-skill.git
INFO - Installing requirements.txt for help-skill
INFO - Successfully installed help-skill
Installed OK, proceeded to test the different Intents
looped through each of the installed Skills correctly. I used more
as the command each time so that it would keep scrolling through. When it got to the last Skill, it threw this error:
21:25:44.030 - SKILLS - DEBUG - {"type": "mycroft.skill.handler.start", "data": {"name": "HelpSkill.handle_help_chat_decision_intent"}, "context": {"target": null}}
21:25:44.032 - SKILLS - DEBUG - {"type": "speak", "data": {"utterance": "this skill can be run by saying, hey mycroft: help", "expect_response": false}, "context": {"target": null}}
21:25:44.335 - SKILLS - DEBUG - {"type": "speak", "data": {"utterance": "We have reached the last skill that is installed on the system", "expect_response": false}, "context": {"target": null}}
21:25:44.636 - mycroft.skills.core:wrapper:655 - ERROR - An error occurred while processing a request in Help Skill
Traceback (most recent call last):
File "/home/kathyreid/mycroft-core/mycroft/skills/core.py", line 646, in wrapper
handler(message)
File "/home/kathyreid/mycroft-core/mycroft/skills/context.py", line 29, in func_wrapper
ret = func(*args, **kwargs)
File "/home/kathyreid/mycroft-core/mycroft/skills/context.py", line 43, in func_wrapper
ret = func(*args, **kwargs)
File "/opt/mycroft/skills/help-skill.pcwii/__init__.py", line 123, in handle_help_chat_decision_intent
self.more_help_item()
File "/home/kathyreid/mycroft-core/mycroft/skills/context.py", line 29, in func_wrapper
ret = func(*args, **kwargs)
File "/home/kathyreid/mycroft-core/mycroft/skills/context.py", line 43, in func_wrapper
ret = func(*args, **kwargs)
File "/opt/mycroft/skills/help-skill.pcwii/__init__.py", line 166, in more_help_item
self.next_help_item()
File "/home/kathyreid/mycroft-core/mycroft/skills/context.py", line 29, in func_wrapper
ret = func(*args, **kwargs)
File "/home/kathyreid/mycroft-core/mycroft/skills/context.py", line 43, in func_wrapper
ret = func(*args, **kwargs)
File "/opt/mycroft/skills/help-skill.pcwii/__init__.py", line 157, in next_help_item
self.stop_help_chat()
File "/home/kathyreid/mycroft-core/mycroft/skills/context.py", line 43, in func_wrapper
ret = func(*args, **kwargs)
TypeError: stop_help_chat() missing 1 required positional argument: 'message'
My interpretation of this is that the stop_help_chat()
function does not need the message
parameter, just self
.
That doesn’t help with the actual error you were reporting though.
Testing the part that is failing
To try and trigger the error you’re reporting, I did:
it then asked me to choose more or cancel or next (but not search)
I said search
it then asked me to enter the name of the Skill. I did aircrack
because I have that Skill, and it said
“sorry I don’t understand”
Tried again, this time using podcast
and this triggered the Podcast Skill.
So yes, I’m getting a similar error.
I then added these lines of logging to the Skill, beginning at line 134;
logger.info('--BEGIN LOGGING--')
logger.info(search_skill)
logger.info('--')
logger.info(message.utterance.remainder())
logger.info('--END LOGGING--')
and ran the Skill again. However, the logging never appeared in the skills.log
, so I don’t think this part of the code was actually being hit.
I’ve checked the regex
and that looks fine. I’m at a loss here.
I wonder if @forslund has any ideas?