* Add long-term statistics support for homematic
* Refactor cast list to SensorEntityDescription dict
Additional:
- Gas power, gas energy counter, air pressure and voltage uses long-term-statistics
- Gas power, gas energy counter uses device class gas
- Voltage uses device class voltage
- air pressure uses device class pressure
* Refactor expensive loop to separate dictionarys
* Use entity description property + fix humidity sensor
* Log missing sensor descriptions
* Use state class measurement for illumination sensors
* Move sensor entity desc missing warning to setup_platform
* Set type for hmdevice and homematic to fix mypy error
* Use EntityDescription instead of SensorEntityDescription
* Update entity.py
* fix type
* Update climate.py
* fix v2
Co-authored-by: Pascal Vizeli <pascal.vizeli@syshack.ch>
* Add names for the homematic garage door states
* Use None instead of "unknown"
Co-authored-by: Pascal Vizeli <pascal.vizeli@syshack.ch>
Co-authored-by: Pascal Vizeli <pascal.vizeli@syshack.ch>
* Add and use speed constants
* Add and use meter based volume and area constants
* Add and use more mass unit constants
* Add and use concentration unit constants
* Add and use watts per square meter constant
* Use more time constants
* Use more data constants
* Add and use time related constants
* Sort time constants and reuse them in data rate constants
* Fix greeneyemonitor import
* Fix greeneyemonitor import V2
* Fix failing here_travel_time test
* Add TIME_MONTHS and TIME_YEARS
* Use TIME_MINUTES in opentherm_gw and isy994
* Add and use TIME_MILLISECONDS
* Change inconsistent ones
* Add TIME_MICROSECONDS and TIME_WEEKS
* Use constants in apcupsd and travisci
* Fix import error in upnp sensor.py
* Fix isy994 sensor.py using TIME_YEARS
* Fix dyson tests
* Use TIME_SECONDS in more places
* Use TIME_DAYS in google wifi