NEWS
Скрипт Megad DHT22
-
В CCU.IO работает скрипт:
// Create variable "Temperature" setObject(100015, { Name: "Temperature", TypeName: "VARDP" }); // Create variable "Humidity" setObject(100016, { Name: "Humidity", TypeName: "VARDP" }); // request url function getValues() { request("http://192.168.1.14/sec/?pt=0&cmd=get", function (error, response, body) { if (body) { var m = body.match(/temp:([0-9]+)\/?hum:([0-9]+)/); if (m) { setState(100016, parseFloat(m[2])); setState(100015, parseFloat(m[1])); } } }); } // every minute schedule("*/1 * * * *", function () { getValues(); }); // Initial read getValues();как его переделать к iobroker для меня это тёмный лес, ну очень хочется разобратся :?
-
как его переделать к iobroker для меня это тёмный лес, ну очень хочется разобратся :? `
А если попробовать Node-RED?В инете много примеров для http-request.
-
как его переделать к iobroker для меня это тёмный лес, ну очень хочется разобратся :? `
А если попробовать Node-RED?В инете много примеров для http-request. `
Я его даже поставил, полазил по немецким форумам google так переводит что я нечего понять не смог. Думаю со временем и вашей помощю всё начнёт прояснятся и тогда и я смогу такими словечками "http-request" на равных опшатся :roll: -
В CCU.IO работает скрипт:
// Create variable "Temperature" setObject(100015, { Name: "Temperature", TypeName: "VARDP" }); // Create variable "Humidity" setObject(100016, { Name: "Humidity", TypeName: "VARDP" }); // request url function getValues() { request("http://192.168.1.14/sec/?pt=0&cmd=get", function (error, response, body) { if (body) { var m = body.match(/temp:([0-9]+)\/?hum:([0-9]+)/); if (m) { setState(100016, parseFloat(m[2])); setState(100015, parseFloat(m[1])); } } }); } // every minute schedule("*/1 * * * *", function () { getValues(); }); // Initial read getValues();как его переделать к iobroker для меня это тёмный лес, ну очень хочется разобратся :? `
// Create variable "Temperature" createState("Temperature"); // Create variable "Humidity" createState("Humidity"); // request url function getValues() { request("http://192.168.1.14/sec/?pt=0&cmd=get", function (error, response, body) { if (body) { var m = body.match(/temp:([0-9]+)\/?hum:([0-9]+)/); if (m) { setState("Humidity", parseFloat(m[2]), true); setState("Temperature", parseFloat(m[1]), true); } } }); } // every minute schedule("*/1 * * * *", getValues); // Initial read getValues(); -
Спасибо Bluefox
Ну что то не то, переменные появились но данных нет и в логах ругается.
Переменная Temerature_DS это мой скрипт на базе вашего, в экспериментальной прошивке megad есть поддержка 1wire датчика DS18B20.
443_screencapture-192-168-1-65-8081-1431859555203.png
443_screencapture-192-168-1-65-8081-1431859644202.png -
Прошу прощения. Забыл одну строчку
var request = require('request');
Новый скрипт:
var request = require('request'); // Create variable "Temperature" createState("Temperature"); // Create variable "Humidity" createState("Humidity"); // request url function getValues() { request("http://192.168.1.14/sec/?pt=0&cmd=get", function (error, response, body) { if (body) { var m = body.match(/temp:([0-9]+)\/?hum:([0-9]+)/); if (m) { setState("Humidity", parseFloat(m[2]), true); setState("Temperature", parseFloat(m[1]), true); } } }); } // every minute schedule("*/1 * * * *", getValues); // Initial read getValues(); -
Большое спасибо всё работает.
На основе вашего скрипта сделал скрипт для DS18B20, всё работает только не могу получить число с десятками (temp:18.6).
Пробовал разные примеры получаю целое(19), NaN или null

var request = require('request'); // Create variable "Temperature" createState("TemperatureDS"); // request url function getValues() { request("http://192.168.1.14/sec/?pt=7&cmd=get", function (error, response, body) { if (body) { var m = body.match(/temp:([0-9]+)/); if (m) { setState("TemperatureDS", parseFloat(m[1]), true); } } }); } // every minute schedule("*/1 * * * *", getValues); // Initial read getValues(); -
Большое спасибо всё работает.
На основе вашего скрипта сделал скрипт для DS18B20, всё работает только не могу получить число с десятками (temp:18.6).
Пробовал разные примеры получаю целое(19), NaN или null
`
Надо добаить точку к возможным символам: /temp:([0-9~~[color=#BF0000]~~.]+)/var request = require('request'); // Create variable "Temperature" createState("TemperatureDS"); // request url function getValues() { request("http://192.168.1.14/sec/?pt=7&cmd=get", function (error, response, body) { if (body) { var m = body.match(/temp:([0-9.]+)/); if (m) { setState("TemperatureDS", parseFloat(m[1]), true); } } }); } // every minute schedule("*/1 * * * *", getValues); // Initial read getValues(); -
Здравствуйте! Как этим скриптом получить отрицательную температуру ? `
Может в регулярку его добавить -
Здравствуйте всем!
Я здесь новенький. В скриптах "0" .
Обращаюсь за помощью. Как из wifi-iot EPS, соединен по mqtt? выдернуть данные.
Пробовал подставить свои значения в скрипт данного примера. Не получается.
Вот чего наваял. СМ. Вложение
Поправьте, чтоб заработало.
А так мне нужно вытащить вот такие данные из EPS: {"system":{"hostname":"ESP00161C69","uptime":6000,"rssi":-40,"freemem":30616},"sensors":{"bmet":28.7,"bmeh":51.4,"bmep":747.09,"pmv":236.0,"pmc":1.23,"pmw":228,"pmwh":2291371}}
8054_mqtt.png
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden