mattdavis90 / node-red-contrib-tado-client

Tado web API client node for Node Red
MIT License
22 stars 16 forks source link

Feature request: implement api call "boilerMaxOutputTemperature" to set Max Flow Temperature setting #68

Open driagi opened 3 weeks ago

driagi commented 3 weeks ago

It would be nice to implement the Max Flow Temperature setting (new feature of Tado).

mattdavis90 commented 2 weeks ago

Hi, I'm not familiar with that feature. Is that a setting on a boiler, TRV, Aircon? If you can find it in the web app and send a screenshot or even better catch the API call in Developer Console then I'll look to integrate it. Thanks

driagi commented 2 weeks ago

The calls I found are these: https://my.tado.com/api/v2/homeByBridge/IBxxxxxxxxxx/boilerMaxOutputTemperature?authKey=xxxx

https://my.tado.com/api/v2/homeByBridge/IBxxxxxxxxxx/boilerWiringInstallationState?authKey=xxxx

I couldn't find the temperature set (if it exists), Now it is possible to set from app, then an endpoint will exist.

mattdavis90 commented 2 weeks ago

Thanks for sending these through - neither seems to work on my boiler - I guess it is too old. Do you have an OpenTherm boiler or something similar? If you know can see any sample requests and responses that would be super helpful

driagi commented 2 weeks ago

I know how to get the access token. How do I obtain the Authkey? I'm not an expert.

mattdavis90 commented 2 weeks ago

I'm not sure to be honest - none of the other Tado APIs require one

I normally open up the https://my.tado.com Web UI and find the feature I'm trying to implement on there. Then I open Chrome's developer console using F12 and look at the requests and responses being made, then from there try to replicate the API calls in the client.

driagi commented 2 weeks ago

Unfortunately, the functionality has not yet been implemented via the Web

mattdavis90 commented 2 weeks ago

I see. I have had very limited success decompiling and reverse engineering the app, sadly. I did get some of the EnergyIQ calls that way before they appeared in the WebApp but it was quite painful.

driagi commented 2 weeks ago

I understand. The authkey is the 4-digit bridge number (AuthCode). The response is: {"boilerMaxOutputTemperatureInCelsius":60.0} for boilerMaxOutputTemperature

{"state":"INSTALLATION_COMPLETED","deviceWiredToBoiler":{"type":"RU02","serialNo":"RUxxxxxxxx","thermInterfaceType":"OPENTHERM","connected":true,"lastRequestTimestamp":"2024-10-11T09:48:54.944Z"},"bridgeConnected":true,"hotWaterZonePresent":true,"boiler":{"outputTemperature":{"celsius":25.01,"timestamp":"2024-10-11T09:52:18.798Z"}}} for boilerWiringInstallationState

driagi commented 2 weeks ago

No problem. If too complex, forget it. It would be nice to implement the Set, now added as automation in Energy Cockpit

driagi commented 2 weeks ago

I'm not sure to be honest - none of the other Tado APIs require one

I normally open up the https://my.tado.com Web UI and find the feature I'm trying to implement on there. Then I open Chrome's developer console using F12 and look at the requests and responses being made, then from there try to replicate the API calls in the client.

Maybe it is possible to do the analysis from the page: https://model-selector.tado.com/ the installers page

mattdavis90 commented 2 weeks ago

Ah, I just realised that my bridge starts GWxxx and my extension BUxxxx which probably explains why I don't see the options, and can't use the model-selector site you link.... I can have a go implementing the calls based on what you've managed to find and see where that gets us :)