Hallo erstmal 
ich soll eine Daikin Klimasteuerung über einen HTTP-Request ansteuern. Leider bin ich auf dem Gebiet ein totaler Anfänger, dementsprechend komm ich seit Tagen nicht wirklich voran. Angaben wie "application/octet-stream" sind vorgegeben.
Zum Steuern der Anlage muss ich einen Hexadezimalwert, denn ich über ein JavaScript ermittel, versenden. Dieser Hexwert ist 112 Zeichen --> 56 byte groß. Allerdings finde ich keine Möglichkeit die Daten direkt als Byte zu versenden, sodass sie nicht erneut codiert werden. Die Daten werden bisher immer als Ascii-Zeichen versendet, da ich sie ja auch als "string" deklariere, und dementsprechend erneut in Hexwerte codiert. Ist soweit ja auch völlig logisch. Die Frage ist nur, wie ich diese Werte denn direkt als Hexwerte übertragen kann?
Ich hab schon so einiges ausprobiert: "0x" vor jedem Byte, % vor jedem Byte etc. Nichts hat mir wirklich geholfen.
Hier mal die stark vereinfachte Version des Skriptes:
Kann mir einer von euch vielleicht weiterhelfen?
Danke,
Thomas
PS: Sorry ich seh gerade ich bin im falschen Unterforum
! Ich müsste eigentlich hierhin: Für Verirrte - Fragen zu JavaScript! Vielleicht wäre ein Mod so nett und verschiebt diesen Thread.
ich soll eine Daikin Klimasteuerung über einen HTTP-Request ansteuern. Leider bin ich auf dem Gebiet ein totaler Anfänger, dementsprechend komm ich seit Tagen nicht wirklich voran. Angaben wie "application/octet-stream" sind vorgegeben.
Zum Steuern der Anlage muss ich einen Hexadezimalwert, denn ich über ein JavaScript ermittel, versenden. Dieser Hexwert ist 112 Zeichen --> 56 byte groß. Allerdings finde ich keine Möglichkeit die Daten direkt als Byte zu versenden, sodass sie nicht erneut codiert werden. Die Daten werden bisher immer als Ascii-Zeichen versendet, da ich sie ja auch als "string" deklariere, und dementsprechend erneut in Hexwerte codiert. Ist soweit ja auch völlig logisch. Die Frage ist nur, wie ich diese Werte denn direkt als Hexwerte übertragen kann?
Ich hab schon so einiges ausprobiert: "0x" vor jedem Byte, % vor jedem Byte etc. Nichts hat mir wirklich geholfen.
Hier mal die stark vereinfachte Version des Skriptes:
Java:
var value = "3800000010270000010000000000000000000000000000000000000000000000040000000100000000000000000000000000000000000000";
url = "http://172.16.4.220:80/cmd/";
var WinHttpReq = new ActiveXObject("WinHttp.WinHttpRequest.5.1");
WinHttpReq.open("POST", url, false);
WinHttpReq.setRequestHeader("Content-length", "56");
WinHttpReq.setRequestHeader("Content-type", "application/octet-stream");
WinHttpReq.send(value);
Kann mir einer von euch vielleicht weiterhelfen?
Danke,
Thomas
PS: Sorry ich seh gerade ich bin im falschen Unterforum
Zuletzt bearbeitet von einem Moderator: