Der Befehl mit Curl zur Einstellung der Temperatur auf 20 Grad des TRV lautet in Windows-Batch:
curl -X POST -d "{\"id\":1,\"method\":\"BluTrv.Call\",\"params\":{\"id\":200,\"method\":\"TRV.SetTarget\",\"params\":{\"id\":0,\"target_C\":20.0}}}" http://<IP-TRV-Gateway>/rpc
In einem script ist es etwas einfacher, weil die \ (als Escape für die ") wegfallen (die müssen in der Batch sein, weil der Befehl in ".." stehen muss, statt bequem in '...' wie im linux script):
curl -X POST -d '{"id":1,"method":"BluTrv.Call","params":{"id":200,"method":"TRV.SetTarget","params":{"id":0,"target_C":20.0}}}' http://<IP-TRV-Gateway>/rpc
Hinweise für beide Varienten: ggf. muss die id 200 angepasst werden. target_C kann zwischen 4.0 und - ich glaube - 30.0 eingestellt werden (ich selbst benutze 4.0 und zb.: 28.0 nach der Fensterstatus-Erkennung, die Shelly-unabhängig abläuft)
Die Abfrage der Einstellung sollte erst etwas später erfolgen (wg der motorischen Verstellung des TRV):
batch :curl -X POST -d "{\"id\":1,\"method\":\"BluTrv.GetRemoteStatus\",\"params\":{\"id\":200}}" http://<IP-TRV-Gateway>/rpc
script:curl -X POST -d '{"id":1,"method":"BluTrv.GetRemoteStatus","params":{"id":200}}' http://<IP-TRV-Gateway>/rpc
Windows hat - glaube ich - inzwischen curl vorinstalliert, unter den meisten Distros muss man curl erst installieren.
Bei der Status-Abfrage wird jede Menge zurückgeliefert, während der eigentliche Einstell-Request bei Erfolg nur kurz mit einem "result":null *) quittiert wird.
*) Die Shelly-Entwickler wissen immer wieder zu überraschen: Wobei mir nicht klar ist, ob das 'null' ein Irrtum in der Implementierung ist, oder Absicht, oder etwas Vergessenes, oder die ernsthafte Antwort (im Sinne von: es ist nix falsch an deinem Request, lieber User)