so funktioniert es bei mir:
JSON-RPC Schnittstelle (über cURL)
Aufruf via Kommandozeile
Variablen verändern
Beim Benutzername mail%40provider.de oder Passwort darf @ nicht geschrieben werden. => Als Ersatz: %40
Benutzername (Mail), Passwort und IP ohne <,> eintragen!
//SetValue Integer mit den Parametern ID = 12345 und Wert = 42
curl -i -X POST -H "Content-Type: application/json" -d "{\"jsonrpc\": \"2.0\", \"id\": \"0\", \"method\": \"SetValue\", \"params\": [12345, 42]}" http://<mail%40provider.de>:<Passwort>@<IP>:3777/api/
//SetValue Float mit den Parametern ID = 12346 und Wert = 1.23
curl -i -X POST -H "Content-Type: application/json" -d "{\"jsonrpc\": \"2.0\", \"id\": \"0\", \"method\": \"SetValue\", \"params\": [12346, 1.23]}" http://<mail%40provider.de>:<Passwort>@<IP>:3777/api/
//SetValue Boolean mit den Parametern ID = 12347 und Wert = false
curl -i -X POST -H "Content-Type: application/json" -d "{\"jsonrpc\": \"2.0\", \"id\": \"0\", \"method\": \"SetValue\", \"params\": [12347, false]}" http://<mail%40provider.de>:<Passwort>@<IP>:3777/api/
//SetValue String mit den Parametern ID = 12348 und Wert = "mein String"
curl -i -X POST -H "Content-Type: application/json" -d "{\"jsonrpc\": \"2.0\", \"id\": \"0\", \"method\": \"SetValue\", \"params\": [12348, \"mein String\"]}" http://<mail%40provider.de>:<Passwort>@<IP>:3777/api/
//Rückgabewert bei Erfolg
{"jsonrpc":"2.0","id":"0","result":true}
Variablen auslesen
//GetValue mit den Parametern ID = 12345
curl -i -X POST -H "Content-Type: application/json" -d "{\"jsonrpc\": \"2.0\", \"id\": \"0\", \"method\": \"GetValue\", \"params\": [12345]}" http://<mail%40provider.de>:<Passwort>@<IP>:3777/api/
//Rückgabewert
{"jsonrpc":"2.0","id":"0","result":42}
in test.sh Datei, diese ausführbar machen und im doorpi mit on_execute aufrufen
sudo chmod +x /usr/local/etc/DoorPi/conf/ips.sh
EVENT_OnKeyPressed_onboardpins.11
10 = call:**610#620
20 = os_execute:/usr/local/etc/DoorPi/conf/ips.sh