1. mise en place d’un script de TTS
Ce script se limite à appeler l’url de la fonction php sonos.tts.playX.php et à lui passer le texte à lire en argument.
- type de script: http, sous-type: action + message
- requête: http://192.168.17.4/sonos/sonos.tts.pla ... e=#message#
- ne pas vérifier SSL, autoriser réponse vide et ne jamais remonter les erreurs
- timeout: mettre un temps suffisamment long, comme 10s, pour laisser au TTS le temps d’énoncer le message. Si le temps est trop court, l’action n’est pas terminée (=fin de l’énoncé, reprise de la lecture du morceau en cours) et le TTS est relu plusieurs fois.
[img]TTS%20exemple%2001.png[/img]
2. utilisation depuis le dashboard
Sur le dashboard (pour peut qu’on l’aie coché la case « afficher » dans la configuration du script) une tuile est créé qui permet d’entrer un titre et un message:
[img]TTS%20exemple%2002.png[/img]
Les deux champs sont obligatoires mais seul le champs message est repris dans notre cas. On peut donc faire dire n’importe quoi à un Player !
3. utilisation depuis un scénario avec un texte statique
Un scénario va lire un texte sur un évènement et appeler le script TTS pour le lui passer en argument:
Pour utiliser un texte statique avec un scénario:
- créer le scénario,
- ajouter un Elément de type Action, puis ajouter une action en choisissant le parent, l’équipement et la commande:
Pour chaque action « cause », on peut ajouter un titre et un message en remplaçant les balises #titre# et #message# par les textes à énoncer. Le titre n’est pas utilisé, il peut rester vide. Les textes sont lus en séquence, avec entre chaque reprise de la lecture de la musique, ce qui n’est pas très beau. On peut aussi varier le texte statique sur des conditions:
[img]TTS%20exemple%2004.png[/img]
A noter que dans la suite des explications, j'ai modifié mon script pour changer l'action "cause" à "énoncer", ce qui est plus joli...
4. utilisation depuis un scénario avec un texte dynamique
Beaucoup plus intéressant: constituer un texte dynamique / sur mesure à énoncer lors de circonstances particulières. Pour concaténer des informations:
[img]TTS%20exemple%2005.png[/img]
en ce moment il fait #[garage-côté cuisine][multi-sensor][Température]#
5. utilisation d’une variable
On peut utiliser des variables pour élaborer un texte dynamique:
- déclarer la variable à l’aide du bouton « voir variables » dans le panneau de gauche
- donner une valeur à la variable en fonction d’évènements: variable « status_fenetre », valeur: « fermée » (ne pas mettre les guillemets)
- faire lire la variable au script
La lecture se fait par l’action #[maison Gex][tts_play3][énoncer]# et les paramètres:
- #titre# qui ne peut rester vide mais ne sera pas lu (le script n’utiliser que le paramètre #message#)
- #message# qui est remplacé par: « la fenêtre est » variable(status_fenetre) : les guillemets sont optionnels mais recommandés lorsqu’on manipule du texte.
[img]TTS%20exemple%2007.png[/img]
Voilà ! J'espère que ces exemples simples vous mettrons le pied à l'étrier ! Vos commentaires sont les bienvenus.