Ubidot IoT Plattform - POST Request kommt nicht an

Anbindung von FS20-Komponenten, ELV-Wetterstationen, EnOcean und DMX an HomeMatic

Moderator: Co-Administratoren

Antworten
chj_michel
Beiträge: 2
Registriert: 15.08.2016, 09:02

Ubidot IoT Plattform - POST Request kommt nicht an

Beitrag von chj_michel » 15.08.2016, 09:14

Hallo zusammen,
erstmal Glückwunsch an dieses hilfreiche Forum. Tolle Artikel, die mir in der Vergangenheit sehr weitergeholfen haben.
Aktuell komme ich nicht weiter und eröffne daher ein Thema:

Was ich möchte:
Werte von der CCU2 sollen auf einer IoT Plattform gesammelt werden. Ausgewählt habe ich Ubidot.com
Dazu wird ein JSON an die ubidot API per POST Request geschickt. Das funktioniert mit dem HTTP-Requester von Mozilla recht gut.
Die gleichen Parameter habe ich in einem HM Script eingegeben. Dort funktioniert es aber leider nicht. Syntax ist korrekt.
Was mache ich falsch?

Anbei das Coding:

Code: Alles auswählen

string stdout;
string stderr;

string JSONObj = "\"Content-Type: application/json\" -d '{\"kwh\":150}' https://things.ubidots.com/api/v1.6/devices/homematic?token=b5VT67M1hNPs0mTcIZBXGy7CeX2oKm";

dom.GetObject("CUxD.CUX2801001:1.CMD_SETS").State("LD_LIBRARY_PATH=/usr/local/addons/cuxd /usr/local/addons/cuxd/curl -X POST -H +#JSONObj#");
Danke schon mal an Euch!
Zuletzt geändert von alchy am 15.08.2016, 18:20, insgesamt 1-mal geändert.
Grund: Code bitte in Codetags posten

chj_michel
Beiträge: 2
Registriert: 15.08.2016, 09:02

Re: Ubidot IoT Plattform - POST Request kommt nicht an

Beitrag von chj_michel » 22.08.2016, 07:35

Ich habe dann doch die Lösung durch fleissiges Coden gefunden.
Es lag wohl an einem Leerzeichen zwischen # und der Variable JSONOBJ
Die Syntax ist schon etwas fehleranfällig und Meldungen nicht wirklich vorhanden.

Hier das korrekte Coding falls jemand eine IoT Cloud Lösung realisieren möchte.

Code: Alles auswählen

var JSONObj = "\"Content-Type: application/json\" -d '{\"kwh\":###EIGENERWERT-BZW-VARIABLE-EINSETZEN###}' http://things.ubidots.com/api/v1.6/devices/homematic?token=###HIER-DEIN-"DAUER"-TOKEN--VON-UBIDOT-EINSETZEN###";

dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("LD_LIBRARY_PATH=/usr/local/addons/cuxd /usr/local/addons/cuxd/curl -X POST -H" #JSONObj);

Antworten

Zurück zu „CUxD“