-
Compteur de contenus
2 515 -
Inscription
-
Dernière visite
-
Jours gagnés
28
Tout ce qui a été posté par MAM78
-
Pourquoi avoir supprimé les VG Globales ? Comment est-ce que tu exploites les info. ? Comment est-ce que tu fais pour déclencher un événement sur changement d'une valeur ?
- 137 réponses
-
- aujourdhui
- steven
-
(et 3 en plus)
Étiqueté avec :
-
regarde par ici : https://forum.fibaro.com/index.php?/topic/24342-vd-to-change-line-in-sonos/
-
Hello @pepite est-ce que tu pourras STP à l'occasion refaire un test avec la nouvelle version VD afin de savoir si ton problème avec le push est corrigé avec cette version ?
- 137 réponses
-
- aujourdhui
- steven
-
(et 3 en plus)
Étiqueté avec :
-
Update VD Vacances Scolaires version MAM78 08/01/2017 : version V1.4 (Création automatique des variables globales + Quelques petites améliorations cosmétiques)
-
08/01/2017 : version V1.4 (Création automatique des variables globales + Quelques petites améliorations cosmétiques)
- 137 réponses
-
- aujourdhui
- steven
-
(et 3 en plus)
Étiqueté avec :
-
Top, je ne vois pas ce qui posait problème sur les iPhones, mais l'essentiel c'est que ça marche. C'était donc bien entièrement de ma faute
-
08/01/2017 : version V1.3 (Correction de la mise à jour de la variable globale qui contient le nombre de jours jusqu'au prochaines vacances)
- 137 réponses
-
- 1
-
-
- aujourdhui
- steven
-
(et 3 en plus)
Étiqueté avec :
-
Pas de PB, merci d'avance pour les tests. C'était ma toute première adaptation d'un VD et de codage en LUA
-
Bon, par acquis de conscience, j'ai revisité mon code du VD Vacances Scolaires et corrigé et optimiser le code. Même si je ne vois pas le rapport, peut-être que cette nouvelle version va résoudre le problème de perte de connexion que certaine personne rencontrait avec leur iPhone. Merci d'avance pour vos tests et retour sur cette nouvelle version 1.2 qui est disponible sur le premier post.
- 137 réponses
-
- aujourdhui
- steven
-
(et 3 en plus)
Étiqueté avec :
-
Bon, par acquis de conscience, j'ai revisité mon code du VD Vacances Scolaires et corrigé et optimiser le code. Même si je ne vois pas le rapport, peut-être que cette nouvelle version va résoudre le problème de perte de connexion que certaine personne rencontrait avec leur iPhone. Merci d'avance pour vos tests et retour sur cette nouvelle version 1.2. Elle est disponible ici.
-
Houla attention @pepite tu vas encore fatiguer notre @Steven. Déjà que celui sur les snippet n'est toujours pas ouvert, tu veux en ouvrir un autre Sinon plus sérieusement, sur le fond l'idée est bonne.
- 12 474 réponses
-
- 1
-
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
Pas de PB si vous avez besoins un coupable, je veux bien. Mais ce qui serait sympathique, ce serait de trouver la cause du PB. Parce que chez moi, tout fonctionne !
-
J'avais déjà commancé à répondre à cette question ici. Voir mon post ci-dessous : Cela permètrait d'obtenir dans un message (popup, mail, sonos, ...) ou de renseigner une variable globale selon une donnée source (Etat d'un VD, donnée recupérer via les API, Contenu d'une variable globale, en fait n'importe qu'elle source) sa transposition selon un premier tableau qui contient l'ensemble des valeurs possibles (clé) et restituer une valeur en claire (resultat). Comme par exemple transposer des valeurs de type : code (numérique ou textuel) --> libellé. booleen --> libellé texte anglais --> texte français ou autres langues ...
- 12 474 réponses
-
- 1
-
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
1) Concernant transpose, merci. 2) Concernant ma suggestion #tempsext# et comme indiqué dans l'un de mes précédents messages, cette proposition n'était effectivement pas idéale. Ta proposition GEA.option.tempext ma convient parfaitement. Testée et approuvée. 3) Concernant le point ci-dessous : Lorsque l'ont est en mode debug, les chaines de substitution de type #xxx# ne sont pas interprétées. En ajoutant GEA.getMessage(), la trace contient le texte des actions avec leurs valeurs de substitution. 4) Hormis la faute de syntaxe (double local). Vu et corrigé. Nos messages se sont croisés. C'était à la base une suggestion de @pepite mais ta proposition GEA.trad.locale me convient très bien. De plus elle permet de s'ouvrir à d'autres langues. Je n'avais pas osé l'ajouter dans les tables de traductions pour ne pas alourdir le code GEA En attendant, la V6.05 et les tests de @pepite, vous trouverez ci-dessous ma version corrigée/complétée des suggestions de @Steven gea_6_04-MAM78.lua Merci pour tes suggestions et conseils @Steven
- 12 474 réponses
-
- 1
-
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
Hello @Steven merci pour cette livraison. Snif pour mes propositions mais, il n'y a pas seulement des corrections dans cette V6.04 Pour ne pas oublier, il reste si tu veux bien intégrer dans la prochaine version les corrections / évolutions ci-dessous : En attendant, je ferais des copier / coller Pour ceux qui souhaitent continuer à tester ma version, voici le fichier construite sur la base de la V6.04 officielle de Steven et dans laquelle j'ai réintégré mes add-ons : gea_6_04-MAM78.lua Change log : -- ========================================================== -- v.6.04 MAM78 modified the 7 jan. 2018 on the base of V6.04 from Steven -- add : Sonos TTS message function -- Exemple : GEA.add ({{"Weather!", "Temperature" ,""},{"WeatherLocal!",""}}, 0, "Nous sommes le #datefull# il fait dehors #tempsext# degrer et le temps est #value[2]#", {"sonostts", id["VD_SONOS"], id["VD_SONOS_BT"], "Nous sommes le #datefull# il fait dehors #tempsext# degrer et le temps est #value[2]#", 40}, "Annonce de la météo") GEA.add ({{"Weather!", "Temperature" ,""},{"WeatherLocal!",""}}, 0, "We are #datefull# the outside temperature is #tempsext# degrees and the weather is #value[2]#", {"sonostts", id["VD_SONOS"], id["VD_SONOS_BT"], "We are the #datefull# the outside temperature is #tempsext# degrees and the weather is #value[2]#", 40}, "Wheater annonce") -- add : Sonos MP3 message function and add sonosMP3foldername variable, -- Exemple : GEA.add({id["DETECTEUR_PORTE_GARAGE"], {"Time", "Sunset-15", "Sunrise+5"}}, -1, "La porte du garage vient d être fermée", {{"Inverse"}, {"Sleep", 7, {"sonosmp3", id["VD_SONOS"], id["VD_SONOS_BT"], "Fermeture Porte Cave.mp3", 40}}}, "Fermeture porte Garage") -- add : #tempsext# substitution text for the external temperature rounded without decimals -- mod : debug the transpose function -- mod : modify the action message in debug windows with the transposed values -- ========================================================== 1) Fonctions Sonos Ajouter : sonosmp3 = {name = "Sonos MP3", action = function(vd_id, button_id, filename, volume) if (not volume) then volume = 30 end 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} _x:set(tostring(vd_id), { stream = {stream=GEA.sonosMP3foldername..filename, source="local", duration="auto", volume=volume} }) _f:call(vd_id, "pressButton", button_id) end }, sonostts = {name = "Sonos TTS", action = function(vd_id, button_id, message, volume) local message = GEA.getMessage(message) local langue = "en-US" if GEA.language:lower() == "fr" then langue = "fr-FR" end if (not volume) then volume = 30 end 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} _x:set(tostring(vd_id), { tts = {message=message, duration='auto', language=langue, volume=volume} }) _f:call(vd_id, "pressButton", button_id) end } Ajouter dans la partie -- CONFIGURATON GENERALE : GEA.sonosMP3foldername = "//xxxxxxxx/music/Domotique/Domotique/iTunes Media/Music/Sons Domotiques/Sons Domotiques/" 3) Substitutions de valeurs #tempsext# Ajouter : if (message:find("#tempsext#")) then message = message:gsub("#tempsext#", tonumber(string.format("%.0f", GEA.getOption({"weather", "Temperature"}).getValue()))) end 3) Fonction transpose Remplacer : transpose = {name = "Transpose", getValue=function(table1, table2, value) tools.error(table1) return GEA.translate(value, table1, table2) end }, par : transpose = {name = "Transpose", getValue=function(value, table1, table2) return GEA.translate(value, table1, table2) end, action =function(value, table1, table2) return GEA.translate(value, table1, table2) end }, 3) Clarifier le contenu du mode debug, en ligne 1341 : Remplacer : tools.debug(" ["..GEA.trad.action.."] " .. entry.actions[i].getLog()) Par : tools.debug(" ["..GEA.trad.action.."] " .. GEA.getMessage(entry.actions[i].getLog()))
- 12 474 réponses
-
- 1
-
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
J'ai aussi constaté que : La zone de recherche les caractères sont masqués par du texte bizarroïde, je suis sous safari. Lors de la saisie de messages, il n'y a plus la fonction pour décaler le texte (tabulation)
-
Voici une mise à jour de la version 6.04 toujours en beta en attente de validation par @Steven et @pepite gea_6_04.lua Elle intègre les modifications suivantes : -- ========================================================== -- v.6.04 modify by MAM78 the 7 jan. 2018 -- add : Sonos TTS message function -- add : Sonos MP3 message function and add sonosMP3foldername variable, -- mod : debug the transpose function -- add : #tempsext# substitution text for the external temperature rounded without decimals -- mod : modify the action message in debug windows with the transposed values -- mod : correction of the #datefull# substitution text -- mod : Sonos TTS message function, -- optional volume parameter, if not specified the value will be 30 -- mod : Sonos MP3 message function and add sonosMP3foldername variable, -- optional volume parameter, if not specified the value will be 30 -- language parameter is no longer needed, automatically determine based on GEA.language -- ==========================================================
- 12 474 réponses
-
- 3
-
-
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
En fait, la ligne ci-dessous retourne une valeur string et non numérique local jour = os.date("%w") J'ai modifié le code de cette façon : if (message:find("#datefull#")) then local jour = tonumber(os.date("%w")) if (jour == 0) then jour = 6 else jour = jour-1 end message = message:gsub("#datefull#", GEA.trad.week[tonumber(jour)+1] .. " " .. os.date("%d").. " " .. GEA.trad.months[tonumber(os.date("%m"))].. " " .. os.date("%Y")) end
- 12 474 réponses
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
hello @Steven Il semblerait que ta réécriture de la fonction #datefull# ne fonctionne pas le dimanche : if (message:find("#datefull#")) then local jour = os.date("%w") if (jour == 0) then jour = 6 else jour = jour-1 end message = message:gsub("#datefull#", GEA.trad.week[tonumber(jour)+1] .. " " .. os.date("%d").. " " .. GEA.trad.months[tonumber(os.date("%m"))].. " " .. os.date("%Y")) end J'ai l'erreur suivant sur la ligne message : message:sub ................. [DEBUG] 17:01:23: line 1475: attempt to concatenate field '?' (a nil value)
- 12 474 réponses
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
Il me semble qu'il manque la notion de version du code. Il conviendrait d'ajouter ceci dans l'entête : Version : 1.00 Date Update : 07 janv. 2018 Comment vous voyez, les évolutions/corrections/optimisations des codes en question ? MAJ du post par l'auteur ? Nouveau post ? Est-ce tout ça ne devrait pas être écrit en anglais afin que ce soit ouvert aux autres utilisateurs que ceux de la langue de Molière ?
-
Gérer plusieurs radiateurs avec panneau de chauffage
MAM78 a répondu à un(e) sujet de ansaro dans Chauffage et Energie
chez moi c’est dispo. dans l’appli. fibaro sur mon iphone. Envoyé de mon iPhone en utilisant Tapatalk Pro -
Dans ce cas, je pourrais contribuer aux tests de ton futur VD.
-
Si ça s'instal également dans un Docker sur un Synology, ça pourrait également m'intéresser.
-
Gérer plusieurs radiateurs avec panneau de chauffage
MAM78 a répondu à un(e) sujet de ansaro dans Chauffage et Energie
Ta WAF peut utiliser la modification de consignes via l’interface de gestion des zones en utilisant le mode manuel dans lequel elle peut definir une température, une durée (de 1 à 24h maxi) et les zones qu’elles souhaitent modifier ponctuellement. Envoyé de mon iPhone en utilisant Tapatalk Pro -
Gérer plusieurs radiateurs avec panneau de chauffage
MAM78 a répondu à un(e) sujet de ansaro dans Chauffage et Energie
Je ne vois pas bien où est ton problème. Tes têtes sont localisées dans la même pièce. Au niveau du panneau de chauffage tu crées une zone à laquelle tu associes cette même pièces. L'ensemble des têtes présentes dans cette pièce seront pilotées automatiquement par ce panneau de chauffage selon les consignes que tu auras déterminées (jour, horaire, température). Probablement, il te faudra néanmoins garder un thermostat qui va réguler la température d'une pièce pour piloter ta chaudière. Dans mon cas, c'est mon salon, c'est ma pièce la plus chaude de ma maison.
