I have set up some custom sentences with wildcards. I am able to verify with the sentence parser that my commands work are parsed as expected. But when I try to run the same command through the voice assist pipeline, I just keep getting the error “Unexpected error during intent recognition (intent-failed)”
What exactly is the difference between the sentence parser in the debug window and whatever Home Assistant is doing with the assist pipeline?
I know the sentence parser doesn’t actually execute actions… So there is probably an error on the assist pipeline when running the execution, but I can’t see anything about the error, just ‘intent-failed’
To add some more details, I am specifically asking Assist to play music like this: “play (artist) on office speaker”
When viewing the sentence parser with this command it shows the parsed (artist) value with an extra trailing space like "artist " instead of just “artist”… That’s the only thing I can see that might cause an issue…
Otherwise, it should be firing off music through the Music Assistant add-on… But it’s not doing that since it’s erroring.
Anyone have thoughts or experience with this scenario?
Did you found a solution?
My logs show this :
2024-12-08 11:44:12.014 ERROR (MainThread)
[homeassistant.components.assist_pipeline.pipeline] Unexpected error during intent recognition
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/components/assist_pipeline/pipeline.py", line 1057, in recognize_intent
intent_response := await conversation.async_handle_intents(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
self.hass, user_input
^^^^^^^^^^^^^^^^^^^^^
)
^
File "/usr/src/homeassistant/homeassistant/components/conversation/__init__.py", line 233, in async_handle_intents
return await default_agent.async_handle_intents(user_input)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/conversation/default_agent.py", line 1351, in async_handle_intents
conversation_result = await self._async_process_intent_result(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
result, user_input
^^^^^^^^^^^^^^^^^^
)
^
File "/usr/src/homeassistant/homeassistant/components/conversation/default_agent.py", line 441, in _async_process_intent_result
intent_response = await intent.async_handle(
^^^^^^^^^^^^^^^^^^^^^^^^^^
...<10 lines>...
)
^
File "/usr/src/homeassistant/homeassistant/helpers/intent.py", line 121, in async_handle
raise UnknownIntent(f"Unknown intent {intent_type}")
homeassistant.helpers.intent.UnknownIntent: Unknown intent MassPlayMediaOnMediaPlayer
2024-12-08 11:44:12.225 ERROR (MainThread) [frontend.js.modern.202411276] Uncaught error from Chrome 131.0.0.0 on Windows 10
ReferenceError: Cannot access 't' before initialization
unsub (src/dialogs/voice-command-dialog/ha-voice-command-dialog.ts:404:12)
callback (node_modules/home-assistant-js-websocket/dist/connection.js:23:33)
forEach (node_modules/home-assistant-js-websocket/dist/connection.js:15:25)
I stopped looking into the error when it wasn’t obvious what was happening… kinda waiting for Music Assistant / Voice Assist to get more fleshed out at this point, as my problem seems like a bug. I don’t believe I was getting the same error though… I assume your intent ‘MassPlayMediaOnMediaPlayer’ exists? I don’t think I was actually getting an error for an ‘Unknown Intent’… If I get a chance to try it again soon, I will let you know.
So now my problems are even stranger… I resinstalled the HACS integration to play around with Voice Assist some more… it’s working, kinda… It recognizes the intent and it says “Okay”, which is the proper response, but then it just doesn’t actually do anything with Music Assistant… so the intent itself somehow isn’t connected to anything…
Ugh… I feel like I’m even closer, but still so far… I request “play the artist rise against on office speaker” and my atom echo repeats back “okay, playing rise against on the office speaker”… but still nothing, it’s never actually playing the media from Music Assistant… I can manually play the music from Music Assistant to my Office Speaker just fine. The name is correct, the area is correct… I’m not sure what else to look for.