Add more info to states

This commit is contained in:
Antonio J. Delgado 2025-07-26 13:12:07 +03:00
parent f7c50430be
commit 1e8361426a

View file

@ -130,25 +130,29 @@ class XploraHa:
self._publish_ha_state(
f"{base_sensor_entity}last_update",
{
"state": time.time()
"state": time.time(),
'device_class': 'timestamp'
}
)
for watch_state in WATCH_STATES:
function = getattr(self.xplora, watch_state['function'])
state = {
"state": ""
}
if 'params' in watch_state:
if 'date' in watch_state['params']:
watch_state['params']['date'] = time.time()
state = function(watch['ward']['id'], **watch_state['params'])
state['state'] = function(watch['ward']['id'], **watch_state['params'])
else:
state = function(watch['ward']['id'])
state['state'] = function(watch['ward']['id'])
if 'type' in watch_state:
if watch_state['type'] == 'percentage':
state = f"{state}%"
state['unit_of_measurementstate'] = "%"
elif watch_state['type'] == 'date':
state['device_class'] = 'timestamp'
self._publish_ha_state(
f"{base_sensor_entity}{watch_state['entity_name']}",
{
"state": state,
}
state
)
def _publish_ha_state(self, entity_id, state):