format percentage

This commit is contained in:
Antonio J. Delgado 2025-07-26 12:51:51 +03:00
parent 9b619ce8fc
commit b790b9f055

View file

@ -29,15 +29,18 @@ else:
WATCH_STATES = [ WATCH_STATES = [
{ {
"function": "getWatchBattery", "function": "getWatchBattery",
"entity_name": "battery_level" "entity_name": "battery_level",
"type": "percentage"
}, },
{ {
"function": "getWatchIsCharging", "function": "getWatchIsCharging",
"entity_name": "battery_charging" "entity_name": "battery_charging",
"type": "boolean"
}, },
{ {
"function": "getWatchIsInSafeZone", "function": "getWatchIsInSafeZone",
"entity_name": "in_safe_zone" "entity_name": "in_safe_zone",
"type": "boolean"
}, },
{ {
"function": "getWatchLastLocation", "function": "getWatchLastLocation",
@ -49,7 +52,8 @@ WATCH_STATES = [
}, },
{ {
"function": "getWatchSafeZoneLabel", "function": "getWatchSafeZoneLabel",
"entity_name": "safe_zone_label" "entity_name": "safe_zone_label",
"type": "string"
}, },
# { # {
# "function": "getWatchState", # "function": "getWatchState",
@ -57,22 +61,26 @@ WATCH_STATES = [
# }, # },
{ {
"function": "getWatchUnReadChatMsgCount", "function": "getWatchUnReadChatMsgCount",
"entity_name": "unread_chat_count" "entity_name": "unread_chat_count",
"type": "integer"
}, },
{ {
"function": "getWatchUserCurrentStep", "function": "getWatchUserCurrentStep",
"entity_name": "current_step" "entity_name": "current_step",
"type": "integer"
}, },
{ {
"function": "getWatchUserSteps", "function": "getWatchUserSteps",
"params": { "params": {
"date": time.time() "date": time.time()
}, },
"entity_name": "user_steps" "entity_name": "user_steps",
"type": "integer"
}, },
{ {
"function": "getWatchUserTotalStep", "function": "getWatchUserTotalStep",
"entity_name": "user_total_step" "entity_name": "user_total_step",
"type": "integer"
} }
] ]
class XploraHa: class XploraHa:
@ -133,6 +141,9 @@ class XploraHa:
state = function(watch['ward']['id'], **watch_state['params']) state = function(watch['ward']['id'], **watch_state['params'])
else: else:
state = function(watch['ward']['id']) state = function(watch['ward']['id'])
if 'type' in watch_state:
if watch_state['type'] == 'percentage':
state = f"{state}%"
self._publish_ha_state( self._publish_ha_state(
f"{base_sensor_entity}{watch_state['entity_name']}", f"{base_sensor_entity}{watch_state['entity_name']}",
{ {