Mycroft speaks twice with HomeAssistant confirmations

would be fine if msm would have remove option also, I will check that too

It does.

$ msm
usage: msm [-h]
           [-p {kde,respeaker,mycroft_mark_2pi,picroft,default,mycroft_mark_1,mycroft_mark_2}]
           [-u REPO_URL] [-b REPO_BRANCH] [-d SKILLS_DIR] [-c REPO_CACHE] [-l]
           [-r]
           {install,remove,search,info,list,update,default} ...
msm: error: the following arguments are required: action
1 Like

If you managed to install it, post it also. For me its allways better to have more feedback.

Oh, I’m aware of the remove option, but there’s no way to force removal of a given instance if there are identically-named skills, which apparently happened.

[Edit] Obviously, in normal circumstances, it shouldn’t happen at all.

2021-10-29 09:55:59.300 | ERROR    |   672 | mycroft.skills.skill_loader:_communicate_load_status:351 | Skill skill-homeassistant.tony763 failed to load
Regenerated skill-homeassistant.tony763:toggle.intent.
Regenerated skill-homeassistant.tony763:cover.open.intent.
Regenerated skill-homeassistant.tony763:tracker.intent.
Regenerated skill-homeassistant.tony763:add.item.shopping.list.intent.
2021-10-29 09:58:57.514 | INFO     |   762 | mycroft.skills.skill_loader:load:185 | ATTEMPTING TO LOAD SKILL: skill-homeassistant.tony763
2021-10-29 09:58:58.204 | INFO     |   762 | mycroft.skills.settings:get_local_settings:83 | /opt/mycroft/skills/skill-homeassistant.tony763/settings.json
2021-10-29 09:58:58.207 | INFO     |   762 | mycroft.skills.settings:get_local_settings:83 | /opt/mycroft/skills/skill-homeassistant.tony763/settings.json
  File "/opt/mycroft/skills/skill-homeassistant.tony763/__init__.py", line 96, in initialize
  File "/opt/mycroft/skills/skill-homeassistant.tony763/__init__.py", line 37, in _setup
  File "/opt/mycroft/skills/skill-homeassistant.tony763/ha_client.py", line 53, in check_url
2021-10-29 09:58:58.477 | ERROR    |   762 | mycroft.skills.skill_loader:_communicate_load_status:351 | Skill skill-homeassistant.tony763 failed to load

Is this showing what you were looking for?

It hapened to me, too. But I cannot remember what I did to overcome it.

did you git checkout patch-8 inside ha skill folder?

I did, yes. It didn’t seem to really do anything, just printed a message that it switched to that branch.

(.venv) pi@picroft:/opt/mycroft/skills/skill-homeassistant.tony763 $ git checkout patch-8
Already on 'patch-8'
Your branch is up to date with 'origin/patch-8'.
(.venv) pi@picroft:/opt/mycroft/skills/skill-homeassistant.tony763 $

Do I need to make it update itself after I do this?

After this just restart mycroft. Then it should start up. and print debug messages.

I cleared skills.log so I could find things easier. Here seem to be the relevant bits:

2021-10-29 10:10:49.665 | INFO     |   671 | mycroft.skills.skill_loader:load:185 | ATTEMPTING TO LOAD SKILL: skill-homeassistant.tony763
2021-10-29 10:10:50.150 | INFO     |   671 | mycroft.skills.settings:get_local_settings:83 | /opt/mycroft/skills/skill-homeassistant.tony763/settings.json
2021-10-29 10:10:50.153 | INFO     |   671 | mycroft.skills.settings:get_local_settings:83 | /opt/mycroft/skills/skill-homeassistant.tony763/settings.json
2021-10-29 10:10:50.268 | ERROR    |   671 | HomeAssistantSkill | type: <class 'NoneType'>
2021-10-29 10:10:50.269 | ERROR    |   671 | HomeAssistantSkill | content: None
2021-10-29 10:10:50.275 | INFO     |   671 | HomeAssistantSkill | Removing all handlers...
2021-10-29 10:10:50.279 | WARNING  |   671 | mycroft.skills.fallback_skill:remove_fallback:185 | Could not find matching fallback handler
2021-10-29 10:10:50.286 | ERROR    |   671 | mycroft.skills.skill_loader:_create_skill_instance:313 | Skill initialization failed with TypeError('expected string or bytes-like object')
Traceback (most recent call last):
  File "/home/pi/mycroft-core/mycroft/skills/skill_loader.py", line 307, in _create_skill_instance
    self.instance.initialize()
  File "/opt/mycroft/skills/skill-homeassistant.tony763/__init__.py", line 96, in initialize
    self._setup()
  File "/opt/mycroft/skills/skill-homeassistant.tony763/__init__.py", line 37, in _setup
    ip_address = check_url(ip_debug)
  File "/opt/mycroft/skills/skill-homeassistant.tony763/ha_client.py", line 53, in check_url
    matches = re.findall(IPV6_REGEX, ip_address)
  File "/usr/lib/python3.7/re.py", line 223, in findall
    return _compile(pattern, flags).findall(string)
TypeError: expected string or bytes-like object
2021-10-29 10:10:50.294 | ERROR    |   671 | mycroft.skills.skill_loader:_communicate_load_status:351 | Skill skill-homeassistant.tony763 failed to load

perfect, you do not have empty sting but nonetype. Two instances with same version of skill and two different errors. Thanks, I will let you know when I make fix.

1 Like

Done, test this branch: git fetch && git checkout feature/issue86x2

error: pathspec 'issue86x2' did not match any file(s) known to git

Perhaps I’m doing something wrong?

my bad, I edited the post above

Branch 'feature/issue86x2' set up to track remote branch 'feature/issue86x2' from 'origin'.
Switched to a new branch 'feature/issue86x2'

rebooting, let’s see how this goes…

Well, that did something, because now she won’t shut up about the HomeAssistant’s IP address. Adding long-term access token, setting the hostname…

Hooray, it works! :heart_eyes:

It will also set the thermostat correctly, doesn’t say “none” at the end, and only says it once. So groovy! Thank you very much for your fix / help!

[Edit] I’m going to re-enable the disabled thermostat entities to see if that’s still an issue, and I will report back.

1 Like

Glad it works, let me know.

1 Like

Hey there, I thought I’d respond to you here instead of making a new thread, but I can break this out to a separate thread if you’d like…

Referencing this conversation: I was also having this issue of not being able to dim the lights, and I just reinstalled the homeassistant skill because I saw you had fixed it, and now I can set dimmer levels on lights! So that’s awesome. :heart_eyes:

I was wondering a few things:

  1. Is there work going on so that the feedback doesn’t specify tenths of units? For instance, if I ask Mycroft for a lighting level of 50 percent, it sets it, then speaks the confirmation “Successfully set %entity to fifty point zero percent.” I’d change this myself, if I knew where in the code to look. I’m a professional lighting designer and even I don’t work in tenths of percents.

  2. I feel accessing this part of the skill is a bit clumsy, word-wise. For instance, with Siri, commands to set levels can be formatted thusly: “Set the floor lamp to 50%”, and the change happens. Without knowing how the voice commands work, is that sort of fuzzy matching possible? Can a skill be written such that it passes along a request for a percent or a unit, and if it makes sense, the entity sets itself to that?

Just some thoughts…and thank you, sincerely, for all your hard work making this skill one of the most useful in all of the marketplace. Except the cocktails one. :cocktail:

Hi @sparkyvision,

  1. it’s only about format of variable holding level percentage. Now it’s float so , numbers after dot is spoken, this should be easy change and it should be accepted without a problem.

  2. Now it’s “set brightness floor lamp to 50%”, we can switch words to be less clumsy but I would not recommend removing brightness from sentence. Each sentence/function need to be unique as much as possible as it could collide with other skills functions or worse with other skills. For HA skill it happened with where is skill, and it took me a really long time to overcome it.

We could try to do same thing as I did with conflicted where is skill. Register each entity only with a functions/utterances with it can interact. But for now, it would bring a really big overhaul to padatious intent engine and stopped it from function. I tried it, was not nice, only reset solved. :slight_smile: So Yes, maybe in the future, but not now.

Now it’s “set brightness floor lamp to 50%”, we can switch words to be less clumsy but I would not recommend removing brightness from sentence.

I wonder about if the sentence includes an entity name that is a light / dimmer type, HA could make an assumption? But I do see your point! Thanks for replying.

Now it’s float so

I know this refers to “types” of numbers in programming, but I have no understanding beyond that. I’ll take your word for it. :stuck_out_tongue: