Bonjour à tous !
Déjà, je tiens à saluer tout le monde, je viens (enfin) de m’inscrire.
Pour la petite présentation rapide, j’ai 41 ans, je suis utilisateur d’Home Assistant depuis 2 ans environ. Je suis developpeur de métier, ce qui fait que j’ai tendance à precher la bonne parole d’Home Assistant autour de moi, et que j’ai aussi tendance à finir par coder les scripts des gens
Si je viens vers vous aujourd’hui, c’est pour essayer d’avoir une réponse sur une situation que je n’arrive pas à démeler.
Ma problématique
Je suis en train de développer une application mobile 3D qui se connecte à Home Assistant (par le WebSocket et l’API) pour gérer et m’enregistrer à tout un tas de choses (je n’en dis pas plus sur le projet pour l’instant tant que je n’ai pas dérisqué tous les élements dont j’ai besoin pour réaliser cette application).
Je reviendrai vers vous pour vous presenter ce « petit » projet quand il sera beaucoup plus concret.
Ma problématique du jour concerne l’utilisation, par le WebSocket de l’Assist Pipeline. Je suis vraiment ravi de cette nouveauté et elle sera au coeur de mon application.
Actuellement, j’ai tout un tas de connexions qui fonctionnent bien, que ce soit au niveau du WebSocket, de l’API, des events ou de la récupération de tous les élements dont j’ai besoin.
J’arrive à appeler des services, récuperer tout un tas de choses, m’abonner à des evenements…
Avant de venir vers vous, j’ai essayé tant bien que mal de trouver par moi-même mais vu l’ancienneté de cette fonctionnalité, autant dire qu’il n’y a pas grand chose.
Lorsque j’ai voulu utiliser l’assist pipeline par le WebSocket, je n’ai pas eu de soucis particulier pour communiquer les informations nécessaires pour « lancer » l’execution d’un pipeline.
Je me sers de cette documentation (aussi succincte soit elle) : https://developers.home-assistant.io/docs/voice/pipelines/
D’après cette documentation, je suis censé recevoir tout un tas d’events permettant de streamer les flux audio générés par le pipeline :
run-start, run-end, stt-start, etc… (la liste complète est toujours sur la même page).
Dans mes tests, j’arrive bien à formuler la demande d’execution du pipeline et tout fonctionne parfaitement avec par exemple cette demande :
{
"type": "assist_pipeline/run",
"start_stage": "intent",
"end_stage": "intent",
"input": {
"text ": "Allume la lumière de la cuisine",
}
}
Cependant, aucun event ne se declenche. Et ce même avec une demande d’envoi de flux audio SST de ce type :
{
"type": "assist_pipeline/run",
"start_stage": "sst",
"end_stage": "tts",
"input": {
"sample_rate": 16000,
}
}
D’après la documentation, le pipeline est censé déclencher ces events, en l’occurence avec ce test, un event de type « stt-start ».
Pour investiguer un peu plus, je suis evidemment passé par les outils de développements pour essayer d’« attraper » cet event, mais rien ne se declenche, même lorsque j’utilise l’assistant integré. Je precise que je n’ai aucun autre soucis pour ecouter et m’abonner aux autres evenements et que tout fonctionne parfaitement avec d’autres events que ceux de l’assist pipeline.
Toujours dans Home Assistant, je suis evidemment aller sur la console Debug de l’Assistant et je vois bien mes demandes arriver, mais elles tombent en erreur dès que je fais autre chose que de l’« intent »(ce qui est normal, car je n’ai pas envoyé de flux, vu que j’attend l’event pour commencer à l’envoyer).
Voila, avant de vous déranger, j’ai fait comme à mon habitude, j’ai essayé de trouver la solution par moi-même, mais là, j’avoue que je ne comprend pas.
J’ai essayé d’être le plus succinct possible pour cette explication.
Merci d’avance pour votre aide !
Ma configuration
version | core-2023.8.2 |
---|---|
installation_type | Home Assistant OS |
dev | false |
hassio | true |
docker | true |
user | root |
virtualenv | false |
python_version | 3.11.4 |
os_name | Linux |
os_version | 6.1.21-v8 |
arch | aarch64 |
timezone | Europe/Paris |
config_dir | /config |
Home Assistant Community Store
GitHub API | ok |
---|---|
GitHub Content | ok |
GitHub Web | ok |
GitHub API Calls Remaining | 4996 |
Installed Version | 1.32.1 |
Stage | running |
Available Repositories | 1268 |
Downloaded Repositories | 20 |
Home Assistant Cloud
logged_in | true |
---|---|
subscription_expiration | 25 août 2023 à 02:00 |
relayer_connected | true |
relayer_region | eu-central-1 |
remote_enabled | true |
remote_connected | true |
alexa_enabled | false |
google_enabled | true |
remote_server | eu-central-1-0.ui.nabu.casa |
certificate_status | ready |
can_reach_cert_server | ok |
can_reach_cloud_auth | ok |
can_reach_cloud | ok |
Home Assistant Supervisor
host_os | Home Assistant OS 10.4 |
---|---|
update_channel | stable |
supervisor_version | supervisor-2023.08.1 |
agent_version | 1.5.1 |
docker_version | 23.0.6 |
disk_total | 116.7 GB |
disk_used | 21.9 GB |
healthy | true |
supported | true |
board | rpi4-64 |
supervisor_api | ok |
version_api | ok |
installed_addons | Samba share (10.0.2), MariaDB (2.6.1), File editor (5.6.0), Terminal & SSH (9.7.1), AirSend (1.0), ArgonOne Active Cooling (30a), Samba Backup (5.2.0), ESPHome (2023.7.1), Mosquitto broker (6.2.1) |
Dashboards
dashboards | 3 |
---|---|
resources | 23 |
views | 26 |
mode | storage |
Recorder
oldest_recorder_run | 6 août 2023 à 07:10 |
---|---|
current_recorder_run | 13 août 2023 à 07:40 |
estimated_db_size | 487.22 MiB |
database_engine | mysql |
database_version | 10.6.12 |