971jmd Posté(e) le 19 octobre 2019 Auteur Signaler Posté(e) le 19 octobre 2019 le relai passe à ON et OFF après 2 sec mai le bouton reste sur ON
971jmd Posté(e) le 19 octobre 2019 Auteur Signaler Posté(e) le 19 octobre 2019 Pour info, quand je lance la DASHBORD le bouton est par défaut sur off
971jmd Posté(e) le 19 octobre 2019 Auteur Signaler Posté(e) le 19 octobre 2019 il y a 9 minutes, Barelle a dit : Je suppose que l'on devrait avoir le même résultat on { "oid": "1.3.6.1.4.1.42505.9.2.2.3.0", "type": "Integer", "value": 1 } off { "oid": "1.3.6.1.4.1.42505.9.2.2.3.0", "type": "Integer", "value": 0 } concernant ça oui effectivement ça fonctionne
Barelle Posté(e) le 19 octobre 2019 Signaler Posté(e) le 19 octobre 2019 Avec ce schéma cela fonctionne : Si après le changement d'état, aucun message n'est envoyé au bouton, il restera comme avant. L'important est le retour de Off vers Portail N°x.
971jmd Posté(e) le 19 octobre 2019 Auteur Signaler Posté(e) le 19 octobre 2019 alors j'ai trouver, j'ai remplacée le swich par un bouton
971jmd Posté(e) le 19 octobre 2019 Auteur Signaler Posté(e) le 19 octobre 2019 c'est impec tu est chef merci
971jmd Posté(e) le 19 octobre 2019 Auteur Signaler Posté(e) le 19 octobre 2019 (modifié) sans vouloir abusée je cherche à crée un gauge concernant la remontée d'information d'un module fibaro et crée un moyen d'activée notre bouton portail depuis fibaro Modifié le 19 octobre 2019 par 971jmd
Barelle Posté(e) le 20 octobre 2019 Signaler Posté(e) le 20 octobre 2019 Pour la gauge, il faut savoir d'où viennent les données, est-ce Node-Red qui interroge périodiquement la HC2 ou est-ce la HC2 qui envoie les données vers Node-Red. Pour activer le bouton, il faudra dans un VD ou une scène de la HC2 l'envoi des données vers Node-Red. Cela pourrait ressembler au schéma ci-après dans le cas ou la HC2 est à l'initiative des échanges.
Barelle Posté(e) le 20 octobre 2019 Signaler Posté(e) le 20 octobre 2019 Pour compléter, voici un exemple de scène envoyant une donnée à la gauge, il ne reste qu'à l'adapter à tes besoins, notamment en changeant l'adresse du serveur Node-RED : --[[ %% autostart %% properties %% events %% globals --]] local urlNodeRed = "http://192.168.0.26:1880/HC2/Data/ModuleX"; -- Node-RED serveur local HTTPClientTimeout = 15000; function sendValueToNodeRed(payload) local nodeRed = net.HTTPClient(); nodeRed:request(urlNodeRed, { options = {method = 'PUT', data = payload, headers = {["content-type"] = "text/plain"}, timeout = HTTPClientTimeout}, success = function(response) fibaro:debug("sendValueToNodeRed>>>success, payload="..payload); end, error = function (err) fibaro:debug("sendValueToNodeRed>>>error:" .. err .. ", payload=" .. payload); if string.lower(err) == "operation cancelled" then HTTPClientTimeout = HTTPClientTimeout + 1000; fibaro:debug("sendValueToNodeRed>>>error:operation cancelled, increasing HTTPClientTimeout to " .. HTTPClientTimeout .. ", payload=" .. payload); else fibaro:debug("sendValueToNodeRed>>>error:" .. err .. ", payload=" .. payload); end end }); end -- sendValueToNodeRed value = tostring(5); sendValueToNodeRed(value);
971jmd Posté(e) le 20 octobre 2019 Auteur Signaler Posté(e) le 20 octobre 2019 salut a ouai effectivement, merci je vais essayer
971jmd Posté(e) le 20 octobre 2019 Auteur Signaler Posté(e) le 20 octobre 2019 je ne trouve pas le nœuds
971jmd Posté(e) le 20 octobre 2019 Auteur Signaler Posté(e) le 20 octobre 2019 (modifié) bon pour fibaro je sature si non j'ai un petit truc a que je cherche a faire, activée le bouton avec un mot cle venant de télégramme ça fonctionne a 80%, comment faire pour : si message banana alors activée msg.payload ("53=ON") if (msg.payload === "banana") { return [ null, msg ]; } else { return [ msg, null ]; } Modifié le 20 octobre 2019 par 971jmd
Barelle Posté(e) le 20 octobre 2019 Signaler Posté(e) le 20 octobre 2019 C'est le nœud Input http, paramétré Peut-être : if (msg.payload === "banana") { msg.payload = "53=ON"; return [ null, msg ]; } else { return [ msg, null ]; } Mais cela n'a rien avoir avec Node-red, c'est de la programmation toute bébête...
971jmd Posté(e) le 20 octobre 2019 Auteur Signaler Posté(e) le 20 octobre 2019 toute bébête... pour toi je teste
971jmd Posté(e) le 20 octobre 2019 Auteur Signaler Posté(e) le 20 octobre 2019 non ça ne fonctionne pas, le debug recois bien banana
971jmd Posté(e) le 31 octobre 2019 Auteur Signaler Posté(e) le 31 octobre 2019 Le 20/10/2019 à 04:32, Barelle a dit : Pour compléter, voici un exemple de scène envoyant une donnée à la gauge, il ne reste qu'à l'adapter à tes besoins, notamment en changeant l'adresse du serveur Node-RED : --[[ %% autostart %% properties %% events %% globals --]] local urlNodeRed = "http://192.168.0.26:1880/HC2/Data/ModuleX"; -- Node-RED serveur local HTTPClientTimeout = 15000; function sendValueToNodeRed(payload) local nodeRed = net.HTTPClient(); nodeRed:request(urlNodeRed, { options = {method = 'PUT', data = payload, headers = {["content-type"] = "text/plain"}, timeout = HTTPClientTimeout}, success = function(response) fibaro:debug("sendValueToNodeRed>>>success, payload="..payload); end, error = function (err) fibaro:debug("sendValueToNodeRed>>>error:" .. err .. ", payload=" .. payload); if string.lower(err) == "operation cancelled" then HTTPClientTimeout = HTTPClientTimeout + 1000; fibaro:debug("sendValueToNodeRed>>>error:operation cancelled, increasing HTTPClientTimeout to " .. HTTPClientTimeout .. ", payload=" .. payload); else fibaro:debug("sendValueToNodeRed>>>error:" .. err .. ", payload=" .. payload); end end }); end -- sendValueToNodeRed value = tostring(5); sendValueToNodeRed(value); salut @Barelle j'ai tester le code mai je comprend pas tout ça je comprends bien que c'est l'adresse du Raspberry ou fonctionne NODE-RED http://192.168.0.26:1880/HC2/Data/ModuleX"; -- Node-RED serveur mai HC2/Data/ModuleX c'est quoi exactement
971jmd Posté(e) le 31 octobre 2019 Auteur Signaler Posté(e) le 31 octobre 2019 /HC2/Data/ModuleX est un chemin depuis leraspberry ou la HC2 ?
Barelle Posté(e) le 31 octobre 2019 Signaler Posté(e) le 31 octobre 2019 Il faut définir dans Node-RED un point d'entrée qui sera appelé par la HC2.
971jmd Posté(e) le 31 octobre 2019 Auteur Signaler Posté(e) le 31 octobre 2019 la Méthode: PUT est utilisé pour Modification des données existantes sur la hc2
Barelle Posté(e) le 31 octobre 2019 Signaler Posté(e) le 31 octobre 2019 Précise ton besoin : qui émet quoi ?
971jmd Posté(e) le 31 octobre 2019 Auteur Signaler Posté(e) le 31 octobre 2019 ce qui me trouble est que je cherche a récupéré (GET) une donné pour la Gauge, donc GET et pas PUT
Barelle Posté(e) le 31 octobre 2019 Signaler Posté(e) le 31 octobre 2019 C'est un flux en entrée de Node-RED (il n'y a pas de connecteur à gauche) qui il figure bien dans les input. Il recevra des données envoyées par un ordre api.put par la HC2.
971jmd Posté(e) le 31 octobre 2019 Auteur Signaler Posté(e) le 31 octobre 2019 si je comprend c'est la HC2 qui PUT Node-RED
Messages recommandés