Ankündigung

Einklappen
Keine Ankündigung bisher.

HTTP Get Abfrage für Temperatursensor

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    HTTP Get Abfrage für Temperatursensor

    Hallo zusammen,
    ich habe einen WEMOS D1 R2 mini mit einem DHT Shield Sensor. Dieser misst die Temperatur und Raumfeuchte und bietet dies über die WIFI Schnittstelle als Webserver die entsprechenden Werte zur Verfügung.

    Abfagen kann ich das dann folgendermaßen:

    http://IP-des-Sensors/temp
    http://IP-des-Sensors/humidity

    hierzu wird anschließend der entsprechende Wert ausgegeben wie Beispielsweise 24 C oder 50%

    Nun möchte ich diese Werte in die Logikbausteine übertragen. Wie bringe ich Edomi dazu? Einen entsprechenden HTTP Request Baustein habe ich nicht gefunden.

    Das erstellen von Bausteinen ist nicht so mein Ding ^^

    #2
    hi, ich habe mittlerweile herausgefunden, dass der Sensor auch die Daten irgendwo hinschreiben kann. Wie kann ich diese Daten über Edomi einlesen? Hat hier jemand so etwas schon gemacht?

    Kommentar


      #3
      Es wird immer aufs gleiche hinaus laufen. Du musst einen LBS schreiben.

      Kommentar


        #4
        puuuh, kann mir da jemand helfen? Das mit dem LBS habe ich bisher noch nicht so ganz gerafft.

        Kommentar


          #5
          Kann mir jemand bei dem Baustein bitte helfen? Irgendwie bekomme ich das nicht hin und weis auch nicht was ich da eintragen soll.

          Code:
          ###[DEF]###
          [name       =HTTP Get Request]
          [e#1        =Trigger      #init=0]
          [e#2        =ipAddr       #init=192.168.100.7]
          [a#1        = Ausgabe ]
          ###[/DEF]###
          
          
          ###[HELP]###
          Kommt noch
          
          ###[/HELP]###
          
          ###[LBS]###
          <?
          Abfrage HTTP Server URL: http://IP-des-Server/temp
          ?>
          ###[/LBS]###
          
          ###[EXEC]###
          <?
          require(dirname(__FILE__)."/../../../../main/include/php/incl_lbsexec.php");
          
          
          ?>
          ###[/EXEC]###

          Kommentar


            #6
            Schau Dir mal den Tv Baustein an, der macht sowas http://service.knx-user-forum.de/?co...ad&id=19000134
            Zuletzt geändert von vento66; 28.11.2016, 20:42.

            Kommentar


              #7
              Zitat von vento66 Beitrag anzeigen
              Schau Dir mal den Tv Baustein an, der macht sowas http://service.knx-user-forum.de/?co...oad&id=1900013
              da fehlt ne "4" am Ende ...

              Kommentar


                #8
                Ha, nicht mal kopieren kann ich mehr.... Danke habs ausgebesert.

                Kommentar


                  #9
                  Du brauchst so etwas in der Richtung:

                  Code:
                  ###[DEF]###
                  [name        = Wemos irgendwas    ]
                  
                  [e#1        = Trigger    ]
                  [e#2        = IP]
                  
                  
                  [a#1        =temp]
                  [a#2        =humidity    ]
                  
                  
                  [v#1       =   ]
                  ###[/DEF]###
                  
                  
                  ###[HELP]###
                  
                  ###[/HELP]###
                  
                  
                  ###[LBS]###
                  <?
                  function LB_LBSID($id) {
                      if ($E=logic_getInputs($id)) {    
                          if ($E[1]['refresh']==1 || $E[2]['refresh']==1) {
                              callLogicFunctionExec(LBSID,$id);
                          }
                  
                      }
                  }
                  ?>
                  ###[/LBS]###
                  
                  
                  ###[EXEC]###
                  <?
                  require(dirname(__FILE__)."/../../../../main/include/php/incl_lbsexec.php");
                  
                  sql_connect();
                  
                      $n='';
                      $_buffer = "";
                      $a = array("1" => "temp","2" => "humidity",);
                  
                  if ($E=getLogicEingangDataAll($id)) {
                  
                      function HomepageLaden($url, $postdata)
                          {
                          $agent = "Chrome v1.0 :)";
                          $header[] = "Accept: text/vnd.wap.wml,*.*";
                          $ch = curl_init($url);
                  
                          if ($ch)
                              {
                              curl_setopt($ch,    CURLOPT_RETURNTRANSFER, 1);
                              curl_setopt($ch,    CURLOPT_USERAGENT, $agent);
                              curl_setopt($ch,    CURLOPT_HTTPHEADER, $header);
                              curl_setopt($ch,    CURLOPT_FOLLOWLOCATION, 1);
                  
                              if (isset($postdata))
                                  {
                                  curl_setopt($ch,    CURLOPT_POST, 1);
                                  curl_setopt($ch,    CURLOPT_POSTFIELDS, $postdata);
                                  }
                  
                              $tmp = curl_exec ($ch);
                              curl_close ($ch);
                              }
                          return $tmp;
                          }
                  
                              for ($n = 1; $n <= 2; $n++){
                                  $_url = "http://".$E[2]['value']."/".$a[$n];  
                                  $_buffer = HomepageLaden($_url, "");
                  
                  
                                          if ($_buffer <>''){
                                              setLogicLinkAusgang($id,$n,$_buffer);
                                      }
                                  }
                  }
                  sql_disconnect();
                  ?>
                  ###[/EXEC]###
                  
                  </span>
                  Zuletzt geändert von vento66; 28.11.2016, 23:14.

                  Kommentar


                    #10
                    danke dir vento66.

                    Das sieht schonmal erst gut aus... Soll ich ehrlich sein, ich glaub das mit dem LBS schreiben liegt mir nicht so... Nun mal das Ding eingebaut und getestet. Mein Temp Sensor blinkt kurz auf, wie er auch soll. Also Abfrage läuft. Nur bekomme ich keine Wert und das ist der Fehler in der Log.
                    2016-11-28 22:54:56 997484 ? 21497 Datei: /usr/local/edomi/www/data/liveproject/lbs/EXE000000.php | Fehlercode: 8 | Zeile: 43 | Undefined variable: buffer

                    Kommentar


                      #11
                      ersetz das letzte $buffer durch ein $_buffer. Dann sollte es gehn.

                      PHP-Code:
                        setLogicLinkAusgang($id,$n,$_buffer); 

                      Kommentar


                        #12
                        Das das Ding überhaupt so weit geht wundert mich eigentlich... in der Zeile
                        Code:
                         
                         setLogicLinkAusgang($id,$n,$buffer);
                        muss es
                        Code:
                         
                         setLogicLinkAusgang($id,$n,$_buffer);
                        heissen. Da fehlt ein underline

                        Kommentar


                          #13
                          Leute ihr seit echt der Hammer!!! Sowas von geil es funktioniert ... hihi :P

                          2016-11-28 23_05_46-EDOMI · Administration.png

                          Kommentar


                            #14
                            Ist das ein neuer Baustein? ^^ kommt dieser in die Download Bibliothek?

                            Kommentar


                              #15
                              was ist das für eine Programmiersprache? Wie kann ich das auch lernen?

                              Kommentar

                              Lädt...
                              X