Aller au contenu

Barelle

Membres confirmés
  • Compteur de contenus

    339
  • Inscription

  • Dernière visite

  • Jours gagnés

    19

Tout ce qui a été posté par Barelle

  1. Barelle

    Portier Doorbird

    C'est sûr, c'est la même application qui est loin d'être parfaite mais qui fait malgré tout le boulot.
  2. Barelle

    Portier Doorbird

    Le portier vidéo Hikvision DS-KIS701 est livré avec un écran, et on peut en rajouter jusqu'à 8...
  3. Barelle

    ESP-Easy

    Il y a l’embarras du choix : L'écrire dans une variable globale pour la relire dans la scène. L'écrire dans un label de VD à relire dans une scène. Passer la valeur en paramètre lors du lancement de la scène par un VD. Récupérer directement la valeur à partir de la scène.
  4. Barelle

    ESP-Easy

    Nouvel essai : local thisdevice = fibaro:getSelfId() local sensorName = "pirdupir"; local conn = Net.FHttp(fibaro:getValue(thisdevice, 'IPAddress'), fibaro:getValue(thisdevice, 'TCPPort')) -- connection espeasy/port response, status, errorCode = conn:GET('/json') fibaro:debug(response) if tonumber(status) == 200 then jsonTable = json.decode(response); -- decodage de la table json espeasy for _, sensors in ipairs(jsonTable.Sensors) do fibaro:debug("sensors=".. json.encode(sensors)); if sensors.TaskName == sensorName then for _, row in ipairs(sensors.TaskValues) do fibaro:debug("row=".. json.encode(row)); sensorValue = row.Value; fibaro:debug("Nom du capteur=".. row.Name..", valeur="..row.Value); break; end end end else fibaro:debug("error, status="..status) end
  5. Barelle

    ESP-Easy

    C'est curieux, la requête avec tasknr retourne un json invalide. donc, on va utiliser la requête json qui retourne un max de données : local thisdevice = fibaro:getSelfId() local sensorName = "pirdudir"; local conn = Net.FHttp(fibaro:getValue(thisdevice, 'IPAddress'), fibaro:getValue(thisdevice, 'TCPPort')) -- connection espeasy/port response, status, errorCode = conn:GET('/json') fibaro:debug(response) if tonumber(status) == 200 then jsonTable = json.decode(response); -- decodage de la table json espeasy for _, row in ipairs(jsonTable.Sensors.TaskValues) do if row.Name == sensorName then sensorValue = row.Value; fibaro:debug("Nom du capteur=".. row.Name..", valeur="..row.Value); break; end end else fibaro:debug("error, status="..status) end
  6. Barelle

    ESP-Easy

    Avec cela, on ne devrait pas être loin du résultat attendu : local thisdevice = fibaro:getSelfId() local taskId = "1" local conn = Net.FHttp(fibaro:getValue(thisdevice, 'IPAddress'), fibaro:getValue(thisdevice, 'TCPPort')) -- connection espeasy/port response, status, errorCode = conn:GET('/json?tasknr=' .. taskId) fibaro:debug(response) if tonumber(status) == 200 then jsonTable = json.decode(response); fibaro:debug("Nom du capteur=".. jsonTable.TaskName..", valeur="..jsonTable.TaskValues.Value); else fibaro:debug("error") end
  7. Barelle

    ESP-Easy

    Dans ce cas, il est tout à fait normal que cela ne fonctionne pas, le code servant à récupérer les valeurs de température et d'humidité d'un capteur DHT22.
  8. Les goûts et les couleurs... C'est comme les téléphones, certains ont le design et d'autres les fonctionnalités...
  9. Barelle

    ESP-Easy

    Dans la réponse de l'ESP Easy, il n'y a aucune valeur ressemblant à une température ou une humidité, as-tu bien un capteur qui y est connecté et qui y est déclaré ?
  10. Je l'ai acheté, mais non encore installé définitivement. Le principal avantage que je lui ai trouvé et le fonctionnement sur 2 fils seulement. Il est vu sur le réseau comme une caméra Hikvision, avec la possibilité d'en enregistrer le flux. Une notification est remontée sur smartphone dans l'application Hik-connect. Par contre, je n'ai pas encore testé l'interface avec la HC2.
  11. Barelle

    ESP-Easy

    La réponse ne comprend pas les champs Temperature et Humidity, il faudrait changer la requête : response, status, errorCode = conn:GET('/json?tasknr=' .. taskId) en response, status, errorCode = conn:GET('/json') puis, reposte le debug.
  12. Barelle

    Plugin Netatmo

    Le mien datait de janvier 2016, du jour au lendemain, il s'est mis à consommer des piles à vitesse accélérée (moins de 24 heures) malgré un nettoyage approfondi. Manifestement il y a un défaut d'étanchéité que j'avais déjà eu sur l'anémomètre, ce dernier avait été remplacé au titre de la garantie. Quant au plastique, il vieillit relativement mal. Etat intérieur :
  13. Ainsi, cela devrait mieux fonctionner : fibaro:debug("toto: "..jsonTable0.weather[1].description)
  14. Barelle

    FGS 212 et moteur garage Somfy

    Si j'en crois la notice https://service.somfy.com/downloads/master_v3_b2c/0404_2016_gdk_3000_4000_fr.pdf il est possible de brancher un contact à clef ref. 2400597, pour laquelle il est précisé (https://boutique.somfy.fr/commande-a-cle-filaire.html) : Compatible avec toutes les motorisations Somfy disposant d'une entrée contact sec ou bouton poussoir. Le contact sec serait donc entre les bornes 1 et : Donc, il conviendrait de brancher le FGS 212 avec le I sur la borne 1 du moteur et le O sur la borne 3. @jojo partages-tu mon analyse ?
  15. Barelle

    Mon Test Jeedom

    Bonsoir, J'utilise Node-RED qui interroge périodiquement l'Eco-devices pour calculer les consommations à partir des index et les stocker dans InfluxDB. Cela donne la logique suivante (le compteur 2 relevant la consommation de la piscine) :
  16. Barelle

    Recup Etat Json

    Je te suggère d'essayer le code suivant : --[[ %% autostart --]] local Source = fibaro:getSourceTrigger() function Run() local delay = 60 --en secondes local url = 'http://192.168.42.4:9595/cm?cmnd=Power' fibaro:debug("oki") fibaro:debug("Prog Launch") http = net.HTTPClient() http:request(url, {options = { method = 'GET' }, success = function(p) fibaro:debug(p.status) jsonTable = json.decode(p.data) fibaro:debug('jsonTable.POWER=' .. jsonTable.POWER) fibaro:setGlobal("SonOff", jsonTable.POWER) -- on stocke dans Global Variable end, error = function(err) fibaro:debug('http:request call error, error =' .. err); end }) setTimeout(Run, delay*1000) end if Source["type"] == "autostart" or Source ["type"] == "other" then Run() end
  17. Avec la fonction suivante, il est possible de récupérer les champs "Étiquette" et "ID" d'un bouton de VD comme demandé initialement. function btnNameAndCaption(btnId) if btnId == nil then btnId = _elementID_; end local myDevice = api.get("/devices/"..fibaro:getSelfId()); for _, row in pairs(myDevice.properties.rows) do if row.type == "button" and row.elements then for _, btn in pairs(row.elements) do if btn.id == btnId then return btn.name, btn.caption; end end end end fibaro:debug("unknown button;"); end local btnName, btnCaption = btnNameAndCaption(); fibaro:debug("BtnId=".._elementID_..", ID="..btnName..", Étiquette="..btnCaption);
  18. Essaie plutôt : local MyLabel = fibaro:get(fibaro:getSelfId(), "ui.Radio1.caption") Tu trouveras toute la documentation des valeurs retournées par les API à l'adresse : http://<adresse de la HC2>/docs/
  19. Vu le lien, internetsurveys.pl, il est probable que l'enquête a été commanditée par Fibaro. J'y ai également répondu. Si nous ne l'avons pas tous reçu, c'est probablement qu'ils ne sont pas partis de la liste des adresses obtenues via le Fibaro id, mais peut être d'une liste issue de ceux ayant eu affaire au support.
  20. Voici le message reçu de badanie@pmrcorporate.com : Le lien de SURVEY LINK est https://internetsurveys.pl/mrIWeb/mrIWeb.dll?I.Project=PM_FI_1119ML_WEB&amp;ANK=xxxxxxxxxxx avec xxxxxxxxxxx semblant être un identifiant.
  21. Tu avais évoqué la possibilité de faire plus simplement, je te propose une seule scène que je n'ai pas testé : --[[ %% properties 102 value --]] local lumComblesId = 121; local sensorComblesId = 102; local delai = 60; -- en secondes if fibaro:getValue(lumComblesId, 'value') == "0" then -- C'est éteint fibaro:abort(); -- Il n'y a rien à faire, on sort end if fibaro:countScenes() > 1 then -- Une seule scène active fibaro:abort(); end fibaro:sleep(delai * 1000); -- On attend le delai exprimé en secondes local temps = os.time() - fibaro:getModificationTime(sensorComblesId, 'value'); -- temps écoulé depuis la dermière modification if temps > delai then fibaro:call(lumComblesId, 'turnOff'); -- alors on éteint end
  22. Oups, j'ai été soumis à une certaine confusion qui m'a fait écrire de fausses assertions. La scène ayant été déclenchée par un changement de valeur de la variable globale ne sera pas redéclenchée par un changement de la valeur de la même variable globale, il me semble bien, mais sans être catégorique, que dans des versions précédentes nous n'avions pas ce comportement. Pour ton cas précis, je ne vois pas très bien en quoi cela altère le comportement attendu.
  23. Je maintiens mon diagnostic 0 et '0' ! fibaro:setGlobal('Detect_Combles_Val', 0) ... D_Combles_Val = fibaro:getGlobalValue('Detect_Combles_Val') if (D_Combles_Val == '0') then Ta scène s'exécute bien deux fois, ajoute un fibaro:debug en tête pour t'en assurer. Lors du passage de la variable globale à 0, une nouvelle scène est lancée, et la scène continue à s'exécuter mais suite à la confusion entre '0' et 0, le test échoue. Pour la même raison la nouvelle scène ne fait rien.
  24. J'entrevois une cause : Dans les ordres fibaro:setGlobal, la valeur est numérique, et lors du test sur la valeur (if (D_Combles_Va l == '0') then) il s'agit d'une chaîne de caractères.
  25. A propos du NVR Hikvision DS-7608NI-K2, alors que sur le site hikvisioneurope il est limité à la version V3.4.107 build190927, il est possible de l'upgrader avec la version V4.22.000 build 190821 qui se trouve dans le répertoire 04 I-series » [76 77 96 NI-I]. Cela fonctionne bien et apporte une interface utilisateur directe nettement améliorée, par contre l'interface web reste la même.
×
×
  • Créer...