Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Русский
  3. ioBroker
  4. Скрипты
  5. ioBroker скрипты
  6. Скрипт Megad DHT22

NEWS

  • Neuer ioBroker-Blog online: Monatsrückblick März/April 2026
    BluefoxB
    Bluefox
    8
    1
    1.7k

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    10
    1
    711

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    1.2k

Скрипт Megad DHT22

Geplant Angeheftet Gesperrt Verschoben ioBroker скрипты
13 Beiträge 6 Kommentatoren 6.3k Aufrufe
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • H Offline
    H Offline
    Haus
    schrieb am zuletzt editiert von
    #1

    В 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 для меня это тёмный лес, ну очень хочется разобратся :?

    js-controller: 1.5.7 / node.js: v8.15.1/ npm: 6.4.1

    admin: 3.6.0

    javascript: 4.1.10

    web: 2.4.1 vis: 1.1.10

    cloud: 2.6.2

    Server: DELL FX170 / linux: Debian 9.5 Stretch

    Adapter: MegaD-2561, Mega-ES…

    1 Antwort Letzte Antwort
    0
    • E Offline
      E Offline
      electric69
      schrieb am zuletzt editiert von
      #2

      @Haus:

      как его переделать к iobroker для меня это тёмный лес, ну очень хочется разобратся :? `
      А если попробовать Node-RED?

      В инете много примеров для http-request.

      1 Antwort Letzte Antwort
      0
      • H Offline
        H Offline
        Haus
        schrieb am zuletzt editiert von
        #3

        @electric69:

        @Haus:

        как его переделать к iobroker для меня это тёмный лес, ну очень хочется разобратся :? `
        А если попробовать Node-RED?

        В инете много примеров для http-request. `
        Я его даже поставил, полазил по немецким форумам google так переводит что я нечего понять не смог. Думаю со временем и вашей помощю всё начнёт прояснятся и тогда и я смогу такими словечками "http-request" на равных опшатся :roll:

        js-controller: 1.5.7 / node.js: v8.15.1/ npm: 6.4.1

        admin: 3.6.0

        javascript: 4.1.10

        web: 2.4.1 vis: 1.1.10

        cloud: 2.6.2

        Server: DELL FX170 / linux: Debian 9.5 Stretch

        Adapter: MegaD-2561, Mega-ES…

        1 Antwort Letzte Antwort
        0
        • BluefoxB Offline
          BluefoxB Offline
          Bluefox
          schrieb am zuletzt editiert von
          #4

          @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 Antwort Letzte Antwort
          0
          • H Offline
            H Offline
            Haus
            schrieb am zuletzt editiert von
            #5

            Спасибо Bluefox

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

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

            js-controller: 1.5.7 / node.js: v8.15.1/ npm: 6.4.1

            admin: 3.6.0

            javascript: 4.1.10

            web: 2.4.1 vis: 1.1.10

            cloud: 2.6.2

            Server: DELL FX170 / linux: Debian 9.5 Stretch

            Adapter: MegaD-2561, Mega-ES…

            1 Antwort Letzte Antwort
            0
            • BluefoxB Offline
              BluefoxB Offline
              Bluefox
              schrieb am zuletzt editiert von
              #6

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

              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 Antwort Letzte Antwort
              0
              • H Offline
                H Offline
                Haus
                schrieb am zuletzt editiert von
                #7

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

                На основе вашего скрипта сделал скрипт для 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();
                

                js-controller: 1.5.7 / node.js: v8.15.1/ npm: 6.4.1

                admin: 3.6.0

                javascript: 4.1.10

                web: 2.4.1 vis: 1.1.10

                cloud: 2.6.2

                Server: DELL FX170 / linux: Debian 9.5 Stretch

                Adapter: MegaD-2561, Mega-ES…

                1 Antwort Letzte Antwort
                0
                • BluefoxB Offline
                  BluefoxB Offline
                  Bluefox
                  schrieb am zuletzt editiert von
                  #8

                  @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 Antwort Letzte Antwort
                  0
                  • N Offline
                    N Offline
                    nnprject
                    schrieb am zuletzt editiert von
                    #9

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

                    1 Antwort Letzte Antwort
                    0
                    • I Offline
                      I Offline
                      instalator
                      schrieb am zuletzt editiert von
                      #10

                      @nnprject:

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

                      Высокий уровень Децибел вреден для здоровья!

                      http://blog.instalator.ru/

                      1 Antwort Letzte Antwort
                      0
                      • H Offline
                        H Offline
                        Haus
                        schrieb am zuletzt editiert von
                        #11

                        @nnprject:

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

                        var m = body.match(/temp:(\D*[0-9.]+)/);
                        

                        js-controller: 1.5.7 / node.js: v8.15.1/ npm: 6.4.1

                        admin: 3.6.0

                        javascript: 4.1.10

                        web: 2.4.1 vis: 1.1.10

                        cloud: 2.6.2

                        Server: DELL FX170 / linux: Debian 9.5 Stretch

                        Adapter: MegaD-2561, Mega-ES…

                        1 Antwort Letzte Antwort
                        0
                        • N Offline
                          N Offline
                          nnprject
                          schrieb am zuletzt editiert von
                          #12

                          Спасибо!

                          1 Antwort Letzte Antwort
                          0
                          • A Offline
                            A Offline
                            andrey1509
                            schrieb am zuletzt editiert von
                            #13

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

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

                            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
                            Antworten
                            • In einem neuen Thema antworten
                            Anmelden zum Antworten
                            • Älteste zuerst
                            • Neuste zuerst
                            • Meiste Stimmen


                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            572

                            Online

                            32.9k

                            Benutzer

                            83.0k

                            Themen

                            1.3m

                            Beiträge
                            Community
                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                            ioBroker Community 2014-2025
                            logo
                            • Anmelden

                            • Du hast noch kein Konto? Registrieren

                            • Anmelden oder registrieren, um zu suchen
                            • Erster Beitrag
                              Letzter Beitrag
                            0
                            • Home
                            • Aktuell
                            • Tags
                            • Ungelesen 0
                            • Kategorien
                            • Unreplied
                            • Beliebt
                            • GitHub
                            • Docu
                            • Hilfe