Added hydration sensors

This commit is contained in:
Ron Klinkien
2025-04-18 18:29:43 +00:00
parent ee5df999a0
commit 4163be285f
3 changed files with 52 additions and 2 deletions

View File

@@ -242,6 +242,15 @@ class GarminConnectDataUpdateCoordinator(DataUpdateCoordinator):
else:
_LOGGER.debug("No fitness age data found")
# Hyrdation data
hydration_data = await self.hass.async_add_executor_job(
self.api.get_hydration_data, today.isoformat()
)
if hydration_data:
_LOGGER.debug("Hydration data fetched: %s", hydration_data)
else:
_LOGGER.debug("No hydration data found")
except GarminConnectAuthenticationError as err:
_LOGGER.error(
"Authentication error occurred during update: %s", err.response.text)
@@ -343,6 +352,7 @@ class GarminConnectDataUpdateCoordinator(DataUpdateCoordinator):
"sleepTimeSeconds": sleep_time_seconds,
"hrvStatus": hrv_status,
**fitnessage_data,
**hydration_data,
}

View File

@@ -4,7 +4,7 @@ from datetime import timedelta
from typing import NamedTuple
from homeassistant.components.sensor import SensorDeviceClass, SensorStateClass
from homeassistant.const import PERCENTAGE, UnitOfLength, UnitOfMass, UnitOfTime
from homeassistant.const import PERCENTAGE, UnitOfLength, UnitOfMass, UnitOfTime, UnitOfVolume
DOMAIN = "garmin_connect"
DATA_COORDINATOR = "coordinator"
@@ -689,6 +689,46 @@ GARMIN_ENTITY_LIST = {
SensorStateClass.MEASUREMENT,
True,
],
"valueInML": [
"Hydration",
UnitOfVolume.MILLILITERS,
"mdi:water",
None,
SensorStateClass.MEASUREMENT,
True,
],
"goalInML": [
"Hydration Goal",
UnitOfVolume.MILLILITERS,
"mdi:water",
None,
SensorStateClass.MEASUREMENT,
True,
],
"dailyAverageInML": [
"Hydration Daily Average",
UnitOfVolume.MILLILITERS,
"mdi:water",
None,
SensorStateClass.MEASUREMENT,
True,
],
"sweatLossInML": [
"Hydration Sweat Loss",
UnitOfVolume.MILLILITERS,
"mdi:water",
None,
SensorStateClass.MEASUREMENT,
True,
],
"activityIntakeInML": [
"Hydration Activity Intake",
UnitOfVolume.MILLILITERS,
"mdi:water",
None,
SensorStateClass.MEASUREMENT,
True,
],
}
GEAR_ICONS = {

View File

@@ -8,5 +8,5 @@
"iot_class": "cloud_polling",
"issue_tracker": "https://github.com/cyberjunky/home-assistant-garmin_connect/issues",
"requirements": ["garminconnect>=0.2.26"],
"version": "0.2.31-beta-02"
"version": "0.2.31-beta-03"
}