ich betreibe eine PV-Anlage und habe als Datenlogger einen SolarLog 300. Diesen kann man per JSON auslesen.
Ich habe auch eine Dokumentation über die JSON Schnittstelle des Loggers, aber leider bekomme ich es nicht hin, per HM Script den JSON Post abzusetzen.
Wenn ich auf meinem Mac im Terminal folgendes eingeben, werden die benötigten Daten einwandfrei zurückgegeben:
Code: Alles auswählen
curl -X POST -H "Content-Type: application/json" -d '{"801":{"170":null}}' IP_AdrvomSL/getjp
Code: Alles auswählen
var JSONObj = "\"Content-Type: application/json\" -d '{\"801\":{\"170\":null}}' IP_AdrvomSL/getjp";
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("LD_LIBRARY_PATH=/usr/local/addons/cuxd /usr/local/addons/cuxd/curl -X POST -H +#JSONObj#");
dom.GetObject("CUxD.CUX2801001:1.CMD_QUERY_RET").State(1);
string response = dom.GetObject("CUxD.CUX2801001:1.CMD_RETS").State();
Hat da jemand eine Idee? Ich kenne mich mit JSON gar nicht aus und meine Kenntnisse in HM Script sind auch nur sehr begrenzt. Ich habe mir vieles "ergoogelt".
Ich habe auch schon überlegt, dem curl Befehl anstelle der Parameter eine Datei zu übergeben, die dann die nötigen Daten enthält. Aber wie muss die Datei dann aufgebaut sein? Wie gesagt, keinen Schimmer von JSON und wie das funktioniert.
Micky