Aller au contenu

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

  1. oui ok. et dans les paramètres push ? login:pass ? port ? question bête, l'IP de la HC2 n'a pas changé ?
  2. attends là je sais pas si on parle de même chose. Le problème du login c'est dans les paramètres push des entrée/sorties de l'IPX. On peut plus utiliser le superuser de la HC2 car pour l'IPX V3, il n'y a pas assez de caractères possible dans le champs login:pass. C'est pour cela que je parlais de créer un autre user sur la HC2, sans adresse mail comme login. Afin de pouvoir saisir entièrement le couple login:pass. Le %40, permet il me semble de remplacer dans une requête http le @. Sujet déjà abordé sur le forum. Tu utilises quoi comme commandes pour faire communiquer la HC2 et l'IPX ?
  3. On peut le remplacer par %40 je crois... mais jamais testé !
  4. Moi le Bug est apparu dès le passage au fibaro ID... Pour être tranquille, tu crées un user sans @ dans la HC2 (ce ne sera donc pas un superuser), tu lui donnes les droits d'accès au scènes et VD qu'il faut, et tu utilises ce user dans l'ipx.
  5. Si tout marche en commandes locales, ce serait pas ton capteur de mouvement qui ferait des siennes ? S'il n'envoie pas l'info, rien ne s'allume !
  6. Mais tu passes par une scène ? Un VD ?
  7. J'ai eut des soucis également quand le login du superuser de la HC2 est passé à l'adresse mail... C'est quoi exactement ton soucis ?
  8. @pepite : tu peux m'expliquer de nouveau la différence entre : fibaro:sleep(60*1000) ... code ... et setTimeout(function() ... code ..., 60*1000) ???? merciiiiii
  9. Alors ça porte le nombre à 993 caractères
  10. oui c'est ça, mais avec tout... ouverture, on/off, thermostat, ... Mon script est bien mais le mail est tronqué
  11. Observation : Vous avez déjà remarqué qu'on soit limité à exactement 988 caractères dans les notifications par mail avec la commande sendEmail ? C'est un peu embêtant quand on cherche à faire un mail de checkup des états des devices... Il tronque le mail !!
  12. Bon alors ça je savais pas... Bon ça compliquer encore plus les choses... 1 scène... 1 VD... ... Je crois que je vais garder ma scène Mais dès que j'ai le temps d'essayer pour pas mourir bête, je le fais, c'est intéressant, je te tiens au courant... En attendant, pour mon problème de temps de réaction, j'ai réussi à l'améliorer considérablement en jouant avec le paramètre 3 qui était à 1-2 impulsions par défaut. Je l'ai mis à 0-1 impulsion.
  13. Mais je pense pas qu'il soit la solution au problème car il faut spécifier un temps, et moi je n'ai pas de temps à spécifier.
  14. il faudrait trouver un moyen de mettre en pause le script tant que la fonction n'a pas retourné sa valeur ! Je tourne autour du settimeout denouveau...
  15. j'ai essayé avec ton code, en le copiant simplement dans une scène, aucune erreur !!! Mais exactement la même réaction, le test de la variable Input renvoi false parce que le fonction n'a pas renvoyé la valeur. Le code continue à s'exécuter et donc il crois que l'input est à 1 au lieu de 0... D'où l'ordre d'affichage dans le debug qui est inversé par rapport à ce que cela devrait être. Je pense vraiment que cela vient du fonctionne asynchrone de la requette http... C'est pas très clair cette histoire d'asynchrone, si qqun pouvait l'expliquer !!! Dans mon premier script, ce problème n'apparait pas car j'ai imbriqué les commandes dans les requêtes HTTP même ! L'une à la suite de l'autre. J'avais déjà eut ce soucis d'enchainement pour mes script de patrouille des caméras...
  16. Alors, dans un premier temps j'ai essayé en ajoutant une fonction de test: Mais du coup je pense qu'il y a un soucis à cause de la méthode asynchrone de la requête http. C'est à dire que le retour de la fonction n'apparait qu'après le premier test de la variable Input, donc elle n'est pas prise en compte ! --[[ %% properties 298 value %% events %% globals --]] if fibaro:countScenes() > 1 then fibaro:abort() end local http = net.HTTPClient() --Fonction qui test l'input 3 de l'IPX --return True si l'input 3 = 0 (pas d'interrupteur enclenché) --return False si l'input 3 = 1 (interupteur enclenché) function TestIpx() http:request("http://192.168.2.41/api/xdevices.json?cmd=10", { options = {method = 'GET', headers = {['Authorization'] = "BASIC YWRtaxxxxxxx="},}, success = function(response) jsonResponse = json.decode(response.data) if jsonResponse.IN3 == 0 then print("Input à 0") return true else print("Input à 1") return false end end, error = function(response) fibaro:debug("Error: " ..response) end }) end if tonumber(fibaro:getValue(298, "value")) == 1 then --si passage sur ON -- test l'input de l'IPX ne fait rien si lumière enclenchée par interrupteur) if TestIpx() then --on allume print("<font color='green'>Escalier = ON</font>") fibaro:call(296, "pressButton", 1) while tonumber(fibaro:getValue(298, "value")) == 1 do --tant que sur ON, on boucle fibaro:sleep(2*1000) --tempo 2 secondes end --retest de l'input avant d'éteindre (cas d'un allumage forcé par interrupeteur) if TestIpx() then fibaro:call(296, "pressButton", 2) --on éteint print("<font color='red'>Escalier = OFF</font>") else --sinon on laisse allumé print("<font color='yellow'>2 eme test : Escalier = manuel</font>") end else --sinon on laisse allumé print("<font color='yellow'>1er test : Escalier = manuel</font>") end end Voici le debug qui me le fait penser : [DEBUG] 18:03:56: 1er test : Escalier = manuel [DEBUG] 18:03:56: Input à 0
  17. Je viens de survoler ton code, jolie !!! J'essaye ce soir ! le fonction de test est bien vu ! Ça va alléger... par contre il va y avoir un effet de clignotement, je veux dire par la que on rallume que si elle s'est éteinte ?! Nan ? JE te confirme cela ce soir ! merci !
  18. Tient étrange, j'avais répondu à ta question mais visiblement, ça n'a pas pris !!! Donc je recommence, en effet le sleep n'a pas vraiment d'intérêt là. Je pourrais l'enlever et ne garder que le while .... do ça mettra le code en pause tant que le FGMS n'est pas repasser à 0. J'avais mis le sleep car je me suis dis que cela pourrait clamer le proc de la HC2 ! Et puis mettre une boucle while do avec rien dedans ça faisait bizarre ! nan ?
  19. On avait déjà parlé du setTimeout J'y avais pensé, mais je vois pas comment l'intégrer dedans. Car dans ce cas, la durée est gérer par le FGMS lui-même ! Tant qu'il est en alerte ! Elle n'est pas fixe.
  20. jjacques68

    Trendnet TEW733 (redirection port)

    Ah bien vu, j'y avais pas pensé, c'est vrai que chez moi j'utilise un port > 1000...
  21. jjacques68

    Trendnet TEW733 (redirection port)

    Tu n'as pas un firewall sur ton routeur qui bloquerait les redirections de ports ? Parce que au vu de tes print screen, tout a l'air ok !
  22. Bonjour à tous, J'ai essayé cette après midi de faire un éclairage sur détection pour une cage d'escalier. ça marche comme je veux mais !!! Je trouve qu'il y a un certain temps de réaction de l'installation... (2-3 secondes) Matériel : - 1 FGMS dans la cage d'escalier - 2 interrupteurs montage classique va et vient relié sur l'input 3 d'un IPX - Eclairage branché sur output 7 de l'ipx (via un contacteur jour/nuit) Configuration du FGMS : Param 1 = 10 (défaut) Param 2 = 2 (défaut) Param 3 = 1-2 impulsions (défaut) Param 4 = 2-12 secondes (défaut) Param 6 = 10 secondes J'ai VD avec 2 boutons ON/OFF qui me permet d'allumer ou éteindre depuis le Tél ou autre. (ce VD commande la sortie de l'IPX) C'est ces boutons que j'actionne depuis la scène. J'ai créé une scène pour gérer tout cela : -Cette scène est déclenchée lors du changement de valeur du FGMS. -lors du déclenchement de la scène, je teste d'abord si un interrupteur n'a pas été actionné (en testant l'input de l'IPX) -si pas le cas j'allume pendant le temps définit par le param 6 du FGMS -avant d'éteindre, je teste de nouveau si pas d'interrupteur actionné -si pas le cas je coupe la lumière La voici : (désolé pour la syntaxe du code, mais l'éditeur de texte du forum fait un peu ce qu'il veut avec les indentations...) --[[ %% properties 298 value %% events %% globals --]] if fibaro:countScenes() > 1 then fibaro:abort() end local http = net.HTTPClient() if tonumber(fibaro:getValue(298, "value")) == 1 then --si passage sur ON du FGMS -- avant test pour voir si un interrupteur n'a pas été actionné http:request("http://192.168.2.41/api/xdevices.json?cmd=10", { options = {method = 'GET', headers = {['Authorization'] = "BASIC YWRtaW46xxxxxxxxx="},}, success = function(response) jsonResponse = json.decode(response.data) if jsonResponse.IN3 == 0 then --allume si pas allumer par interrupteur print("<font color='green'>Escalier = ON</font>") fibaro:call(296, "pressButton", 1) while tonumber(fibaro:getValue(298, "value")) == 1 do --tant que FGMS sur ON, on boucle fibaro:sleep(2*1000) --tempo 2 secondes end --reteste si pas action d'interrupteur http:request("http://192.168.2.41/api/xdevices.json?cmd=10", { options = {method = 'GET', headers = {['Authorization'] = "BASIC YWRtaW46xxxxxxxxxxx="},}, success = function(response) jsonResponse = json.decode(response.data) if jsonResponse.IN3 == 0 then --éteint si pas allumer par interrupteur fibaro:call(296, "pressButton", 2) --on éteint print("<font color='red'>Escalier = OFF</font>") else print("<font color='yellow'>Escalier = manuel</font>") --sinon c'est que qqun a actionné interrupteur end end, error = function(response) fibaro:debug("Error: " ..response) end }) end end, error = function(response) fibaro:debug("Error: " ..response) end }) end ça marche très bien tout ça ! Si qqun actionne un interrupteur manuellement, c'est bien gérer ! Mais, je trouve qu'il y a un temps de réaction entre mon apparition devant le détecteur et l'allumage de la lumière (2 secondes). Après quand je vois la complexité de mon code pour une chose si simple ! c'est peut être normal ?! Vous avez d'autres idées plus simples pour l'amélioration ?
  23. Ouah ! le boulet que je suis !! Je désactivais la seule scène qui pouvait cliquer sur le bouton de mon VD, mais celle-ci était contrôlée par le WatchDog... donc elle s'était réenclanchée sans que je me rende compte !!! Bref du coup tout marche comme je le voulais Désolé pour le temps perdu !
  24. Ce que veux faire : ON sur le VD éclairage ----> IPX : relais Activé ------> push de l'IPX -------> action sur un bouton du VD de notification -------> réception de la notification Et mise jour de l'icône sur le VD éclairage. La mise jour de l'icône se fait bien, Mais ne reste pas !
  25. Oui mais si j'actionne l'éclairage depuis le VD éclairage, ça va faire une boucle pour ré appuyer sur le même bouton !
×
×
  • Créer...