Re: Auslesen von Werten aus Danfoss API
Verfasst: 28.04.2021, 21:10
Du brauchst eine URL. Keine Ahnung was das Addon macht.
Heimautomation mit ELV HomeMatic und FHZ Funk-Hauszentralen
https://homematic-forum.de/forum/
Code: Alles auswählen
--header="Accept-Encoding: compress, gzip"
Ich bin leider zu doof um diesen Befehl mitzuschicken. Wie genau sollte der Code bei mir aussehen? So bekomme ich nur Fehlermeldungen im Script Editor der CCU.Black hat geschrieben: ↑28.04.2021, 21:39in den header bekommst du bei wget mit z.b.
eigene Ausdrücke eingefügt... so müsste es auch mit deinem API key gehenCode: Alles auswählen
--header="Accept-Encoding: compress, gzip"
Black
Code: Alles auswählen
string url = "https://external.enspire.danfoss.com/devices";
dom.GetObject("CUxD.CUX2801001:1.CMD_SETS").State("wget -q -O - --header="x-api-key=xxxxxxxxxxxxxxxxxxx" '"#url#"'");
dom.GetObject("CUxD.CUX2801001:1.CMD_QUERY_RET").State(1);
string status = dom.GetObject("CUxD.CUX2801001:1.CMD_RETS").State();
WriteLine(status);
Code: Alles auswählen
dom.GetObject("CUxD.CUX2801001:1.CMD_SETS").State("wget -q -O - --header=x-api-key=xxxxxxxxxxxxxxxxxxx '"#url#"'");
Code: Alles auswählen
dom.GetObject("CUxD.CUX2801001:1.CMD_SETS").State("wget -q -O - --header='x-api-key=xxxxxxxxxxxxxxxxxxx' '"#url#"'");
ich würds so schreiben.. bin mir net sicher ob serverseitig da nicht ein " erwartet wirdMichaelN hat geschrieben: ↑29.04.2021, 10:18Du kannst nicht wild " und ' mischen. Das muss schon einen SInn ergeben!
vielleicht muss der Header auch gekapselt werden, also evt:Code: Alles auswählen
dom.GetObject("CUxD.CUX2801001:1.CMD_SETS").State("wget -q -O - --header=x-api-key=xxxxxxxxxxxxxxxxxxx '"#url#"'");
Code: Alles auswählen
dom.GetObject("CUxD.CUX2801001:1.CMD_SETS").State("wget -q -O - --header='x-api-key=xxxxxxxxxxxxxxxxxxx' '"#url#"'");
Code: Alles auswählen
dom.GetObject("CUxD.CUX2801001:1.CMD_SETS").State(^wget -q -O - --header="x-api-key:xxxxxxxxxxxxxxxxxxx" "^#url#^"^);
Hast Du es denn mal auf anderem Weg probiert?
Code: Alles auswählen
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://external.enspire.danfoss.com/devices',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => array(
'x-api-key: <API Key>'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
Code: Alles auswählen
string url = "https://external.enspire.danfoss.com/devices";
string stdErr;
string stdOut;
system.Exec(^wget --timeout=2 -q -O - --header="x-api-key:DerVerwendeteApiKey" "^#url#^"^,&stdOut, &stdErr);
WriteLine (stdOut);