Homamtic + Kodi über JSON-RPC steuern/abfragen

Homematic-, TCL- und Shell-Script, Toolchain, C, etc.

Moderator: Co-Administratoren

Antworten
Benutzeravatar
Hubobel
Beiträge: 123
Registriert: 10.05.2016, 11:49
Wohnort: Exilplauner in Oggersheim

Homamtic + Kodi über JSON-RPC steuern/abfragen

Beitrag von Hubobel » 24.11.2016, 07:39

Ein freundliches Hallöchen in die Runde!
Ich versuche mich gerade mit dem Thema JSON in Verbindung Homematic und dem KODI Mediacenter.
Ziel ist es, den Player von Kodi zu steuern und diverse Statusmeldungen von Kodi in Systemvariablen abzubilden.
Bis jetzt ist es mir gelungen, mittels diesen Codes:
string curl = "extra/curl -s -k --data-binary '{\"jsonrpc\":\"2.0\", \"method\":\"Player.Stop\",\"params\":{ \"playerid\":1},\"id\":1}' -H 'content-type: application/json;' http://10.0.1.102/jsonrpc?request=";

dom.GetObject("CUxD.CUX2801002:2.CMD_EXEC").State(curl);
die Wiedergabe innerhalb von Kodi zu stoppen.
Was mir nicht gelingt, die Rückmeldung, welche vie JSON übermittelt wird, in einem string zu speichern.
string curl = "extra/curl -s -k --data-binary '{\"jsonrpc\":\"2.0\", \"method\":\"Player.Stop\",\"params\":{ \"playerid\":1},\"id\":1}' -H 'content-type: application/json;' http://10.0.1.102/jsonrpc?request=";

dom.GetObject("CUxD.CUX2801002:2.CMD_EXEC").State(curl);
dom.GetObject("CUxD.CUX2801002:2.CMD_QUERY_RET").State(1);
string response = dom.GetObject("CUxD.CUX2801002:2.CMD_RETS").State();

WriteLine(response);
"Response" bleibt leider leer. Was mache ich falsch?
Gruß, Carsten
--------------------------------------------
RaspberryMatic 2.29.22.20171007 @ RPi3
--------------------------------------------
102 Kanäle in 39 Geräten und 4 CUxD-Geräten
Programme: 59 - Skripte: 67 - Variabelnamen: 30
--------------------------------------------

Benutzeravatar
Hubobel
Beiträge: 123
Registriert: 10.05.2016, 11:49
Wohnort: Exilplauner in Oggersheim

Re: Homamtic + Kodi über JSON-RPC steuern/abfragen

Beitrag von Hubobel » 24.11.2016, 12:48

Habs selbst hinbekommen...sollte jemand vor ähnlichen Problemen stehen, möge er den Code wie folgt abändern:

[quote]
[/string curl = "extra/curl --data-binary '{\"jsonrpc\":\"2.0\", \"method\":\"Player.Stop\",\"params\":{ \"playerid\":1},\"id\":1}' -H 'content-type: application/json;' http://10.0.1.102/jsonrpc?request=";

dom.GetObject("CUxD.CUX2801002:1.CMD_SETS").State(curl);
dom.GetObject("CUxD.CUX2801002:1.CMD_QUERY_RET").State(1);
string response = dom.GetObject("CUxD.CUX2801002:1.CMD_RETS").State();
quote]
Gruß, Carsten
--------------------------------------------
RaspberryMatic 2.29.22.20171007 @ RPi3
--------------------------------------------
102 Kanäle in 39 Geräten und 4 CUxD-Geräten
Programme: 59 - Skripte: 67 - Variabelnamen: 30
--------------------------------------------

Antworten

Zurück zu „Softwareentwicklung für die HomeMatic CCU“