XML-API statechange CUxD
Moderator: Co-Administratoren
XML-API statechange CUxD
Hallo Gemeinde,
hier wieder mal eine Frage Mir fehlt evtl. eine bestimmte Info.
Ich habe die beiden folgenden Befehle genutzt. Der erste hat schon immer funktioniert
curl "http://IP/config/xmlapi/statechange.cgi ... ew_value=1" -> Steuert einen Kanal an einem HMIPW-DSR8 OK
dieser hier tut leider nichts (Habe einen ds18b20 an einem raspberry und möchte nun ein in CUxD erstellten Tempdevice einen Wert übergeben.
curl "http://IP/config/xmlapi/statechange.cgi ... alue=28.54" -> soll die Temperatur setzen. Leider erfolglos auch ohne Fehlermeldung. Das ist ein CUxD Gerät (TemperaturSensor Innen)
Kann sich jemand vor stellen, warum es nicht geht?
Besten Dank
hier wieder mal eine Frage Mir fehlt evtl. eine bestimmte Info.
Ich habe die beiden folgenden Befehle genutzt. Der erste hat schon immer funktioniert
curl "http://IP/config/xmlapi/statechange.cgi ... ew_value=1" -> Steuert einen Kanal an einem HMIPW-DSR8 OK
dieser hier tut leider nichts (Habe einen ds18b20 an einem raspberry und möchte nun ein in CUxD erstellten Tempdevice einen Wert übergeben.
curl "http://IP/config/xmlapi/statechange.cgi ... alue=28.54" -> soll die Temperatur setzen. Leider erfolglos auch ohne Fehlermeldung. Das ist ein CUxD Gerät (TemperaturSensor Innen)
Kann sich jemand vor stellen, warum es nicht geht?
Besten Dank
- Baxxy
- Beiträge: 10779
- Registriert: 18.12.2018, 15:45
- System: Alternative CCU (auf Basis OCCU)
- Hat sich bedankt: 604 Mal
- Danksagung erhalten: 2205 Mal
Re: XML-API statechange CUxD
Ein bisschen.
Bitte mal den genauen CUxD Gerätetyp und die Funktion nennen (Bspw. (90)-Thermostat) und Screenshot von den CUxD-Geräteeinstellungen zeigen.
Grüße, Baxxy
Re: XML-API statechange CUxD
Hi Baxxy,
hier die XML:
--------------------------------------
<device name="TempSensorRLKeller" ise_id="8344" unreach="false">
<channel name="TempSensorRLKeller:0" ise_id="8345" index="0" visible="" operate="">
<datapoint name="CUxD.CUX3200100:0.UNREACH" type="UNREACH" ise_id="8347" value="false" valuetype="2" valueunit="" timestamp="1635426329" operations="5"/>
<datapoint name="CUxD.CUX3200100:0.RSSI_PEER" type="RSSI_PEER" ise_id="8346" value="0" valuetype="8" valueunit="dBm" timestamp="1635426329" operations="5"/>
</channel>
<channel name="TempSensorRLKeller:1" ise_id="8351" index="1" visible="true" operate="true">
<datapoint name="CUxD.CUX3200100:1.TEMPERATURE" type="TEMPERATURE" ise_id="8354" value="0.000000" valuetype="4" valueunit="°C" timestamp="1635426329" operations="1"/>
<datapoint name="CUxD.CUX3200100:1.MISS_24H" type="MISS_24H" ise_id="8353" value="0" valuetype="16" valueunit="" timestamp="1635426329" operations="5"/>
<datapoint name="CUxD.CUX3200100:1.TEMP_MIN_24H" type="TEMP_MIN_24H" ise_id="8356" value="0.000000" valuetype="4" valueunit="°C" timestamp="1635426329" operations="5"/>
<datapoint name="CUxD.CUX3200100:1.TEMP_MAX_24H" type="TEMP_MAX_24H" ise_id="8355" value="0.000000" valuetype="4" valueunit="°C" timestamp="1635426329" operations="5"/>
</channel>
---------------------------------------------------------------------------------
Habe dieses Thermostat erstellt: HM-WS550STH-I
Was Du mit Funktion 90 Thermostat meinst weiß leider nicht
Und welche CUxD Geräteeinstellungen. Ich kann bei diesem Temp Sensor nicht mehr die genauen einstellungen sehen.
Gibt es vllt. einfach einen bestimmten Sensor den ich nutzen sollte?
Vielen Dank
Grüße
Jens
hier die XML:
--------------------------------------
<device name="TempSensorRLKeller" ise_id="8344" unreach="false">
<channel name="TempSensorRLKeller:0" ise_id="8345" index="0" visible="" operate="">
<datapoint name="CUxD.CUX3200100:0.UNREACH" type="UNREACH" ise_id="8347" value="false" valuetype="2" valueunit="" timestamp="1635426329" operations="5"/>
<datapoint name="CUxD.CUX3200100:0.RSSI_PEER" type="RSSI_PEER" ise_id="8346" value="0" valuetype="8" valueunit="dBm" timestamp="1635426329" operations="5"/>
</channel>
<channel name="TempSensorRLKeller:1" ise_id="8351" index="1" visible="true" operate="true">
<datapoint name="CUxD.CUX3200100:1.TEMPERATURE" type="TEMPERATURE" ise_id="8354" value="0.000000" valuetype="4" valueunit="°C" timestamp="1635426329" operations="1"/>
<datapoint name="CUxD.CUX3200100:1.MISS_24H" type="MISS_24H" ise_id="8353" value="0" valuetype="16" valueunit="" timestamp="1635426329" operations="5"/>
<datapoint name="CUxD.CUX3200100:1.TEMP_MIN_24H" type="TEMP_MIN_24H" ise_id="8356" value="0.000000" valuetype="4" valueunit="°C" timestamp="1635426329" operations="5"/>
<datapoint name="CUxD.CUX3200100:1.TEMP_MAX_24H" type="TEMP_MAX_24H" ise_id="8355" value="0.000000" valuetype="4" valueunit="°C" timestamp="1635426329" operations="5"/>
</channel>
---------------------------------------------------------------------------------
Habe dieses Thermostat erstellt: HM-WS550STH-I
Was Du mit Funktion 90 Thermostat meinst weiß leider nicht
Und welche CUxD Geräteeinstellungen. Ich kann bei diesem Temp Sensor nicht mehr die genauen einstellungen sehen.
Gibt es vllt. einfach einen bestimmten Sensor den ich nutzen sollte?
Vielen Dank
Grüße
Jens
Re: XML-API statechange CUxD
Ok, Typ 90 gefunden. Ich schaue mal weiter. Vielleicht finde ich die Lösung
- Baxxy
- Beiträge: 10779
- Registriert: 18.12.2018, 15:45
- System: Alternative CCU (auf Basis OCCU)
- Hat sich bedankt: 604 Mal
- Danksagung erhalten: 2205 Mal
Re: XML-API statechange CUxD
Ok, anhand derer sehe ich das du ein "Typ (30) Thermo" angelegt hast. Das lässt sich laut Doku nicht von extern (Script) mit Daten füttern, darum funktioniert der Befehl auch nicht.
Idealerweise nimmt man für solche Zwecke das "Typ (90) Funktion Thermostat" und entfernt in den Geräteeinstellungen den Haken bei "WEATHER|USE_HMDATAPT"
Dann klappt das setzen der Ist-Temperatur auch mit den bekannten Befehlen.
Für die XML-Api brauchst du dann die ID vom Datenpunkt "SET_TEMPERATURE" in Kanal:1 des CUxD-Gerätes.
Beispiel:
Code: Alles auswählen
http://192.168.1.66/addons/xmlapi/statechange.cgi?ise_id=8592&new_value=21.5
Re: XML-API statechange CUxD
Danke Baxxy,
so ganz genau habe ich es inzwischen getan.
Leider geht es nicht!
so ganz genau habe ich es inzwischen getan.
Leider geht es nicht!
Re: XML-API statechange CUxD
Ich glaube ich habe gefunden, wo das Problem liegt.
Es gibt in meinem über die CUxD erstellten Thermostat kein Datenpunkt "SET_TEMPERATURE".
Die Frage ist nun, welches über CUxD generierte Thermostat oder Sensor erstellt beim erstellen diesen Datenpunkt.
Es gibt in meinem über die CUxD erstellten Thermostat kein Datenpunkt "SET_TEMPERATURE".
Die Frage ist nun, welches über CUxD generierte Thermostat oder Sensor erstellt beim erstellen diesen Datenpunkt.
- Baxxy
- Beiträge: 10779
- Registriert: 18.12.2018, 15:45
- System: Alternative CCU (auf Basis OCCU)
- Hat sich bedankt: 604 Mal
- Danksagung erhalten: 2205 Mal
Re: XML-API statechange CUxD
Unwahrscheinlich.
Viel wahrscheinlicher ist, das du ihn über die xml-api nicht siehst, so zumindest bei mir heute morgen beim Kurztest.
Es gilt also die ID des Datenpunktes auf anderem Wege zu ermitteln. Da kann ich dir aber erst am Nachmittag weiterhelfen.
Grüße, Baxxy
- Baxxy
- Beiträge: 10779
- Registriert: 18.12.2018, 15:45
- System: Alternative CCU (auf Basis OCCU)
- Hat sich bedankt: 604 Mal
- Danksagung erhalten: 2205 Mal
Re: XML-API statechange CUxD
...lösen wir nun mal.
Script testen, Seriennummer deines CUxD "Typ (90) Funktion Thermostat" korrekt eintragen!
Die angezeigte ID kannst du dann im XML-Api Aufruf eintragen.
Code: Alles auswählen
string cux_sn = "CUX9002001";
WriteLine("ID: "#dom.GetObject("CUxD."# cux_sn #":1.SET_TEMPERATURE").ID());
Code: Alles auswählen
ID: 8592