Skip to content
SteMaker edited this page Dec 11, 2022 · 5 revisions

ioBroker.hdg-bavaria wiki

Zugriff auf aktuelle Werte der Heizungsanlage

Es existiert meines Wissens nach keine offizielle Dokumentation von HDG, die beschreibt, wie man Datenpunkte liest oder schreibt. Folgendes wurde durch Analyse der webpage der HDG Control evaluiert:

Werte lesen

Dazu muss ein http post request an die Adresse /ApiManager.php?action=dataRefresh an die IP Adresse der HDG Control geschickt werden. Der header ist auf Content-Type": "application/x-www-form-urlencoded; charset=UTF-8 zu setzen. Die payload des requests ist ein key/value pair mit einer durch '-' getrennten Liste an Datenpunkt IDs. Hier ein Beispiel zur Verdeutlichung: Read request

Als Antwort erhält man (nach erstaunlich langer Zeit, ich sehe da teilweise 5 Sekunden) eine Antwort mit einem JSON Objekt. Es besteht aus einem array von Objekten mit den Elementen background, text, hidden und id. Unter id findet man die ID des Datenpunkts; unter text den aktuellen Wert. Die genaue Bedeutung von background und hidden ist unklar. Hier wieder ein Beispiel zur Verdeutlichung:

Read response

Werte schreiben

Bitte mit Vorsicht geniessen, das habe ich nur kurz probiert, noch nicht aktiv verwendet! Dazu muss ein http post request an die Adresse /ApiManager.php?action=set_value_changed&i=<x>&v=<y> an die IP Adresse der HDG Control geschickt werden. <x> ist dabei die ID des Datenpunktes, <v> ist der zu schreibende Wert.

Datenpunkt IDs herausfinden

Das kann man mit Hilfe der Webentwickler Tools des browsers auf den webpage der HDG Control machen. Dazu am einfachsten das pointing tool (oder wie das auch heißt) auswählen, den Datenpunkt mit der Maus ansteuern und anklicken. Die Screenshots wurden mit Firefox gemacht. Im zweiten Bild links oben sieht man das pointing tool und die data_id des Datenpunktes. Im ersten Bild wie man mit der Maus auf den Wert, in dem Fall mittlerer Pufferfühler, klickt.

DataID1

DataID2

Um also den mittleren Temperaturfühler des Puffers zu lesen oder zu schreiben wird die ID 24001 verwendet.

Clone this wiki locally