Plugin TTS Cast (Attente passage en stable)

Bonjour @megaing,

Les dépendances s’installent mais j’imagine que c’est le démon qui ne démarre pas avec un message d’erreur dans les logs du démon ?

Avez-vous regardé la documentation pour voir si vous n’êtes pas dans un des cas où cela ne peut pas fonctionner ?

Si c’est bien cela, il faut passer sur un OS « 64bits » pour que cela puisse fonctionner.

Bonne journée,
TiTidom.

Merci pour votre réponse instantanée!
Non, j’ai bien le statut dépendance en NOK et dans la partie démon: Dépendances non installées.
En lançant la commande uname -m sur jeedom j’ai x86_64 (j’avais déjà éssayé).
Merci encore.

Re Bonjour,

Merci pour cette info.

Alors : autant pour moi, c’est de ma faute ! j’ai fait un dernier ménage dans la dernière version de composants que j’utilise pas, et j’ai oublié d’enlever le check côté dépendances ! :frowning:

Je viens de pousser une nouvelle version (v1.1.14) sur le market, peux tu tester cette mise à jour et voir si le problème persiste ?

TiTidom.

Parfait! Ca fonctionne. Merci beaucoup.

Bonjour à tous,

Une nouvelle version v1.1.15 est disponible sur le market dès maintenant.

Dans cette version « mineure » : ajout de logs supplémentaires dans le script d’install pour aider à debbugger lorsque l’installation ne se passe pas bien chez les utilisateurs.

Changelog à jour.

Bonne journée,
TiTidom.

Bonjour à tous,

Une nouvelle version v1.1.16 béta est disponible sur le market dès maintenant.

Au menu :

  • Absolument rien pour ceux qui ne sont pas sous Debian 12 :stuck_out_tongue:
  • Et donc pour ceux qui sont sous Debian 12 : amélioration de l’affichage de la version de PyEnv sur la page de configuration et dans les logs, celui-ci n’étant pas utilisé avec cette version de Debian (car sous Debian 12, la version de Python est déjà celle attendue par le plugin :wink: )

Changelog à jour.

Bonne journée,
TiTidom.

Bonjour,

J’ai installé le plugin en béta, installation ok, dépendances ok, mais quand je lance un scan il ne trouve rien.
Alors j’ai un réseau séparé, jeedom est sur 192.168.10.50 et les GH sont sur 192.168.20.xx
J’ai un pc qui est en 10.100, lorsque je fais un ping en 20.100 sur une GH cela fonctionne, donc je n’ai visiblement pas de blocage entre les réseaux.

Mais je n’ai rien qui remonte.
Serait-il possible d’avoir un ajout manuel?
Y’a moyen de faire un ping de jeedom vers un équipement?

Merci

Bonjour @jeedom_nc ,

Faire un ping est une bonne chose pour un premier check de communication entre deux parties du réseau, mais cela ne garantit rien en terme de communication ensuite :slight_smile:

Les Google Home discutent via un protocole qui s’appelle le mDNS (multicast DNS), basé sur du broadcast (désolé pour les termes barbares, là on est en plein dans du réseau :stuck_out_tongue: ) et le trafic broadcast ne passe pas les sous-réseaux.

En langage moins technique et plus clair pour tous : ton jeedom est sur le réseau 192.168.10 et le plugin lance un appel « mDNS » sur ce réseau en « .10 » pour découvrir les Google Home, mais tes google home eux sont sur un autre réseau en 192.168.20 donc ils ne reçoivent pas cette requête et donc ne répondent pas :frowning:

Alors tout n’es pas perdu, il existe ce que l’on appelle des « mDNS Forwarder », disponible sur le routeur qui s’occupe de diffuser les deux réseaux en .10 et .20 et qui fait le pont entre les deux.

Si tu as une telle option sur ton routeur (qui peut se nommer de bien des façons : « Bonjour », « mDNS proxy », « mdns repeater », « Zeroconf », « Avahi », etc…), tu peux l’activer, et cela pourrait résoudre tout soucis.

Question : pourquoi avoir fait ce choix de mettre tes google home sur un réseau à part ?

Sinon, je n’ai malheureusement pas d’autres solutions à date (l’ajout manuel n’étant pas une possibilité tel qu’est fait le plugin et surtout avec les librairies qu’il utilise derrière pour se connecter aux équipements).

TiTidom.

Ok merci de ton retour.
J’ai un UNIFI pro SE, le multicast n’était pas activé sur le réseau .10
image

Il a bien trouvé les GH :+1:

D’un point de vue sécurité, il est préférable d’avoir des réseaux séparés qui normalement ne communiquent pas entre eux. Jeedom est installé sur une machine proxmox ou j’ai un automate sur le réseau .10. Normalement Jeedom aurait du être sur le .20, mais comme ça bloque… pour faire simple je l’ai donc mis en .10…
Va falloir que je trouve un expert unifi et proxmox pour ajuster les réglages et vérifier si la sécurité est optimale car je comprends et maitrise en mode novice.

Merci pour ton aide. :slight_smile:

Bonjour TiTidom,
je commence à basculer mes cdes Gcast vers ton super plugin TTSCast (j’admire la rigueur du boulot !!), pas de pb particulier sauf un point nde détail:
Lorsque j’utilise la commande dans un scénario:

#[Multimédia][BureauTTS][Custom Cmd]#

avec par exemple en custom Cms:

`"action": "customsounds", "value":  "tout_eteint.mp3", "volume": 80`

avec dans le scénario des actions après #[Multimédia][BureauTTS][Custom Cmd]#
le scénario n’attends pas la fin du mp3 pour se dérouler, je dois donc mettre un sleep de la durée du Mp3 joué :woozy_face:.
Je vais devoir chronométrer tous mes Mp3 (un paquet!!) !!
y a-t-il un autre moyen que la cde « sleep » pour faire attendre la finj du Mp3 ?
Bon ce n’est pas critique du tout mais une idée ?
en tout cas merci pour le plugin.

Bonjour @Kerdale,

Ah… voilà une bonne question :slight_smile:

Vive le multitâche :stuck_out_tongue:

Alors pour répondre à ton besoin, je te propose de jouer avec le paramètre Cast Media State qui t’indique quel est l’état actuel de l’équipement Google (en train de jouer, en train de dormir, en plein buffering, etc… :wink: )

Voici un exemple qui devrait répondre à ton besoin (enfin j’espère, si j’ai bien compris ce besoin) :

le premier sleep(3) c’est pour laisser le temps à ton équipement de se mettre à jour sinon la condition d’en dessous est d’office remplie et ca passe à la suite…

la commande wait c’est celle qui t’intéresse, couplée à l’état de ton google home Cast Media State

Les valeurs sont à adapter en fonction de ton environnement (notamment la vitesse de ton jeedom à prendre contact avec le google home, celui-ci a changer d’état etc…)

et l’état ‹ UNKNOWN › que je teste, c’est dans cet état que sont mes équipements Google quand ils ne font rien, je te laisse adapter cette valeur en fonction de ce que tu pourras voir sur le dashboard comme état sur ton équipement correspondant :wink:

Est-ce que cela répond à ce que tu voulais faire ? Sinon met nous un exemple de scénario et on pourra regarder.

Bonne journée,
TiTidom.

Bonjour,
Merci beaucoup @TiTidom pour avoir repris le plugin.
Je suis en train de basculer toutes mes commandes de Google Cast vers TTS Cast.
J’ai une question sur le statut de l’équipement.
Avant, nous avions un statut d’occupation 0/1.
Avec ce nouveau plugin, nous avons Cast Media State avec comme valeur UNKNOWN lorsque l’équipement n’est pas occupé.
Mais comment l’intégrer dans un virtuel comme not(#[Salon][Google Home][Cast Media State]# matches « /UNKNOWN/ ») ou alors peut-on avoir une commande info 0/1 ?

Merci par avance.

Bonjours , OUARZA
Pour ma part j’ ai repris la valeur dans un virtuel qui me donne un état 1 ou 0
Info vituel
#[Multimédia][Salle à manger][Cast Media State]# == 'UNKNOWN' ? 1: 0
avec cela si ton appareil ne fait rien tu aura a valeur 1 sinon 0.

Bien a toi

Doud

Super, merci Doud, c’est le formatage qu’il me manquait :slight_smile:

Mille Merci, pile poil ce dont j’avais besoin, j’étais dans la bonne direction mais je n’avais pas tenu compte du délais que met Jeedom pour passer de « unknown » à « playing » !! j’ai vérifié 2 sec trop court, 3 sec impec.
Par contre dans un scénario, je bute sur faire diffuser un son en Custom Cmd:
avec : « action »: « customsounds », « value » : « 3.sdj.1.mp3 » , « volume »: 40
cela fonctionne impeccablement seulement le nom du Mp3 est écrit en dur dans la commande.
J’essaye soit de mettre ce nom dans une variable ce qui donnerai par exemple

"action": "customsounds",  "value" : variable(son_du_jour_1) , "volume": 40

ou avec une cde info virtuelle type autre qui a comme contenu: 3.sdj.1.mp3
ce qui donnerai:

"action": "customsounds",  "value" : #[Multimédia][sons du jour][son-du-jour-1]# , "volume": 40

ça ne fonctionne pas, je dois faire une erreur de syntaxe parce que je crois me souvenir
qu’avec un de mes essais du début cela avait fonctionné.
Là j’ai une erreur générique:
Commande Action non implémentée actuellement
Mais est-ce simplement possible ?

Salut,

J’avoue que je ne l’ai jamais utilisé de cette manière, mais il n’y a pas de raison que cela ne fonctionne pas à première vue.

Dans la syntaxe de ta ligne, as tu essayé de mettre des " autour de la valeur, car pour la sortie c’est important, sinon ce n’est pas compris par le moteur du plugin et cela génère l’erreur que tu as eu :slight_smile:

exemples à tester :

"action": "customsounds",  "value" : "variable(son_du_jour_1)" , "volume": 40
"action": "customsounds",  "value" : "#[Multimédia][sons du jour][son-du-jour-1]#" , "volume": 40

TiTidom.

Hello @TiTidom ,
Je n’ai pas vu dans la doc la possibilité de reprendre le niveau du volume d’avant le lancement de la commande. Est-ce automatique du coup ?

Hello @OUARZA ,

Si tu indiques un volume différent de celui avant diffusion (via le paramètre « volume » : 30 par ex.), automatiquement il remettra le volume d’avant après la diffusion :slight_smile:

Bonne journée,
TiTidom.

1 « J'aime »

@Kerdale, j’utilise un tag pour lire aléatoirement des chants d’oiseaux pour mon réveil, et cela fonctionne très bien.
Voici ma commande

"action": "customsounds", "value": "Foret_#exemple#.mp3"

@TiTidom ,
Vas-tu intégrer Spotify dans le plugin ?

Bien vu, ma syntaxe était en cause pour le premier exemple:

"action": "customsounds",  "value" : "variable(son_du_jour_1)" , "volume": 40

avec les quote " " ça fonctionne impec.
Par contre ça ne fonctionne pas avec le second exemple :

"action": "customsounds",  "value" : "#[Multimédia][sons du jour][son-du-jour-1]#" , "volume": 40

ça fait toujours le même erreure: cde non implémentée.
Mais pour moi c’est OK avec la variable.
C’est super, cela me permet avec un seul scénarion de diffuser le paquet de Mp3 que j’ai enregistré.
Merci TTdom, ton assistance est 5 :star:

1 « J'aime »