Another option is to use direct temperature threshold directives perhaps coupled with macros and/or logic to give extra intelligence. For example in one installation I had blinds controlled based on room internal temperature as well as light levels. So a temperature threshold in the room was set to trigger a macro. A filtered version of the light level signal for that room (see logic gates) was also checked to get a measure of if it was 'sunny'. Either of these thresholds would then trigger the same macro which itself would check if BOTH thresholds had been exceeded and only if so then the blinds were closed and then the macro disabled itself. The scheduler was used to re-enable the macro every morning. The latter to create the one shot effect. Of course which signals you might use to make decisions is an interesting question in itself and I'm sure might vary with different setups, but maybe this gives some food for thought.
BTW these same blinds were also being automated for other purposes. The property had only east and west facing glazing. So when the property was detected as unoccupied a regime of operating the blinds in turn in order to gain/retain some heating from the sunshine was activated. If the house was occupied a different set of actions was in place. Also unoccupancy dependent - a directive to automatically close the west side blinds later in the afternoon if sunny in any case to mitigate sun bleach. I don't know how well this all works in practice as I can only go by the clients requests/reports but amazing how much fun you can have with just a set of blinds...
