-
Compteur de contenus
339 -
Inscription
-
Dernière visite
-
Jours gagnés
19
Tout ce qui a été posté par Barelle
-
C'est sûr, c'est la même application qui est loin d'être parfaite mais qui fait malgré tout le boulot.
-
Le portier vidéo Hikvision DS-KIS701 est livré avec un écran, et on peut en rajouter jusqu'à 8...
-
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.
-
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
-
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
-
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
-
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.
-
Home Center 3 présentée au CES 2020
Barelle a répondu à un(e) sujet de eric_le_belge dans Annonces et suggestions
Les goûts et les couleurs... C'est comme les téléphones, certains ont le design et d'autres les fonctionnalités... -
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é ?
-
Home Center 3 présentée au CES 2020
Barelle a répondu à un(e) sujet de eric_le_belge dans Annonces et suggestions
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. -
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.
-
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 :
-
Utilisation du json OpenWeather
Barelle a répondu à un(e) sujet de eric_le_belge dans Chauffage et Energie
Ainsi, cela devrait mieux fonctionner : fibaro:debug("toto: "..jsonTable0.weather[1].description) -
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 ?
-
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) :
-
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
-
Champs "Étiquette" et "ID" d'un bouton de VD.
Barelle a répondu à un(e) sujet de DoR.Technique dans HC2
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); -
Champs "Étiquette" et "ID" d'un bouton de VD.
Barelle a répondu à un(e) sujet de DoR.Technique dans HC2
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/ -
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.
-
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&ANK=xxxxxxxxxxx avec xxxxxxxxxxx semblant être un identifiant.
-
Scenes et Var Globale pour gérer l'extinction d'une lumière
Barelle a répondu à un(e) sujet de Doudoubidou dans HC2
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 -
Scenes et Var Globale pour gérer l'extinction d'une lumière
Barelle a répondu à un(e) sujet de Doudoubidou dans HC2
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. -
Scenes et Var Globale pour gérer l'extinction d'une lumière
Barelle a répondu à un(e) sujet de Doudoubidou dans HC2
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. -
Scenes et Var Globale pour gérer l'extinction d'une lumière
Barelle a répondu à un(e) sujet de Doudoubidou dans HC2
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. -
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.
- 1 631 réponses
-
- topic unique
- surveillance
-
(et 2 en plus)
Étiqueté avec :