Here's what I've done to make a dumb desk fan smart.
I created a virtual thermostat to utilise the temp sensor in a Hue movement sensor. That feeds in to an instance of the built-in Thermostat Controller & I've got tiles on the dashboard to set the temp at which the fan comes on as well as an "override" button to switch it off if we're going out.
The fan is connected to a run of the mill outlet controller and the rule switches it on/off with a Predicate to stop it switching on in the middle of the night.