06-13-2017, 12:15 PM
Hello tout le monde
Je vous propose une amélioration de la gestion du TTS avec Sonos dans les automates :
Au lieu de simplement mettre un délai plus ou moins large après le lancement de l'action TTS, je vous propose de faire un vrai test d'exécution de la commande et seulement ensuite d'enchainer la suite de l'automate.
Cette séquence fonctionne que le Sonos soit en arrêt-pause ou en cours de lecture. Il reprendra son état initial et son volume d'avant l'exécution du message TTS.
Pour ce faire, voici un exemple type dans un automate :
- on crée une variable privée pour mémoriser le volume actuel du Sonos.
- on modifie ce volume pour l'annonce du TTS (ici 20 pour l'exemple)
- envoie de la commande TTS ("Bonjour !" en exemple).
- petit délai d'une seconde pour l'envoie de la requête vers les serveurs TTS et le passage du Sonos sur cette source.
- délai suivant déclencheur : à chaque fois que lecture en cours... = TRUE (lancement de la lecture du message sur le Sonos ou lecture déjà en cours).
- délai suivant déclencheur : à chaque changement : Titre - Sonos OU Dès que lecture en cours = FALSE (fin de la lecture du message TTS ou reprise de lecture de la source précédente)
- reparamétrage du volume mémorisé au début avant l'annonce TTS
Détail du premier WAIT :
Détail du deuxième WAIT :
Et voilà Des questions ?
@++
Jonathan
Je vous propose une amélioration de la gestion du TTS avec Sonos dans les automates :
Au lieu de simplement mettre un délai plus ou moins large après le lancement de l'action TTS, je vous propose de faire un vrai test d'exécution de la commande et seulement ensuite d'enchainer la suite de l'automate.
Cette séquence fonctionne que le Sonos soit en arrêt-pause ou en cours de lecture. Il reprendra son état initial et son volume d'avant l'exécution du message TTS.
Pour ce faire, voici un exemple type dans un automate :
- on crée une variable privée pour mémoriser le volume actuel du Sonos.
- on modifie ce volume pour l'annonce du TTS (ici 20 pour l'exemple)
- envoie de la commande TTS ("Bonjour !" en exemple).
- petit délai d'une seconde pour l'envoie de la requête vers les serveurs TTS et le passage du Sonos sur cette source.
- délai suivant déclencheur : à chaque fois que lecture en cours... = TRUE (lancement de la lecture du message sur le Sonos ou lecture déjà en cours).
- délai suivant déclencheur : à chaque changement : Titre - Sonos OU Dès que lecture en cours = FALSE (fin de la lecture du message TTS ou reprise de lecture de la source précédente)
- reparamétrage du volume mémorisé au début avant l'annonce TTS
Détail du premier WAIT :
Détail du deuxième WAIT :
Et voilà Des questions ?
@++
Jonathan