Hey folks!
I’ve got rhasspy installed as home assistant addon (v. 2.5.10.2) I’m running home assistant on a pi4 with the Home Assistant OS 5.13.
I haven’t gotten a microphone set up, but my understanding is, that if everything is set up correctly, I should be able to send a GetTime event to home assistant by writing “what time is it” into the input field next to “Recognize”, check “handle” and click “recognize”. Doing this, while simultaneously listening to rhasspy_GetTime events in home assistants dev-tools, I would assume an event to show up in dev-tools. This does not happen.
My profile contains a long-living access token and I’ve verified that I can post to http://172.17.0.1:8123/api/events/rhasspy_GetTime from within the rhasspy container.
curl -X POST -H "Authorization: Bearer TOKEN" -H "Content-Type: application/json" http://172.17.0.1:8123/api/events/rhasspy_GetTime
Listening to rhasspy_GetTime events in home assistant at the same time, receives the curled event.
Here’s my profile (from Advanced view)
{
"dialogue": {
"system": "rhasspy"
},
"handle": {
"system": "hass"
},
"home_assistant": {
"access_token": "TOKEN",
"handle_type": "event",
"pem_file": "$RHASSPY_PROFILE_DIR/fullchain.pem",
"url": "http://172.17.0.1:8123"
},
"intent": {
"system": "fsticuffs"
},
"microphone": {
"system": "pyaudio"
},
"sounds": {
"system": "aplay"
},
"speech_to_text": {
"system": "pocketsphinx"
},
"text_to_speech": {
"system": "espeak"
}
}
I had rhasspy installed once previously in december, but could not get it to work back then either. I’m not sure whether I have some kind of profile snafu from back then, or if the profile was reset with the new installation.
Here’s the log from the Add-ons log tab in supervisor:
[DEBUG:2021-04-28 12:35:51,817] rhasspyserver_hermes: -> NluQuery(input='what time is it', site_id='default', id='cb56ba81-a18b-46ef-9003-b08139ba805c', intent_filter=None, session_id='cb56ba81-a18b-46ef-9003-b08139ba805c', wakeword_id=None, lang=None, custom_data=None, asr_confidence=None, custom_entities=None)
[DEBUG:2021-04-28 12:35:51,817] rhasspyserver_hermes: Publishing 271 bytes(s) to hermes/nlu/query
[DEBUG:2021-04-28 12:35:51,824] rhasspynlu_hermes: <- NluQuery(input='what time is it', site_id='default', id='cb56ba81-a18b-46ef-9003-b08139ba805c', intent_filter=None, session_id='cb56ba81-a18b-46ef-9003-b08139ba805c', wakeword_id=None, lang=None, custom_data=None, asr_confidence=None, custom_entities=None)
[DEBUG:2021-04-28 12:35:51,826] rhasspynlu_hermes: -> NluIntentParsed(input='what time is it', intent=Intent(intent_name='GetTime', confidence_score=1.0), site_id='default', id='cb56ba81-a18b-46ef-9003-b08139ba805c', slots=[], session_id='cb56ba81-a18b-46ef-9003-b08139ba805c')
[DEBUG:2021-04-28 12:35:51,827] rhasspynlu_hermes: Publishing 222 bytes(s) to hermes/nlu/intentParsed
[DEBUG:2021-04-28 12:35:51,831] rhasspynlu_hermes: -> NluIntent(input='what time is it', intent=Intent(intent_name='GetTime', confidence_score=1.0), site_id='default', id='cb56ba81-a18b-46ef-9003-b08139ba805c', slots=[], session_id='cb56ba81-a18b-46ef-9003-b08139ba805c', custom_data=None, asr_tokens=[[AsrToken(value='what', confidence=1.0, range_start=0, range_end=4, time=None), AsrToken(value='time', confidence=1.0, range_start=5, range_end=9, time=None), AsrToken(value='is', confidence=1.0, range_start=10, range_end=12, time=None), AsrToken(value='it', confidence=1.0, range_start=13, range_end=15, time=None)]], asr_confidence=None, raw_input='what time is it', wakeword_id=None, lang=None)
[DEBUG:2021-04-28 12:35:51,832] rhasspynlu_hermes: Publishing 683 bytes(s) to hermes/intent/GetTime
[DEBUG:2021-04-28 12:35:51,888] rhasspyserver_hermes: <- NluIntent(input='what time is it', intent=Intent(intent_name='GetTime', confidence_score=1.0), site_id='default', id='cb56ba81-a18b-46ef-9003-b08139ba805c', slots=[], session_id='cb56ba81-a18b-46ef-9003-b08139ba805c', custom_data=None, asr_tokens=[[AsrToken(value='what', confidence=1.0, range_start=0, range_end=4, time=None), AsrToken(value='time', confidence=1.0, range_start=5, range_end=9, time=None), AsrToken(value='is', confidence=1.0, range_start=10, range_end=12, time=None), AsrToken(value='it', confidence=1.0, range_start=13, range_end=15, time=None)]], asr_confidence=None, raw_input='what time is it', wakeword_id=None, lang=None)
[DEBUG:2021-04-28 12:35:51,888] rhasspydialogue_hermes: <- NluIntent(input='what time is it', intent=Intent(intent_name='GetTime', confidence_score=1.0), site_id='default', id='cb56ba81-a18b-46ef-9003-b08139ba805c', slots=[], session_id='cb56ba81-a18b-46ef-9003-b08139ba805c', custom_data=None, asr_tokens=[[AsrToken(value='what', confidence=1.0, range_start=0, range_end=4, time=None), AsrToken(value='time', confidence=1.0, range_start=5, range_end=9, time=None), AsrToken(value='is', confidence=1.0, range_start=10, range_end=12, time=None), AsrToken(value='it', confidence=1.0, range_start=13, range_end=15, time=None)]], asr_confidence=None, raw_input='what time is it', wakeword_id=None, lang=None)
[DEBUG:2021-04-28 12:35:51,890] rhasspyserver_hermes: Handling NluIntent (topic=hermes/intent/GetTime, id=7903f0cd-9cf3-4f2d-9f76-6e8467e3221d)
[DEBUG:2021-04-28 12:35:51,892] rhasspyserver_hermes: Sent 370 char(s) to websocket
[WARNING:2021-04-28 12:35:51,889] rhasspydialogue_hermes: No session for id cb56ba81-a18b-46ef-9003-b08139ba805c. Dropping recognition.
I would expect that if the post to the HASS api would fail, I would be able to see an error message somewhere.
Amongst others, I have to following two lines in my home assistant configuration. My understanding is, that I don’t actually need the intent_script: line, if I only want to receive events, but I thought it could not hurt.
intent:
intent_script:
What am I missing?
Thanks in advance