Aller au contenu

Messages recommandés

Posté(e)

la syntaxe est elle bonne ? car j'ai un message d'erreur lorsque je mets ton code dans une scene ... peut importe la variable

Posté(e)

Tu parles du debug ou de tout le code ?

Si c'est tout le code il ne faut pas le mettre dans une scène mais dans un module virtuel !

Si c'est le debug essaye ça -> fibaro:debug(notification)

Posté(e)

ok je n'avais jamais utilisé le debug dans un device virtuel .. il faut un début à  tout lol

le debug (notification) donne cela

 

[DEBUG] 17:40:22: 23.8

 
après traitement avec ton code , j'ai ceci
[DEBUG] 17:47:38: degré degré degré degré
 
 
Il ne semble pas possible d'afficher directement dans le debug fibaro:debug(TempEnOVeranda) donc une varibale globale car j'ai un message d'erreur à  chaque fois
Posté(e)

Ok ;)

 

Alors allons-y doucement et par étape. Ajoute ça après ce debug :

fibaro:debug(notification)  --ici c'est le debug qui t'as donné 23.8
local notification = string.gsub((notification),".", " degré "); 
fibaro:debug(notification)

Et dis moi ce que retourne le debug.

 

Normalement le debug devrait te retourner :

[DEBUG] 17:51:22: 23 degré 8

Posté(e)

et bien non il donne 

 

[DEBUG] 17:47:38: degré degré degré degré

 

j'ai déjà  eu le coup sur un arduino et je ne m'en suis jamais sorti ...

Posté(e)

La ruse fonctionne (mais je ne dois pas parler trop fort...)   ;)

 

Bon alors j'ai fait le test et le remplacement du "." déconne. Un truc doit nous échapper...

 

Pour contourner le problème je te propose de découper ta variable en prenant les 2 premiers digits "23" puis le dernier "8" et d'y insérer le mot "degré" (sans l'accorder et avec des espaces avant et après). Ca donne ça :

notification = string.sub(TempEnOVeranda, 1 , 2) .. ' degré ' .. string.sub(TempEnOVeranda, -1 )
fibaro:debug(notification)

Tu peux pousser plus loin en améliorant la valeur de "notification" en ajoutant ça :

notification = "Il fait " .. string.sub(TempEnOVeranda, 1 , 2) .. ' degré ' ..string.sub(TempEnOVeranda, -1 ) .. " dans la véranda"
-- on vire les espaces
local notification = string.gsub((notification)," ", "%%20");

Et là , tu auras une TTS qui annoncera fièrement : "Il fait 23 degré 8 dans la véranda"

 

La classe ;)

 

Dis moi si ça roule de ton côté.

Posté(e)

j'ai ce message d'erreur

[ERROR] 18:37:40: line 15: bad argument #1 to 'sub' (string expected, got nil)

 
 
la ligne 15 est la ligne 2 de ton code
Posté(e)

C'est un problème de format de variable. Ta température est un "number" il faut la passer en "string" :

 

Transforme ça :

notification = string.sub(TempEnOVeranda, 1 , 2) .. ' degré ' .. string.sub(TempEnOVeranda, -1 )

en ça :

notification = string.sub(tostring(TempEnOVeranda), 1 , 2) .. ' degré ' .. string.sub(tostring(TempEnOVeranda), -1 )
Posté(e)

la dame dit n'importe quoi lol je sais bien que c'est l'heure de l'apero mais quand meme ...

 

[DEBUG] 19:22:49: ni degré l

Posté(e)

Bon ben on va passer par une variable locale alors :

local ValeurTemp = fibaro:getGlobalValue ('TempEnOVeranda')
notification = string.sub(ValeurTemp, 1 , 2) .. ' degré ' .. string.sub(ValeurTemp, -1 )

Dis moi que ça roule là  !  :huh:

Posté(e)

Je reviens avec une autre question ...  :15:

J'essaie de diffuser le message sur une Squeezbox sur un Raspberry (Squeezplug)

Le message est bien envoyé mais la restitution de fait version 78 tours ........

Posté(e)

Ha... j'ai déjàeu ça 1 fois sur une squeezeboxes radio. Je l'ai relancée et ça n'est plus arrivé. Parfois elle émettait un son pourri comme dans un scafandrier...

Depuis que j'ai relancé (il y a 4 ou 5 mois) le serveur LMS sur mon NAS je n'ai plus eu ce bug.

Après si ça continue, ça peut être un bug àl'installation sur le raspberry.

Posté(e)

Ha... Je vois pas alors.

Quelques tests :

En tapant directement le lien dans ton navigateur sur PC ça joue le TTS normalement ?

À tout hasard, est-ce qu'un MP3 se joue normalement sur le raspberry ?

  • 9 mois après...
Posté(e)

Salut JossAlf, si la squeezebox est en train de jouer un morceau (Spotify ou Radio), y a t-il un moyen qu'elle le reprenne après l'annonce ?

Encore merci pour le partage. :)

Posté(e)

Je pense que c'est possible en jouant avec les playlists. Mais je n'ai jamais fait l'effort de chercher jusqu'au bout. :(

Envoyé de mon iPhone àl'aide de Tapatalk

Posté(e)

Hello,

Oui c'est possible, sur la Vera j'avais récupéré & modifié un script qui faisait ça.

 

En gros ça enregistre l'état de la Squeezebox (allumée/éteinte, volume, playlist en cours) et ça le rétablit après l'annonce.

Mais j'avais des bugs donc j'avais laissé tomber au profit d'un Karotz...

 

Là  je passe sur HC2, donc j'y vois un nouvel intérêt :)

 

PI, voici le script : 

http://forum.micasaverde.com/index.php?topic=6952.0

Posté(e)

Je vais y jeter un coup d'œil mais c'est pas avec mes connaissances en Lua que je vais faire des étincelles

Sait-on jamais !!!

  • 3 mois après...
Posté(e)

Merci pour ce tuto, j'y arrive presque.

La commande du VD est bien envoyée à  LMS sur mon nas, mais aucun son ne sort.(avec une web radio ça marche)

post-1128-0-12305400-1439835839_thumb.png

 

Quand je copie le lien dans mon navigateur sur mon pc (http://translate.google.com/translate_tts?tl=FR&ie=UTF-8&q=Hello%20World), j'ai cette erreur:

post-1128-0-67370100-1439835837_thumb.png

 

Quand je met le texte capcha le tts marche sur mon pc.

Je me demande si google "laisse" passé cette commande via LMS du nas?

×
×
  • Créer...