Core Concepts of Thermostat Functions
Restriction: Smart and EMS accounts only.
Functions provide a simpler method of modification to thermostats whereas direct modification of a thermostat object property is not possible or too complex. One or more functions may be included with a thermostat update request.
Each function will be executed in order on the specified thermostat, or a selection of thermostats.
Functions occur after the thermostat property updates are applied.
The Function object is a special, update-only object sent as part of a thermostat object in an update request. Functions are processed in the order they are listed. Any error in the chain will abort the operation.
Example of Update Thermostat with Functions
The following example demonstrates how to specify one or more functions in a thermostat update request. This request resumes the program on the thermostat, and sends a message which will display on the thermostat.
POST /thermostat Body:
{ "selection": { "selectionType": "registered", "selectionMatch": "" }, "functions": [ { "type": "resumeProgram" }, { "type": "sendMessage", "params": { "text": "I resumed the program" } } ] }
Thermostat Time and Functions
All functions must be specified in thermostat time and not UTC. The time specified in the event will be directly applied to the thermostat(s). For example, specifying 14:00 for the start time will cause the event to start at 14:00 for all thermostats in the selector, regardless what timezone they may be in.