NEWS
BWT Weichwasseranlage auslesen
-
@qwertz
In der URL muss dann noch euer Produkt-code (SN) rein. und der API key
ich habe 3 Objekte angelegt (Wasserverbrauch_gestern, Füllstand_Salz und Status.
<xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable id="{^#@mm$`LvD2yq~bM==0">since</variable> <variable id="7Bf_zZ,|3JbY[Sr;;[ZR">until</variable> <variable id="5Y(p6$V4JW1Gwlj!afH?">api_key</variable> <variable id="]^02}el_a.}BLFPBoK_k">url</variable> <variable id="P/;-p8kU@!nRF.25:q!O">url2</variable> <variable id="_03`@CsFtd?`/XOE0Nea">result</variable> </variables> <block type="comment" id="|fyRu%!nNeRhQ}zs`{F/" x="438" y="-287"> <field name="COMMENT">Täglich um 01:00 Uhr Wasserverbrauch von BWT Cloud abfragen und in Datenpunkt schreiben.</field> <next> <block type="schedule" id="JBgcg*@gt/C~O$woUf[3"> <field name="SCHEDULE">{"time":{"exactTime":true,"start":"01:00"},"period":{"days":1}}</field> <statement name="STATEMENT"> <block type="variables_set" id=",RyccK|oIP$xxWMi6_[k"> <field name="VAR" id="{^#@mm$`LvD2yq~bM==0">since</field> <value name="VALUE"> <block type="convert_from_date" id="szqS727YvG6LLx(4l%jp"> <mutation xmlns="http://www.w3.org/1999/xhtml" format="true" language="false"></mutation> <field name="OPTION">custom</field> <field name="FORMAT">JJJJ-MM-TT</field> <value name="VALUE"> <block type="math_arithmetic" id="*yDP}]SGi#J+Sh9pUF0;"> <field name="OP">MINUS</field> <value name="A"> <shadow type="math_number" id="NN4{X6ay5+i~4},*Ag+9"> <field name="NUM">1</field> </shadow> <block type="time_get" id="8@Udbb~suvrC.Y.u2)a%"> <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation> <field name="OPTION">object</field> </block> </value> <value name="B"> <shadow type="math_number" id="5wo)yDNCu4@kNq5~c2m6"> <field name="NUM">86400000</field> </shadow> </value> </block> </value> </block> </value> <next> <block type="variables_set" id="oZi#MCqD_bTw.JTc}v`b"> <field name="VAR" id="7Bf_zZ,|3JbY[Sr;;[ZR">until</field> <value name="VALUE"> <block type="time_get" id="-}l~_spdI+9fQqdI/Gt+"> <mutation xmlns="http://www.w3.org/1999/xhtml" format="true" language="false"></mutation> <field name="OPTION">custom</field> <field name="FORMAT">JJJJ-MM-TT</field> </block> </value> <next> <block type="variables_set" id=",=sk0Kd[/]VT!gM=)C/a"> <field name="VAR" id="5Y(p6$V4JW1Gwlj!afH?">api_key</field> <value name="VALUE"> <block type="text" id="00}3A!K}9C%*nt.op=7s"> <field name="TEXT">XYZ</field> </block> </value> <next> <block type="variables_set" id="R73J$#MIp8_Vp*g;I_Vd"> <field name="VAR" id="]^02}el_a.}BLFPBoK_k">url</field> <value name="VALUE"> <block type="text_join" id="8jU@k?nm1-!HF2EEhP2B" inline="false"> <mutation items="7"></mutation> <value name="ADD0"> <block type="text" id="(xi=zG)5zzu1VUWR5_yI"> <field name="TEXT">curl -X GET "https://bwt-real-smarthome-backend.azurewebsites.net/api/Perla/6CMR-TMTK/waterconsumption?since=</field> </block> </value> <value name="ADD1"> <block type="variables_get" id="7yOgrRt2~jH-)vR$lsZ,"> <field name="VAR" id="{^#@mm$`LvD2yq~bM==0">since</field> </block> </value> <value name="ADD2"> <block type="text" id="k]elWH-i.E_[)y^YWeUE"> <field name="TEXT">&until=</field> </block> </value> <value name="ADD3"> <block type="variables_get" id="gq[];Hf#m9^Bz:!)`nT4"> <field name="VAR" id="7Bf_zZ,|3JbY[Sr;;[ZR">until</field> </block> </value> <value name="ADD4"> <block type="text" id="!0y$S%JfGYrQB442Yb5f"> <field name="TEXT">" -H "accept: */*" -H "ApiKey: </field> </block> </value> <value name="ADD5"> <block type="variables_get" id="B`H*4,a1d0itb,;m}Ix{"> <field name="VAR" id="5Y(p6$V4JW1Gwlj!afH?">api_key</field> </block> </value> <value name="ADD6"> <block type="text" id="E;jumiRKduuVJ=ww_8}P"> <field name="TEXT">"</field> </block> </value> </block> </value> <next> <block type="exec" id="OMwQ%7n75x_$`{4hBZ!c" inline="true"> <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="true"></mutation> <field name="WITH_STATEMENT">TRUE</field> <field name="LOG"></field> <value name="COMMAND"> <shadow type="text" id="668`Wbm%~rygt2*$8vPg"> <field name="TEXT">curl -X GET "https://bwt-real-smarthome-backend.azurewebsites.net/api/Perla/6CMR-XXXX/waterconsumption?since=2023-07-29&until=2023-07-30" -H "accept: */*" -H "ApiKey: XYZ"</field> </shadow> <block type="variables_get" id="s37WFIreI,*m?KSv?{7h"> <field name="VAR" id="]^02}el_a.}BLFPBoK_k">url</field> </block> </value> <statement name="STATEMENT"> <block type="update" id="bXS}-9l{Q04f^ouV|u/i"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.Haus.BWT_Wasserverbrauch.Wasserverbrauch_gestern</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="get_attr" id="0`%?n_T;a$oH])PA@IhB" inline="false"> <value name="PATH"> <shadow type="text" id="~o2)oki8%/+OmD9nm1ad"> <field name="TEXT">totalWaterConsumption</field> </shadow> </value> <value name="OBJECT"> <block type="variables_get" id="%O.,ehBmQEuK?s!Sz}ks"> <field name="VAR" id="_03`@CsFtd?`/XOE0Nea">result</field> </block> </value> </block> </value> </block> </statement> <next> <block type="timeouts_wait" id="he_VhY{4Bs/h=F!k`FEM"> <field name="DELAY">3</field> <field name="UNIT">sec</field> <next> <block type="variables_set" id=":}K~wx+GVOiO]UlhIa^R"> <field name="VAR" id="P/;-p8kU@!nRF.25:q!O">url2</field> <value name="VALUE"> <block type="text_join" id="2+/;0PmeYpU-=jCb,TZi" inline="false"> <mutation items="3"></mutation> <value name="ADD0"> <block type="text" id="XCo+-{=9mqn(tN~VYPvS"> <field name="TEXT">curl -X GET "https://bwt-real-smarthome-backend.azurewebsites.net/api/Perla/6CMR-XXXX" -H "accept: */*" -H "ApiKey: </field> </block> </value> <value name="ADD1"> <block type="variables_get" id="W/tLT/OQc4|mcZvPv,P~"> <field name="VAR" id="5Y(p6$V4JW1Gwlj!afH?">api_key</field> </block> </value> <value name="ADD2"> <block type="text" id=";]{Di47#I~}@e0mu9^5#"> <field name="TEXT">"</field> </block> </value> </block> </value> <next> <block type="exec" id=",D4;}xBxu:2.@VB80*m}" inline="true"> <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="true"></mutation> <field name="WITH_STATEMENT">TRUE</field> <field name="LOG"></field> <value name="COMMAND"> <shadow type="text" id="668`Wbm%~rygt2*$8vPg"> <field name="TEXT">curl -X GET "https://bwt-real-smarthome-backend.azurewebsites.net/api/Perla/6CMR-XXXX/waterconsumption?since=2023-07-29&until=2023-07-30" -H "accept: */*" -H "ApiKey: XYZ"</field> </shadow> <block type="variables_get" id="`F5}U@#R,11]UOXBeG2%"> <field name="VAR" id="P/;-p8kU@!nRF.25:q!O">url2</field> </block> </value> <statement name="STATEMENT"> <block type="update" id="|dZkQqThvTcrd{,7_E,t"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.Haus.BWT_Wasserverbrauch.Status</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="get_attr" id="{XR{8H2IyR9J/@E3bgs5" inline="false"> <value name="PATH"> <shadow type="text" id="~Grdt4AVMiukVB0/:5$@"> <field name="TEXT">stateTitle</field> </shadow> </value> <value name="OBJECT"> <block type="variables_get" id="J8)w|Uk_Nt)P({Imf{3@"> <field name="VAR" id="_03`@CsFtd?`/XOE0Nea">result</field> </block> </value> </block> </value> <next> <block type="update" id="TSuYBjc-nU-qFlCn;OJH"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.Haus.BWT_Wasserverbrauch.Füllstand_Salz</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="get_attr" id=":d@o$#[iQs0r9kV8klX1" inline="false"> <value name="PATH"> <shadow type="text" id="WAg_YQ3hc0RSmM?)pe:;"> <field name="TEXT">remainingAmountOfResourcePercent</field> </shadow> </value> <value name="OBJECT"> <block type="variables_get" id="jbVuMm=HIS.:$Hsa8ao_"> <field name="VAR" id="_03`@CsFtd?`/XOE0Nea">result</field> </block> </value> </block> </value> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </xml>
Für Optimierungsvorschläge bin ich offen
-
Gibt es hier mitlerweile eine andere Möglichkeit ? Ich blick da nicht mehr durch.
-
@qwertz wenn jemand so ein cloud account hat kann ich es auch in den Adapter einbauen
-
@tombox das wäre klasse - ich habe einen account
-
@gyle schick doch per pn oder mail tombox2020@gmail.com
-
@tombox kann man noch unterstützen ?
-
@basti2022 wie gesagt brauche ein cloud Zugang via email
-
@tombox
Hi tombox !siehe email von jetzt gerade.
Sag Bescheid, wenn du den Account nicht mehr brauchst, damit ich das Passwort wieder ändern kann.Besten Dank Gruß !
-
@qwertz irgendwie scheint die API nict mehr zu gehen, zumindest kommt man seit tagen nicht mehr auf die webseite!?
-
Aktuell geht bei mir der BWT Adapter V0.0.5 mit AppLogIn Daten. Das hat tombox netterweise auch nochmal geprüft.
Die Funktion mit diesem Adapter auch lokal über IP-Adresse Daten auszulesen funktioniert seit geraumer Zeit nicht mehr.
Leider liefert die AppSchnittstelle des Adapters weniger Daten. Z.B. fehlt mit persönlich der Gesamtwasserverbrauch.
Dies geht aktuell wohl nur über ein Script mit OCR.
-
@gyle
Welche Daten gibt den der Server https://bwt-real-smarthome-backend.azurewebsites.net/. ?Kannst du vielleicht mal alle Datenpunkte auflisten, die der Server anbietet ? Sind das mehr Daten als der BWT Adapter über App Login bietet ?
-
@qwertz leider ist die seite ja momentan down - dort gab es eine doku bzgl. der api.
Ich weiß auch nicht, warum bwt das wieder abgeschaltet hat - ich glaube ich schreibe denen mal eine mail. -
Von BWT gibt es eine neue BetaFirmware die wieder eine lokale API öffnet.
Diese API kann ab Firmware V2.02xx am Gerät aktiviert werden unter Einstellungen > Allgemein > Verbindungen > API
Diese Beta-Firmware kann von BWT auf Anfrage übers Internet installiert werden: ProfilineAS@bwt.de
Man bekommt von denen dann auch eine PDF mit der Doku der lokalen API zugesendet.
Vorbildlich von BWT !
Im HomeAssistant ist die neue API schon integriert: https://github.com/dkarv/hacs-bwt-perla
-
@qwertz
Und der fleissige iobroker Entwickler hat die neue lokale API heute schon blitzschnell implementiert im Iobroker Adapter: https://github.com/TA2k/ioBroker.bwt -
@qwertz v0.1.0 vom adapter unterstützt local api
-
@tombox
Der Adapter läuft und liefert aktuelle Daten über die neue API. Vielen Dank nochmal !Mir ist jetzt nur aufgefallen, dass obwohl Daten korrekt aktualisiert werden der Adapter Status "gelb" ist. Vielleicht können andere User mit der neuen API und dem aktualisierten Adapter mal nachschauen, ob die das auch haben.
-
@qwertz Bitte 0.1.1 testen
-
@tombox
Jawoll. Mit 0.1.1 ist alles grün auch nach Reboot usw. Besten Dank für die schnelle Entwicklung. Mal sehen, ob es bei den anderen auch so gut läuft. -
Ich würde jetzt gerne noch die Durchflussmenge angezwigt bekommen. Ausserdem bekomme ich noch diese Fehler im Log.
bwt.0 2024-02-01 16:43:34.077 warn Cannot receive local data wasserverbrauch via: https://192.168.0.46/chart/update bwt.0 2024-02-01 16:43:34.065 warn Cannot receive local data updateDetails2 via: https://192.168.0.46/info/updateDetails2 bwt.0 2024-02-01 16:43:34.041 warn Cannot receive local data actualizedata via: https://192.168.0.46/home/actualizedata
-
@lustig29
Welche Durchflussmenge meinst du denn ?
Bei mir holt der Adapter den Datenpunkt "bwt.0.local.currentData.CurrentFlowrate_l_h". Das ist der aktuelle Fluß an Weich-Wasser-Ausgabe.Ansonsten findest du in der PDF hier alles was die API zur Verfügung stellt:
https://github.com/TA2k/ioBroker.bwt/issues/15Was fehlt dir ?