Upload status data on change or timeout

We upload status metadata whenever the heater goes on or off, and we
also upload it periodically when max interval for upload is exceeded.