Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Русский
    3. ioBroker
    4. Скрипты
    5. ioBroker скрипты
    6. Скрипт Megad DHT22

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Скрипт Megad DHT22

    This topic has been deleted. Only users with topic management privileges can see it.
    • Bluefox
      Bluefox last edited by

      @Haus:

      В 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();
      
      1 Reply Last reply Reply Quote 0
      • H
        Haus last edited by

        Спасибо Bluefox

        Ну что то не то, переменные появились но данных нет и в логах ругается.

        Переменная Temerature_DS это мой скрипт на базе вашего, в экспериментальной прошивке megad есть поддержка 1wire датчика DS18B20.
        443_screencapture-192-168-1-65-8081-1431859555203.png
        443_screencapture-192-168-1-65-8081-1431859644202.png

        1 Reply Last reply Reply Quote 0
        • Bluefox
          Bluefox last edited by

          Прошу прощения. Забыл одну строчку

          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();
          
          
          1 Reply Last reply Reply Quote 0
          • H
            Haus last edited by

            Большое спасибо всё работает.

            На основе вашего скрипта сделал скрипт для 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();
            
            1 Reply Last reply Reply Quote 0
            • Bluefox
              Bluefox last edited by

              @Haus:

              Большое спасибо всё работает.

              На основе вашего скрипта сделал скрипт для 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();
              
              1 Reply Last reply Reply Quote 0
              • N
                nnprject last edited by

                Здравствуйте! Как этим скриптом получить отрицательную температуру ?

                1 Reply Last reply Reply Quote 0
                • I
                  instalator last edited by

                  @nnprject:

                  Здравствуйте! Как этим скриптом получить отрицательную температуру ? `
                  Может в регулярку его добавить

                  1 Reply Last reply Reply Quote 0
                  • H
                    Haus last edited by

                    @nnprject:

                    Здравствуйте! Как этим скриптом получить отрицательную температуру ? `

                    var m = body.match(/temp:(\D*[0-9.]+)/);
                    
                    1 Reply Last reply Reply Quote 0
                    • N
                      nnprject last edited by

                      Спасибо!

                      1 Reply Last reply Reply Quote 0
                      • A
                        andrey1509 last edited by

                        Здравствуйте всем!

                        Я здесь новенький. В скриптах "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

                        1 Reply Last reply Reply Quote 0
                        • First post
                          Last post

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        883
                        Online

                        31.8k
                        Users

                        80.0k
                        Topics

                        1.3m
                        Posts

                        6
                        13
                        5723
                        Loading More Posts
                        • Oldest to Newest
                        • Newest to Oldest
                        • Most Votes
                        Reply
                        • Reply as topic
                        Log in to reply
                        Community
                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                        The ioBroker Community 2014-2023
                        logo