
jjacques68
Membres confirmés-
Compteur de contenus
4 346 -
Inscription
-
Dernière visite
-
Jours gagnés
39
Tout ce qui a été posté par jjacques68
-
HC2 & HCL - Version 4.111 - BETA - 23/02/2017
jjacques68 a répondu à un(e) sujet de PdB dans Firmware
Bon et bien en faite j'ai supprimé les 2 modules, et rien d'anormal pour le moment. Je trouve quand même que depuis cette mise à jour, j'ai des choses étranges qui se passent : - une vanne danfoss qui ne communique pas bien avec le zwave - une télécommande nodon idem, marrant elles sont dans la meme pièce, et assez éloignée de la HC2, mais comportant de module dimmer (donc relais zwave...) Du coup j'ai exclu/inclu la vanne danfoss, et attend de voir la suite avec la télécommande nodon... on verra ce que ça donne avec la suppression des modules ci-dessus. -
2 FGMS001 + 1 interrupteur = Comment faire ?
jjacques68 a répondu à un(e) sujet de lpfanton dans Support
Bien vu ! dans le cas des FGMS en effet... Je crois que le plus simple c'est d'écrire un script... -
@pepite, alors voilà mon script... Avant ce script j'avais autant de scènes que de device pour recevoir les notifications push sur mon tél (ce qui fini par faire beaucoup...) Maintenant, j'ai un seul script pour toutes les notifications de mes device (device réels). Il doit y avoir eu d'autre méthodes proposées sur le forum, mais comme je dis, le faire tout seul, ça permet de progresser... Si quelqu'un a des choses à dire sur ce script (convention de codage, convention de nommage des variables, syntaxe du sciprt, ...), je suis totalement preneur ! Il est assez évolutif, car lors d'ajout de modules, il me suffit de rajouter l'ID dans les trigger et une ligne dans la variable tableau. (le nom des modules est simplifié pour garder un certain anonymat, dans mon script, les volets, éclairages et radiateurs ont des noms plus précis ) --[[ %% autostart %% properties 9 value 11 value 13 value 15 value 17 value 19 value 40 targetLevel 44 value 46 value 48 value 52 value 57 value 85 value 93 value 107 value 122 value 138 value 169 targetLevel 179 targetLevel 181 targetLevel 183 targetLevel 186 targetLevel 188 targetLevel 224 targetLevel 243 value 245 value 251 value %% events %% globals --]] local Trigger = fibaro:getSourceTrigger() --recupère le trigger local IdPhone = fibaro:getGlobal("IdPhone") --ID du téléphone --tableau de device -- ID, type de test, Nom pour le retour local TabMessage = { {Id = 19, Funct = "Volet", Name = "Volet 1 "}, {Id = 17, Funct = "Volet", Name = "Volet 2 "}, {Id = 15, Funct = "Volet", Name = "Volet 3 "}, {Id = 13, Funct = "Volet", Name = "Volet 4 "}, {Id = 11, Funct = "Volet", Name = "Volet 5 "}, {Id = 9, Funct = "Volet", Name = "Volet 6 "}, {Id = 57, Funct = "OpenClose", Name = "Porte salon "}, {Id = 85, Funct = "OpenClose", Name = "Porte garage "}, {Id = 93, Funct = "OpenClose", Name = "Porte entrée "}, {Id = 40, Funct = "Thermostat", Name = "Radiateur 1 "}, {Id = 169, Funct = "Thermostat", Name = "Radiateur 2 "}, {Id = 183, Funct = "Thermostat", Name = "Radiateur 3 "}, {Id = 186, Funct = "Thermostat", Name = "Radiateur 4 "}, {Id = 188, Funct = "Thermostat", Name = "Radiateur 5 "}, {Id = 179, Funct = "Thermostat", Name = "Radiateur 6 "}, {Id = 224, Funct = "Thermostat", Name = "Radiateur 7 "}, {Id = 181, Funct = "Thermostat", Name = "Radiateur 8 "}, {Id = 138, Funct = "OnOff", Name = "Eclairage 1 "}, {Id = 44, Funct = "OnOff", Name = "Eclairage 2 "}, {Id = 46, Funct = "OnOff", Name = "Eclairage 3 "}, {Id = 243, Funct = "OnOff", Name = "Eclairage 4 "}, {Id = 245, Funct = "OnOff", Name = "Eclairage 5 "}, {Id = 251, Funct = "OnOff", Name = "Eclairage 6 "}, {Id = 48, Funct = "ActifPassif", Name = "Capteur innondation informatique "}, {Id = 107, Funct = "ActifPassif", Name = "Capteur innondation chaufferie "}, {Id = 122, Funct = "ActifPassif", Name = "Capteur pluie "}, {Id = 52, Funct = "OnOff", Name = "Alimentation armoire informatique "} } --function de test qui retourne le message à envoyé --paramères: ID, Nom, fonction de test --test la valeur du module passé en paramètres en fonction du type de test function Test(IdName, IdDevice, Funct) if Funct=="OnOff" then if tonumber(fibaro:getValue(IdDevice, "value")) > 0 then return IdName.."ON." else return IdName.."OFF." end elseif Funct == "ActifPassif" then if tonumber(fibaro:getValue(IdDevice, "value")) > 0 then return IdName.."Actif." else return IdName.."Passif." end elseif Funct =="OpenClose" then if tonumber(fibaro:getValue(IdDevice, "value")) == 1 then return IdName.."Ouvert." else return IdName.."Fermée." end elseif Funct == "Volet" then if tonumber(fibaro:getValue(IdDevice, "value")) >= 90 then return IdName.."ouvert." elseif tonumber(fibaro:getValue(IdDevice, "value")) == 0 and Funct == "Volet" then return IdName.."fermé." else return IdName.."ouvert à "..fibaro:getValue(IdDevice, "value").."%." end elseif Funct == "Thermostat" then return IdName.."réglée à : "..fibaro:getValue(IdDevice, "targetLevel").." °C." end end --function appelé si autostart ou appel manuel-------------------------------------------------------------------- function ExecAuto() fibaro:sleep(10*1000) --retarde l'execution (pour l'autostart) local Mail = "Etat des device :".."\n".."\n" --variable recevant le résultat for _,v in ipairs(TabMessage) do --boucle sur tous les ID de TabMessage Mail = Mail..Test(v.Name, v.Id, v.Funct).."\n" --appel de la fonction test avec les 3 paramètres end --print(Mail) fibaro:call(2, "sendEmail", "Info sur l`état des device.", Mail) --envoi d'un mail end --function appelée lors d'une changement détat des modules déclarés en trigger de la scene---------------------- function ExecDevice(IdDevice) for _,v in ipairs(TabMessage) do --boucle dans le tableau pour trouver le bon module if v.Id == IdDevice then -- quand trouvé -- push avec appel de la fonction test avec les 3 paramètres --print(Test(v.Name, v.Id, v.Funct)) fibaro:call(IdPhone, "sendPush", Test(v.Name, v.Id, v.Funct)) end end end --MAIN---------------------------------------------------------------------------------------------------------------------- -- si scène lancée par autostart ou manuel if Trigger["type"] == "autostart" or Trigger["type"] == "other" then ExecAuto() --si scène lancée par property elseif Trigger["type"] == "property" then ExecDevice(Trigger["deviceID"]) end S'il faut des précisions, faites moi le savoir... Je viens de me rendre compte que j'aurai pu optimiser encore plus le code et ne faire qu'une fonction regroupant ExecAuto et ExecDevice... PS : dommage avec la nouvelle version du forum, on perd les couleurs du code (malgré la sélection dans la fenêtre de l'éditeur) et la mise en page syntaxique...
-
HC2 & HCL - Version 4.111 - BETA - 23/02/2017
jjacques68 a répondu à un(e) sujet de PdB dans Firmware
effectivement il apparait comme non configuré. j'ose pas le supprimer, je connais pas les conséquences. Je me dis que ça commence a être le foutoire dans la BDD avec les modules et les nœuds... Pourtant je fais super attention a essayer de maintenir une bonne organisation. -
@pepite : je te post le script ce soir
-
HC2 & HCL - Version 4.111 - BETA - 23/02/2017
jjacques68 a répondu à un(e) sujet de PdB dans Firmware
Si c'est un module maitre, je devrai voir les esclaves nan ? et ben y en a pas ! Comme tu dis @Did le l'ai caché... mais bon... cacher la misère... c'est pas toujours la solution... -
tant mieux si la boucle for est plus rapide. bon je pense avoir optimisé au max mon script, pas de variables inutiles et redondantes, pas de syntaxe de fou. utilisation de retour de fonction et passage de paramètres. en tout cas ça semble bien marcher.
-
HC2 & HCL - Version 4.111 - BETA - 23/02/2017
jjacques68 a répondu à un(e) sujet de PdB dans Firmware
y a un bouton reconfigurer dans le diagnostique Z-wave, mais ils parlent de réveiller les modules sur batteries !! ça fait beaucoup à faire !!! -
HC2 & HCL - Version 4.111 - BETA - 23/02/2017
jjacques68 a répondu à un(e) sujet de PdB dans Firmware
alors je viens de vérifier avec le Toolkit, et il apparait bien dans la liste. Mais que faire avec j'ai beau chercher, je ne trouve pas. En plus toutes mes sondes Secure SES302 fonctionnent bien ! -
HC2 & HCL - Version 4.111 - BETA - 23/02/2017
jjacques68 a répondu à un(e) sujet de PdB dans Firmware
Pas de pc sous la main tout des suite là, mais de ce que j'ai trouvé, la marque du fabricant dans les propriétés de ce module, est Horstmann. Le même fabricant que mes sondes de températures Secure SES 302. J'en ai 3. Suis entrain de voir si elles sont ok... -
HC2 & HCL - Version 4.111 - BETA - 23/02/2017
jjacques68 a répondu à un(e) sujet de PdB dans Firmware
Voilà ce que j'obtiens après la mise à jour... Et ce même module serait sur batteries faible ! Mais c'est qu'elle module, j'arrive pas à le savoir... Nul part, ni dans les propriétés, ni dans les configurations. Il me donne un ID, 237, mais je sais pas à qu'il il appartient. quelqu'un a une idée ? -
Nan rien du tout, je pense parce que je forçais les index avec les crochets. J'ai changer mes tables pour mettre des valeurs tels que {Id= xx, Mes=Xxxxxxx}. La les index sont automatiques et avec la fonction ipairs() ça marche bien. Inconvenient, je suis obliger de parcourir le tableau avec une boucle FOR pour trouver la valeur souhaitée. Alors qu'avant, avec les valeurs entre crochets, je pouvait de suite sélectionner la bonne valeur dans la table. Mais ipairs() ne fonctionnait pas. Et j'avais besoin de parcourir la boucle avec ipairs ET de pouvoir sélectionner une valeur précise... Bref pour mon script j'ai changer la manière de faire et c'est ok. C'est juste cette boucle "FOR" de recherche qui me dérange un peu, j'imagine que c'est une surcharge du pross de la HC2...
-
Je me réponds à moi-même : local TabMessage = { [1] = {Id=9, Mes= "Volet 6 "}, [2] = {Id=11, Mes = "Volet 5 "}, [3] = {Id=13, Mes = "Volet 4 "}, [4] = {Id=15, Mes = "Volet 3 "}, [5] = {Id=17, Mes = "Volet 2 "}, [6] = {Id=19, Mes = "Volet 1 "} }
-
Hello tout le monde ! rapide question car je trouve pas la solution au sujet du boucle for. voici un bout de code : local TabMessage = { [9] = "Volet 6 ", [11] = "Volet 5 ", [13] = "Volet 4 ", [15] = "Volet 3 ", [17] = "Volet 2 ", [19] = "Volet 1 " } for k,v in pairs(TabMessage) do print(k.." "..v) end lorsque je regarde le debug, les éléments de mon tableau sont tous là, mais ne sont pas dans l'ordre 9-11-13-15-17-19. Ils sont complètement aléatoires. J'aimerai bien qu'ils soient classés suivant le chiffre entre [] (représente leur ID...). J'ai essayé avec la fonction ipairs() mais la c'est pire, rien ne s'affiche. quelqu'un à une idée ? Merci d'avance !!
-
2 FGMS001 + 1 interrupteur = Comment faire ?
jjacques68 a répondu à un(e) sujet de lpfanton dans Support
Sans avoir essayé, il me semble que oui... regarde ce tuto, l'exemple 3... http://tutoriels.domotique-store.fr/content/2/154/fr/z_wave-les-groupes-et-les-associations.html -
HC2 - Version 4.11x - Fonction figaro:args() - passage de paramètres pour les scènes
jjacques68 a répondu à un(e) sujet de MAM78 dans Tutoriels
- 98 réponses
-
- figaro:args()
- paramètre
-
(et 1 en plus)
Étiqueté avec :
-
HC2 - Version 4.11x - Fonction figaro:args() - passage de paramètres pour les scènes
jjacques68 a répondu à un(e) sujet de MAM78 dans Tutoriels
Et aussi augmenter le nombre de caractères que l'on peut saisir dans le champs login des paramètres push sur les input/output ! Du moins sur les versions 3 merciiiii- 98 réponses
-
- figaro:args()
- paramètre
-
(et 1 en plus)
Étiqueté avec :
-
HC2 - Version 4.11x - Fonction figaro:args() - passage de paramètres pour les scènes
jjacques68 a répondu à un(e) sujet de MAM78 dans Tutoriels
j'ai une version 3.- 98 réponses
-
- figaro:args()
- paramètre
-
(et 1 en plus)
Étiqueté avec :
-
HC2 - Version 4.11x - Fonction figaro:args() - passage de paramètres pour les scènes
jjacques68 a répondu à un(e) sujet de MAM78 dans Tutoriels
j'ai 16 scènes pour les notifiactions push (on/off sur chaque sorties) sur mon tél. Avant la mise à jour qui nous obligeait à passer le login du superuser en adresse mail, je pouvais envoyer la commande suivant : /api/callAction?deviceID=62&name=sendPush&arg1=blablabla Mais maintenant, le champs login des paramètre push setting de l'ipx ne permet pas de saisir autant de caractères. J'ai donc créer un autre user avec moins de caractères pour pouvoir entrer dans ce champs de l'ipx. Mais cette commande sendPush ne fonctionne pas avec un user autre que superUser... ! J'avais contacté le support fibaro, mais ils ont pas tout compris, je crois. bon là je m'écarte du sujet, mais cette histoire d'arguments m'aurait arrangé, comme ça j'aurai eu juste une scène avec les bonne infos envoyées par arguments...- 98 réponses
-
- figaro:args()
- paramètre
-
(et 1 en plus)
Étiqueté avec :
-
HC2 - Version 4.11x - Fonction figaro:args() - passage de paramètres pour les scènes
jjacques68 a répondu à un(e) sujet de MAM78 dans Tutoriels
je pense que je me trompe, en effet l'ipx ne permet pas grand chose... après si c'est du post, put ou get, je ne saisi pas voilà ma config sur l'ouput concernée :- 98 réponses
-
- figaro:args()
- paramètre
-
(et 1 en plus)
Étiqueté avec :
-
HC2 - Version 4.11x - Fonction figaro:args() - passage de paramètres pour les scènes
jjacques68 a répondu à un(e) sujet de MAM78 dans Tutoriels
j'ai essayé avec /api/sceneControl?id=147&action=start&args=MonArgument1 /api/sceneControl?id=147&action=start&args={args=MonArgument1} Mais rien...- 98 réponses
-
- figaro:args()
- paramètre
-
(et 1 en plus)
Étiqueté avec :
-
HC2 - Version 4.11x - Fonction figaro:args() - passage de paramètres pour les scènes
jjacques68 a répondu à un(e) sujet de MAM78 dans Tutoriels
je précise en utilisant la requete : /api/sceneControl?id=147&action=start- 98 réponses
-
- figaro:args()
- paramètre
-
(et 1 en plus)
Étiqueté avec :
-
HC2 - Version 4.11x - Fonction figaro:args() - passage de paramètres pour les scènes
jjacques68 a répondu à un(e) sujet de MAM78 dans Tutoriels
oui mais marche pô avec une requette http envoyé par un ipx...- 98 réponses
-
- figaro:args()
- paramètre
-
(et 1 en plus)
Étiqueté avec :
-
c'est exactement ce qu'il me faut ! champs Type... merci !
-
yes ! je regarde ! merci !