Aller au contenu

13013

Membres confirmés
  • Compteur de contenus

    25
  • Inscription

  • Dernière visite

Réputation sur la communauté

6 Neutral

À propos de 13013

  • Rang
    Nouveau
  • Date de naissance 13/08/1974

Profile Information

  • Sexe :
    Homme
  • Ville :
    lyon
  • Box
    Home Center 2
  • Version
    4.530

Visiteurs récents du profil

261 visualisations du profil
  1. nouvelle clé ... et ça cause . Merci.
  2. Impec[emoji108]
  3. Tu as toutes les propriete du module YR weather lorsque tu fais une scene dans la liste des périphériques (non assigné ).id 3. Envoyé de mon iPhone en utilisant Tapatalk
  4. Oui par exemple en remplacant par local tempext = fibaro:getvalue(3, "Temperature"); Envoyé de mon iPhone en utilisant Tapatalk
  5. Bonjour, il faut juste corriger la value de ta variable local cond = "weathercondition" et non plus "weatherconditionconverted" ce qui donne: local cond = fibaro:getValue(3, "WeatherCondition"); Envoyé de mon iPhone en utilisant Tapatalk
  6. oui le timeout permet de passer les commandes lentement, sinon comme tu l'a remarqué c'est trop rapide. J'ai le meme problème avec du stream + TTS. Je pense que je vais m'intéresser au GEA. mais avant, @ i-magin, je vais me remettre a table.
  7. Une scene que j'ai mis dans ma salle d'eau qui lorsque j'allume la lumière (fgd212) met en route ma Play1 sur une radio deja présélectionné. Mais surtout règle le son a un volume raisonnable (desfois que l'on se soit "lâché"). --[[ %% properties 153 value %% globals --]] local startSource = fibaro:getSourceTrigger(); local Maintenant = os.date( "*t" ) --de 7h a 21h59 lumière a 100% et musique sinon lumière 30% sans musique if ( ( Maintenant['hour'] >=7 and Maintenant['hour'] <=21 ) ) then if ( ( tonumber(fibaro:getValue(153, "value")) > 0 ) or startSource["type"] == "other" ) then fibaro:call (153, 'setValue' , '100');-- plafonnier fibaro:call(172, "setSlider", "15", "12");--volume preregler a 12 sonos setTimeout(function() fibaro:call(172, "pressButton", "7");--sonos play end, 1000) end else if ( tonumber(fibaro:getValue(153, "value")) > 0 ) then fibaro:call (153, 'setValue' , '30') end end if ( ( tonumber(fibaro:getValue(153, "value")) == 0 and fibaro:getValue(172, "ui.lblDebug.value") == "Play")) then fibaro:call(172, "pressButton", "9") --sonos stop end Ce sont des scene que j'ai fait a la va vite, toute optimisation est la bien venue.
  8. @yohan, j'avais le même soucis répétition deux ou trois fois avec la V0.08 mais avec la V0.01 peut être que la durée auto y fait quelque chose.A la création d'autre tts j'ai une répétition du premier mot mais c'est aléatoire. Envoyé de mon iPhone en utilisant Tapatalk
  9. pas de souci au contraire, les tables sont mieux que les IF.
  10. @jojo, Comme on a deja déclaré la variable au debut local currentDate = os.date("*t"); il suffit de rajouter dans le message ceci par exemple: Il est "..currentDate.hour.." heure "..currentDate.min.." minute.
  11. @did, code épuré pour un bouton VD. local currentDate = os.date("*t"); local cond = fibaro:getValue(3, "WeatherConditionConverted"); local tempext = figaro:getValue(63, "value"); -- température extérieure local degre = string.gsub(tempext, '[,]' , ' degré ') local degre = string.gsub(degre, '[.]' , ' degré ') local degre = string.gsub(degre, '[-]' , ' moins ') local jour =""; if( os.date("*t").wday == 2 ) then jour = "Lundi"; end if( os.date("*t").wday == 3 ) then jour = "Mardi"; end if( os.date("*t").wday == 4 ) then jour = "Mercredi"; end if( os.date("*t").wday == 5 ) then jour = "Jeudi"; end if( os.date("*t").wday == 6 ) then jour = "Vendredi"; end if( os.date("*t").wday == 7 ) then jour = "Samedi"; end if( os.date("*t").wday == 1 ) then jour = "Dimanche"; end local mois =""; if( os.date("*t").month == 1 ) then mois = "janvier"; end if( os.date("*t").month == 2 ) then mois = "fevrier"; end if( os.date("*t").month == 3 ) then mois = "mars"; end if( os.date("*t").month == 4 ) then mois = "avril"; end if( os.date("*t").month == 5 ) then mois = "mai"; end if( os.date("*t").month == 6 ) then mois = "juin"; end if( os.date("*t").month == 7 ) then mois = "juillet"; end if( os.date("*t").month == 8 ) then mois = "aout"; end if( os.date("*t").month == 9 ) then mois = "septembre"; end if( os.date("*t").month == 10) then mois = "octobre"; end if( os.date("*t").month == 11) then mois = "novembre"; end if( os.date("*t").month == 12) then mois = "décembre"; end local condfr =""; if( cond == "clear" ) then condfr = "clair"; end if( cond == "cloudy" ) then condfr = "nuageux"; end if( cond == "rain" ) then condfr = "pluvieux"; end if( cond == "snow" ) then condfr = "neigeux"; end if( cond == "storm" ) then condfr = "tempete"; end if( cond == "fog" ) then condfr = "brouillard"; end -- 534 is the Virtual Device ID -- 28 is the Process button ID local sid, bid = 534, 28 -- Create TTS params object local params = { -- TTS Message message = "Bonjour a vous. Nous sommes le "..jour .." "..currentDate.day .." "..mois ..". Le thermomètre extérieur est a "..degre ..", et le temps est "..condfr ..". ", duration = 'auto', -- Duration: "auto", xx seconds language = "fr-FR", -- Language: fr-FR volume = 40 -- Volume } local _f = fibaro local _x ={root="x_sonos_object",load=function(b)local c=_f:getGlobalValue(b.root)if string.len(c)>0 then local d=json.decode(c)if d and type(d)=="table"then return d else _f:debug("Unable to process data, check variable")end else _f:debug("No data found!")end end,set=function(b,e,d)local f=b:load()if f[e]then for g,h in pairs(d)do f[e][g]=h end else f[e]=d end;_f:setGlobal(b.root,json.encode(f))end,get=function(b,e)local f=b:load()if f and type(f)=="table"then for g,h in pairs(f)do if tostring(g)==tostring(e or"")then return h end end end;return nil end} -- Make a request to the remote to process params object instantly _x:set(tostring(sid), { tts = params }) _f:call(sid, "pressButton", bid) Reste a changer le texte du message.
  12. @Did, peu être que dans ton cas tu n'as pas besoin de la ligne 43 qui lance la scene SI lundi au vendredi ET 7h03, comme j'ai vue que tu utilise des boutons dans un VD.Les commentaires ligne 52 et 53 sont àsupprimer aussi. C'était un essai pour associer Stream et TTS dans la meme scene mais il faut que je temporise.
  13. @did, j'ai crée une variable prédéfinie matnuit = matin ou nuit. Plus deux petites scenes bloc qui l'une le matin a 07h03 met la variable matnuit=matin et l'autre le soir a nuit. Lorsque la variable passe a matin elle déclenche la scene d'ou ton erreur de trigger. Mais la scene peu être déclenchée par autre chose c'est une des solutions que j'ai trouvée pour déclencher a une heure precise. J'ai aussi dans la scene une variable calendrier qui est dans le "If", a supprimer.
  14. bonsoir,j'en profite pour tester les nouvelles fonctionnalités et je voulais rajouter un son de chant du coq en stream.Séparément dans deux scenes différentes pas de souci mais des que je l'intègre dans ma scene, sonos n'a pas le temps de lire le son, qu'il bascule deja sur le TTS.peu être avez vous une idée. Mais c'est juste pour le fun. Est-il possible de créer un groupe via les VD avant la diffusion du stream ou TTS. Dans tout les cas ce VD me satisfait largement. --[[ %% properties %% globals matnuit --]] local startSource = fibaro:getSourceTrigger(); local currentDate = os.date("*t"); local cond = fibaro:getValue(3, "WeatherConditionConverted"); local tempext = fibaro:getValue(90, "value"); -- température exterieur Netatmo local degre = string.gsub(tempext, '[,]' , ' degré ') local degre = string.gsub(degre, '[.]' , ' degré ') local degre = string.gsub(degre, '[-]' , ' moins ') local jour =""; local calendrier = fibaro:getGlobal('calendrier'); local matnuit = fibaro:getGlobal('matnuit'); if( os.date("*t").wday == 2 ) then jour = "Lundi"; end if( os.date("*t").wday == 3 ) then jour = "Mardi"; end if( os.date("*t").wday == 4 ) then jour = "Mercredi"; end if( os.date("*t").wday == 5 ) then jour = "Jeudi"; end if( os.date("*t").wday == 6 ) then jour = "Vendredi"; end if( os.date("*t").wday == 7 ) then jour = "Samedi"; end if( os.date("*t").wday == 1 ) then jour = "Dimanche"; end local mois =""; if( os.date("*t").month == 1 ) then mois = "janvier"; end if( os.date("*t").month == 2 ) then mois = "fevrier"; end if( os.date("*t").month == 3 ) then mois = "mars"; end if( os.date("*t").month == 4 ) then mois = "avril"; end if( os.date("*t").month == 5 ) then mois = "mai"; end if( os.date("*t").month == 6 ) then mois = "juin"; end if( os.date("*t").month == 7 ) then mois = "juillet"; end if( os.date("*t").month == 8 ) then mois = "aout"; end if( os.date("*t").month == 9 ) then mois = "septembre"; end if( os.date("*t").month == 10) then mois = "octobre"; end if( os.date("*t").month == 11) then mois = "novembre"; end if( os.date("*t").month == 12) then mois = "décembre"; end local condfr =""; if( cond == "clear" ) then condfr = "clair"; end if( cond == "cloudy" ) then condfr = "nuageux"; end if( cond == "rain" ) then condfr = "pluvieux"; end if( cond == "snow" ) then condfr = "neigeux"; end if( cond == "storm" ) then condfr = "tempete"; end if( cond == "fog" ) then condfr = "brouillard"; end if ( ( ((currentDate.wday == 2 or currentDate.wday == 3 or currentDate.wday == 4 or currentDate.wday == 5 or currentDate.wday == 6) and string.format("%02d", currentDate.hour) .. ":" .. string.format("%02d", currentDate.min) == "07:03") and calendrier == "travail" and matnuit == "matin" ) or startSource["type"] == "other" ) then --fibaro:debug(jour) --fibaro:debug(condfr) --fibaro:debug(mois) --fibaro:debug(tempest) --insertion Stream scene chant du coq avant TTS --figaro:startScene(123) -- 171 is the Virtual Device ID -- 28 is the Process button ID local sid, bid = 171, 28 -- Create TTS params object local params = { -- TTS Message message = "bonjour les bob. Nous sommes le "..jour .." "..currentDate.day .." "..mois ..". Le thermomètre extérieur est a "..degre .." et le temps est "..condfr ..". ", duration = 'auto', -- Duration: "auto", xx seconds language = "fr-FR", -- Language: fr-FR volume = 40 -- Volume } local _f = fibaro local _x ={root="x_sonos_object",load=function(b)local c=_f:getGlobalValue(b.root)if string.len(c)>0 then local d=json.decode(c)if d and type(d)=="table"then return d else _f:debug("Unable to process data, check variable")end else _f:debug("No data found!")end end,set=function(b,e,d)local f=b:load()if f[e]then for g,h in pairs(d)do f[e][g]=h end else f[e]=d end;_f:setGlobal(b.root,json.encode(f))end,get=function(b,e)local f=b:load()if f and type(f)=="table"then for g,h in pairs(f)do if tostring(g)==tostring(e or"")then return h end end end;return nil end} -- Make a request to the remote to process params object instantly _x:set(tostring(sid), { tts = params }) _f:call(sid, "pressButton", bid) end
  15. excellent , TTS avec les accents, mes filles vont être contente demain matin de retrouver leur annonce (dates journalières et météo) au pti dej sur le Play 1 de la cuisine. Super merci krikroff
×