Aller au contenu

Messages recommandés

Posté(e) (modifié)

salut a tous 

 

me revoilà avec mon probleme de  A

 

@Steven  pour être  en phase avec ton code, pourrais-tu si possible de me communiquée le lien de ton dernier code

afin que je place le code suivant, sauf si il est déja a jours:

function Check(s)

	local str = string.match(s, "Ã%s")
	if str then
		i,j = string.find(s, "Ã%s")
		if i then return "à"..string.sub(s,j) end
	else
		return s
	end
end

merci d'avance

 

 

 

Modifié par 971jmd
Posté(e)
Il y a 16 heures, Steven a dit :

Faudra que je regarde ce soir si j'ai le temps car à la lecture du code cela devrait fonctionner mais à la lecture de ma mémoire ... paf ... c'est le blanc complet.

 

Je te tiens au courant dès que possible.

J'ai pas eu le temps et je suis pas là ce weekend ... sorry

Posté(e)

@STEVEN

Bonjour.

Auparavant avec la scène Lilli version 2, j’avais créé un VD  avec 2 boutons (Ouvrir & Femer) et les cdes une à une d’un groupe de volets roulant, ainsi une annonce vocale « fermer tous les volets » qui en synonyme correspond à mon VD et le bouton « fermer », me permettait de fermer les volets les uns après les autres en une seule action.

 Je crois comprendre que la version 3 de la scène Lilli permet de se passer de ce VD.

Dans ton post   

« https://www.domotique-fibaro.fr/topic/8309-google-home/?do=findComment&comment=177140

 tu dis « si tu souhaite éteindre toutes les lumières de la cuisine, il faut dire "OK Google jarvis éteins toutes les lumières de la cuisine" . Car le mot clé "toutes les lumières" indique qu'il s'agit d'une pièce et non pas d'un module. »

 

J’ai un VD par Volets roulants (cde vers IPX800) et ces VD sont déjà regroupés au niveau HC2 dans une pièce nommée « CDE VR ».

Suffit-il alors de mettre en synonyme « tous les volets » = « CDE VR » pour que la scène parcoure tous les VD de cette pièce et actionne le bouton « Ouvrir » ou « Fermer » suivant l’annonce vocale donnée au Google Home ?

Si tu peux "m'éclairer"...

 

 

Posté(e)

Malheureusement cela ne va pas fonctionner.

 

Le code pour "fermer tous les volets" fait un fibaro:call(id, "close") ... ce qui ne fonctionne pas pour les VD.

 

Ce que tu pourrais tester est ceci :

 

["ferme les volets de la cuisine"] = "<nom vd> Fermer ET <nom vd> Fermer ET ..."

["ouvre les volets de la cuisine"] = "<nom vd> Ouvrir ET <nom vd> Ouvrir ET ..."

 

le "et" étant utilisé comme séparateur de commande.

 

Mais non, mon code ne parcours pas les VDs d'une pièce, désolé.

 

Posté(e)

@Yohan

Tu m'avais fait par d'un soucis pour fermer tous les volets .. cela ne fonctionnait pas.

 

Après avoir relu le message d'ASTECH44, je me suis replongé rapidement dans le code et j'ai vu l'erreur.

if (liliCommand:match(allBlindRoom[3])) then manageRoom("isBlind", allBindRoom, liliCommand) return end

Il manque un l ... allBindRomm 

 

Il faudrait juste remplacer cette ligne par celle-ci si tu as le temps de le faire

if (liliCommand:match(allBlindRoom[3])) then manageRoom("isBlind", allBlindRoom, liliCommand) return end

 

  • Like 1
Posté(e)

@STEVEN.

OK, mon interrogation venait du fait que j'avais eu la même erreur que Yohan en implémentant la version 3 et en voulant sans changement   tous les volets alors que ceux ci ne sont pas sur dimmer Fibaro.

Donc je reste avec mon VD tous les volets, ce qui me va bien puisque j'ai introduit des tempos entre chaque commande.

 

En résumé, si j'ai bien compris, j'ai 3 applets :

*  le 1er avec simplement du texte mais du fait du séparateur ET dans la scène je peux enchaîner 2 actions

  le 2 ième avec texte plus un nombre entier pour répéter x fois une même action

  le 3 ième texte plus nombre exprimé en % pour action exclusivement sur les modules Dimmer Fibaro ( lampes, volets roulant, banne stores, etc....

le tout pointant sur une seule et même scène

Posté(e) (modifié)
Il y a 6 heures, ASTECH44 a dit :

@STEVEN.

OK, mon interrogation venait du fait que j'avais eu la même erreur que Yohan en implémentant la version 3 et en voulant sans changement   tous les volets alors que ceux ci ne sont pas sur dimmer Fibaro.

Donc je reste avec mon VD tous les volets, ce qui me va bien puisque j'ai introduit des tempos entre chaque commande.

 

En résumé, si j'ai bien compris, j'ai 3 applets :

*  le 1er avec simplement du texte mais du fait du séparateur ET dans la scène je peux enchaîner 2 actions

  le 2 ième avec texte plus un nombre entier pour répéter x fois une même action

  le 3 ième texte plus nombre exprimé en % pour action exclusivement sur les modules Dimmer Fibaro ( lampes, volets roulant, banne stores, etc....

le tout pointant sur une seule et même scène

 

 

 

Je cherche à comprendre, lequel faut-il utiliser ?

 

 

Capture.thumb.JPG.86f48a2f9b37c6708b88b3b204ab3bdd.JPG

 

 

Modifié par 971jmd
Posté(e)

@Steven la commande passe correctement mais aucune réaction des volets.

 

 

[DEBUG] 22:29:05: [{"action":" ouvre tous les volets"}]
[DEBUG] 22:29:05: Utilisé : ouvre tous les volets

Posté(e)

@971JMD

Bonsoir.

 

Pour le 1 er applet , j'utilise le cas n°3  Say a phrase with a text ingredient  ce qui te donnera, une fois ton applet configuré, cette vignette  dans ta bibliothèque d'applet  

 

 

image.png.9c63df80a0c83f2e7869e569557ed71c.png

 Pour le 2 ième  j'utilise le cas n°4    'Say a phrase with both a number and a text ingredient)

image.png.63be1c47c119180c99c0f74807b53d11.png

Pour le 3 ième applets, j'utilise le cas n°4  (si dimmer Fibaro dans ton install)   'Say a phrase with both a number and a text ingredient)

image.png.499243f36139d1aa973f8690b2624475.png

 

Posté(e) (modifié)

merci bien @ASTECH44

 

pour le moment le n°1  fonctionne très bien 

 

--- Google Assistant ---

What do you want to say?  : jarvis $

What's another way to say it? (optional) :

And another way? (optional) :  

What do you want the Assistant to say in response?  : D'accord ! jarvis $ .

Language : francais


--- Make a web request ---

URL : http://xxxxxxx:xxxxxx@xx.xx.xx.xx/api/scenes/106/action/start

Method : POST

Content Type (optional) : Application/json

Body (optional) : {"args":[{"action":" {{TextField}}"}]}

 

 

 

Pour le N°4 je suis pas sur : 

 

--- Google Assistant ---

What do you want to say?  : jarvis $ de # %

What's another way to say it? (optional) :

And another way? (optional) :  

What do you want the Assistant to say in response?  : D'accord ! jarvis $ .

Language : francais


--- Make a web request ---

URL : http://xxxxxxx:xxxxxx@xx.xx.xx.xx/api/scenes/106/action/start

Method : POST

Content Type (optional) : Application/json

Body (optional) : {"args":[{"action":" {{TextField}}"}, {"nombre":" {{NumberField}}"}]}

 

 

 

Pour le moment je n’arrive pas a faire: OK GOOGLE JARVIS règle la lampe du salon à 20%   (pour info je dispose de module FGD-212)

et 

allume le sapin et le lampe de la cuisine.

 

 

 

 

 

Modifié par 971jmd
Posté(e)

 

@Steven

 

un petit idée d'intégration de google home à GEA 

 

affecter un mot dit au GH dans un variable GH 

 

exemple : dit google   jarvis  je reçois du monde

 

alors dans GEA

 

si variable GH = je reçois du monde alors activer ...........

 

 

 

 

Posté(e)

Je trouve aussi que la fiabilté de la reconnaissance vocale varie beaucoup, de même pour les temps de réponse.

A voir si l'infrastructure sera en adéquation avec le succès du Google Home?

Posté(e)
Il y a 1 heure, jjacques68 a dit :

alors maintenant les « è » sont compris : à¨

décidement, on va avoir une liste très longue de correction de la compréhension...

 

 

il y a tellement d'accents différents en France, que c'est normal qu'il ne les intègre pas tous. Moi-même j'ai parfois TRES difficile avec certain accents, pourtant c'est du français, et je suis francophone.

Posté(e) (modifié)

si je me trompe pas c'est du utf 8

 

https://mozartsduweb.com/blog/correspondance-encodages-utf8-iso-8859-1/

 

function replaceChar(s)
  local sprime = s:gsub("à ", "à"):gsub("é", "é"):gsub("è", "è"):gsub("î", "î"):gsub("ô", "ô"):gsub("û", "û"):gsub("ù", "ù"):gsub("ê", "ê"):gsub("â","â"):gsub(" ' ", "'")
  return sprime
end

 

 

Modifié par 971jmd
Posté(e) (modifié)

essaye ça

 

function replaceChar(s)
local sprime = s:gsub("Ã" , "á"):gsub("á ", "à"):gsub("Å " , "Š"):gsub("ë" , "ë"):gsub("Å¡" , "š"):gsub("Å'" , "Œ"):gsub("Å\"" , "œ"):gsub("Ÿ" , "Ÿ"):gsub("ÿ" , "ÿ"):gsub("À" , "À"):gsub("Ã" , "Á"):gsub("Â" , "Â"):gsub("Ã" , "Ã"):gsub("ã" , "ã"):gsub(":Ä" , "Ä"):gsub("ä" , "ä"):gsub("Ã…" , "Å"):gsub("Ã¥" , "å"):gsub("Æ" , "Æ"):gsub("æ" , "æ"):gsub("Ç" , "Ç"):gsub("ç" , "ç"):gsub("é", "é"):gsub("è", "è"):gsub("È" , "È"):gsub("É" , "É"):gsub("Ê" , "Ê"):gsub("Ë" , "Ë"):gsub("ÃŒ" , "Ì"):gsub("ì" , "ì"):gsub("Ã" , "Í"):gsub("í" , "í"):gsub("ÃŽ" , "Î"):gsub("Ã" , "Ï"):gsub("ï" , "ï"):gsub("Ã" , "Ð"):gsub("ð" , "ð"):gsub("Ã'" , "Ñ"):gsub("ñ" , "ñ"):gsub("Ã'" , "Ò"):gsub("ò" , "ò"):gsub("Ã\"" , "Ó"):gsub("ó" , "ó"):gsub("Ã\"" , "Ô"):gsub("Õ" , "Õ"):gsub("õ" , "õ"):gsub("Ö" , "Ö"):gsub("Ø" , "Ø"):gsub("ø" , "ø"):gsub("Ù" , "Ù"):gsub("Ú" , "Ú"):gsub("ú" , "ú"):gsub("Û" , "Û"):gsub("Ãœ" , "Ü"):gsub("ü" , "ü"):gsub("Ã" , "Ý"):gsub("ý" , "ý"):gsub("Þ" , "Þ"):gsub("þ" , "þ"):gsub("ß" , "ß"):gsub("ö" , "ö"):gsub(" ' ", "'")
  return sprime
end

j'ai toujour un probleme avec ["je suis à la maison"]  le GH comprend maintenant très bien le   à  mai il génère un espace entre à et la maison

 

[DEBUG] 22:15:19: null
[DEBUG] 22:15:27: [{"action":" je suis à  la maison"}]
[DEBUG] 22:15:27: Utilisé : je suis á  la maison

 

 

 

 

Modifié par 971jmd
Posté(e)

tu as été plus rapide que moi :) c’est exactement ce que je voulais faire :) 

 

pour le « je suis à la maison », je t’avais envoyé une fonction toute faite. Je pense que tu dois traiter cette action à part.

Cette liste ne va pas t’ aider pour les problème d’esapce... du moins avec mon retour d’expérience... 

×
×
  • Créer...