Closed Olivbus closed 4 years ago
WEM oder WCM (home) Portal ? Ich suche ebenfalls einen solchen Adapter via WCM-Modul-Webseite auslesbar
Die neueren Modelle gehen ohne WCM Modul direkt via Ethernetkabel in das WEM Portal. Im WEM Portal sind über PC und mobile App die Zustände abfrag- und steuerbar. Leider gibt die Firma Weishaupt die API nicht bekannt.
Ich würde für einen solchen Adapter meine Zugangsdaten zur Verfügung stellen, wenn es hilft.
Ich hätte auch großes Interesse an einem Adapter, falls sich das irgendwie realisieren lässt. Würde die Entwicklung auch gerne unterstützen. Testen, zugang zur Verfügung stellen oder auch finanziell unterstützen.
Gruß
Hallo an alle! Habe eine Variante, mit der ich mich mit einem Headless Browser am wemportal anmelden kann (Script) und die Meßwerte, Temp, Druck, Heizleistung der ersten Anmeldeseite abgreifen kann. Es basiert auf casperjs/phantomjs. Bisher läuft es auf einem Windows-PC in einer Cmd shell. Hat jemand Interesse? Viele Grüße Hardy62wo
Hallo @Hardy62wo,
ich hätte auf alle Fälle Interesse ...
Viele Grüße
Thomas
Ok, wie können wir kommunizieren? Mail? Am 09.10.19, 07:47, tg-71 notifications@github.com schrieb: Hallo @Hardy62wo,
ich hätte auf alle Fälle Interesse ...
Viele Grüße
Thomas
Hallo Thomas,
so sieht der Dialog in der Windows cmd-shell aus:
Weishaupt website opened Weishaupt WemPortal Login Login using username and password ... Aussentemperatur_Aktuell 15,2 °C Aussentemperatur_Maximum 22,6 °C Warmwassertemperatur_Aktuell 26,2 °C Leistung_Aktuell_WE0 0 % Anlagendruck 1,55 bar Aussentemperatur_Minimum 8,4 °C Vorlauftemperatur_Aktuell_HKModul --- °C Kesseltemperatur_Aktuell_WE0 27,1 °C ... Anlagen Logout from WemPortal Drücken Sie eine beliebige Taste . . .
ich komme im Moment nur auf die erste Seite .... die Folgeseiten kann ich leider noch nicht erreichen.. von ioBroker habe ich leider keine Ahnung viele Grüße Gerhard
Hallo Gerhard,
kannst Du teilen was Du gebaut hast? Das klingt für den Anfang gar nicht schlecht.
Gruß Dirk
Hallo Gerhard, ich habe auch Interesse. Es wäre schon, wenn du deinen Code teilen könntest. Gruß Timo
Hallo,
stelle hier ein Verfahren vor, um an die Daten aus dem Portal "https://www.wemportal.com" für Weishaupt Heizungen WTC-GW 15-B (seit ca. Frühjahr 2017) zum kommen... Es werden die Tools PhantomJS (headless Browser) und CasperJS benutzt.
Die beiden Softwaren können auf Windows-PC einfach installiert werden. Es existieren im Netz auch Beschreibungen für Installation auf einem Raspberry - habe ich aber noch nicht getestet.
1.0 folgendes herunterladen (Zip-Datei) und in je einem eigenen Ordner entpacken: 1.1 https://phantomjs.org/download.html 1.2 https://codeload.github.com/casperjs/casperjs/zip/1.1.4-1 2.0 die Windows-Pfad-Variable ergänzen: 2.1 entweder Systemweit 2.2 oder als cmd-Script: Path=%Path%;C:\casperjs-1.1.4-1\bin;C:\casperjs-1.1.4-1;C:\phantomjs-2.1.1-windows\bin;C:\phantomjs-2.1.1-windows; 3.0 die Datei "wemportal.js" ins Verzeichnis C:\casperjs-1.1.4-1\bin kopieren 3.1 die Datei Wemportal.cmd ins im Verzeichnis: C:\casperjs-1.1.4-1\bin kopieren 4.0 Starten mit Wemportal.cmd
die Dateien sind 7zip komprimiert und in gz umbenannt, damit sie sich hochladen lassen!
hab sie gerade hochgeladen !
In der wemportal.js muss natürlich noch Benutzername und das Passwort fürs Wemportal angepasst werden!
super! dankeschön! ich werde mir das ding anschauen; mein ziel ist es die warmwasser aufbereitung ein/ausschalten zu können und das dann entsprechend in home assistant steuern zu können. und wenn das dann entsprechend funktioniert muss man es halt z.b. noch in ioBroker oder wo auch immer integrieren!
Hallo Dirk, Freut mich, wenn es Dir weiterhilft. Ich bin leider gescheitert auf die Folgeseiten zu kommen mit diesem Verfahren. Es handelt sich wohl um Seiten, die mit Javascript dynamisch aufgebaut werden. Ich hatte Versuche gemacht um das genauer zu analysieren mit einer Software "burp" Ursprünglich hatte ich mit "curl" Versuche gemacht, kam aber nicht über die Hürde Anmeldung hinweg. Es gibt in FHEM ein universelles Modul "httpmod", damit kam ich leider auch nicht weiter. Viele Grüße Gerhard
Ich bin gerade mit "Puppeteer" am "rumprobieren". Gerhard hat mich mit dem Stichwort "Headless Browser" auf die Spur gebracht. Damit kann ich schonmal durchs Portal navigieren (Bin schon auf der "Fachmannseite" ;o) . Hab gerade wenig Zeit umd muss mir neben bei noch Javascript beibringen. Deswegen geht's nur langsam voran.... Gruß Thomas
Irgendwie kommuniziert unsere Heizung über xmpp mit dem Server von Weishaupt.
Für das Portal nutzen die dafür eine Software-Framework von einer anderen Firma.
"alnamic AG
Habichtweg 21 l 41468 Neuss l Telefon +49-2131-7949-0
office@alnamic.com l www.alnamic.com "
.....Für den Aufbau des Weishaupt Energie Management (WEM) Portals hat alnamic auf die Softwareplattform e-ControINet gesetzt. Die modulare Plattform wurde speziell für Internet of Things (loT) Anwendungen entwickelt und bringt bereits viele Funktionen im Standard mit.
...wird die Plattform auf Basis von Microsoft Azure betrieben.
Es gibt auch noch einen CAN-Bus...
Wenn Du NUR Warmwasser zu und abschalten möchtest, bestünde auch eine Möglichkeit über den Temperaturfühler (NTC 5k) Einfluss zu nehmen und dort einen Umschaltung zu machen.(Widerstand bei aufgeheiztem Speicher messen! wahrscheinlich so um 1200 Ohm). Dieser ist an den Klemmen B3 (1,M) angeschlossen
Hallo Thomas, Ja über Puppeteer bin ich auch gestolpert, hab das aber nicht weiter verfolgt. Dein Script interessiert mich! VG Gerhard
packt doch eure experimente in github in ein repo, dann können wir gemeinsam schauen was wir erreichen?
Ich mach das noch ein bisschen hübscher, damit ich mich nicht schämen muss ;o) - dann zeig das Ganze...
"Repo" ich bin hier auf gihub nur Leser - ich fürchte da brauch ich etwas Unterstützung ;o)
...mir geht das genauso
wie gesagt bin noch am Basteln, Probieren und Lernen, aber das könnte ein Weg sein...
Hallo Thomas, Das ist ganz große Klasse und hat mich einen großen Schritt weiter gebracht! Vielen herzlichen Dank und viele Grüße Gerhard
Freut mich ;o)
so leute, ich hab mich mal an einer python version probiert. aktuell kann ich die werte auslesen und auch zum formular für die warmwasser aufbereitung wechseln, dort kann ich auch die werte ändern aber sie werden noch nicht gespeichert. siehe: https://github.com/dm82m/wemportal-python/blob/master/wem.py
Hallo Dirk, Finde Deine Lösung auch sehr interessant! Einen Ansatz mit Python hat auch dieser Kollege vor wenigen Tagen veröffentlicht: https://github.com/neiser/wemportal-scripts Viele Grüße Gerhard
Hallo zusammen,
ich melde mich mal hier als Reaktion auf https://github.com/neiser/wemportal-scripts/issues/1
Meine Story ist, dass ich ziemlich verärgert war, dass einem Weishaupt auch nach längerem Gespräch mit dem Support keine vernünftige API zur Verfügung stellt und nur dieses vollkommen träge und bescheuerte Web-Interface zur Verfügung stellt (wofür man auch noch zahlen darf per Abo...grrrr...nachdem man schon tausende Euro für die Anlage selbst bezahlt hat.....grrrr). Da das Web-Interface offensichtlich auf ASP.Net basiert und sowohl Client- als auch Server-State hat den es bei jedem "Klick" in der Oberfläche durch tonnenweises XML modifiziert, hab ich mit Selenium obiges Script entwickelt. Davor hab ich übrigens auch mit Wireshark probiert, ne Man-in-the-Middle Attacke auf die mit TLS gesicherte XMPP Verbindung zwischen Gerät und WEM Portal zu starten. Hat nich geklappt, aber bei sowas bin ich auch nich sooo gut.
@dm82m hat in https://github.com/neiser/wemportal-scripts/issues/1 ein paar Fragen gestellt: Bei mir läuft das in einer "headless" VM sehr zuverlässig. Es braucht aber schon ein paar hundert MB RAM. Es sollte aber problemlos möglich sein, das mal auf einem RPi zum laufen zu kriegen, zumindest um es anzutesten. Ist halt nur sehr resourcenhungrig. Die Prometheus Metriken kann man einfach per "curl" abholen und schauen, ob es klappt. Passwort usw. ist per Umgebungsvariable zu setzen. Ein "Scrape", also das Auslesen aller Daten von der "Fachmann Info" Seite dauert etwa 20 Sekunden, wobei die meiste Zeit darauf geht darauf zu warten dass die Seite fertig geladen hat (das ist leider auch nicht so trivial, siehe unten).
Mir war allerdings nicht bewusst, dass es auch eine App gibt. Vielleicht kann man die ja disassemblieren und eine halbwegs vernünftige API vorfinden. Vielleicht ist diese dann ohne diese Selenium-"Kanone" nutzbar für die "Spatzen"anwendung, einfach nur regelmäßig alle Daten auszulesen....
Bisher war nicht geplant, auch das Warmwasser an/aus zu machen, aber alles, was man im Webinterface klicken kann, sollte man mit Selenium hinbekommen. Allerdings ist die Webseite alles andere als nicht trivial, und man muss höllisch aufpassen, dass die Seite auch fertig "geladen" hat, sprich: Diesen ganzen XML State hin- und hergeschickt hat.
Ich folge mal dem Issue hier und kann gerne Hilfe leisten, mein Script zum Laufen zu kriegen.
so leute; mein repo ist upgedated. ich kann jetzt alle werte der ersten seite auslesen und ich kann die warmwasseraufbereitung ein bzw. ausschalten. das alles ohne selenium und per python aber sehr leichtgewichtig und schnell durch mechanicalsoup und danke der hilfe eines kumpels! im wasseraufbereitungsscript habe ich auch schon begonnen mir die solardaten des tages zu holen; ich werde also das script in meiner homeautomatisierung täglich laufen lassen und die warmwasseraufbereitung ausschalten sofern genug sonnenenergie kommt und ich ausreichend warmwasser per solarthermie mache. falls nicht wird die warmwasseraufbereitung über die heizungsanlage aktiviert.
Hallo Dirk, Gefällt mir sehr-sehr gut! Habe Dir gerade eine Mail geschrieben!! Viele Grüße Gerhard
Freut mich, wenns euch was bringt. Für Home Assistant bin ich fertig, da habe ich jetzt alle Weishaupt Werte und kann meine Warmwasser Aufbereitung je nach Solarenergie ein- bzw. ausschalten. Hier sind wir ja aber eigentlich im ioBroker Repository, d.h. den Aufwand das dann da reinzubekommen müsste jemand anderes tun. :)
... geht mir ähnlich ... bin ein oldfashion FHEM- Dino 😉
Habt Ihr auch alle oben "Thumbs up" beim ersten Beitrag gemacht wenn Interesse besteht? onst ist das Interesse unsichtbar wenn jemand schaut
Ich nicht, aber ich nutze kein ioBroker, daher ist es für mich auch irrelevant ob das Feature dort enthalten ist oder nicht.
Als Eröffner dieses Issues möchte ich mich schon mal herzlich für Eure tolle Vorarbeiten bedanken. Es wäre super, wenn jemand hieraus einen Adapter für den Iobroker entwickeln könnte. Ich kann das leider nicht leisten, weil ich mich damit überhaupt nicht auskenne. Wenn ein solcher Adapter erstellt werden würde, würde ich mich über folgende Möglichkeiten freuen: Warmwasser Push anstellen, Warmwassersolltemperatur ändern, Betriebsart wechseln, Raumsolltemperatur ändern, Statistik auslesen, aktuelle Werte für Warmwassertemperatur, Anlagendruck, Leistung , Außentemperatur, Vorlauftemperatur und Kesseltemperatur auslesen.
@dm82m Ich hab mir dein Script wem_status.py
mal angeschaut und mir ist aufgefallen, dass du direkt nach dem Login anfängst, die Seite zu parsen. Klappt das zuverlässig? Ich hatte das Problem, dass es immer ein bissel braucht bist auch alle DOM Elemente von dem JavaScript im Hintergrund auch wirklich fertig geladen worden sind. Weißt du, ob mechnicalsoup auch diesen JavaScript-Kram richtig kann und ob man vielleicht sogar die Daten von der Fachmann-Info Page auslesen kann (dort sind ja noch viel mehr interessante Daten zu bekommen)?
Also ich würde sagen es funktioniert, wenn ich mir die Werte in meiner Homeautomatisierung anschaue. Siehe Bild. Fachmann Seite müsste auch gehen, ich kann ja sogar die warmwasser Aufbereitung ein bzw ausschalten.
Wenn wirklich bedarf besteht kann ich ein adapter draus machen. Es wäre einfacher für mich mit Zugangsdaten die temporär mir zu Verfügung gestellt werden. Einfach im Forum tombox anschreiben.
Mein Interesse ist riesig ;o) Ich würde Dir auch meine Zugangsdaten zur Verfügung stellen. Ich habe aber nur die "Minimalaustattung" (meine Gastherme arbeitet als Gasdurchlauferhitzer) - somit wirst du bei mir nicht alle Funktionen finden. "Olivbus" scheint ein paar mehr Funktionen im Portal zur Verfügung zu haben. Vielleicht ist es sinnvoller mit seinem Account zu arbeiten... Viele Grüße Thomas
Mir egal ich kann mit einem kleineren anfangen man kann ja dann nachbessern falls noch was fehlt
Hallo, ich habe auch sehr großes Interesse und kann meine Zugangsdaten auch zur Verfügung stellen. Bei mir ist eine Split-Wärmepumpe WWP-LS10B installiert. Dann kann auch Verglichen werden, welche Daten im Portal gerätespezifisch bzw. geräteübergreifend sind.
dann schreib mir im forum eine pn an tombox gibt die app genauso alle informationen aus wie die webseite?
Nein, die App gibt wesentlich weniger Werte aus als die Webseite, da es hier keine Fachmannebene gibt.
Ok gut zu wissen wie ist die Pin für die Fachmannebene?
Pin ist normalerweise: 11
Super!! Installiert und läuft.
Zum Einbinden einer Weishaupt Gastherme in das Hausautomatisationssystem. Die Gastherme ist via WEM Portal sowohl über Handyapp als auch über Webapp auslesbar und steuerbar.