Agent AUDIO¶
Diffuse des annonces vocales et des sons sur les enceintes d'une machine.
C'est le seul agent qui tourne en service utilisateur
Il doit accéder au serveur de son de la session. Il ne s'installe donc pas comme les autres.
Rôle¶
- Reçoit les messages à énoncer depuis le moteur D.L.S.
- Les convertit en parole (
gtts-cli) et les diffuse (mpg123). - Gère des zones de diffusion : un message peut être envoyé à une pièce précise.
Pré-requis¶
| Élément | Exigence |
|---|---|
| Matériel | Carte son et enceintes raccordées |
| Serveur de son | PipeWire avec WirePlumber (wpctl) |
| Outils | gtts-cli (synthèse vocale) et mpg123 (lecture) |
| Réseau | Accès sortant Internet pour la synthèse vocale |
sudo apt install mpg123 python3-gtts
wpctl status # les sorties audio doivent apparaître
La synthèse vocale nécessite Internet
gtts-cli interroge un service en ligne. Sans accès Internet, les annonces vocales
ne fonctionnent pas.
Installation¶
sudo apt install abls-agent-audio
Activation du service utilisateur¶
# 1. Activer le modèle pour les sessions utilisateur
sudo systemctl --global enable abls-agent-audio@AUDIO_SALON.service
# 2. Permettre à la session de survivre à la déconnexion
sudo loginctl enable-linger monutilisateur
# 3. Démarrer
sudo -iu monutilisateur systemctl --user daemon-reload
sudo -iu monutilisateur systemctl --user start abls-agent-audio@AUDIO_SALON.service
Sans enable-linger, l'agent s'arrête à la déconnexion
C'est la cause numéro un des agents audio « qui marchent puis s'arrêtent ».
L'unité déclare Wants=wireplumber.service : elle démarre après le serveur de son.
Paramètres spécifiques¶
| Clé JSON | Variable d'environnement | Option | Type | Description |
|---|---|---|---|---|
volume |
ABLS_VOLUME |
--volume |
entier 0–100 | Volume de diffusion |
language |
ABLS_LANGUAGE |
--language |
chaîne | Langue de la synthèse : fr ou en |
Les zones de diffusion ne se configurent pas ici : elles se déclarent depuis la Console, page Zones audio.
Enrôlement¶
sudo abls-agent-audio --agent-tech-id AUDIO_SALON \
--volume 70 \
--language fr \
--domain-uuid xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx \
--domain-secret 'votre-secret-ici' \
--api-url api.abls-habitat.fr \
--save
Consulter les journaux¶
Attention : ce sont les journaux utilisateur.
sudo -iu monutilisateur journalctl --user -u abls-agent-audio@AUDIO_SALON.service -f
Dépannage¶
| Symptôme | Piste |
|---|---|
| L'agent s'arrête à la déconnexion | loginctl enable-linger <utilisateur> manquant |
| Aucun son alors que l'agent tourne | wpctl status : la sortie par défaut est-elle la bonne ? Volume système à zéro ? |
gtts-cli: command not found |
Installer python3-gtts |
| Annonces muettes mais journaux normaux | Pas d'accès Internet : la synthèse vocale échoue |
| Volume ignoré | Le volume système prime : vérifier avec wpctl get-volume @DEFAULT_AUDIO_SINK@ |
journalctl -u abls-agent-audio... ne renvoie rien |
Vous consultez le journal système : ajoutez --user |