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. Skripten / Logik
  4. Einloggen auf Webseite und bedienen

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    16
    1
    1.1k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    702

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.0k

Einloggen auf Webseite und bedienen

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
19 Beiträge 7 Kommentatoren 1.8k Aufrufe 7 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.
  • I Int17

    Der Heizungsanbieter Wolf bietet seinen Kunden ein Portalzugang an, wo man die Daten (Benutzer & Fachmann) der Heizung anschauen und Parameter verändern kann. Hierzu gibt es im iobroker einen entsprechenden Adapter, der diese Daten lesen kann. Daten aus dem Fachmann-Menü werden leider nur aktualisiert, wenn man diese im Portal aufruft. Somit liest der Adapter solange alte Werte, bis man sich eingeloggt hat und das entsprechende Fachmann-Menü aufgerufen hat.
    Ich habe zwar dieses Problem bei Wolf gemeldet, denke aber nicht, dass man reagieren wird.
    Daher suche ich nach einer Lösung, dieses händische Vorgehen zu automatisieren. Das Script müsste sich:

    1. Anmelden auf https://www.wolf-smartset.com/
      klu_001.jpg

    2. Die Anlage öffnen:
      klu_002.jpg

    3. Das Fachmannkennwort (1111) eingeben:
      klu_003.jpg

    4. Nochmal unter Fachmann Heizgerät wählen:
      klu_004.jpg

    5. und hier Parameter HG wählen:
      klu_005.jpg

    klu_006.jpg

    Bei meiner Suche bin ich auf eine mögliche Lösung per request gestoßen, die abgeändert so aussieht, wobei new Buffer mittlerweile deprecated ist
    31e33726-8eaa-46ca-b932-1119d20a575e-grafik.png

    function loginto() {
        var request = require('request'),
            username = "xxxxxxx",
            password = "xxxxxx",
            url = 'https://www.wolf-smartset.com/',
            auth = "Basic " + new Buffer(username + ":" + password).toString("base64");
    
        request({
                url : url,
                headers : {'Authorization' : auth}
            },
    
            function (error, response, body) {
                    log('error: ' + error);
                    log('response: ' + JSON.stringify(response));
                    log('body: ' + body);
            }
        );
    }
    loginto();
    

    Hier scheitere ich schon, weil die Webseite Cookies erlaubt haben will:
    klu_007.jpg

    Könnte bitte einer mit mehr Ahnung als ich (>0) bewerten, ob das überhaupt per request machbar ist und wenn ja, mich beim Script unterstützen. Die Zugangsdaten (Leseberechtigung) sind im Script zu finden.
    Die Nutzung des direkten Link https://www.wolf-smartset.com/index.html#/system/42321/Heizgerät/2 wird nicht zugelassen.

    CodierknechtC Online
    CodierknechtC Online
    Codierknecht
    Developer Most Active
    schrieb am zuletzt editiert von
    #3

    @int17 sagte in Einloggen auf Webseite und bedienen:

    Ich habe zwar dieses Problem bei Wolf gemeldet, denke aber nicht, dass man reagieren wird.

    Hast Du denen etwas von einem ioBroker-Adapter erzählt?
    Würde mich dann jedenfalls nicht wundern, wenn der Adapter bald gar nicht mehr funktioniert, weil der Hersteller da zusätzliche Hürden einbaut oder z.B. bestimmte User-Agent komplett aussperrt.
    Machen die ganz gerne ...

    Der erste Weg sollte fast immer über ein Issue beim Adapter führen.

    "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

    Proxmox 9.1.1 LXC|8 GB|Core i7-6700
    HmIP|ZigBee|Tasmota|Unifi
    Zabbix Certified Specialist
    Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

    HomoranH I 2 Antworten Letzte Antwort
    0
    • CodierknechtC Codierknecht

      @int17 sagte in Einloggen auf Webseite und bedienen:

      Ich habe zwar dieses Problem bei Wolf gemeldet, denke aber nicht, dass man reagieren wird.

      Hast Du denen etwas von einem ioBroker-Adapter erzählt?
      Würde mich dann jedenfalls nicht wundern, wenn der Adapter bald gar nicht mehr funktioniert, weil der Hersteller da zusätzliche Hürden einbaut oder z.B. bestimmte User-Agent komplett aussperrt.
      Machen die ganz gerne ...

      Der erste Weg sollte fast immer über ein Issue beim Adapter führen.

      HomoranH Nicht stören
      HomoranH Nicht stören
      Homoran
      Global Moderator Administrators
      schrieb am zuletzt editiert von Homoran
      #4

      @codierknecht sagte in Einloggen auf Webseite und bedienen:

      Würde mich dann jedenfalls nicht wundern, wenn der Adapter bald gar nicht mehr funktioniert, weil der Hersteller da zusätzliche Hürden einbaut oder z.B. bestimmte User-Agent komplett aussperrt.
      Machen die ganz gerne ...

      Der Adapter wurde damals in Zusammenarbeit mit Wolf entwickelt.
      Wenn ich das noch richtig im Kopf habe, hatte Wolf sogar einen Preis ausgeschrieben.

      https://forum.iobroker.net/post/305

      kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

      CodierknechtC 1 Antwort Letzte Antwort
      0
      • HomoranH Homoran

        @codierknecht sagte in Einloggen auf Webseite und bedienen:

        Würde mich dann jedenfalls nicht wundern, wenn der Adapter bald gar nicht mehr funktioniert, weil der Hersteller da zusätzliche Hürden einbaut oder z.B. bestimmte User-Agent komplett aussperrt.
        Machen die ganz gerne ...

        Der Adapter wurde damals in Zusammenarbeit mit Wolf entwickelt.
        Wenn ich das noch richtig im Kopf habe, hatte Wolf sogar einen Preis ausgeschrieben.

        https://forum.iobroker.net/post/305

        CodierknechtC Online
        CodierknechtC Online
        Codierknecht
        Developer Most Active
        schrieb am zuletzt editiert von
        #5

        @homoran
        Das nenne ich mal richtig cool :+1:

        Hab' nix gesagt. Bin schon wieder weg ...

        "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

        Proxmox 9.1.1 LXC|8 GB|Core i7-6700
        HmIP|ZigBee|Tasmota|Unifi
        Zabbix Certified Specialist
        Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

        1 Antwort Letzte Antwort
        0
        • CodierknechtC Codierknecht

          @int17 sagte in Einloggen auf Webseite und bedienen:

          Ich habe zwar dieses Problem bei Wolf gemeldet, denke aber nicht, dass man reagieren wird.

          Hast Du denen etwas von einem ioBroker-Adapter erzählt?
          Würde mich dann jedenfalls nicht wundern, wenn der Adapter bald gar nicht mehr funktioniert, weil der Hersteller da zusätzliche Hürden einbaut oder z.B. bestimmte User-Agent komplett aussperrt.
          Machen die ganz gerne ...

          Der erste Weg sollte fast immer über ein Issue beim Adapter führen.

          I Offline
          I Offline
          Int17
          schrieb am zuletzt editiert von Int17
          #6

          @codierknecht
          Wir haben festgestellt, dass die Fachmannebene nur per Portal aktualisiert wird. Siehe Diskussion.
          Daher kann der Adapter gar nichts machen, da er nur die Daten lesen kann, die im das Portal zur Verfügung stellt.

          CodierknechtC mcm1957M 2 Antworten Letzte Antwort
          0
          • I Int17

            @codierknecht
            Wir haben festgestellt, dass die Fachmannebene nur per Portal aktualisiert wird. Siehe Diskussion.
            Daher kann der Adapter gar nichts machen, da er nur die Daten lesen kann, die im das Portal zur Verfügung stellt.

            CodierknechtC Online
            CodierknechtC Online
            Codierknecht
            Developer Most Active
            schrieb am zuletzt editiert von
            #7

            @int17
            OK, verstanden. Diese Diskussion kannte ich nicht.

            Versuch mal, Deinen http-request mit axios abzusetzen.
            Die Library "request" wird afaik nicht mehr weiterentwickelt.

            "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

            Proxmox 9.1.1 LXC|8 GB|Core i7-6700
            HmIP|ZigBee|Tasmota|Unifi
            Zabbix Certified Specialist
            Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

            1 Antwort Letzte Antwort
            1
            • I Int17

              @codierknecht
              Wir haben festgestellt, dass die Fachmannebene nur per Portal aktualisiert wird. Siehe Diskussion.
              Daher kann der Adapter gar nichts machen, da er nur die Daten lesen kann, die im das Portal zur Verfügung stellt.

              mcm1957M Online
              mcm1957M Online
              mcm1957
              schrieb am zuletzt editiert von
              #8

              @int17 said in Einloggen auf Webseite und bedienen:

              @codierknecht
              Wir haben festgestellt, dass die Fachmannebene nur per Portal aktualisiert wird. Siehe Diskussion.
              Daher kann der Adapter gar nichts machen, da er nur die Daten lesen kann, die im das Portal zur Verfügung stellt.

              Das stimmt nur zu 50%.
              WENN ein Einloggen mit Skript was bringt, dann kann das der Adapter genauso machen.
              Nur als Randanmerkung.
              Natürlich ist es sinnvoll, das Einloggen per Skript mal zu testen - wie es gehen könnte und obs was bringt. Dann aber bitte ale Feedback in eine Issue des Adapters gießen.

              Entwicklung u Betreuung: envertech-pv, hoymiles-ms, ns-client, pid, snmp Adapter;
              Support Repositoryverwaltung.

              Wer Danke sagen will, kann nen Kaffee spendieren: https://paypal.me/mcm1957atiobroker

              LESEN - gute Forenbeitrage

              1 Antwort Letzte Antwort
              0
              • I Int17

                Der Heizungsanbieter Wolf bietet seinen Kunden ein Portalzugang an, wo man die Daten (Benutzer & Fachmann) der Heizung anschauen und Parameter verändern kann. Hierzu gibt es im iobroker einen entsprechenden Adapter, der diese Daten lesen kann. Daten aus dem Fachmann-Menü werden leider nur aktualisiert, wenn man diese im Portal aufruft. Somit liest der Adapter solange alte Werte, bis man sich eingeloggt hat und das entsprechende Fachmann-Menü aufgerufen hat.
                Ich habe zwar dieses Problem bei Wolf gemeldet, denke aber nicht, dass man reagieren wird.
                Daher suche ich nach einer Lösung, dieses händische Vorgehen zu automatisieren. Das Script müsste sich:

                1. Anmelden auf https://www.wolf-smartset.com/
                  klu_001.jpg

                2. Die Anlage öffnen:
                  klu_002.jpg

                3. Das Fachmannkennwort (1111) eingeben:
                  klu_003.jpg

                4. Nochmal unter Fachmann Heizgerät wählen:
                  klu_004.jpg

                5. und hier Parameter HG wählen:
                  klu_005.jpg

                klu_006.jpg

                Bei meiner Suche bin ich auf eine mögliche Lösung per request gestoßen, die abgeändert so aussieht, wobei new Buffer mittlerweile deprecated ist
                31e33726-8eaa-46ca-b932-1119d20a575e-grafik.png

                function loginto() {
                    var request = require('request'),
                        username = "xxxxxxx",
                        password = "xxxxxx",
                        url = 'https://www.wolf-smartset.com/',
                        auth = "Basic " + new Buffer(username + ":" + password).toString("base64");
                
                    request({
                            url : url,
                            headers : {'Authorization' : auth}
                        },
                
                        function (error, response, body) {
                                log('error: ' + error);
                                log('response: ' + JSON.stringify(response));
                                log('body: ' + body);
                        }
                    );
                }
                loginto();
                

                Hier scheitere ich schon, weil die Webseite Cookies erlaubt haben will:
                klu_007.jpg

                Könnte bitte einer mit mehr Ahnung als ich (>0) bewerten, ob das überhaupt per request machbar ist und wenn ja, mich beim Script unterstützen. Die Zugangsdaten (Leseberechtigung) sind im Script zu finden.
                Die Nutzung des direkten Link https://www.wolf-smartset.com/index.html#/system/42321/Heizgerät/2 wird nicht zugelassen.

                OliverIOO Offline
                OliverIOO Offline
                OliverIO
                schrieb am zuletzt editiert von OliverIO
                #9

                @int17

                die bibliotheken nutzen eigentlich alle nur die einfachen requests ohne schnickschnack. manche funktionen sind zwar mit drin, andere können erweitert werden.

                speziell zu cookies. wenn man request/axios nutzt, dann können die browser cookies verwendet werden, bei node ist das automatisch erst mal nicht der fall, daher musst du die cookies selbst verwalten und empfangene cookies beim nächsten request auch wieder mitsenden.
                hier ein beispiel. schau mal npm ob es für axios auch eine zusatzbibliothek gibt, die das für dich macht. axios/withCredentials funktioniert nur im browser, nicht unter node

                https://www.npmjs.com/search?q=axios cookie

                https://stackoverflow.com/questions/66219323/setting-a-cookie-from-a-previous-request-when-using-axios-in-a-lambda-function

                anmerkung, ja requestjs ist deprecated. request hat allerdings die option jar eingebaut, die genau das macht.

                Meine Adapter und Widgets
                TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                Links im Profil

                1 Antwort Letzte Antwort
                0
                • I Int17

                  Der Heizungsanbieter Wolf bietet seinen Kunden ein Portalzugang an, wo man die Daten (Benutzer & Fachmann) der Heizung anschauen und Parameter verändern kann. Hierzu gibt es im iobroker einen entsprechenden Adapter, der diese Daten lesen kann. Daten aus dem Fachmann-Menü werden leider nur aktualisiert, wenn man diese im Portal aufruft. Somit liest der Adapter solange alte Werte, bis man sich eingeloggt hat und das entsprechende Fachmann-Menü aufgerufen hat.
                  Ich habe zwar dieses Problem bei Wolf gemeldet, denke aber nicht, dass man reagieren wird.
                  Daher suche ich nach einer Lösung, dieses händische Vorgehen zu automatisieren. Das Script müsste sich:

                  1. Anmelden auf https://www.wolf-smartset.com/
                    klu_001.jpg

                  2. Die Anlage öffnen:
                    klu_002.jpg

                  3. Das Fachmannkennwort (1111) eingeben:
                    klu_003.jpg

                  4. Nochmal unter Fachmann Heizgerät wählen:
                    klu_004.jpg

                  5. und hier Parameter HG wählen:
                    klu_005.jpg

                  klu_006.jpg

                  Bei meiner Suche bin ich auf eine mögliche Lösung per request gestoßen, die abgeändert so aussieht, wobei new Buffer mittlerweile deprecated ist
                  31e33726-8eaa-46ca-b932-1119d20a575e-grafik.png

                  function loginto() {
                      var request = require('request'),
                          username = "xxxxxxx",
                          password = "xxxxxx",
                          url = 'https://www.wolf-smartset.com/',
                          auth = "Basic " + new Buffer(username + ":" + password).toString("base64");
                  
                      request({
                              url : url,
                              headers : {'Authorization' : auth}
                          },
                  
                          function (error, response, body) {
                                  log('error: ' + error);
                                  log('response: ' + JSON.stringify(response));
                                  log('body: ' + body);
                          }
                      );
                  }
                  loginto();
                  

                  Hier scheitere ich schon, weil die Webseite Cookies erlaubt haben will:
                  klu_007.jpg

                  Könnte bitte einer mit mehr Ahnung als ich (>0) bewerten, ob das überhaupt per request machbar ist und wenn ja, mich beim Script unterstützen. Die Zugangsdaten (Leseberechtigung) sind im Script zu finden.
                  Die Nutzung des direkten Link https://www.wolf-smartset.com/index.html#/system/42321/Heizgerät/2 wird nicht zugelassen.

                  OliverIOO Offline
                  OliverIOO Offline
                  OliverIO
                  schrieb am zuletzt editiert von
                  #10

                  @int17 sagte in Einloggen auf Webseite und bedienen:

                  wobei new Buffer mittlerweile deprecated ist

                  Die Lösung steht aber im Textfeld direkt mit dabei

                  use Buffer.from

                  @codierknecht sagte in Einloggen auf Webseite und bedienen:

                  axios.defaults.withCredentials = true;

                  das funktioniert nur wenn man axios im browser verwendet.
                  da wird der cookiespeicher des browsers verwendet.
                  Unter node geht das nicht. da benötigt man entweder eigenverwaltung oder ein cookiejar bibliothek

                  Meine Adapter und Widgets
                  TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                  Links im Profil

                  1 Antwort Letzte Antwort
                  0
                  • I Offline
                    I Offline
                    Int17
                    schrieb am zuletzt editiert von
                    #11

                    Wie geschrieben, ist Java absolutes Neuland für mich. Hoffte, dass jemand ein Beispiel hat, dass ich abändern/verwenden kann. Daher hatte ich die Credentials auch veröffentlich, falls jemand das selber probieren will.
                    Bei Durchforsten habe ich dieses Beispiel gefunden.
                    @mcm57 : Da hast du natürlich Recht, dass der Adapter das sinnvollerweise machen sollte.

                    OliverIOO 1 Antwort Letzte Antwort
                    0
                    • I Int17

                      Wie geschrieben, ist Java absolutes Neuland für mich. Hoffte, dass jemand ein Beispiel hat, dass ich abändern/verwenden kann. Daher hatte ich die Credentials auch veröffentlich, falls jemand das selber probieren will.
                      Bei Durchforsten habe ich dieses Beispiel gefunden.
                      @mcm57 : Da hast du natürlich Recht, dass der Adapter das sinnvollerweise machen sollte.

                      OliverIOO Offline
                      OliverIOO Offline
                      OliverIO
                      schrieb am zuletzt editiert von OliverIO
                      #12

                      @int17
                      deswegen schreibst du ja hier und wir antworten.
                      allerdings musst du deine Probleme konkret benennen.
                      Evtl löst es auch jemand für dich, aber im zweifel wirst du dich selbst durchbeissen müssen und viel lesen.

                      du hattest ja bereits eine Anfangslösung.
                      zum Thema buffer hatte ich dir geantwortet
                      zum Thema cookies, habe ich dir auch einen Hinweis gegeben.
                      ob du jetzt das "veraltete" request, bei der die cookieverwaltung eingebaut ist, nutzt
                      oder das neuere axios mit evtl zusätzlichen bibliotheken bleibt dir überlassen.
                      wenn dein kenntnisstand nicht so ist, würde ich dir request empfehlen.

                      1. nutzt das iobroker selbst noch
                      2. das ist eine ausgereifte bibliothek, sie nutzt halt callbacks, aber kann man durchaus benutzen
                      3. deine cookiebehandlung ist direkt eingebaut, du musst nur eine option auf true setzen
                      4. es gibt wirklich viele beispiele zu request
                      5. dokumentation mit beispiel mit aktivierten cookies, link für die markierung dürfte in chrome direkt funktionieren: https://github.com/request/request#examples:~:text=To use a custom cookie jar (instead of request’s global cookie jar)%2C set jar to an instance of request.jar() (either in defaults or options)

                      Für weitere Probleme frage hier gerne nach mit möglichst genauer Problembeschreibung.

                      Die einzelnen Requests entlang des einloggens und woher die angezeigten Daten kommen kann man ganz gut über die Web Developer Tools nachvollziehen. Im Browser F12 drücken

                      Meine Adapter und Widgets
                      TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                      Links im Profil

                      I 1 Antwort Letzte Antwort
                      0
                      • OliverIOO OliverIO

                        @int17
                        deswegen schreibst du ja hier und wir antworten.
                        allerdings musst du deine Probleme konkret benennen.
                        Evtl löst es auch jemand für dich, aber im zweifel wirst du dich selbst durchbeissen müssen und viel lesen.

                        du hattest ja bereits eine Anfangslösung.
                        zum Thema buffer hatte ich dir geantwortet
                        zum Thema cookies, habe ich dir auch einen Hinweis gegeben.
                        ob du jetzt das "veraltete" request, bei der die cookieverwaltung eingebaut ist, nutzt
                        oder das neuere axios mit evtl zusätzlichen bibliotheken bleibt dir überlassen.
                        wenn dein kenntnisstand nicht so ist, würde ich dir request empfehlen.

                        1. nutzt das iobroker selbst noch
                        2. das ist eine ausgereifte bibliothek, sie nutzt halt callbacks, aber kann man durchaus benutzen
                        3. deine cookiebehandlung ist direkt eingebaut, du musst nur eine option auf true setzen
                        4. es gibt wirklich viele beispiele zu request
                        5. dokumentation mit beispiel mit aktivierten cookies, link für die markierung dürfte in chrome direkt funktionieren: https://github.com/request/request#examples:~:text=To use a custom cookie jar (instead of request’s global cookie jar)%2C set jar to an instance of request.jar() (either in defaults or options)

                        Für weitere Probleme frage hier gerne nach mit möglichst genauer Problembeschreibung.

                        Die einzelnen Requests entlang des einloggens und woher die angezeigten Daten kommen kann man ganz gut über die Web Developer Tools nachvollziehen. Im Browser F12 drücken

                        I Offline
                        I Offline
                        Int17
                        schrieb am zuletzt editiert von
                        #13

                        @oliverio Ok, danke.

                        I 1 Antwort Letzte Antwort
                        0
                        • I Int17

                          @oliverio Ok, danke.

                          I Offline
                          I Offline
                          Int17
                          schrieb am zuletzt editiert von Int17
                          #14

                          Wie eingangs schon beschrieben, habe ich von Java Script keine Ahnung. Aus dem Bekanntenkreis konnte ich aber einem Webentwickler das Problem vorstellen. Der hat sich das angeschaut und erstmal festgestellt, dass die Wolf Smartset Seite ebenfalls die selbe API nutzt, um an die Daten zu kommen. Dann hat er mir ein Phyton Script gebaut, dass mit Selenium und Chrome als Browser, die gleichen Eingaben machen kann, als wenn man selber die Seite besuchen würde. Startet man das Py-Script, so wird nach einer kurzen Verweilzeit (time.sleep(15)) auf der Fachman/Heizung-Seite, der Verdichterwert aktualisiert und der iobroker Adapter bekommt das natürlich auch mit. Per Cron jetzt das Script in Intervallen zu starten bringt keinen Erfolg.

                          # -*- coding: utf-8 -*-
                          
                          import time
                          from selenium import webdriver
                          from selenium.common.exceptions import StaleElementReferenceException
                          from selenium.webdriver.common.by import By
                          from selenium.webdriver.chrome.options import Options
                          from selenium.webdriver.support.ui import WebDriverWait
                          from selenium.webdriver.support import expected_conditions as EC
                          
                          def safe_click(driver, by, value, timeout=10):
                              try:
                                  element = WebDriverWait(driver, timeout).until(
                                      EC.element_to_be_clickable((by, value))
                                  )
                                  element.click()
                              except StaleElementReferenceException:
                                  print("StaleElementReferenceException: Element nicht mehr im DOM. Wiederholen...")
                                  safe_click(driver, by, value, timeout)
                          
                          driver = webdriver.Chrome()
                          # eigener Token
                          driver.get("https://www.wolf-smartset.com/idsrv/Account/Login?ReturnUrl=%2Fidsrv%2Fconnect%2Fauthorize%2Fcallback%3Fclient_id%3Dsmartset.web%26redirect_uri%3Dhttps%253A%252F%252Fwww.wolf-smartset.com%252Fsignin-callback.html%26response_type%3Dcode%26scope%3Dopenid%2520profile%2520api%2520role%26state%3Ddae24383364a6d5a44acb10197%26code_challenge%3DtxZ8TioCs_luMaLCqFVg7l2GKRt5aNFRT0BvLg%26code_challenge_method%3DS256%26response_mode%3Dquery%26lang%3Dde-DE")
                          
                          
                          driver.implicitly_wait(5)
                          # Benutzername
                          input_field = driver.find_element(by=By.ID, value="Input_Username")
                          input_field.send_keys("iobroker_klu")
                          # Kennwort 
                          password_field = driver.find_element(by=By.ID, value="Input_Password")
                          password_field.send_keys("<passwort>")
                          
                          safe_click(driver, By.CSS_SELECTOR, ".login-button")
                          safe_click(driver, By.ID, "link")
                          safe_click(driver, By.CSS_SELECTOR, ".k-grid-Öffnen")
                          safe_click(driver, By.CSS_SELECTOR, "#open-system-menu .k-last")
                          
                          driver.implicitly_wait(5)
                          expert_login = driver.find_element(by=By.ID, value="expert-login-view-passwd")
                          # Fachmann Passwort
                          expert_login.send_keys("1111")
                          
                          safe_click(driver, By.CSS_SELECTOR, "#expert-login-view [type=submit]")
                          
                          safe_click(driver, By.CSS_SELECTOR, "#open-system-menu_mn_active")
                          safe_click(driver, By.CSS_SELECTOR, "#open-system-menu_mn_active a")
                          
                          time.sleep(15)
                          
                          driver.quit()
                          

                          Ich verfolge dieses Problem nicht mehr, da sich mit ism7mqtt ein lokale und somit bessere Lösung ergeben hat. Falls das jemand unter Linux nachbauen will.

                          OliverIOO 1 Antwort Letzte Antwort
                          0
                          • I Int17

                            Wie eingangs schon beschrieben, habe ich von Java Script keine Ahnung. Aus dem Bekanntenkreis konnte ich aber einem Webentwickler das Problem vorstellen. Der hat sich das angeschaut und erstmal festgestellt, dass die Wolf Smartset Seite ebenfalls die selbe API nutzt, um an die Daten zu kommen. Dann hat er mir ein Phyton Script gebaut, dass mit Selenium und Chrome als Browser, die gleichen Eingaben machen kann, als wenn man selber die Seite besuchen würde. Startet man das Py-Script, so wird nach einer kurzen Verweilzeit (time.sleep(15)) auf der Fachman/Heizung-Seite, der Verdichterwert aktualisiert und der iobroker Adapter bekommt das natürlich auch mit. Per Cron jetzt das Script in Intervallen zu starten bringt keinen Erfolg.

                            # -*- coding: utf-8 -*-
                            
                            import time
                            from selenium import webdriver
                            from selenium.common.exceptions import StaleElementReferenceException
                            from selenium.webdriver.common.by import By
                            from selenium.webdriver.chrome.options import Options
                            from selenium.webdriver.support.ui import WebDriverWait
                            from selenium.webdriver.support import expected_conditions as EC
                            
                            def safe_click(driver, by, value, timeout=10):
                                try:
                                    element = WebDriverWait(driver, timeout).until(
                                        EC.element_to_be_clickable((by, value))
                                    )
                                    element.click()
                                except StaleElementReferenceException:
                                    print("StaleElementReferenceException: Element nicht mehr im DOM. Wiederholen...")
                                    safe_click(driver, by, value, timeout)
                            
                            driver = webdriver.Chrome()
                            # eigener Token
                            driver.get("https://www.wolf-smartset.com/idsrv/Account/Login?ReturnUrl=%2Fidsrv%2Fconnect%2Fauthorize%2Fcallback%3Fclient_id%3Dsmartset.web%26redirect_uri%3Dhttps%253A%252F%252Fwww.wolf-smartset.com%252Fsignin-callback.html%26response_type%3Dcode%26scope%3Dopenid%2520profile%2520api%2520role%26state%3Ddae24383364a6d5a44acb10197%26code_challenge%3DtxZ8TioCs_luMaLCqFVg7l2GKRt5aNFRT0BvLg%26code_challenge_method%3DS256%26response_mode%3Dquery%26lang%3Dde-DE")
                            
                            
                            driver.implicitly_wait(5)
                            # Benutzername
                            input_field = driver.find_element(by=By.ID, value="Input_Username")
                            input_field.send_keys("iobroker_klu")
                            # Kennwort 
                            password_field = driver.find_element(by=By.ID, value="Input_Password")
                            password_field.send_keys("<passwort>")
                            
                            safe_click(driver, By.CSS_SELECTOR, ".login-button")
                            safe_click(driver, By.ID, "link")
                            safe_click(driver, By.CSS_SELECTOR, ".k-grid-Öffnen")
                            safe_click(driver, By.CSS_SELECTOR, "#open-system-menu .k-last")
                            
                            driver.implicitly_wait(5)
                            expert_login = driver.find_element(by=By.ID, value="expert-login-view-passwd")
                            # Fachmann Passwort
                            expert_login.send_keys("1111")
                            
                            safe_click(driver, By.CSS_SELECTOR, "#expert-login-view [type=submit]")
                            
                            safe_click(driver, By.CSS_SELECTOR, "#open-system-menu_mn_active")
                            safe_click(driver, By.CSS_SELECTOR, "#open-system-menu_mn_active a")
                            
                            time.sleep(15)
                            
                            driver.quit()
                            

                            Ich verfolge dieses Problem nicht mehr, da sich mit ism7mqtt ein lokale und somit bessere Lösung ergeben hat. Falls das jemand unter Linux nachbauen will.

                            OliverIOO Offline
                            OliverIOO Offline
                            OliverIO
                            schrieb am zuletzt editiert von
                            #15

                            @int17

                            Schluckt halt ne Menge Ressourcen, da versteckt ein kompletter Browser gestartet wird.
                            Aber wenn es funkzioniert

                            Meine Adapter und Widgets
                            TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                            Links im Profil

                            I 1 Antwort Letzte Antwort
                            0
                            • OliverIOO OliverIO

                              @int17

                              Schluckt halt ne Menge Ressourcen, da versteckt ein kompletter Browser gestartet wird.
                              Aber wenn es funkzioniert

                              I Offline
                              I Offline
                              Int17
                              schrieb am zuletzt editiert von Int17
                              #16

                              @oliverio
                              Ja, da hast du natürlich Recht.
                              Aber das Wolf das Problem lösen wird, sehe ich im Moment nicht. da die letzte Reaktion vom Support das war:
                              Wir können Ihnen leider keine Auskunft geben da wir diese Funktion über Externe Anbindungsmöglichkeiten nicht vertreten.
                              Zudem ist diese Lösung lokal und man ist von nichts abhängig.

                              M 1 Antwort Letzte Antwort
                              0
                              • I Int17

                                @oliverio
                                Ja, da hast du natürlich Recht.
                                Aber das Wolf das Problem lösen wird, sehe ich im Moment nicht. da die letzte Reaktion vom Support das war:
                                Wir können Ihnen leider keine Auskunft geben da wir diese Funktion über Externe Anbindungsmöglichkeiten nicht vertreten.
                                Zudem ist diese Lösung lokal und man ist von nichts abhängig.

                                M Offline
                                M Offline
                                musicowl
                                schrieb am zuletzt editiert von
                                #17

                                @int17

                                @mimquadrat: Bist Du noch bei Wolf? Oder hast Du die Firma oder Rolle verlassen und bist raus ;-)? Wir bräuchten Deine Hilfe :-)!

                                Viele Grüße,

                                musicowl

                                I 1 Antwort Letzte Antwort
                                0
                                • M musicowl

                                  @int17

                                  @mimquadrat: Bist Du noch bei Wolf? Oder hast Du die Firma oder Rolle verlassen und bist raus ;-)? Wir bräuchten Deine Hilfe :-)!

                                  Viele Grüße,

                                  musicowl

                                  I Offline
                                  I Offline
                                  Int17
                                  schrieb am zuletzt editiert von
                                  #18

                                  @musicowl
                                  18.12.23 Abschließende Aussage von Wolf
                                  ##>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
                                  wie bereits erwähnt bitten wir keine Unterstützung von IoBroker dies ist eine 3 Anbietersoftware mit welcher wir in keiner Verbindung stehen und daher
                                  keine Unterstützung bitten.

                                  Ebenso wissen wir nicht wer hinter dem Namen mimquadrat steckt und ob besagt Person wirklich bei Wolf arbeitet / gearbeitet hat.

                                  Mit freundlichen Grüßen

                                  Mathies Jung
                                  K u n d e n s e r v i c e W O L F G m b H
                                  ##<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

                                  W 1 Antwort Letzte Antwort
                                  0
                                  • I Int17

                                    @musicowl
                                    18.12.23 Abschließende Aussage von Wolf
                                    ##>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
                                    wie bereits erwähnt bitten wir keine Unterstützung von IoBroker dies ist eine 3 Anbietersoftware mit welcher wir in keiner Verbindung stehen und daher
                                    keine Unterstützung bitten.

                                    Ebenso wissen wir nicht wer hinter dem Namen mimquadrat steckt und ob besagt Person wirklich bei Wolf arbeitet / gearbeitet hat.

                                    Mit freundlichen Grüßen

                                    Mathies Jung
                                    K u n d e n s e r v i c e W O L F G m b H
                                    ##<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

                                    W Offline
                                    W Offline
                                    Wch
                                    schrieb am zuletzt editiert von
                                    #19

                                    Moin @all ✌🏼

                                    Seit 3tagen wird nun auch keinen Wärmemenge mehr zur Smartset-
                                    App übertragen. Weder Fachmann noch auf normaler Ebene. Statistik ebenfalls negativ.
                                    Hat noch jemand das gleiche Problem?
                                    Nach Neustart der Heizung werden die Werte einmalig hochgeladen, aber nicht mehr aktualisiert. Wat is denn da bloß los bei denen 🫣

                                    Grüße
                                    Tom

                                    1 Antwort Letzte Antwort
                                    0
                                    Antworten
                                    • In einem neuen Thema antworten
                                    Anmelden zum Antworten
                                    • Älteste zuerst
                                    • Neuste zuerst
                                    • Meiste Stimmen


                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate

                                    752

                                    Online

                                    32.6k

                                    Benutzer

                                    82.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