Hello,
I follow this post, due the @romkabouter answer (three methods to send a wav file to the endpoint api/play-wav).
Something is wrong with my script in hom assistant, and I don’t know why. Some help would be appreciate :
configuration.yaml
rest_command:
rhasspy_play:
url: 'http://192.168.1.6:12101/api/play-wav'
method: POST
headers:
content_type: 'audio/wav'
payload: '{{ payload }}'
automation.yaml
- id: '1636909817124'
alias: Il est l or
description: ''
trigger:
- platform: event
event_type: rhasspy_GetTimePlus
condition: []
action:
- service: rest_command.rhasspy_play
data:
payload: /home/pi/var/lib/docker/volumes/Media/_data/monsignor.wav
mode: single
I followed this post : Rhasspy offline voice assistant toolkit - #585 by koan - Custom Components - Home Assistant Community, and the curl command works…
Here my logs:
On Rhasspy :
[ERROR:2021-11-28 17:06:45,214] rhasspyserver_hermes:
Traceback (most recent call last):
File "/usr/lib/rhasspy/.venv/lib/python3.7/site-packages/quart/app.py", line 1821, in full_dispatch_request
result = await self.dispatch_request(request_context)
File "/usr/lib/rhasspy/.venv/lib/python3.7/site-packages/quart/app.py", line 1869, in dispatch_request
return await handler(**request_.view_args)
File "/usr/lib/rhasspy/rhasspy-server-hermes/rhasspyserver_hermes/__main__.py", line 1135, in api_play_wav
await asyncio.gather(*aws)
File "/usr/lib/rhasspy/rhasspy-server-hermes/rhasspyserver_hermes/__init__.py", line 761, in play_wav_data
raise RuntimeError(result.error)
RuntimeError
[DEBUG:2021-11-28 17:06:45,211] rhasspyserver_hermes: Publishing 44 bytes(s) to hermes/asr/toggleOn
[DEBUG:2021-11-28 17:06:45,210] rhasspyserver_hermes: -> AsrToggleOn(site_id='default', reason=<AsrToggleReason.PLAY_AUDIO: 'playAudio'>)
[DEBUG:2021-11-28 17:06:45,206] rhasspyserver_hermes: Publishing 44 bytes(s) to hermes/hotword/toggleOn
[DEBUG:2021-11-28 17:06:45,204] rhasspyserver_hermes: -> HotwordToggleOn(site_id='default', reason=<HotwordToggleReason.PLAY_AUDIO: 'playAudio'>)
[ERROR:2021-11-28 17:06:45,201] rhasspyserver_hermes: AudioPlayError(error='', site_id='default', context='14dbe5e0-5a0e-4a86-8588-435be17d688c', session_id='14dbe5e0-5a0e-4a86-8588-435be17d688c')
[DEBUG:2021-11-28 17:06:45,196] rhasspyserver_hermes: Handling AudioPlayError (topic=hermes/error/audioServer/play, id=873f37c0-32f0-4104-885f-909bb98f94d4)
[DEBUG:2021-11-28 17:06:45,126] rhasspyserver_hermes: -> AudioPlayBytes(49 byte(s))
[DEBUG:2021-11-28 17:06:45,125] rhasspyserver_hermes: Publishing 44 bytes(s) to hermes/asr/toggleOff
[DEBUG:2021-11-28 17:06:45,124] rhasspyserver_hermes: -> AsrToggleOff(site_id='default', reason=<AsrToggleReason.PLAY_AUDIO: 'playAudio'>)
[DEBUG:2021-11-28 17:06:45,120] rhasspyserver_hermes: Publishing 44 bytes(s) to hermes/hotword/toggleOff
[DEBUG:2021-11-28 17:06:45,119] rhasspyserver_hermes: -> HotwordToggleOff(site_id='default', reason=<HotwordToggleReason.PLAY_AUDIO: 'playAudio'>)
[DEBUG:2021-11-28 17:06:45,115] rhasspyserver_hermes: Playing 49 byte(s)
On HomeAssistant :
{
"trace": {
"last_step": "action/0",
"run_id": "1",
"state": "stopped",
"script_execution": "finished",
"timestamp": {
"start": "2021-11-28T16:06:45.083446+00:00",
"finish": "2021-11-28T16:06:45.238360+00:00"
},
"domain": "automation",
"item_id": "1636909817124",
"trigger": "event 'rhasspy_GetTimePlus'",
"trace": {
"trigger/0": [
{
"path": "trigger/0",
"timestamp": "2021-11-28T16:06:45.083724+00:00",
"changed_variables": {
"this": {
"entity_id": "automation.il_est_l_or",
"state": "on",
"attributes": {
"last_triggered": "2021-11-28T16:02:57.703089+00:00",
"mode": "single",
"current": 0,
"id": "1636909817124",
"friendly_name": "Il est l or"
},
"last_changed": "2021-11-28T16:02:31.228286+00:00",
"last_updated": "2021-11-28T16:02:57.860542+00:00",
"context": {
"id": "08837849727a7c4311fdd651f7d25c95",
"parent_id": "1d0960c79b007410c832df161474a3e7",
"user_id": null
}
},
"trigger": {
"id": "0",
"idx": "0",
"platform": "event",
"event": {
"event_type": "rhasspy_GetTimePlus",
"data": {},
"origin": "REMOTE",
"time_fired": "2021-11-28T16:06:45.077844+00:00",
"context": {
"id": "1f66ff995acb54b5194898ae977e955e",
"parent_id": null,
"user_id": "8a26e4e5b8004e7990da6f5e74f2f46c"
}
},
"description": "event 'rhasspy_GetTimePlus'"
}
}
}
],
"action/0": [
{
"path": "action/0",
"timestamp": "2021-11-28T16:06:45.087196+00:00",
"changed_variables": {
"context": {
"id": "c091b5a6e6af2f6a7cf2aaea6d62a297",
"parent_id": "1f66ff995acb54b5194898ae977e955e",
"user_id": null
}
},
"result": {
"params": {
"domain": "rest_command",
"service": "rhasspy_play",
"service_data": {
"payload": "/var/lib/docker/volumes/Media/_data/monsignor.wav"
},
"target": {}
},
"running_script": false,
"limit": 10
}
}
]
},
"config": {
"id": "1636909817124",
"alias": "Il est l or",
"description": "",
"trigger": [
{
"platform": "event",
"event_type": "rhasspy_GetTimePlus"
}
],
"condition": [],
"action": [
{
"service": "rest_command.rhasspy_play",
"data": {
"payload": "/var/lib/docker/volumes/Media/_data/monsignor.wav"
}
}
],
"mode": "single"
},
"blueprint_inputs": null,
"context": {
"id": "c091b5a6e6af2f6a7cf2aaea6d62a297",
"parent_id": "1f66ff995acb54b5194898ae977e955e",
"user_id": null
}
},
"logbookEntries": [
{
"name": "Il est l or",
"message": "has been triggered by event 'rhasspy_GetTimePlus'",
"source": "event 'rhasspy_GetTimePlus'",
"entity_id": "automation.il_est_l_or",
"context_id": "c091b5a6e6af2f6a7cf2aaea6d62a297",
"when": "2021-11-28T16:06:45.084351+00:00",
"domain": "automation"
}
]
}
Any idea ?
Thanks
Damien