Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

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

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. BWT Weichwasseranlage auslesen

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    347

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.6k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.5k

BWT Weichwasseranlage auslesen

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
121 Beiträge 18 Kommentatoren 24.6k Aufrufe 19 Watching
  • Ä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.
  • K Offline
    K Offline
    Kernal
    schrieb am zuletzt editiert von
    #1

    Hallöle zusammen.

    Ich versuche die BWT Weichwasserablage Perla auszulesen. Wenn ich Sie im Browser öffne, ladet er nach dem Login ein JSON nach, wo alle Daten drin stehen welche ich benötige. Leider klappt es im iobroker in Javascript mit dem Login nicht so richtig.

    Das Login Form sieht wie folgt aus:

    
    <!DOCTYPE html>
    <html lang='de'>
       <head>
           <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />    
           <meta name="viewport" content="width=device-width, height=device-height, initial-scale=1.0">
           <title>	              
               Login           
           </title>
           <link href="/favicon.ico" type="image/x-icon" rel="icon"/><link href="/favicon.ico" type="image/x-icon" rel="shortcut icon"/><link rel="stylesheet" type="text/css" href="/css/font.min.css"/><link rel="stylesheet" type="text/css" href="/css/default.min.css"/><link rel="stylesheet" type="text/css" href="/css/progressbarBackLeft.min.css"/><link rel="stylesheet" type="text/css" href="/css/simpleMenuCloseRight.min.css"/><link rel="stylesheet" type="text/css" href="/css/onlyTitleHeader.min.css"/><link rel="stylesheet" type="text/css" href="/css/mobile.min.css"/><script type="text/javascript" src="/js/jquery-3.1.1.min.js"></script>    </head>
       
       <!-- ************   Inhalt   ********* -->
       <body>
           <div class="container">
               <div class="content" >
                   <!-- ************   BWT-Logo   ********* -->
                   <div class="logo">
                       <img src="/img/cake.logo.png" class="logoImage" alt=""/>                </div>
                   <!-- ************   Inhalt vom Display   ********* -->
                   <div id="displayBackground">
                       <div id ="headerBackground" >
                             <div id="displayHeader" >
                               
                               <div style="color:#545554;text-transform: uppercase; width:100%;" align="center" class="headLine1 menuHeaderTitle">Login</div>
                               
                            </div>
                           
                            
                       </div>
                  
                       <div class="display">    
                           <!-- ************   Header   ********* -->                        
                           
                           
    <div align="center"><img src="/img/techniker_login_48.png" class="TSLoginIcon">
    </div>
    <form action="/users/login?url=%2Fusers%2Flogin" id="STLoginLoginForm" method="post" accept-charset="utf-8"><div style="display:none;"><input type="hidden" name="_method" value="POST"/></div><div class="displayBorder"><label  class=" copy labelforSelect labels" >Code</label><label for="STLoginPWField"></label><input name="STLoginPWField" placeholder="Bitte eingeben" ="" class="editFieldButton copy" id="STLoginPWField" type="password"/></div><div class="buttonsDiv" >
       <button id="STLoginButton" class="weiterButton" name="function" value="save" type="submit" formaction="/users/login">LOGIN</button>
    </div> 
    
    <script>
      
       
    </script> 
                       </div>
                   </div>
               </div>
           </div>
               </body>
    </html>
    
    
    

    Im IO Broker habe ich mal folgenden Script probiert:

      var request = require('request');
    request.post({
      url:     'https://MEINEBWT/users/login?url=%2Fusers%2Flogin"',
       form:   { STLoginPWField: "MEINPASSWORT", 'function': "save", _method: "POST"}
       
    }, function(error, response, body) {
       if (error) log(error, 'error');
       console.log(response);
    });
    

    Als Antwort bekomme ich folgendes:

     javascript.0 (137) script.js.test: {'statusCode':302,'body':'','headers':{'x-powered-by':'PHP/7.1.7','set-cookie':['CAKEPHP=fdbe4a55abd9efc67795ec16acff60df; expires=Sat, 21-Aug-2021 23:07:42 GMT; Max-Age=3600; path=/; secure; HttpOnly'],'location':'https://MEINEBWT/','content-type':'text/html; charset=UTF-8','content-length':'0','connection':'close','date':'Sat, 21 Aug 2021 22:07:14 GMT','server':'lighttpd/1.4.45'},'request':{'uri':{'protocol':'https:','slashes':true,'auth':null,'host':'MEINEBWT','port':443,'hostname':'MEINEBWT','hash':null,'search':'?url=%2Fusers%2Flogin%22','query':'url=%2Fusers%2Flogin%22','pathname':'/users/login','path':'/users/login?url=%2Fusers%2Flogin%22','href':'https://MEINEBWT/users/login?url=%2Fusers%2Flogin%22'},'method':'POST','headers':{'content-type':'application/x-www-form-urlencoded','content-length':48}}}
    

    Wenn ich anschliessend versuche die https://MEINEBWT/home/actualizedata aufzurufen, bekomme ich ein 302 was auf die Loginseite verweisst.

    Jemand eine Idee was ich falsch mache?

    Grüsse

    F K 2 Antworten Letzte Antwort
    0
    • K Kernal

      Hallöle zusammen.

      Ich versuche die BWT Weichwasserablage Perla auszulesen. Wenn ich Sie im Browser öffne, ladet er nach dem Login ein JSON nach, wo alle Daten drin stehen welche ich benötige. Leider klappt es im iobroker in Javascript mit dem Login nicht so richtig.

      Das Login Form sieht wie folgt aus:

      
      <!DOCTYPE html>
      <html lang='de'>
         <head>
             <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />    
             <meta name="viewport" content="width=device-width, height=device-height, initial-scale=1.0">
             <title>	              
                 Login           
             </title>
             <link href="/favicon.ico" type="image/x-icon" rel="icon"/><link href="/favicon.ico" type="image/x-icon" rel="shortcut icon"/><link rel="stylesheet" type="text/css" href="/css/font.min.css"/><link rel="stylesheet" type="text/css" href="/css/default.min.css"/><link rel="stylesheet" type="text/css" href="/css/progressbarBackLeft.min.css"/><link rel="stylesheet" type="text/css" href="/css/simpleMenuCloseRight.min.css"/><link rel="stylesheet" type="text/css" href="/css/onlyTitleHeader.min.css"/><link rel="stylesheet" type="text/css" href="/css/mobile.min.css"/><script type="text/javascript" src="/js/jquery-3.1.1.min.js"></script>    </head>
         
         <!-- ************   Inhalt   ********* -->
         <body>
             <div class="container">
                 <div class="content" >
                     <!-- ************   BWT-Logo   ********* -->
                     <div class="logo">
                         <img src="/img/cake.logo.png" class="logoImage" alt=""/>                </div>
                     <!-- ************   Inhalt vom Display   ********* -->
                     <div id="displayBackground">
                         <div id ="headerBackground" >
                               <div id="displayHeader" >
                                 
                                 <div style="color:#545554;text-transform: uppercase; width:100%;" align="center" class="headLine1 menuHeaderTitle">Login</div>
                                 
                              </div>
                             
                              
                         </div>
                    
                         <div class="display">    
                             <!-- ************   Header   ********* -->                        
                             
                             
      <div align="center"><img src="/img/techniker_login_48.png" class="TSLoginIcon">
      </div>
      <form action="/users/login?url=%2Fusers%2Flogin" id="STLoginLoginForm" method="post" accept-charset="utf-8"><div style="display:none;"><input type="hidden" name="_method" value="POST"/></div><div class="displayBorder"><label  class=" copy labelforSelect labels" >Code</label><label for="STLoginPWField"></label><input name="STLoginPWField" placeholder="Bitte eingeben" ="" class="editFieldButton copy" id="STLoginPWField" type="password"/></div><div class="buttonsDiv" >
         <button id="STLoginButton" class="weiterButton" name="function" value="save" type="submit" formaction="/users/login">LOGIN</button>
      </div> 
      
      <script>
        
         
      </script> 
                         </div>
                     </div>
                 </div>
             </div>
                 </body>
      </html>
      
      
      

      Im IO Broker habe ich mal folgenden Script probiert:

        var request = require('request');
      request.post({
        url:     'https://MEINEBWT/users/login?url=%2Fusers%2Flogin"',
         form:   { STLoginPWField: "MEINPASSWORT", 'function': "save", _method: "POST"}
         
      }, function(error, response, body) {
         if (error) log(error, 'error');
         console.log(response);
      });
      

      Als Antwort bekomme ich folgendes:

       javascript.0 (137) script.js.test: {'statusCode':302,'body':'','headers':{'x-powered-by':'PHP/7.1.7','set-cookie':['CAKEPHP=fdbe4a55abd9efc67795ec16acff60df; expires=Sat, 21-Aug-2021 23:07:42 GMT; Max-Age=3600; path=/; secure; HttpOnly'],'location':'https://MEINEBWT/','content-type':'text/html; charset=UTF-8','content-length':'0','connection':'close','date':'Sat, 21 Aug 2021 22:07:14 GMT','server':'lighttpd/1.4.45'},'request':{'uri':{'protocol':'https:','slashes':true,'auth':null,'host':'MEINEBWT','port':443,'hostname':'MEINEBWT','hash':null,'search':'?url=%2Fusers%2Flogin%22','query':'url=%2Fusers%2Flogin%22','pathname':'/users/login','path':'/users/login?url=%2Fusers%2Flogin%22','href':'https://MEINEBWT/users/login?url=%2Fusers%2Flogin%22'},'method':'POST','headers':{'content-type':'application/x-www-form-urlencoded','content-length':48}}}
      

      Wenn ich anschliessend versuche die https://MEINEBWT/home/actualizedata aufzurufen, bekomme ich ein 302 was auf die Loginseite verweisst.

      Jemand eine Idee was ich falsch mache?

      Grüsse

      F Offline
      F Offline
      fvp
      schrieb am zuletzt editiert von
      #2

      @kernal Moin, ich beschäftige mich auch aktuell mit der Perla. Soweit ich verstanden habe musst du dir den Cookie 'CAKEPHP=fdbe4a55abd9efc67795ec16acff60df' merken (gilt für 15 Min.) und bei der ...home/actualizedata abfrage mitschicken.

      F K 2 Antworten Letzte Antwort
      0
      • F fvp

        @kernal Moin, ich beschäftige mich auch aktuell mit der Perla. Soweit ich verstanden habe musst du dir den Cookie 'CAKEPHP=fdbe4a55abd9efc67795ec16acff60df' merken (gilt für 15 Min.) und bei der ...home/actualizedata abfrage mitschicken.

        F Offline
        F Offline
        fvp
        schrieb am zuletzt editiert von
        #3

        @Kernal Alternativ könntest du wahrscheinlich auch den NodeRed Code verwenden den thomy123 im KNX-User-Forum veröffentlicht hat.

        1 Antwort Letzte Antwort
        0
        • F fvp

          @kernal Moin, ich beschäftige mich auch aktuell mit der Perla. Soweit ich verstanden habe musst du dir den Cookie 'CAKEPHP=fdbe4a55abd9efc67795ec16acff60df' merken (gilt für 15 Min.) und bei der ...home/actualizedata abfrage mitschicken.

          K Offline
          K Offline
          Kernal
          schrieb am zuletzt editiert von Kernal
          #4

          @fvp said in BWT Weichwasseranlage auslesen:

          @kernal Moin, ich beschäftige mich auch aktuell mit der Perla. Soweit ich verstanden habe musst du dir den Cookie 'CAKEPHP=fdbe4a55abd9efc67795ec16acff60df' merken (gilt für 15 Min.) und bei der ...home/actualizedata abfrage mitschicken.

          Hey fvp. Danke für die Antwort.
          Wie schicke ich den CAKEPHP mit ? einfach im GET &CAKEPHP?

          Hast du schon eine Lösung bei dir?

          Gruss Claudio

          1 Antwort Letzte Antwort
          0
          • K Kernal

            Hallöle zusammen.

            Ich versuche die BWT Weichwasserablage Perla auszulesen. Wenn ich Sie im Browser öffne, ladet er nach dem Login ein JSON nach, wo alle Daten drin stehen welche ich benötige. Leider klappt es im iobroker in Javascript mit dem Login nicht so richtig.

            Das Login Form sieht wie folgt aus:

            
            <!DOCTYPE html>
            <html lang='de'>
               <head>
                   <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />    
                   <meta name="viewport" content="width=device-width, height=device-height, initial-scale=1.0">
                   <title>	              
                       Login           
                   </title>
                   <link href="/favicon.ico" type="image/x-icon" rel="icon"/><link href="/favicon.ico" type="image/x-icon" rel="shortcut icon"/><link rel="stylesheet" type="text/css" href="/css/font.min.css"/><link rel="stylesheet" type="text/css" href="/css/default.min.css"/><link rel="stylesheet" type="text/css" href="/css/progressbarBackLeft.min.css"/><link rel="stylesheet" type="text/css" href="/css/simpleMenuCloseRight.min.css"/><link rel="stylesheet" type="text/css" href="/css/onlyTitleHeader.min.css"/><link rel="stylesheet" type="text/css" href="/css/mobile.min.css"/><script type="text/javascript" src="/js/jquery-3.1.1.min.js"></script>    </head>
               
               <!-- ************   Inhalt   ********* -->
               <body>
                   <div class="container">
                       <div class="content" >
                           <!-- ************   BWT-Logo   ********* -->
                           <div class="logo">
                               <img src="/img/cake.logo.png" class="logoImage" alt=""/>                </div>
                           <!-- ************   Inhalt vom Display   ********* -->
                           <div id="displayBackground">
                               <div id ="headerBackground" >
                                     <div id="displayHeader" >
                                       
                                       <div style="color:#545554;text-transform: uppercase; width:100%;" align="center" class="headLine1 menuHeaderTitle">Login</div>
                                       
                                    </div>
                                   
                                    
                               </div>
                          
                               <div class="display">    
                                   <!-- ************   Header   ********* -->                        
                                   
                                   
            <div align="center"><img src="/img/techniker_login_48.png" class="TSLoginIcon">
            </div>
            <form action="/users/login?url=%2Fusers%2Flogin" id="STLoginLoginForm" method="post" accept-charset="utf-8"><div style="display:none;"><input type="hidden" name="_method" value="POST"/></div><div class="displayBorder"><label  class=" copy labelforSelect labels" >Code</label><label for="STLoginPWField"></label><input name="STLoginPWField" placeholder="Bitte eingeben" ="" class="editFieldButton copy" id="STLoginPWField" type="password"/></div><div class="buttonsDiv" >
               <button id="STLoginButton" class="weiterButton" name="function" value="save" type="submit" formaction="/users/login">LOGIN</button>
            </div> 
            
            <script>
              
               
            </script> 
                               </div>
                           </div>
                       </div>
                   </div>
                       </body>
            </html>
            
            
            

            Im IO Broker habe ich mal folgenden Script probiert:

              var request = require('request');
            request.post({
              url:     'https://MEINEBWT/users/login?url=%2Fusers%2Flogin"',
               form:   { STLoginPWField: "MEINPASSWORT", 'function': "save", _method: "POST"}
               
            }, function(error, response, body) {
               if (error) log(error, 'error');
               console.log(response);
            });
            

            Als Antwort bekomme ich folgendes:

             javascript.0 (137) script.js.test: {'statusCode':302,'body':'','headers':{'x-powered-by':'PHP/7.1.7','set-cookie':['CAKEPHP=fdbe4a55abd9efc67795ec16acff60df; expires=Sat, 21-Aug-2021 23:07:42 GMT; Max-Age=3600; path=/; secure; HttpOnly'],'location':'https://MEINEBWT/','content-type':'text/html; charset=UTF-8','content-length':'0','connection':'close','date':'Sat, 21 Aug 2021 22:07:14 GMT','server':'lighttpd/1.4.45'},'request':{'uri':{'protocol':'https:','slashes':true,'auth':null,'host':'MEINEBWT','port':443,'hostname':'MEINEBWT','hash':null,'search':'?url=%2Fusers%2Flogin%22','query':'url=%2Fusers%2Flogin%22','pathname':'/users/login','path':'/users/login?url=%2Fusers%2Flogin%22','href':'https://MEINEBWT/users/login?url=%2Fusers%2Flogin%22'},'method':'POST','headers':{'content-type':'application/x-www-form-urlencoded','content-length':48}}}
            

            Wenn ich anschliessend versuche die https://MEINEBWT/home/actualizedata aufzurufen, bekomme ich ein 302 was auf die Loginseite verweisst.

            Jemand eine Idee was ich falsch mache?

            Grüsse

            K Offline
            K Offline
            Kusi
            schrieb am zuletzt editiert von
            #5

            @kernal sagte in BWT Weichwasseranlage auslesen:

            Im IO Broker habe ich mal folgenden Script probiert:

            Ich erhalte eine andere Antwort:

            javascript.0
            2021-10-15 18:58:21.984 error Request error: Error: certificate has expired

            javascript.0
            2021-10-15 18:58:21.984 info script.js.BWT_Perla_Seta: undefined

            javascript.0
            2021-10-15 18:58:21.983 error script.js.BWT_Perla_Seta: {'code':'CERT_HAS_EXPIRED'}

            1 Antwort Letzte Antwort
            0
            • Q Offline
              Q Offline
              qwertz
              schrieb am zuletzt editiert von
              #6
                var request = require('request');
                request = request.defaults({ rejectUnauthorized: false });
              (...)
              

              so überspringt man den Zertifikatsfehler

              K 1 Antwort Letzte Antwort
              0
              • Q qwertz
                  var request = require('request');
                  request = request.defaults({ rejectUnauthorized: false });
                (...)
                

                so überspringt man den Zertifikatsfehler

                K Offline
                K Offline
                Kusi
                schrieb am zuletzt editiert von
                #7

                @qwertz sagte in BWT Weichwasseranlage auslesen:

                request = request.defaults({ rejectUnauthorized: false });

                Folgende Antwort erhalte ich im Log:

                script.js.BWT_Perla_Seta: {'statusCode':301,'body':'','headers':{'location':'http://192.168.10.109:6080/vnc.html?resize=scale&autoconnect=true&show_dot=true','content-length':'0','connection':'close','date':'Sun, 21 Nov 2021 01:05:34 GMT','server':'lighttpd/1.4.53'},'request':{'uri':{'protocol':'https:','slashes':true,'auth':null,'host':'192.168.10.109','port':443,'hostname':'192.168.10.109','hash':null,'search':'?url=%2Fusers%2Flogin%22','query':'url=%2Fusers%2Flogin%22','pathname':'/users/login','path':'/users/login?url=%2Fusers%2Flogin%22','href':'https://192.168.10.109/users/login?url=%2Fusers%2Flogin"'},'method':'POST','headers':{'content-type':'application/x-www-form-urlencoded','content-length':48}}}

                Q 1 Antwort Letzte Antwort
                0
                • K Kusi

                  @qwertz sagte in BWT Weichwasseranlage auslesen:

                  request = request.defaults({ rejectUnauthorized: false });

                  Folgende Antwort erhalte ich im Log:

                  script.js.BWT_Perla_Seta: {'statusCode':301,'body':'','headers':{'location':'http://192.168.10.109:6080/vnc.html?resize=scale&autoconnect=true&show_dot=true','content-length':'0','connection':'close','date':'Sun, 21 Nov 2021 01:05:34 GMT','server':'lighttpd/1.4.53'},'request':{'uri':{'protocol':'https:','slashes':true,'auth':null,'host':'192.168.10.109','port':443,'hostname':'192.168.10.109','hash':null,'search':'?url=%2Fusers%2Flogin%22','query':'url=%2Fusers%2Flogin%22','pathname':'/users/login','path':'/users/login?url=%2Fusers%2Flogin%22','href':'https://192.168.10.109/users/login?url=%2Fusers%2Flogin"'},'method':'POST','headers':{'content-type':'application/x-www-form-urlencoded','content-length':48}}}

                  Q Offline
                  Q Offline
                  qwertz
                  schrieb am zuletzt editiert von
                  #8

                  @kusi

                  Welches BWT hast du genau ? Ich habe eine BWT Perla (weißes Gerät Bj2020)

                  Bevor man im Skript den Fehler sucht, hast du mal den JSON Aufruf im Browser probiert ?

                  1. Cookie im Browser speichern durch manuellen Login unter
                    https://xxxxx/users/login mit dem Code.

                  2. Aufruf von https://xxxx/home/actualizedata

                  Dann sollte der Browser sowas anzeigen:

                  {"aktuellerDurchfluss":"0","aktuellerDurchflussProzent":"0","durchflussHeute":"47","durchflussMonat":"7476","durchflussJahr":"1063","RegeneriemittelNachfuellenIn":"147","RegeneriemittelVerbleibend":"100"}
                  
                  

                  Der komplette Skriptaufruf sieht dann bei mir so aus:

                    var request = require('request');
                    request = request.defaults({ rejectUnauthorized: false });
                  
                  request.post({
                  
                    url:     'https://xxxxx/users/login?url=%2Fusers%2Flogin"',
                  
                     form:   { STLoginPWField: "xxxxxx", 'function': "save", _method: "POST"}
                  
                     
                  
                  }, function(error, response, body) {
                  
                     if (error) log(error, 'error');
                  
                     console.log(response);
                  
                  });
                  

                  Dann kommt:

                  javascript.0 (14986) script.js.bwt: {'statusCode':302,'body':'','headers':{'x-powered-by':'PHP/7.1.7','set-cookie':['CAKEPHP=xxxxxxxxxxxxxxxxx; expires=Sun, 21-Nov-2021 09:04:37 GMT; Max-Age=3600; path=/; secure; HttpOnly'],'location':'https://10.11.12.95/','content-type':'text/html; charset=UTF-8','content-length':'0','connection':'close','date':'Sun, 21 Nov 2021 08:04:10 GMT','server':'lighttpd/1.4.45'},'request':{'uri':{'protocol':'https:','slashes':true,'auth':null,'host':'10.11.12.95','port':443,'hostname':'10.11.12.95','hash':null,'search':'?url=%2Fusers%2Flogin%22','query':'url=%2Fusers%2Flogin%22','pathname':'/users/login','path':'/users/login?url=%2Fusers%2Flogin%22','href':'https://10.11.12.95/users/login?url=%2Fusers%2Flogin%22'},'method':'POST','headers':{'content-type':'application/x-www-form-urlencoded','content-length':48}}}
                  

                  Jetzt muss man den Wert CAKEPHP rausholen und speichern, um sie bei der folgenden Datenabfrage mitzuschicken. Soweit bin ich als Script-Kiddy leider noch nicht.

                  T 1 Antwort Letzte Antwort
                  0
                  • K Offline
                    K Offline
                    Kusi
                    schrieb am zuletzt editiert von
                    #9

                    @qwertz sagte in BWT Weichwasseranlage auslesen:

                    BWT Perla (weißes Gerät Bj2020)

                    Es ist bei meinem Bruder, aber es sollte dasselbe sein wie du hast.

                    Wenn ich Schritt 2 ausführe, komme ich automatisch auf das Webinterface der Perla.
                    b7c99a4c-2e9b-4a79-a8be-b20de2f9138b-image.png

                    1 Antwort Letzte Antwort
                    0
                    • Q qwertz

                      @kusi

                      Welches BWT hast du genau ? Ich habe eine BWT Perla (weißes Gerät Bj2020)

                      Bevor man im Skript den Fehler sucht, hast du mal den JSON Aufruf im Browser probiert ?

                      1. Cookie im Browser speichern durch manuellen Login unter
                        https://xxxxx/users/login mit dem Code.

                      2. Aufruf von https://xxxx/home/actualizedata

                      Dann sollte der Browser sowas anzeigen:

                      {"aktuellerDurchfluss":"0","aktuellerDurchflussProzent":"0","durchflussHeute":"47","durchflussMonat":"7476","durchflussJahr":"1063","RegeneriemittelNachfuellenIn":"147","RegeneriemittelVerbleibend":"100"}
                      
                      

                      Der komplette Skriptaufruf sieht dann bei mir so aus:

                        var request = require('request');
                        request = request.defaults({ rejectUnauthorized: false });
                      
                      request.post({
                      
                        url:     'https://xxxxx/users/login?url=%2Fusers%2Flogin"',
                      
                         form:   { STLoginPWField: "xxxxxx", 'function': "save", _method: "POST"}
                      
                         
                      
                      }, function(error, response, body) {
                      
                         if (error) log(error, 'error');
                      
                         console.log(response);
                      
                      });
                      

                      Dann kommt:

                      javascript.0 (14986) script.js.bwt: {'statusCode':302,'body':'','headers':{'x-powered-by':'PHP/7.1.7','set-cookie':['CAKEPHP=xxxxxxxxxxxxxxxxx; expires=Sun, 21-Nov-2021 09:04:37 GMT; Max-Age=3600; path=/; secure; HttpOnly'],'location':'https://10.11.12.95/','content-type':'text/html; charset=UTF-8','content-length':'0','connection':'close','date':'Sun, 21 Nov 2021 08:04:10 GMT','server':'lighttpd/1.4.45'},'request':{'uri':{'protocol':'https:','slashes':true,'auth':null,'host':'10.11.12.95','port':443,'hostname':'10.11.12.95','hash':null,'search':'?url=%2Fusers%2Flogin%22','query':'url=%2Fusers%2Flogin%22','pathname':'/users/login','path':'/users/login?url=%2Fusers%2Flogin%22','href':'https://10.11.12.95/users/login?url=%2Fusers%2Flogin%22'},'method':'POST','headers':{'content-type':'application/x-www-form-urlencoded','content-length':48}}}
                      

                      Jetzt muss man den Wert CAKEPHP rausholen und speichern, um sie bei der folgenden Datenabfrage mitzuschicken. Soweit bin ich als Script-Kiddy leider noch nicht.

                      T Offline
                      T Offline
                      tombox
                      schrieb am zuletzt editiert von
                      #10

                      @qwertz Wenn die anlage verbreitet ist dann kann man schnell ein adapter schreiben der die beiden schritte macht

                      Q 1 Antwort Letzte Antwort
                      1
                      • T tombox

                        @qwertz Wenn die anlage verbreitet ist dann kann man schnell ein adapter schreiben der die beiden schritte macht

                        Q Offline
                        Q Offline
                        qwertz
                        schrieb am zuletzt editiert von
                        #11

                        @tombox
                        Oh ja gerne ! Stelle mich als Tester gerne zur Verfügung! Werden noch mehr Daten als der Output des CAKE-Codes und die JSON benötigt.

                        BWT ist im höherpreisigen Segment der Entkalkungsanlagen weit verbreitet.

                        T 2 Antworten Letzte Antwort
                        0
                        • Q qwertz

                          @tombox
                          Oh ja gerne ! Stelle mich als Tester gerne zur Verfügung! Werden noch mehr Daten als der Output des CAKE-Codes und die JSON benötigt.

                          BWT ist im höherpreisigen Segment der Entkalkungsanlagen weit verbreitet.

                          T Offline
                          T Offline
                          tombox
                          schrieb am zuletzt editiert von
                          #12

                          @qwertz was ist mit dem angebotene apps. Wie stehen die in Verbindung mit dem lokalen Abgleich

                          1 Antwort Letzte Antwort
                          0
                          • Q qwertz

                            @tombox
                            Oh ja gerne ! Stelle mich als Tester gerne zur Verfügung! Werden noch mehr Daten als der Output des CAKE-Codes und die JSON benötigt.

                            BWT ist im höherpreisigen Segment der Entkalkungsanlagen weit verbreitet.

                            T Offline
                            T Offline
                            tombox
                            schrieb am zuletzt editiert von
                            #13

                            @qwertz Ich habe mal was blind probiert
                            https://forum.iobroker.net/topic/49576/test-adapter-bwt-v0-0-x

                            K 1 Antwort Letzte Antwort
                            0
                            • T tombox

                              @qwertz Ich habe mal was blind probiert
                              https://forum.iobroker.net/topic/49576/test-adapter-bwt-v0-0-x

                              K Offline
                              K Offline
                              Kusi
                              schrieb am zuletzt editiert von Kusi
                              #14

                              @tombox Ich bin zur Zeit nur mit dem Natel über VPN verbunden, konnte den Adapter dennoch installieren.

                              Folgendes wir im Log gezeigt:


                              2021-11-21 20:44:27.998 info "<!DOCTYPE html>\n<html lang="en" class="noVNC_loading">\n<head>\n\n <!--\n noVNC example: simple example using default UI\n Copyright (C) 2018 The noVNC Authors\n noVNC is licensed under the MPL 2.0 (see LICENSE.txt)\n This file is licensed under the 2-Clause BSD license (see LICENSE.txt).\n\n Connect parameters are provided in query string:\n http://example.com/?host=HOST&port=PORT&encrypt=1\n or the fragment:\n http://example.com/#host=HOST&port=PORT&encrypt=1\n -->\n <title>noVNC</title>\n\n <meta charset="utf-8">\n\n <!-- Icons (see app/images/icons/Makefile for what the sizes are for) -->\n <link rel="icon" sizes="16x16" type="image/png" href="app/images/icons/novnc-16x16.png">\n <link rel="icon" sizes="24x24" type="image/png" href="app/images/icons/novnc-24x24.png">\n <link rel="icon" sizes="32x32" type="image/png" href="app/images/icons/novnc-32x32.png">\n <link rel="icon" sizes="48x48" type="image/png" href="app/images/icons/novnc-48x48.png">\n <link rel="icon" sizes="60x60" type="image/png" href="app/images/icons/novnc-60x60.png">\n <link rel="icon" sizes="64x64" type="image/png" href="app/images/icons/novnc-64x64.png">\n <link rel="icon" sizes="72x72" type="image/png" href="app/images/icons/novnc-72x72.png">\n <link rel="icon" sizes="76x76" type="image/png" href="app/images/icons/novnc-76x76.png">\n <link rel="icon" sizes="96x96" type="image/png" href="app/images/icons/novnc-96x96.png">\n <link rel="icon" sizes="120x120" type="image/png" href="app/images/icons/novnc-120x120.png">\n <link rel="icon" sizes="144x144" type="image/png" href="app/images/icons/novnc-144x144.png">\n <link rel="icon" sizes="152x152" type="image/png" href="app/images/icons/novnc-152x152.png">\n <link rel="icon" sizes="192x192" type="image/png" href="app/images/icons/novnc-192x192.png">\n <!-- Firefox currently mishandles SVG, see #1419039\n <link rel="icon" sizes="any" type="image/svg+xml" href="app/images/icons/novnc-icon.svg">\n -->\n <!-- Repeated last so that legacy handling will pick this -->\n <link rel="icon" sizes="16x16" type="image/png" href="app/images/icons/novnc-16x16.png">\n\n <!-- Apple iOS Safari settings -->\n <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">\n <meta name="apple-mobile-web-app-capable" content="yes">\n <meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">\n <!-- Home Screen Icons (favourites and bookmarks use the normal icons) -->\n <link rel="apple-touch-icon" sizes="60x60" type="image/png" href="app/images/icons/novnc-60x60.png">\n <link rel="apple-touch-icon" sizes="76x76" type="image/png" href="app/images/icons/novnc-76x76.png">\n <link rel="apple-touch-icon" sizes="120x120" type="image/png" href="app/images/icons/novnc-120x120.png">\n <link rel="apple-touch-icon" sizes="152x152" type="image/png" href="app/images/icons/novnc-152x152.png">\n\n <!-- Stylesheets -->\n <link rel="stylesheet" href="app/styles/base.css">\n\n <!-- this is included as a normal file in order to catch script-loading errors as well -->\n <script src="app/error-handler.js"></script>\n\n <!-- begin scripts -->\n <!-- promise polyfills promises for IE11 -->\n <script src="vendor/promise.js"></script>\n <!-- ES2015/ES6 modules polyfill -->\n <script type="module">\n window._noVNC_has_module_support = true;\n </script>\n <script>\n window.addEventListener("load", function() {\n if (window._noVNC_has_module_support) return;\n var loader = document.createElement("script");\n loader.src = "vendor/browser-es-module-loader/dist/browser-es-module-loader.js";\n document.head.appendChild(loader);\n });\n </script>\n <!-- actual script modules -->\n <script type="module" crossorigin="anonymous" src="app/ui.js"></script>\n <!-- end scripts -->\n</head>\n\n<body>\n\n <div id="noVNC_fallback_error" class="noVNC_center">\n <div>\n <div>noVNC encountered an error:</div>\n <br>\n <div id="noVNC_fallback_errormsg"></div>\n </div>\n </div>\n\n <!-- noVNC Control Bar -->\n <div id="noVNC_control_bar_anchor" class="noVNC_vcenter">\n\n <div id="noVNC_control_bar">\n <div id="noVNC_control_bar_handle" title="Hide/Show the control bar"><div></div></div>\n\n <div class="noVNC_scroll">\n\n <h1 class="noVNC_logo" translate="no"><span>no</span><br>VNC</h1>\n\n <!-- Drag/Pan the viewport -->\n <input type="image" alt="viewport drag" src="app/images/drag.svg"\n id="noVNC_view_drag_button" class="noVNC_button noVNC_hidden"\n title="Move/Drag Viewport">\n\n <!--noVNC Touch Device only buttons-->\n <div id="noVNC_mobile_buttons">\n <input type="image" alt="No mousebutton" src="app/images/mouse_none.svg"\n id="noVNC_mouse_button0" class="noVNC_button"\n title="Active Mouse Button">\n <input type="image" alt="Left mousebutton" src="app/images/mouse_left.svg"\n id="noVNC_mouse_button1" class="noVNC_button"\n title="Active Mouse Button">\n <input type="image" alt="Middle mousebutton" src="app/images/mouse_middle.svg"\n id="noVNC_mouse_button2" class="noVNC_button"\n title="Active Mouse Button">\n <input type="image" alt="Right mousebutton" src="app/images/mouse_right.svg"\n id="noVNC_mouse_button4" class="noVNC_button"\n title="Active Mouse Button">\n <input type="image" alt="Keyboard" src="app/images/keyboard.svg"\n id="noVNC_keyboard_button" class="noVNC_button" title="Show Keyboard">\n </div>\n\n <!-- Extra manual keys -->\n <div id="noVNC_extra_keys">\n <input type="image" alt="Extra keys" src="app/images/toggleextrakeys.svg"\n id="noVNC_toggle_extra_keys_button" class="noVNC_button"\n title="Show Extra Keys">\n <div class="noVNC_vcenter">\n <div id="noVNC_modifiers" class="noVNC_panel">\n <input type="image" alt="Ctrl" src="app/images/ctrl.svg"\n id="noVNC_toggle_ctrl_button" class="noVNC_button"\n title="Toggle Ctrl">\n <input type="image" alt="Alt" src="app/images/alt.svg"\n id="noVNC_toggle_alt_button" class="noVNC_button"\n title="Toggle Alt">\n <input type="image" alt="Windows" src="app/images/windows.svg"\n id="noVNC_toggle_windows_button" class="noVNC_button"\n title="Toggle Windows">\n <input type="image" alt="Tab" src="app/images/tab.svg"\n id="noVNC_send_tab_button" class="noVNC_button"\n title="Send Tab">\n <input type="image" alt="Esc" src="app/images/esc.svg"\n id="noVNC_send_esc_button" class="noVNC_button"\n title="Send Escape">\n <input type="image" alt="Ctrl+Alt+Del" src="app/images/ctrlaltdel.svg"\n id="noVNC_send_ctrl_alt_del_button" class="noVNC_button"\n title="Send Ctrl-Alt-Del">\n </div>\n </div>\n </div>\n\n <!-- Shutdown/Reboot -->\n <input type="image" alt="Shutdown/Reboot" src="app/images/power.svg"\n id="noVNC_power_button" class="noVNC_button"\n title="Shutdown/Reboot...">\n <div class="noVNC_vcenter">\n <div id="noVNC_power" class="noVNC_panel">\n <div class="noVNC_heading">\n <img alt="" src="app/images/power.svg"> Power\n </div>\n <input type="button" id="noVNC_shutdown_button" value="Shutdown">\n <input type="button" id="noVNC_reboot_button" value="Reboot">\n <input type="button" id="noVNC_reset_button" value="Reset">\n </div>\n </div>\n\n <!-- Clipboard -->\n <input type="image" alt="Clipboard" src="app/images/clipboard.svg"\n id="noVNC_clipboard_button" class="noVNC_button"\n title="Clipboard">\n <div class="noVNC_vcenter">\n <div id="noVNC_clipboard" class="noVNC_panel">\n <div class="noVNC_heading">\n <img alt="" src="app/images/clipboard.svg"> Clipboard\n </div>\n <textarea id="noVNC_clipboard_text" rows=5></textarea>\n <br>\n <input id="noVNC_clipboard_clear_button" type="button"\n value="Clear" class="noVNC_submit">\n </div>\n </div>\n\n <!-- Toggle fullscreen -->\n <input type="image" alt="Fullscreen" src="app/images/fullscreen.svg"\n id="noVNC_fullscreen_button" class="noVNC_button noVNC_hidden"\n title="Fullscreen">\n\n <!-- Settings -->\n <input type="image" alt="Settings" src="app/images/settings.svg"\n id="noVNC_settings_button" class="noVNC_button"\n title="Settings">\n <div class="noVNC_vcenter">\n <div id="noVNC_settings" class="noVNC_panel">\n <ul>\n <li class="noVNC_heading">\n <img alt="" src="app/images/settings.svg"> Settings\n </li>\n <li>\n <label><input id="noVNC_setting_shared" type="checkbox"> Shared Mode</label>\n </li>\n <li>\n <label><input id="noVNC_setting_view_only" type="checkbox"> View Only</label>\n </li>\n <li><hr></li>\n <li>\n <label><input id="noVNC_setting_view_clip" type="checkbox"> Clip to Window</label>\n </li>\n <li>\n <label for="noVNC_setting_resize">Scaling Mode:</label>\n <select id="noVNC_setting_resize" name="vncResize">\n <option value="off">None</option>\n <option value="scale">Local Scaling</option>\n <option value="remote">Remote Resizing</option>\n </select>\n </li>\n <li><hr></li>\n <li>\n <div class="noVNC_expander">Advanced</div>\n <div><ul>\n <li>\n <label for="noVNC_setting_repeaterID">Repeater ID:</label>\n <input id="noVNC_setting_repeaterID" type="text" value="">\n </li>\n <li>\n <div class="noVNC_expander">WebSocket</div>\n <div><ul>\n <li>\n <label><input id="noVNC_setting_encrypt" type="checkbox"> Encrypt</label>\n </li>\n <li>\n <label for="noVNC_setting_host">Host:</label>\n <input id="noVNC_setting_host">\n </li>\n <li>\n <label for="noVNC_setting_port">Port:</label>\n <input id="noVNC_setting_port" type="number">\n </li>\n <li>\n <label for="noVNC_setting_path">Path:</label>\n <input id="noVNC_setting_path" type="text" value="websockify">\n </li>\n </ul></div>\n </li>\n <li><hr></li>\n <li>\n <label><input id="noVNC_setting_reconnect" type="checkbox"> Automatic Reconnect</label>\n </li>\n <li>\n <label for="noVNC_setting_reconnect_delay">Reconnect Delay (ms):</label>\n <input id="noVNC_setting_reconnect_delay" type="number">\n </li>\n <li><hr></li>\n <li>\n <label><input id="noVNC_setting_show_dot" type="checkbox"> Show Dot when No Cursor</label>\n </li>\n <li><hr></li>\n <!-- Logging selection dropdown -->\n <li>\n <label>Logging:\n <select id="noVNC_setting_logging" name="vncLogging">\n </select>\n </label>\n </li>\n </ul></div>\n </li>\n </ul>\n </div>\n </div>\n\n <!-- Connection Controls -->\n <input type="image" alt="Disconnect" src="app/images/disconnect.svg"\n id="noVNC_disconnect_button" class="noVNC_button"\n title="Disconnect">\n\n </div>\n </div>\n\n <div id="noVNC_control_bar_hint"></div>\n\n </div> <!-- End of noVNC_control_bar -->\n\n <!-- Status Dialog -->\n <div id="noVNC_status"></div>\n\n <!-- Connect button -->\n <div class="noVNC_center">\n <div id="noVNC_connect_dlg">\n <div class="noVNC_logo" translate="no"><span>no</span>VNC</div>\n <div id="noVNC_connect_button"><div>\n <img alt="" src="app/images/connect.svg"> Connect\n </div></div>\n </div>\n </div>\n\n <!-- Password Dialog -->\n <div class="noVNC_center noVNC_connect_layer">\n <div id="noVNC_password_dlg" class="noVNC_panel"><form>\n <ul>\n <li>\n <label>Password:</label>\n <input id="noVNC_password_input" type="password">\n </li>\n <li>\n <input id="noVNC_password_button" type="submit" value="Send Password" class="noVNC_submit">\n </li>\n </ul>\n </form></div>\n </div>\n\n <!-- Transition Screens -->\n <div id="noVNC_transition">\n <div id="noVNC_transition_text"></div>\n <div>\n <input type="button" id="noVNC_cancel_reconnect_button" value="Cancel" class="noVNC_submit">\n </div>\n <div class="noVNC_spinner"></div>\n </div>\n\n <!-- This is where the RFB elements will attach -->\n <div id="noVNC_container">\n <!-- Note that Google Chrome on Android doesn't respect any of these,\n html attributes which attempt to disable text suggestions on the\n on-screen keyboard. Let's hope Chrome implements the ime-mode\n style for example -->\n <textarea id="noVNC_keyboardinput" autocapitalize="off"\n autocomplete="off" spellcheck="false" tabindex="-1"></textarea>\n </div>\n\n <audio id="noVNC_bell">\n <source src="app/sounds/bell.oga" type="audio/ogg">\n <source src="app/sounds/bell.mp3" type="audio/mpeg">\n </audio>\n </body>\n</html>\n"

                              T 1 Antwort Letzte Antwort
                              0
                              • K Kusi

                                @tombox Ich bin zur Zeit nur mit dem Natel über VPN verbunden, konnte den Adapter dennoch installieren.

                                Folgendes wir im Log gezeigt:


                                2021-11-21 20:44:27.998 info "<!DOCTYPE html>\n<html lang="en" class="noVNC_loading">\n<head>\n\n <!--\n noVNC example: simple example using default UI\n Copyright (C) 2018 The noVNC Authors\n noVNC is licensed under the MPL 2.0 (see LICENSE.txt)\n This file is licensed under the 2-Clause BSD license (see LICENSE.txt).\n\n Connect parameters are provided in query string:\n http://example.com/?host=HOST&port=PORT&encrypt=1\n or the fragment:\n http://example.com/#host=HOST&port=PORT&encrypt=1\n -->\n <title>noVNC</title>\n\n <meta charset="utf-8">\n\n <!-- Icons (see app/images/icons/Makefile for what the sizes are for) -->\n <link rel="icon" sizes="16x16" type="image/png" href="app/images/icons/novnc-16x16.png">\n <link rel="icon" sizes="24x24" type="image/png" href="app/images/icons/novnc-24x24.png">\n <link rel="icon" sizes="32x32" type="image/png" href="app/images/icons/novnc-32x32.png">\n <link rel="icon" sizes="48x48" type="image/png" href="app/images/icons/novnc-48x48.png">\n <link rel="icon" sizes="60x60" type="image/png" href="app/images/icons/novnc-60x60.png">\n <link rel="icon" sizes="64x64" type="image/png" href="app/images/icons/novnc-64x64.png">\n <link rel="icon" sizes="72x72" type="image/png" href="app/images/icons/novnc-72x72.png">\n <link rel="icon" sizes="76x76" type="image/png" href="app/images/icons/novnc-76x76.png">\n <link rel="icon" sizes="96x96" type="image/png" href="app/images/icons/novnc-96x96.png">\n <link rel="icon" sizes="120x120" type="image/png" href="app/images/icons/novnc-120x120.png">\n <link rel="icon" sizes="144x144" type="image/png" href="app/images/icons/novnc-144x144.png">\n <link rel="icon" sizes="152x152" type="image/png" href="app/images/icons/novnc-152x152.png">\n <link rel="icon" sizes="192x192" type="image/png" href="app/images/icons/novnc-192x192.png">\n <!-- Firefox currently mishandles SVG, see #1419039\n <link rel="icon" sizes="any" type="image/svg+xml" href="app/images/icons/novnc-icon.svg">\n -->\n <!-- Repeated last so that legacy handling will pick this -->\n <link rel="icon" sizes="16x16" type="image/png" href="app/images/icons/novnc-16x16.png">\n\n <!-- Apple iOS Safari settings -->\n <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">\n <meta name="apple-mobile-web-app-capable" content="yes">\n <meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">\n <!-- Home Screen Icons (favourites and bookmarks use the normal icons) -->\n <link rel="apple-touch-icon" sizes="60x60" type="image/png" href="app/images/icons/novnc-60x60.png">\n <link rel="apple-touch-icon" sizes="76x76" type="image/png" href="app/images/icons/novnc-76x76.png">\n <link rel="apple-touch-icon" sizes="120x120" type="image/png" href="app/images/icons/novnc-120x120.png">\n <link rel="apple-touch-icon" sizes="152x152" type="image/png" href="app/images/icons/novnc-152x152.png">\n\n <!-- Stylesheets -->\n <link rel="stylesheet" href="app/styles/base.css">\n\n <!-- this is included as a normal file in order to catch script-loading errors as well -->\n <script src="app/error-handler.js"></script>\n\n <!-- begin scripts -->\n <!-- promise polyfills promises for IE11 -->\n <script src="vendor/promise.js"></script>\n <!-- ES2015/ES6 modules polyfill -->\n <script type="module">\n window._noVNC_has_module_support = true;\n </script>\n <script>\n window.addEventListener("load", function() {\n if (window._noVNC_has_module_support) return;\n var loader = document.createElement("script");\n loader.src = "vendor/browser-es-module-loader/dist/browser-es-module-loader.js";\n document.head.appendChild(loader);\n });\n </script>\n <!-- actual script modules -->\n <script type="module" crossorigin="anonymous" src="app/ui.js"></script>\n <!-- end scripts -->\n</head>\n\n<body>\n\n <div id="noVNC_fallback_error" class="noVNC_center">\n <div>\n <div>noVNC encountered an error:</div>\n <br>\n <div id="noVNC_fallback_errormsg"></div>\n </div>\n </div>\n\n <!-- noVNC Control Bar -->\n <div id="noVNC_control_bar_anchor" class="noVNC_vcenter">\n\n <div id="noVNC_control_bar">\n <div id="noVNC_control_bar_handle" title="Hide/Show the control bar"><div></div></div>\n\n <div class="noVNC_scroll">\n\n <h1 class="noVNC_logo" translate="no"><span>no</span><br>VNC</h1>\n\n <!-- Drag/Pan the viewport -->\n <input type="image" alt="viewport drag" src="app/images/drag.svg"\n id="noVNC_view_drag_button" class="noVNC_button noVNC_hidden"\n title="Move/Drag Viewport">\n\n <!--noVNC Touch Device only buttons-->\n <div id="noVNC_mobile_buttons">\n <input type="image" alt="No mousebutton" src="app/images/mouse_none.svg"\n id="noVNC_mouse_button0" class="noVNC_button"\n title="Active Mouse Button">\n <input type="image" alt="Left mousebutton" src="app/images/mouse_left.svg"\n id="noVNC_mouse_button1" class="noVNC_button"\n title="Active Mouse Button">\n <input type="image" alt="Middle mousebutton" src="app/images/mouse_middle.svg"\n id="noVNC_mouse_button2" class="noVNC_button"\n title="Active Mouse Button">\n <input type="image" alt="Right mousebutton" src="app/images/mouse_right.svg"\n id="noVNC_mouse_button4" class="noVNC_button"\n title="Active Mouse Button">\n <input type="image" alt="Keyboard" src="app/images/keyboard.svg"\n id="noVNC_keyboard_button" class="noVNC_button" title="Show Keyboard">\n </div>\n\n <!-- Extra manual keys -->\n <div id="noVNC_extra_keys">\n <input type="image" alt="Extra keys" src="app/images/toggleextrakeys.svg"\n id="noVNC_toggle_extra_keys_button" class="noVNC_button"\n title="Show Extra Keys">\n <div class="noVNC_vcenter">\n <div id="noVNC_modifiers" class="noVNC_panel">\n <input type="image" alt="Ctrl" src="app/images/ctrl.svg"\n id="noVNC_toggle_ctrl_button" class="noVNC_button"\n title="Toggle Ctrl">\n <input type="image" alt="Alt" src="app/images/alt.svg"\n id="noVNC_toggle_alt_button" class="noVNC_button"\n title="Toggle Alt">\n <input type="image" alt="Windows" src="app/images/windows.svg"\n id="noVNC_toggle_windows_button" class="noVNC_button"\n title="Toggle Windows">\n <input type="image" alt="Tab" src="app/images/tab.svg"\n id="noVNC_send_tab_button" class="noVNC_button"\n title="Send Tab">\n <input type="image" alt="Esc" src="app/images/esc.svg"\n id="noVNC_send_esc_button" class="noVNC_button"\n title="Send Escape">\n <input type="image" alt="Ctrl+Alt+Del" src="app/images/ctrlaltdel.svg"\n id="noVNC_send_ctrl_alt_del_button" class="noVNC_button"\n title="Send Ctrl-Alt-Del">\n </div>\n </div>\n </div>\n\n <!-- Shutdown/Reboot -->\n <input type="image" alt="Shutdown/Reboot" src="app/images/power.svg"\n id="noVNC_power_button" class="noVNC_button"\n title="Shutdown/Reboot...">\n <div class="noVNC_vcenter">\n <div id="noVNC_power" class="noVNC_panel">\n <div class="noVNC_heading">\n <img alt="" src="app/images/power.svg"> Power\n </div>\n <input type="button" id="noVNC_shutdown_button" value="Shutdown">\n <input type="button" id="noVNC_reboot_button" value="Reboot">\n <input type="button" id="noVNC_reset_button" value="Reset">\n </div>\n </div>\n\n <!-- Clipboard -->\n <input type="image" alt="Clipboard" src="app/images/clipboard.svg"\n id="noVNC_clipboard_button" class="noVNC_button"\n title="Clipboard">\n <div class="noVNC_vcenter">\n <div id="noVNC_clipboard" class="noVNC_panel">\n <div class="noVNC_heading">\n <img alt="" src="app/images/clipboard.svg"> Clipboard\n </div>\n <textarea id="noVNC_clipboard_text" rows=5></textarea>\n <br>\n <input id="noVNC_clipboard_clear_button" type="button"\n value="Clear" class="noVNC_submit">\n </div>\n </div>\n\n <!-- Toggle fullscreen -->\n <input type="image" alt="Fullscreen" src="app/images/fullscreen.svg"\n id="noVNC_fullscreen_button" class="noVNC_button noVNC_hidden"\n title="Fullscreen">\n\n <!-- Settings -->\n <input type="image" alt="Settings" src="app/images/settings.svg"\n id="noVNC_settings_button" class="noVNC_button"\n title="Settings">\n <div class="noVNC_vcenter">\n <div id="noVNC_settings" class="noVNC_panel">\n <ul>\n <li class="noVNC_heading">\n <img alt="" src="app/images/settings.svg"> Settings\n </li>\n <li>\n <label><input id="noVNC_setting_shared" type="checkbox"> Shared Mode</label>\n </li>\n <li>\n <label><input id="noVNC_setting_view_only" type="checkbox"> View Only</label>\n </li>\n <li><hr></li>\n <li>\n <label><input id="noVNC_setting_view_clip" type="checkbox"> Clip to Window</label>\n </li>\n <li>\n <label for="noVNC_setting_resize">Scaling Mode:</label>\n <select id="noVNC_setting_resize" name="vncResize">\n <option value="off">None</option>\n <option value="scale">Local Scaling</option>\n <option value="remote">Remote Resizing</option>\n </select>\n </li>\n <li><hr></li>\n <li>\n <div class="noVNC_expander">Advanced</div>\n <div><ul>\n <li>\n <label for="noVNC_setting_repeaterID">Repeater ID:</label>\n <input id="noVNC_setting_repeaterID" type="text" value="">\n </li>\n <li>\n <div class="noVNC_expander">WebSocket</div>\n <div><ul>\n <li>\n <label><input id="noVNC_setting_encrypt" type="checkbox"> Encrypt</label>\n </li>\n <li>\n <label for="noVNC_setting_host">Host:</label>\n <input id="noVNC_setting_host">\n </li>\n <li>\n <label for="noVNC_setting_port">Port:</label>\n <input id="noVNC_setting_port" type="number">\n </li>\n <li>\n <label for="noVNC_setting_path">Path:</label>\n <input id="noVNC_setting_path" type="text" value="websockify">\n </li>\n </ul></div>\n </li>\n <li><hr></li>\n <li>\n <label><input id="noVNC_setting_reconnect" type="checkbox"> Automatic Reconnect</label>\n </li>\n <li>\n <label for="noVNC_setting_reconnect_delay">Reconnect Delay (ms):</label>\n <input id="noVNC_setting_reconnect_delay" type="number">\n </li>\n <li><hr></li>\n <li>\n <label><input id="noVNC_setting_show_dot" type="checkbox"> Show Dot when No Cursor</label>\n </li>\n <li><hr></li>\n <!-- Logging selection dropdown -->\n <li>\n <label>Logging:\n <select id="noVNC_setting_logging" name="vncLogging">\n </select>\n </label>\n </li>\n </ul></div>\n </li>\n </ul>\n </div>\n </div>\n\n <!-- Connection Controls -->\n <input type="image" alt="Disconnect" src="app/images/disconnect.svg"\n id="noVNC_disconnect_button" class="noVNC_button"\n title="Disconnect">\n\n </div>\n </div>\n\n <div id="noVNC_control_bar_hint"></div>\n\n </div> <!-- End of noVNC_control_bar -->\n\n <!-- Status Dialog -->\n <div id="noVNC_status"></div>\n\n <!-- Connect button -->\n <div class="noVNC_center">\n <div id="noVNC_connect_dlg">\n <div class="noVNC_logo" translate="no"><span>no</span>VNC</div>\n <div id="noVNC_connect_button"><div>\n <img alt="" src="app/images/connect.svg"> Connect\n </div></div>\n </div>\n </div>\n\n <!-- Password Dialog -->\n <div class="noVNC_center noVNC_connect_layer">\n <div id="noVNC_password_dlg" class="noVNC_panel"><form>\n <ul>\n <li>\n <label>Password:</label>\n <input id="noVNC_password_input" type="password">\n </li>\n <li>\n <input id="noVNC_password_button" type="submit" value="Send Password" class="noVNC_submit">\n </li>\n </ul>\n </form></div>\n </div>\n\n <!-- Transition Screens -->\n <div id="noVNC_transition">\n <div id="noVNC_transition_text"></div>\n <div>\n <input type="button" id="noVNC_cancel_reconnect_button" value="Cancel" class="noVNC_submit">\n </div>\n <div class="noVNC_spinner"></div>\n </div>\n\n <!-- This is where the RFB elements will attach -->\n <div id="noVNC_container">\n <!-- Note that Google Chrome on Android doesn't respect any of these,\n html attributes which attempt to disable text suggestions on the\n on-screen keyboard. Let's hope Chrome implements the ime-mode\n style for example -->\n <textarea id="noVNC_keyboardinput" autocapitalize="off"\n autocomplete="off" spellcheck="false" tabindex="-1"></textarea>\n </div>\n\n <audio id="noVNC_bell">\n <source src="app/sounds/bell.oga" type="audio/ogg">\n <source src="app/sounds/bell.mp3" type="audio/mpeg">\n </audio>\n </body>\n</html>\n"

                                T Offline
                                T Offline
                                tombox
                                schrieb am zuletzt editiert von
                                #15

                                @kusi da ist irgendeine vnc verbindung im weg

                                Q K 3 Antworten Letzte Antwort
                                0
                                • T tombox

                                  @kusi da ist irgendeine vnc verbindung im weg

                                  Q Offline
                                  Q Offline
                                  qwertz
                                  schrieb am zuletzt editiert von qwertz
                                  #16

                                  @tombox
                                  Bei mir kommt:

                                  "<!DOCTYPE html>\n<html lang='de'>\n <head>\n <meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" /> \n <meta name=\"viewport\" content=\"width=device-width, height=device-height, initial-scale=1.0\">\n <title>\t \n Login \n </title>\n <link href=\"/favicon.ico\" type=\"image/x-icon\" rel=\"icon\"/><link href=\"/favicon.ico\" type=\"image/x-icon\" rel=\"shortcut icon\"/><link rel=\"stylesheet\" type=\"text/css\" href=\"/css/font.min.css\"/><link rel=\"stylesheet\" type=\"text/css\" href=\"/css/default.min.css\"/><link rel=\"stylesheet\" type=\"text/css\" href=\"/css/progressbarBackLeft.min.css\"/><link rel=\"stylesheet\" type=\"text/css\" href=\"/css/simpleMenuCloseRight.min.css\"/><link rel=\"stylesheet\" type=\"text/css\" href=\"/css/onlyTitleHeader.min.css\"/><link rel=\"stylesheet\" type=\"text/css\" href=\"/css/mobile.min.css\"/><script type=\"text/javascript\" src=\"/js/jquery-3.1.1.min.js\"></script> </head>\n \n <!-- ************ Inhalt ********* -->\n <body>\n <div class=\"container\">\n <div class=\"content\" >\n <!-- ************ BWT-Logo ********* -->\n <div class=\"logo\">\n <img src=\"/img/cake.logo.png\" class=\"logoImage\" alt=\"\"/> </div>\n <!-- ************ Inhalt vom Display ********* -->\n <div id=\"displayBackground\">\n <div id =\"headerBackground\" >\n <div id=\"displayHeader\" >\n \n <div style=\"color:#545554;text-transform: uppercase; width:100%;\" align=\"center\" class=\"headLine1 menuHeaderTitle\">Login</div>\n \n </div>\n \n \n </div>\n \n <div class=\"display\"> \n <!-- ************ Header ********* --> \n \n \n<div align=\"center\"><img src=\"/img/techniker_login_48.png\" class=\"TSLoginIcon\">\n</div>\n<form action=\"/users/login?url=%2Fusers%2Flogin\" id=\"STLoginLoginForm\" method=\"post\" accept-charset=\"utf-8\"><div style=\"display:none;\"><input type=\"hidden\" name=\"_method\" value=\"POST\"/></div><div class=\"displayBorder\"><label class=\" copy labelforSelect labels\" >Code</label><label for=\"STLoginPWField\"></label><input name=\"STLoginPWField\" placeholder=\"Bitte eingeben\" =\"\" class=\"editFieldButton copy\" id=\"STLoginPWField\" type=\"password\"/></div><div class=\"buttonsDiv\" >\n <button id=\"STLoginButton\" class=\"weiterButton\" name=\"function\" value=\"save\" type=\"submit\" formaction=\"/users/login\">LOGIN</button>\n</div> \n\n<script>\n \n \n</script> \n </div>\n </div>\n </div>\n </div>\n </body>\n</html>\n\n\n\n"
                                  

                                  Bildschirmfoto 2021-11-21 um 20.58.49.png

                                  T 1 Antwort Letzte Antwort
                                  0
                                  • T tombox

                                    @kusi da ist irgendeine vnc verbindung im weg

                                    Q Offline
                                    Q Offline
                                    qwertz
                                    schrieb am zuletzt editiert von
                                    #17

                                    @tombox
                                    In dem Skript oben ist der Aufruf
                                    "https://10.11.12.95/users/login**?url=%2Fusers%2Flogin**"

                                    Im Adapter lautet er "https://" + this.config.localIp + "/users/login",

                                    Kann das ein Unterschied machen ?

                                    1 Antwort Letzte Antwort
                                    0
                                    • T tombox

                                      @kusi da ist irgendeine vnc verbindung im weg

                                      K Offline
                                      K Offline
                                      Kusi
                                      schrieb am zuletzt editiert von Kusi
                                      #18

                                      @tombox sagte in BWT Weichwasseranlage auslesen:

                                      vnc verbindung

                                      Was meinst du damit?

                                      Screenshot_20211121-211219.jpg

                                      1 Antwort Letzte Antwort
                                      0
                                      • Q qwertz

                                        @tombox
                                        Bei mir kommt:

                                        "<!DOCTYPE html>\n<html lang='de'>\n <head>\n <meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" /> \n <meta name=\"viewport\" content=\"width=device-width, height=device-height, initial-scale=1.0\">\n <title>\t \n Login \n </title>\n <link href=\"/favicon.ico\" type=\"image/x-icon\" rel=\"icon\"/><link href=\"/favicon.ico\" type=\"image/x-icon\" rel=\"shortcut icon\"/><link rel=\"stylesheet\" type=\"text/css\" href=\"/css/font.min.css\"/><link rel=\"stylesheet\" type=\"text/css\" href=\"/css/default.min.css\"/><link rel=\"stylesheet\" type=\"text/css\" href=\"/css/progressbarBackLeft.min.css\"/><link rel=\"stylesheet\" type=\"text/css\" href=\"/css/simpleMenuCloseRight.min.css\"/><link rel=\"stylesheet\" type=\"text/css\" href=\"/css/onlyTitleHeader.min.css\"/><link rel=\"stylesheet\" type=\"text/css\" href=\"/css/mobile.min.css\"/><script type=\"text/javascript\" src=\"/js/jquery-3.1.1.min.js\"></script> </head>\n \n <!-- ************ Inhalt ********* -->\n <body>\n <div class=\"container\">\n <div class=\"content\" >\n <!-- ************ BWT-Logo ********* -->\n <div class=\"logo\">\n <img src=\"/img/cake.logo.png\" class=\"logoImage\" alt=\"\"/> </div>\n <!-- ************ Inhalt vom Display ********* -->\n <div id=\"displayBackground\">\n <div id =\"headerBackground\" >\n <div id=\"displayHeader\" >\n \n <div style=\"color:#545554;text-transform: uppercase; width:100%;\" align=\"center\" class=\"headLine1 menuHeaderTitle\">Login</div>\n \n </div>\n \n \n </div>\n \n <div class=\"display\"> \n <!-- ************ Header ********* --> \n \n \n<div align=\"center\"><img src=\"/img/techniker_login_48.png\" class=\"TSLoginIcon\">\n</div>\n<form action=\"/users/login?url=%2Fusers%2Flogin\" id=\"STLoginLoginForm\" method=\"post\" accept-charset=\"utf-8\"><div style=\"display:none;\"><input type=\"hidden\" name=\"_method\" value=\"POST\"/></div><div class=\"displayBorder\"><label class=\" copy labelforSelect labels\" >Code</label><label for=\"STLoginPWField\"></label><input name=\"STLoginPWField\" placeholder=\"Bitte eingeben\" =\"\" class=\"editFieldButton copy\" id=\"STLoginPWField\" type=\"password\"/></div><div class=\"buttonsDiv\" >\n <button id=\"STLoginButton\" class=\"weiterButton\" name=\"function\" value=\"save\" type=\"submit\" formaction=\"/users/login\">LOGIN</button>\n</div> \n\n<script>\n \n \n</script> \n </div>\n </div>\n </div>\n </div>\n </body>\n</html>\n\n\n\n"
                                        

                                        Bildschirmfoto 2021-11-21 um 20.58.49.png

                                        T Offline
                                        T Offline
                                        tombox
                                        schrieb am zuletzt editiert von
                                        #19

                                        @qwertz installier nochmal ich denke es war wie das form übertragen wird

                                        Q 1 Antwort Letzte Antwort
                                        0
                                        • T tombox

                                          @qwertz installier nochmal ich denke es war wie das form übertragen wird

                                          Q Offline
                                          Q Offline
                                          qwertz
                                          schrieb am zuletzt editiert von
                                          #20

                                          @tombox
                                          Gelöscht und neu installiert: trotzdem:

                                          "<!DOCTYPE html>\n<html lang='de'>\n <head>\n <meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" /> \n <meta name=\"viewport\" content=\"width=device-width, height=device-height, initial-scale=1.0\">\n <title>\t \n Login \n </title>\n <link href=\"/favicon.ico\" type=\"image/x-icon\" rel=\"icon\"/><link href=\"/favicon.ico\" type=\"image/x-icon\" rel=\"shortcut icon\"/><link rel=\"stylesheet\" type=\"text/css\" href=\"/css/font.min.css\"/><link rel=\"stylesheet\" type=\"text/css\" href=\"/css/default.min.css\"/><link rel=\"stylesheet\" type=\"text/css\" href=\"/css/progressbarBackLeft.min.css\"/><link rel=\"stylesheet\" type=\"text/css\" href=\"/css/simpleMenuCloseRight.min.css\"/><link rel=\"stylesheet\" type=\"text/css\" href=\"/css/onlyTitleHeader.min.css\"/><link rel=\"stylesheet\" type=\"text/css\" href=\"/css/mobile.min.css\"/><script type=\"text/javascript\" src=\"/js/jquery-3.1.1.min.js\"></script> </head>\n \n <!-- ************ Inhalt ********* -->\n <body>\n <div class=\"container\">\n <div class=\"content\" >\n <!-- ************ BWT-Logo ********* -->\n <div class=\"logo\">\n <img src=\"/img/cake.logo.png\" class=\"logoImage\" alt=\"\"/> </div>\n <!-- ************ Inhalt vom Display ********* -->\n <div id=\"displayBackground\">\n <div id =\"headerBackground\" >\n <div id=\"displayHeader\" >\n \n <div style=\"color:#545554;text-transform: uppercase; width:100%;\" align=\"center\" class=\"headLine1 menuHeaderTitle\">Login</div>\n \n </div>\n \n \n </div>\n \n <div class=\"display\"> \n <!-- ************ Header ********* --> \n \n \n<div align=\"center\"><img src=\"/img/techniker_login_48.png\" class=\"TSLoginIcon\">\n</div>\n<form action=\"/users/login?url=%2Fusers%2Flogin\" id=\"STLoginLoginForm\" method=\"post\" accept-charset=\"utf-8\"><div style=\"display:none;\"><input type=\"hidden\" name=\"_method\" value=\"POST\"/></div><div class=\"displayBorder\"><label class=\" copy labelforSelect labels\" >Code</label><label for=\"STLoginPWField\"></label><input name=\"STLoginPWField\" placeholder=\"Bitte eingeben\" =\"\" class=\"editFieldButton copy\" id=\"STLoginPWField\" type=\"password\"/></div><div class=\"buttonsDiv\" >\n <button id=\"STLoginButton\" class=\"weiterButton\" name=\"function\" value=\"save\" type=\"submit\" formaction=\"/users/login\">LOGIN</button>\n</div> \n\n<script>\n \n \n</script> \n </div>\n </div>\n </div>\n </div>\n </body>\n</html>\n\n\n\n"
                                          
                                          T K 2 Antworten Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          757

                                          Online

                                          32.5k

                                          Benutzer

                                          81.8k

                                          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