-
Compteur de contenus
2 506 -
Inscription
-
Dernière visite
-
Jours gagnés
28
Tout ce qui a été posté par MAM78
-
Il faudra ajouter les variables suivantes : sonosfoldername, contenant le chemin d'accès aux fichiers MP3 de la bibliotheque Sonos. Pour la fonction MP3 sonoslanguage, pour la langue, soit "fr-FR", "en-us"
- 12 447 réponses
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
Avec la fonction transpose, nous pourrions également faire ceci. GEA.add(({{"transpose!", {true, false}, {"alumée", "éteinte"}, {turnOn, 73}, ""}, 0, "La lampe est #value[1]#") Ce qui donnerait : [DEBUG] 11:56:45: La lampe est alumée Ce qui permetrait de faire la traduction de n'importe qu'elle donnée selon les 2 tables de correspondance.
- 12 447 réponses
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
Génial, j'ai enfin réussi à faire l'intégration de l'événement avec envoi de message TTS vers ma Sonos : GEA.add({{"transpose!", GEA.traduction.en.WeatherCondition, GEA.trad.WeatherCondition, {"weather"}, ""}, {"Weather!", "Temperature" , ""}}, 0, "Test", {"SendVoiceMessage", "TTS", "Nous sommes #datefull# il fait #value[2]# degrer et le temps est #value[1]#", "30", "fr-FR"}, "Annonce de la météo") Voici, la fonction transpose finalisée : transpose = { name = "Transpose", getValue = function(table1, table2, value) for k, v in pairs(table1) do if (v:lower() == value:lower()) then return table2[k] end end return nil end } Maintenant, il reste plus que l'intégration de la fonction SONOS à intégrer dans GEA. @Steven tu vois ça comment ?
- 12 447 réponses
-
- 1
-
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
Ok, j'arrive bien maintenant à faire la transposition (traduction) avec la commande suivante (en renseignant en dur "Cloudy"), j'obtient bien "Retour = Nuageux" : GEA.add({"transpose!", "Cloudy", GEA.traduction.en.WeatherCondition, GEA.trad.WeatherCondition,""}, 0, "Test", {"Popup", "Info", "Titre", "Retour=#value[1]#"}, "Test Transpose") Mais maintenant, si je veux remplacer la valeur en du par la fonction GEA "weather". Ca ne fonctionne pas. GEA.add({"transpose!", {"weather"}, GEA.traduction.en.WeatherCondition, GEA.trad.WeatherCondition,""}, 0, "Test", {"Popup", "Info", "Titre", "Retour=#value[1]#"}, "Test Transpose") Mais en l'utilisant de cette façon, ça fonctionne : GEA.add({"transpose!", GEA.options.weather.getValue(), GEA.traduction.en.WeatherCondition, GEA.trad.WeatherCondition,""}, 0, "Test", {"Popup", "Info", "Titre", "Retour=#value[1]#"}, "Test Transpose") Je ne trouve pas ça très élégant. Est-il possible de faire mieux ?
- 12 447 réponses
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
@Steven En fait mon copier coller dans mon post avait supprimé [i] Vlici le bon code. transpose = {name="transpose", action=function(Value, Table1, Table2) for i = 1, #Table1 do if Table1[i] == Value then return Table2[i] end end return "" end }, Mais je garde le tient qui est plus propre et qui traite en plus les PB de majuscules. Mon code fonctionnait bien, mais mon problème est dans l'usager de l'événement. GEA.add(true, 0, "Test", {{"transpose", "B", {"A", "B", "C"}, {"a", "b", "c"}}, {"Popup", "Info", "Titre", "Retour = #value[1]#"}}, "Test Transpose") j'ai bien le Popup sur l'application fibaro mais avec comme contenu : Retour = true et non Retour = b Lorsque j'utilise la ligne ci-dessous, ça fonctionne bien print( "Transpose="..GEA.options.transpose.action("B", {"A", "B", "C"}, {"a", "b", "c"} ) ) j'ai bien Transpose=b Pourquoi mon GEA.add ne fonctionne pas.
- 12 447 réponses
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
Autre test avec : GEA.add(true, 0, "Test", {{"transpose", "B", {"A", "B", "C"}, {"a", "b", "c"}}, {"Popup", "Info", "Titre", "Retour = #value[1]#"}}, "Test Transpose") avec la condition suivante : transpose = {name="transpose", action=function(Value, Table1, Table2) for i = 1, #Table1 do if Table1 == Value then return Table2 end end return "" end }, J'ai bien le Popup sur l'application fibaro mais avec comme contenu : Retour = true et non Retour = b Une idée de ce qui cloche ?
- 12 447 réponses
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
@Steven Concernant, ta suggestion d'intégrer le script SONOS dans GEA. Ok à 100%. Je pense que cela devrait intéresser de nombreuses personnes (celles qui possèdent des SONOS, évidement !) Concernant l'histoire de traduction j'essai d'écrire une option (fonction) dans GEA qui rechercherait une valeur dans un premier tableau et donnerait comme résultat sa correspondance dans un deuxième. Cette option (fonction) pourrait être utilisée pour faire des traductions. Valeur en anglais, Table1 en anglais, Table2 en français. Résultat de la traduction. Sur l'utilisation de l'événement suivant : GEA.add(true, 0, "Test Transpose", {{"transpose", "B", {"A", "B", "C"}, {"a", "b", "c"}}, {"SendVoiceMessage", "TTS", "Retour #value[1]#", 2, "fr-FR"}}, "Test Transpose") Le résultat attendue serait : Retour b Mais l'erreur suivante : [DEBUG] 00:44:26: Option : [transpose, ["B",["A","B","C"],["a","b","c"]]] ne peut pas être utilisé comme action Mais je n'arrive pas à la faire fonctionner. Tu pourrais m'expliquer ce qui cloche. transpose = {name="transpose", getValue=function(Value, Table1, Table2) for i = 1, #Table1 do if Table1 == Value then print("Transpose"..Table2 ) return Table2 end end return "" end },
- 12 447 réponses
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
GEA scene de vie
MAM78 a répondu à un(e) sujet de flamalex dans Actionneurs & Ouvrants (Portail, volets, piscines, ...)
Hello [mention=450]pepite[/mention] Tu pourrais s’il te plaît tester ma version avec annonce de la météo. Envoyé de mon iPhone en utilisant Tapatalk Pro -
@Kristiano It's not "en-EN", but "en-us" in the GEA event . Try this ! It seems like the #datefull# etc are not getting updated since I get this in the TTS Scene. [DEBUG] 14:51:50: Mode=TTS Message=We are #datefull# the outside temperature is #tempsext# degrees and then weather is #WeatherCondition# Vol=25 Btw i removed the Pushnotification of the same. So its "". FYI Are you sure to use the V6.02 version off GEA ?
- 12 447 réponses
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
C'est fait !!! It's done !!! Il est maintenant possible d'envoyer depuis GEA un message sur un haut-parleur SONOS annonçant la météo selon les critères que vous le souhaitez It is now possible to send from GEA a message on a SONOS loudspeaker announcing the weather according to the criteria you want Si vous n'avez pas d'enceinte Sonos, pour pouvez utiliser mon code également pour l'envoi de messages push. If you dont have a Sonos speaker, you can use my code also for sending push messages. GEA.add( {"Time", "07:15"}, 0, "Nous sommes #datefull# il fait #tempsext# degres et le temps est #WeatherCondition#", {"SendVoiceMessage", "TTS", "Nous sommes #datefull# il fait #tempsext# degrer et le temps est #WeatherCondition#", "10", "fr-FR"}, "Annonce de la météo") GEA.add( {"Time", "07:15"}, 0, "We are #datefull# the outside temperature is #tempsext# degrees and then weather is #WeatherCondition#", {"SendVoiceMessage", "TTS", "We are #datefull# the outside temperature is #tempsext# degrees and then weather is #WeatherCondition#", "10", "en-us"}, "Wheather message") Pour utiliser cette fonctionnalité, il faut ajouter dans GEA les codes ci-dessous : To use this feature, you must add the codes below to GEA : Remplacer la ligne / Replace the line : removeuselesstrad = "Removing useless traduction: " Par celles-ci / By this one : removeuselesstrad = "Removing useless traduction: ", WeatherCondition = {"Clear", "Cloudy", "Rain", "Snow", "Storm", "Fog"}, week2 = {"sunday", "monday", "tuesday", "wednesday", "thursday", "friday", "saturday"}, month = {"january", "february", "march", "april", "may", "june", "july", "august", "september", "october", "november", "december"}, the = "the", unknow = "unknown" Remplacer la ligne / Replace the line : removeuselesstrad = "Suppression de traduction inutile : ", Par celles-ci / By this one : removeuselesstrad = "Suppression de traduction inutile : ", WeatherCondition = {"Clair", "Nuageux", "Pluvieux", "Neigeux", "Orageux", "Brumeux"}, week2 = {"dimanche", "lundi", "mardi", "mercredi", "jeudi", "vendredi", "samedi"}, month = {"janvier", "février", "mars", "avril", "mai", "juin", "juillet", "aout", "septembre", "octobre", "novembre", "décembre"}, the = "le", unknow = "indeterminé" Remplacer la ligne / Replace the line : message = message:gsub("#date#", os.date(GEA.trad.date_format)) Par celles-ci / By this one : message = message:gsub("#date#", os.date(GEA.trad.date_format)) local currentdate = os.date("*t") message = message:gsub("#datefull#", GEA.trad.week2[currentdate.wday] .. " " .. GEA.trad.the .. " " .. currentdate.day .. " " .. GEA.trad.month[currentdate.month]) message = message:gsub("#tempsext#", tonumber(string.format("%.0f", api.get("/weather").Temperature))) message = message:gsub("#WeatherCondition#", GEA.WeatherCondition) Avant la fonction ci-dessous / Before the function below : -- ---------------------------------------------------------- -- Recherche et activation des plugins scénarios -- ---------------------------------------------------------- Ajouter la fonction ci-dessous / Add this function below : -- ---------------------------------------------------------------- -- Recherche le temps qu'il fait avec la traduction selon la langue -- ---------------------------------------------------------------- GEA.WeatherCondition = function() for i = 1, #GEA.traduction.en.WeatherCondition do if GEA.traduction.en.WeatherCondition[i] == api.get("/weather").WeatherCondition then return GEA.trad.WeatherCondition[i] end end return GEA.trad.unknow end Ci-dessous ma scène d'envoi de messages à l'enceinte Sonos / Below my scene sending messages to the Sonos speaker SendVoiceMessage.lua Nommer la scène SendVoiceMessage / Name the Scene SendVoiceMessage La scène doit porter le même nom que son nom dans la ligne événement GEA (.....{"SendVoiceMessage", "TTS"....) The scene must have the same name as its name in the GEA event line (.....{"SendVoiceMessage", "TTS"....) @Steven tu pourras peut-être optimiser le code GEA et l'intégrer dans la prochaine version ?
- 12 447 réponses
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
maybe i will do it for you. Please be patient.
- 12 447 réponses
-
- 1
-
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
Merci@steven pour l’explication Envoyé de mon iPhone en utilisant Tapatalk Pro
- 12 447 réponses
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
Hello, j'ai remarqué que certain événements n'apparaissent pas au lancement de GEA dans la log. [DEBUG] 20:31:54: Ajout auto : #1 Démaorage de la Box[DEBUG] 20:31:54: Ajout auto : #2 Démarrage GEA[DEBUG] 20:31:54: Ajout auto : #3 Check new version *répété*[DEBUG] 20:31:54: Ajout auto : #4 Check new version beta *répété*[DEBUG] 20:31:54: Ajout auto : #5 Porte Garage toujours ouverte *répété*[DEBUG] 20:31:54: Ajout auto : #8 Update VD Jour Chômé[DEBUG] 20:31:54: Ajout auto : #9 Update VD Vacances scolaires Voir le trou #6 et#7 Voici les lignes correspondantes : GEA.add({id["DETECTEUR_PORTE_GARAGE"]}, -1, "La porte du garage vient d être fermée", {{"Inverse"}, {"Sleep", 7, {"SendVoiceMessage", "MP3", "Fermeture Porte Cave.mp3", "50"}}}, "Fermettre porte Garage") GEA.add({id["DETECTEUR_PORTE_GARAGE"], {"Time", "Sunset-15", "Sunrise+5"}}, -1, "La porte de la cave vient d être ouverte", {{"SendVoiceMessage", "MP3", "Ouverture Porte Cave.mp3", "50"}}, "Ouverture porte Garage") Vous auriez une explication, sachant que lors de la détection des événements #6 et #7, les libellés apparaissent bien dans la Log
- 12 447 réponses
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
@Steven Merci, j'ai intégré cette nouvelle version. Elle fonctionne parfaitement avec mes événements. Tu peux donc pour moi la publier Néanmoins, j'ai aussi constaté qu'il n'est pas possible de nommer (dernier paramètre) une événement si l'on ne renseigne pas d'option ou une action. Exemple : j'ai voulu nommer l'événement ci-dessous : GEA.add({"Info+", "serverStatus", os.time()-120}, 0, "Box redémarée à #time# le #date#") J'ai essayé comme ça : (mais j'ai des erreurs, je n'ai pas trouvé la syntaxe qui permet de le faire) : GEA.add({"Info+", "serverStatus", os.time()-120}, 0, "Box redémarée à #time# le #date#", , "Trace Démarrage HC2") GEA.add({"Info+", "serverStatus", os.time()-120}, 0, "Box redémarée à #time# le #date#", "", "Trace Démarrage HC2") GEA.add({"Info+", "serverStatus", os.time()-120}, 0, "Box redémarée à #time# le #date#", {}, "Trace Démarrage HC2") GEA.add({"Info+", "serverStatus", os.time()-120}, 0, "Box redémarée à #time# le #date#", {""}, "Trace Démarrage HC2") Rien à faire, ça passe pas
- 12 447 réponses
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
A la lecture de ton code de la V 6.02 tu n'aurais pas fait la modification sur la bonne ligne. Pour moi, la modification devrait être faite sur 601 (traitant les actions) et non la 589 (traitant les getValue). Ou peut-être les 2 ? Je me trompe ? PS : Sinon, concernant la tempo du messages marche à la perfection.
- 12 447 réponses
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
Ok, merci je regarde cela ce soir, une fois à la maison. Ce sera plus pratique qu'en mode remote
- 12 447 réponses
-
- 1
-
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
Génial ça fonctionne Y a plus qu'à intégrer dans une nouvelle version 6.02 ? Si tu peux également regarder mes suggestions évoquées précédements et les intégrer. Cf. Remplacement de variables dans les arguments des actions.
- 12 447 réponses
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
topic unique Fibaro Keyfob FGKF-601 - Télécommande porte-clés Z-Wave+
MAM78 a répondu à un(e) sujet de d@m!Ch94 dans Modules Fibaro
Regardez s'il ne sont pas dans les devices cachés. J'ai remarqué que certaines des actions de boutons était masqués ! -
@Steven je viens de faire le test à distance en utilisant une lumière. J'ai toujours la même erreur [DEBUG] 15:34:27: [1;31m2017-12-19 15:34:27.089210 @0s [Démarrage] #6 [DEBUG] 15:34:37: [1;31m2017-12-19 15:34:37.089210 [ fatal] LUA error: /opt/fibaro/FibaroSceneAPI.lua:208: attempt to concatenate local 'sceneID' (a nil value) Parcontre, il semblerait bien que la temporisation fonctionne, voir interval de temps en les 2 lignes de trace
- 12 447 réponses
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
Pour arriver à supprimer la mon ancien plugin de la variable GEA_Plugins, j'ai du : supprimer la variable globale supprimer la ligne de code de reconnaissance des plugins GEA de mon ancien scénario "sendsonosmessagetts". La mise en commentaire de la ligne ne suffisait pas ! Arrêter et relancer GEA Du coup, je n'ai plus que : Recherche de plugins, ... : sendvoicemessage Mais là, n'étant pas chez-moi il est impossible pour moi de refaire le test, sauf si vous avez une idée pour simuler à distance l'ouvertue et la fermeture de ma porte de garage ?
- 12 447 réponses
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
J'obtiens effectivement le résultat suivant : [DEBUG] 14:22:55: {"sendsonosmessagetts":61,"sendvoicemessage":82} alors que mon plugin s'appelle "SendVoiceMessage" et que le plugin "SendSonosMessageTTS" ne contient plus le code de reconnaissance des plugins GEA. Comment est-ce que l'on réinitialise la variable globale ? Une simple suppression de la VG ?
- 12 447 réponses
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
Oui Envoyé de mon iPhone en utilisant Tapatalk Pro
- 12 447 réponses
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
Ok merci, ça devrait répondre à mon besoin, enfin quand ça marchera (plus de bug ?)
- 12 447 réponses
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
@Steven Juste par acquis de concience : De mon expérience IT, un setTimeout correspond à une durée maximum d'attente d'un retour d'une fonction et au-delà de cette durée en principe il y a un code retour en erreur (de type Timeout). Ce que tu indiques correspond à une temporisation avant d'executer cette fonction. Pourrais-tu me confirmer que la fonction Sleep de GEA correspond au cas 2 ci-dessus. ma HC2 est en version 4.150
- 12 447 réponses
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
Non, je viens de supprimer ma fonction Wait et le problème est toujours présent. Bug ?
- 12 447 réponses
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
