Aller au contenu

Rechercher dans la communauté

Affichage des résultats pour les étiquettes 'tts'.



Plus d’options de recherche

  • Rechercher par étiquettes

    Saisir les étiquettes en les séparant par une virgule.
  • Rechercher par auteur

Type du contenu


Forums

  • Bienvenue
    • Annonces et suggestions
    • Nouveau ? Présentez-vous
    • Le bistrot
    • Mon installation domotique
    • Autres Solutions Domotiques
  • La HC2 et ses périphériques
    • La Home Center pour les nuls
    • Home Center 2 & Lite
    • Modules Fibaro
    • Modules Z-wave
    • Périphériques et matériels autres
    • Plugins
    • Alarme & Vidéo-surveillance
    • Multimédia
    • Chauffage et Energie
    • Actionneurs & Ouvrants (Portail, volets...)
    • Eclairage
    • Applications Smartphones et Tablettes
    • English Section
  • Les objets connectés
    • Les Assistants Vocaux
  • Fibaro's Awards
    • Membre du mois
    • Jeux concours & Cadeaux
  • Les bonnes affaires
    • Sites internet
    • Petites annonces

Rechercher les résultats dans…

Rechercher les résultats qui…


Date de création

  • Début

    Fin


Dernière mise à jour

  • Début

    Fin


Filtrer par nombre de…

Inscription

  • Début

    Fin


Groupe


Jabber


Skype


Ville :


Intéret :


Version

4 résultats trouvés

  1. SONOS Remote V1.0.1 RC pour Fibaro HC2 Télécommande avec retour d’informations pour diffuseur SONOS, prise en charge du TTS (Text-to-Speech) et lecture de stream depuis vos scènes et périphériques virtuels. - Les fonctions : Play, Pause, Stop, Prev, Next, Seek, Volume, Mute, Loudness, Accès direct aux 5 premières radios de “Mes radiosâ€. - Les informations : Zone, Etat du diffuseur, Position, Titre ou Nom de la radio, Artiste, Album, Volume, Loudness, dernière commande émise. Installation : A partir de la version 1.0.0 beta: 1. Télécharger puis importer le vd. 2. Renseigner l’adresse IP du diffuseur SONOS (le coordinateur) dans le vd ainsi que le port 1400 3. Pour utiliser la fonction TTS VoiceRSS il faut une API Key, pour l'enregistrement (gratuit) c'est ici http://www.voicerss.org/registration.aspx 4. Renseigner la variable voiceRssApiKey avec la clé, choisir un niveau de qualité sonore pour la generation avec voiceRssSoundQuality: low, medium, high UserParams = { -- Voice RSS API Key (Free Registration: http://www.voicerss.org/registration.aspx) voiceRssApiKey = "000000000000000000000000000", -- Sound quality: low, medium, high voiceRssSoundQuality = "medium" } 5. Enregistrer les modifications, c'est bon... Utilisation : TTS : Pour utiliser le TTS depuis une scène ou un périphérique virtuel il faut juste exécuter le code LUA suivant avec les bons paramètres. -- 408 is the Virtual Device ID -- 28 is the Process button ID local sid, bid = 408, 28 -- Create TTS params object local params = { -- TTS Message message = "La température extérieure actuelle est de 21,2°C", duration = 'auto', -- Duration: "auto", xx seconds language = "fr-FR", -- Language: fr-FR volume = 10 -- 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) Les options de l'objet params: - message: le message tts - language: la source du flux (http ou local, local est attribué par défaut) - duration: durée du tts. (en secondes ou "auto") - volume: le volume utilisé pour la lecture du tts si différent du volume en cours d'utilisation Le programme en cours de diffusion au moment de la demande reprendra après la diffusion complète du TTS. Reprise de la radio, de la piste à l’endroit précis avant arrêt, reprise de l’état du diffuseur : Volume, Mute, Play, Stop. STREAM: Pour utiliser la lecture de Stream depuis une scène ou un périphérique virtuel il faut exécuter le code LUA suivant avec les bons paramètres. -- 408 is the Virtual Device ID -- 28 is the Process button ID local sid, bid = 408, 28 -- Create STREAM params object local params = { -- stream: the file / uri stream = "//s3.amazonaws.com/smartapp-media/sonos/bell1.mp3", -- source: "local" or "http", "local" is setted by default source = "http", -- duration: play duration in seconds (option) or "auto" duration = 8, -- volume: the volume for playing the stream volume = 10 } 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), { stream = params }) _f:call(sid, "pressButton", bid) Les options de l'objet params: - stream: le chemin du flux - source: la source du flux (http ou local, local est attribué par défaut) - duration: durée du stream. (en secondes ou "auto") - volume: le volume utilisé pour la lecture du flux si différent du volume en cours d'utilisation Quelques exemples: Annoncer la température dans une scène : --[[ %% properties %% globals --]] -- 408 is the Virtual Device ID -- 28 is the Process button ID local sid, bid = 811, 28 -- Create TTS params object local ValeurTemp = fibaro:getValue(61, "value") local degre = string.gsub(ValeurTemp, '[,]' , ' degret ') local degre = string.gsub(degre, '[.]' , ' degret ') local degre = string.gsub(degre, '[-]' , ' moins ') local notification = "Il fait " .. degre .. " dans le salon " fibaro:debug(notification) local params = { -- TTS Message message = notification, duration = 'auto', -- Duration: "auto", xx seconds language = "fr-FR", -- Language: fr-FR volume = 23 -- 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) Annoncer la valeur d'une variable : --[[ %% properties %% globals --]] local sid, bid = 813, 28 -- Create TTS params object local couleur = fibaro:getGlobalValue("le nom de ta variable") local notification = ("La couleur de demain sera "..couleur.." Bonne journée") fibaro:debug(notification) local params = { -- TTS Message message = notification, duration = 'auto', -- Duration: "auto", xx seconds language = "fr-FR", -- Language: fr-FR volume = 23 -- 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) Annoncer la date du jour, la température extérieure et la météo : -- 239 is the Virtual Device ID -- 28 is the Process button ID local sid, bid = 239, 28 local cond = fibaro:getValue(3, "WeatherConditionConverted"); local tempext = fibaro:getValue(33, "value"); -- température extérieure fibaro:debug ("Température extérieure : "..tempext) local degre = string.gsub(tempext, '[,]' , ' degré ') local degre = string.gsub(degre, '[.]' , ' degré ') local degre = string.gsub(degre, '[-]' , ' moins ') local currentDate = os.date("*t") local jourL = {"Dimanche", "Lundi", "Mardi", "Mercredi", "Jeudi", "Vendredi", "Samedi"} local jour = jourL[currentDate.wday] fibaro:debug ("Jour : "..jour) local moisL = {"janvier", "février", "mars", "avril", "mai", "juin", "juillet", "aout", "septembre", "octobre", "novembre", "décembre"} local mois = moisL[currentDate.month] fibaro:debug ("Mois : "..mois) 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 fibaro:debug ("Conditions météorologiques : "..condfr) fibaro:debug ("Création du TTS") -- Create TTS params object local params = { -- TTS Message message = "Bonjour a vous. Nous sommes le "..jour .." "..currentDate.day .." "..mois .. ". Il est ".. currentDate.hour .." heure et ".. currentDate.min .." minutes. ".. "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) Notes de versions: Version 1.0.1 Rc - Correction: régression introduite avec la V4.080 impactant la création automatique de la variable globale Version 1.0.0 beta ATTENTION: Le passage d'une version antérieure à la v1.0.0 pour la v1.0.0 ou supérieure nécessite la réécriture des commandes TTS pour fonctionner avec le nouveau module. L'ancien module reste cependant fonctionnel et peut cohabiter logiquement avec la nouvelle version. En cas de passage définitif en V1.0.0 ou supérieure toutes les variables globales déclarées précédemment en V0.0.7 ou V0.0.8 peuvent être supprimées. - Amélioration : Configuration automatique, pas de déclaration de variables globales - Amélioration : Support natif de multiples instances du périphérique virtuel - Amélioration : Faible latence lors du déclenchement des commandes - Amélioration : Révision et amélioration du code / Refactoring - Ajout: Le TTS utilise le service Voice RSS (avec une API Key (enregistrement gratuit)) ou ResponsiveVoice API. Options: durée, volume, auto resume - Ajout: Lancement de Stream (http / local) depuis scéne / vd. Options: durée, volume, auto resume Version 0.0.8 - Amélioration : La lecture d'un TTS en mode Auto Stop est maintenant stable - Amélioration : La lecture d'un TTS avec une durée définie est maintenant stable - L'image principale du vd réapparaît maintenant automatiquement après l'appui sur un bouton (Labomatik & JM13, merci ) - Correction d'un bug avec l'analyse xml de BrowseDirectChildren - Attention: Pour utiliser les raccourcis "boutons radios favorites" vous devez ajouter au moins deux radios depuis l'application SONOS "Desktop/IOS etc..." Version 0.0.7 - Amélioration notable de la stabilité, le vd est plus réactif. - Patch line 892: attempt to index local 'value' (a function value) - Patch line 1256: attempt to concatenate a nil value - Préparation au support de nouvelles fonctionnalités Fichier Zip : SONOS_Remote_v1.0.1.vfib SONOS_Remote_v1.0.0.vfib
  2. Salut, Après Jeedom et eedomus, je projette éventuellement d'intégrer l'API des boxs Fibaro dans JPI (anciennement nommé Jeedom Paw Interface). Pour ceux qui ne connaissent pas JPI, il s'agit d'un petit contrôleur domotique HTTP sur android, capable d’effectuer des scénarios sur des événements entrants, et pouvant effectuer tout un tas d'actions contrôlées via HTTP. (sms & appels entrants / sortants, reco vocal, detection mvt, caméra, capteurs...). Il est totalement gratuit (sans pub) et administrable via une page web. Le topic d'origine est ici : https://www.jeedom.com/forum/viewtopic.php?f=27&t=18283&p=515233#p515223 (topic trop long, désolé) Le lien vers la dernière version de l'apk est ici : https://www.jeedom.com/forum/viewtopic.php?f=27&t=18283&p=469610#p469388 Pour l'instant il n'y a pas de doc, uniquement quelques tutos par ci par là sur le web. La doc viendra un jour, ce sera pour la v1, quand je serais sur que l'app est mature et que toutes les fondations sont defs. Dans un premiers temps j'aurais quelques questions (j'ai pas de box Fibaro et je ne les connais pas) - les box HC2/HCL répondent t-elles au ping sur le réseau local ? - Y'a t-il une page d’accueil web en local, et si oui est-t-elle directement sur http://IP-de-la-box ? - J'ai cru voir que concernant l'API HTTP c'est exactement pareil pour les 2 box (je parle bien de l'api http, pas du LUA), vous confirmez ? - J'ai un peu du mal avec ce que je trouve sur le net, il n'y a pas de doc officielle concernant l'api http ? En attendant j'ai trouvé ça : http://tutoriels.domotique-store.fr/content/49/45/fr/api-commander-le-home-center-par-des-requêtes-http.html J'en ai donc déduis une liste des fonctions principales JPI que je vais pouvoir créer : SET: * hc_turnOff * hc_turnOn * hc_setValue * hc_setAjar * hc_setColor * hc_setSlider * hc_stop * hc_startProgram * hc_pressButton * hc_sceneStart * hc_sceneStop * hc_setTargetLevel * hc_setTime GET: * hc_getValue (menu déroulant: rooms, scenes, devices, device id...) Selon vous manque-t-il des trucs dans la liste ? Tout est-il compatible hc2 / hcl ? Si il manque des fonctions typiques pour hc2 je peux les faire commencer par hc2_ afin de les identifier comme uniquement pour hc2 Pour les variables est-ce utile de faire une fonction pour les contrôler ? Voila pour le moment. Merci !
  3. frixo

    TTS

    Bonjour petite question, j'aimerais bien avoir un moyen de faire parler un truc (genre mon googleHome, ou autre chose) pour faire un retour d'état de temps à autre. Genre : Attention, le fer est allumé depuis 20min ! une idée ? cdt
  4. OJC

    VD Sonos TTS Remote

    VD Sonos TTS Remote v. 1.0.0 - 06/01/2018 Je vous présente le VD Sonos TTS Remote, qui requiert impérativement pour fonctionner le SONOS Remote V1.0.1 RC pour Fibaro HC2 de @Krikroff. Le but de ce VD est de disposer de favoris pour faire du TTS avec les Sonos ainsi que d'un clavier pour une utilisation dynamique : Sonos_TTS_Remote.vfib Pour le fonctionnement du clavier, il faut renseigner le champ Port du VD avec le nombre de secondes au-delà un clic sur le bouton insère un nouveau caractère. Il n'y a aucun autre paramétrage à effectuer, le VD identifie automatiquement les VD SONOS Remote V1.0.1 RC pour Fibaro HC2 présents sur la box pour interagir avec eux. Il y a deux boutons Favoris, mais vous pouvez en rajouter autant que nécessaire en faisant un copier-coller du code : local SonosTTS={credits="Sonos TTS Remote v. 1.1.0 - Copyright 2018 Olivier Meyer - GNU GPLv3",f=fibaro,global="x_sonos_tts",button="btnTransmission",language="fr-FR",duration="auto",getRemoteId=function(s)local x=s.f:getGlobalValue(s.global)if string.len(x or "")>0 then x = json.decode(x)if x and type(x)=="table" then if x.remote then return true, x.remote end end end return false,"[Sonos TTS Remote] Unable to retrieve Sonos TTS Remote ID from x_sonos_tts, please check variable" end,setTTS=function(s,i,m,v,l,d)local x=s.f:getGlobalValue(s.global)if string.len(x or "")>0 then x = json.decode(x)if x and type(x)=="table" then x.tts={};x.tts.sonos=i;x.tts.message=m;x.tts.volume=v;x.tts.language=l or s.language;x.tts.duration=d or s.duration;s.f:setGlobal(s.global,json.encode(x));return true end end return false, "[Sonos TTS Remote] Unable to set x_sonos_tts, please check variable" end,getBtn=function(s,i,n)local c,r=0,api.get("/devices/"..tostring(i))["properties"]["rows"] local x=#r for a=1,x do local y=#r[a].elements for b=1,y do c=c+1 if n==r[a].elements[b].name then return c end end end s.f:debug("[Sonos TTS Remote] Unable to locate button "..n..", check virtual device "..i);return nil end,sendTTS=function(s,i,m,v,l,d)r,c=s:setTTS(i,m,v,l,d)if r then r,c=s:getRemoteId()if r then s.f:call(tonumber(c),"pressButton",s:getBtn(c,s.button))return end end s.f:debug(c)end,} local _f = fibaro local _i = _f:getSelfId() local getSonos=function()local _c=_f:getValue(_i,"ui.lblSonos.value");local _x=_f:getGlobalValue("x_sonos_tts")if string.len(_x or "")>0 then _x=json.decode(_x)if _x and type(_x)=="table" then if _x.sonos then for i,j in ipairs(_x.sonos)do if _c==j.name then return j.id end end return nil end end end end local sid = getSonos() local message = "Votre message" local volume = _f:getValue(_i,"ui.sliderVolume.value") local language = "fr_FR" local duration = "auto" _f:call(_i, "setProperty", "ui.favo.value", message) SonosTTS:sendTTS(sid, message, volume, language, duration) A noter, bien que le VD de @Krikroff se suffise à lui-même pour cela, que ce code est du coup fonctionnel dans n'importe quelle scène ou module virtuel, de la manière suivante : local SonosTTS={credits="Sonos TTS Remote v. 1.1.0 - Copyright 2018 Olivier Meyer - GNU GPLv3",f=fibaro,global="x_sonos_tts",button="btnTransmission",language="fr-FR",duration="auto",getRemoteId=function(s)local x=s.f:getGlobalValue(s.global)if string.len(x or "")>0 then x = json.decode(x)if x and type(x)=="table" then if x.remote then return true, x.remote end end end return false,"[Sonos TTS Remote] Unable to retrieve Sonos TTS Remote ID from x_sonos_tts, please check variable" end,setTTS=function(s,i,m,v,l,d)local x=s.f:getGlobalValue(s.global)if string.len(x or "")>0 then x = json.decode(x)if x and type(x)=="table" then x.tts={};x.tts.sonos=i;x.tts.message=m;x.tts.volume=v;x.tts.language=l or s.language;x.tts.duration=d or s.duration;s.f:setGlobal(s.global,json.encode(x));return true end end return false, "[Sonos TTS Remote] Unable to set x_sonos_tts, please check variable" end,getBtn=function(s,i,n)local c,r=0,api.get("/devices/"..tostring(i))["properties"]["rows"] local x=#r for a=1,x do local y=#r[a].elements for b=1,y do c=c+1 if n==r[a].elements[b].name then return c end end end s.f:debug("[Sonos TTS Remote] Unable to locate button "..n..", check virtual device "..i);return nil end,sendTTS=function(s,i,m,v,l,d)r,c=s:setTTS(i,m,v,l,d)if r then r,c=s:getRemoteId()if r then s.f:call(tonumber(c),"pressButton",s:getBtn(c,s.button))return end end s.f:debug(c)end,} local sid = -- id du VD correspondant au Sonos à utiliser local message = -- votre message local volume = -- le volume à utiliser local language = -- la langue à utiliser, paramètre optionnel à défaut duquel "fr_FR" qui est utilisé local duration = -- la durée à utiliser, paramètre optionnel à défaut duquel "auto" qui est utilisé SonosTTS:sendTTS(sid, message, volume, [language], [duration]) Voici les icônes, respectivement l'icône principale du VD qui est aussi prévue pour aller sur les boutons du clavier et le slider du volume, l'icône pour les boutons de sélection du Sonos, l'icône pour les boutons des favoris et l'icône pour le bouton Transmission : CREDITS Outre, bien évidemment, @Krikroff et son VD Sonos Remote sans lequel le présent VD serait sans le moindre intérêt, @seiq et son VD Keyboard publié sur le forum officiel.
×