Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
Tuto : Lire un message audio dans un lecteur Sonos
#1
Bonjour,

Suite à une demande en MP, voici une automatisation HA qui permet de lire un message audio dans un lecteur Sonos suite au déclenchement d'un évènement ; dans l'exemple :
- c'est une sortie PGM de l'alarme dont l'état change en cas d'intrusion ;
- le message diffusé c'est "intrusion.m4a"
- le volume du lecteur Sonos est positionné à 80% avant la diffusion
- le message est répété en boucle jusqu'à ce que "switch.pgm_alarme_intrusion_on" soit à off (qui correspond à un désarmement de l'alarme).
- le delay de 10 s est légèrement supérieur à la durée d'enregistrement du message

Il faut en amont installer l'intégration Sonos
Code :
alias: Message Sonos intrusion
description: ""
triggers:
 - entity_id:
     - binary_sensor.alarme_intrusion
     - switch.pgm_alarme_intrusion_on
   to: "on"
   trigger: state
conditions: []
actions:
 - repeat:
     while:
       - condition: or
         conditions:
           - condition: state
             entity_id: binary_sensor.alarme_intrusion
             state: "on"
           - condition: state
             entity_id: switch.pgm_alarme_intrusion_on
             state: "on"
     sequence:
       - target:
           entity_id: media_player.salle_a_manger
         data:
           volume_level: 0.8
         action: media_player.volume_set
       - target:
           entity_id: media_player.salle_a_manger
         data:
           media_content_id: media-source://media_source/local/Intrusion.m4a
           media_content_type: audio/mp4
         action: media_player.play_media
       - delay:
           seconds: 10
mode: queued
Répondre
#2
C'est top ça, merci pour le partage !

Je l'ai mis en place avec une petite variation pour ceux qui veulent diffuser en TTS :
Bon malheureusement le TTS n'a aucune intonation, la voix est stoïque !

En TTS HA Cloud :
Code :
actions:
 - sequence:
     - action: media_player.volume_set
       target:
         entity_id: media_player.salle_de_bain
       data:
         volume_level: 0.8
     - action: tts.cloud_say
       data:
         options:
           voice: JeromeNeural
         cache: true
         entity_id: media_player.salle_de_bain
         message: Vous êtes sur un site protégé et filmé par nos caméras. Veuillez quitter les lieux immédiatement, la police vient d'être contactée. Je répète, Veuillez quitter les lieux immédiatement, la police vient d'être contactée !
         language: fr-FR
     - action: media_player.volume_set
       target:
         entity_id: media_player.salle_de_bain
       data:
         volume_level: 0.5


En TTS natif Google :

Code :
actions:
 - sequence:
     - action: media_player.volume_set
       target:
         entity_id: media_player.salle_de_bain
       data:
         volume_level: 0.8
     - action: tts.google_translate_say
        data:
          cache: true
          entity_id: media_player.salle_de_bain
         message: Vous êtes sur un site protégé et filmé par nos caméras. Veuillez quitter les lieux immédiatement, la police vient d'être contactée. Je répète, Veuillez quitter les lieux immédiatement, la police vient d'être contactée !
         language: fr
     - action: media_player.volume_set
       target:
         entity_id: media_player.salle_de_bain
       data:
         volume_level: 0.5
Répondre
#3
@XeNo
La version TTS est intéressante pour le code mais utilise le Cloud et le message ne passe pas si les voleurs ont coupé la fibre/adsl.
Répondre
#4
(03/01/2025, 17:33:48)Ives a écrit : @XeNo
La version TTS est intéressante pour le code mais utilise le Cloud et le message ne passe pas si les voleurs ont coupé la fibre/adsl.

C'est pas faux ! Il faut que je trouve un micro alors, je vais les engueuler tu vas voir !
Répondre
#5
@Ives, HA mets en cache chaque message TTS, tu trouves les mp3 dans les dossiers, donc si le message à déjà été diffusé pour un test par exemple, le fichier est présent et fonctionne même sans cloud.
Répondre
#6
@flop
Merci pour l'info, je ne savais pas.
Répondre


Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)