Hallo zusammen
Ich versuche mit meinem RasPi das Licht von meinem free@home über die REST API anzusteuern. Die GET requests funktionieren super, ich kann also die Stati auslesen. Mit PUT will es aber nicht klappen.
Ich habe folgenden Befehl:
res2 = requests.put('http://111.111.1.11/fhapi/v1/api/rest/datapoint/00000000-0000-0000-0000-000000000000/ABB2B0333851.ch0002.idp0000',auth=('XXXXXX','XXXXXX'),data={'pairingID':1,'values':['0']})
(IP Adresse und auth Daten stimmen natürlich nicht ;))
Dabei kriege ich den Output:
<Response [200]>
{'00000000-0000-0000-0000-000000000000': {'result': 'OK'}}
Das wäre ja wunderbar, aber das Licht bleibt an, obwohl ich den value auf 0 gesetzt habe!!!!
Sieht jemand meinen Fehler?
Habe den Fehler nun gefunden.
Die korrekte Sytax ist:
import requests
import json
from signal import pause
input = '1'
headers = {
'accept':'application/json',
'Authorization':'Basic XXXXXXXXXXXXXXXXXXXXXX',
'Content-Type':'text/plain'
}
res2 = requests.put('http://111.111.1.11/fhapi/v1/api/rest/datapoint/00000000-0000-0000-0000-000000000000/ABB2B0333851.ch0002.idp0000',headers=headers,data=input)
print(res2)
print(res2.json())
Damir kann ich nun jeder Aktorposition meines Hauses mit dem RasPi ansteuern.
Nun will ich die Schnittstelle zu meiner Wärmepumpe testen. Ziel ist es, auf dem 7 Zoll Panel ein virtueller Raumthermostaten zu haben mit welchem ich den Primärwärmekreis und die Lüftungsstufe einstellen kann.
Geiles Ding!!!