Add entity translations to withings (#99194)

* Add entity translations to Withings

* Add entity translations to Withings
This commit is contained in:
Joost Lekkerkerker 2023-09-09 18:48:09 +02:00 committed by GitHub
parent 743ce46311
commit 868fdd81da
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 132 additions and 36 deletions

View file

@ -36,7 +36,7 @@ BINARY_SENSORS = [
key=Measurement.IN_BED.value, key=Measurement.IN_BED.value,
measurement=Measurement.IN_BED, measurement=Measurement.IN_BED,
measure_type=NotifyAppli.BED_IN, measure_type=NotifyAppli.BED_IN,
name="In bed", translation_key="in_bed",
icon="mdi:bed", icon="mdi:bed",
update_type=UpdateType.WEBHOOK, update_type=UpdateType.WEBHOOK,
device_class=BinarySensorDeviceClass.OCCUPANCY, device_class=BinarySensorDeviceClass.OCCUPANCY,

View file

@ -548,6 +548,7 @@ class BaseWithingsSensor(Entity):
_attr_should_poll = False _attr_should_poll = False
entity_description: WithingsEntityDescription entity_description: WithingsEntityDescription
_attr_has_entity_name = True
def __init__( def __init__(
self, data_manager: DataManager, description: WithingsEntityDescription self, data_manager: DataManager, description: WithingsEntityDescription
@ -555,9 +556,6 @@ class BaseWithingsSensor(Entity):
"""Initialize the Withings sensor.""" """Initialize the Withings sensor."""
self._data_manager = data_manager self._data_manager = data_manager
self.entity_description = description self.entity_description = description
self._attr_name = (
f"Withings {description.measurement.value} {data_manager.profile}"
)
self._attr_unique_id = get_attribute_unique_id( self._attr_unique_id = get_attribute_unique_id(
description, data_manager.user_id description, data_manager.user_id
) )

View file

@ -51,7 +51,6 @@ SENSORS = [
key=Measurement.WEIGHT_KG.value, key=Measurement.WEIGHT_KG.value,
measurement=Measurement.WEIGHT_KG, measurement=Measurement.WEIGHT_KG,
measure_type=MeasureType.WEIGHT, measure_type=MeasureType.WEIGHT,
name="Weight",
native_unit_of_measurement=UnitOfMass.KILOGRAMS, native_unit_of_measurement=UnitOfMass.KILOGRAMS,
device_class=SensorDeviceClass.WEIGHT, device_class=SensorDeviceClass.WEIGHT,
state_class=SensorStateClass.MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
@ -61,7 +60,7 @@ SENSORS = [
key=Measurement.FAT_MASS_KG.value, key=Measurement.FAT_MASS_KG.value,
measurement=Measurement.FAT_MASS_KG, measurement=Measurement.FAT_MASS_KG,
measure_type=MeasureType.FAT_MASS_WEIGHT, measure_type=MeasureType.FAT_MASS_WEIGHT,
name="Fat Mass", translation_key="fat_mass",
native_unit_of_measurement=UnitOfMass.KILOGRAMS, native_unit_of_measurement=UnitOfMass.KILOGRAMS,
device_class=SensorDeviceClass.WEIGHT, device_class=SensorDeviceClass.WEIGHT,
state_class=SensorStateClass.MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
@ -71,7 +70,7 @@ SENSORS = [
key=Measurement.FAT_FREE_MASS_KG.value, key=Measurement.FAT_FREE_MASS_KG.value,
measurement=Measurement.FAT_FREE_MASS_KG, measurement=Measurement.FAT_FREE_MASS_KG,
measure_type=MeasureType.FAT_FREE_MASS, measure_type=MeasureType.FAT_FREE_MASS,
name="Fat Free Mass", translation_key="fat_free_mass",
native_unit_of_measurement=UnitOfMass.KILOGRAMS, native_unit_of_measurement=UnitOfMass.KILOGRAMS,
device_class=SensorDeviceClass.WEIGHT, device_class=SensorDeviceClass.WEIGHT,
state_class=SensorStateClass.MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
@ -81,7 +80,7 @@ SENSORS = [
key=Measurement.MUSCLE_MASS_KG.value, key=Measurement.MUSCLE_MASS_KG.value,
measurement=Measurement.MUSCLE_MASS_KG, measurement=Measurement.MUSCLE_MASS_KG,
measure_type=MeasureType.MUSCLE_MASS, measure_type=MeasureType.MUSCLE_MASS,
name="Muscle Mass", translation_key="muscle_mass",
native_unit_of_measurement=UnitOfMass.KILOGRAMS, native_unit_of_measurement=UnitOfMass.KILOGRAMS,
device_class=SensorDeviceClass.WEIGHT, device_class=SensorDeviceClass.WEIGHT,
state_class=SensorStateClass.MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
@ -91,7 +90,7 @@ SENSORS = [
key=Measurement.BONE_MASS_KG.value, key=Measurement.BONE_MASS_KG.value,
measurement=Measurement.BONE_MASS_KG, measurement=Measurement.BONE_MASS_KG,
measure_type=MeasureType.BONE_MASS, measure_type=MeasureType.BONE_MASS,
name="Bone Mass", translation_key="bone_mass",
native_unit_of_measurement=UnitOfMass.KILOGRAMS, native_unit_of_measurement=UnitOfMass.KILOGRAMS,
device_class=SensorDeviceClass.WEIGHT, device_class=SensorDeviceClass.WEIGHT,
state_class=SensorStateClass.MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
@ -101,7 +100,7 @@ SENSORS = [
key=Measurement.HEIGHT_M.value, key=Measurement.HEIGHT_M.value,
measurement=Measurement.HEIGHT_M, measurement=Measurement.HEIGHT_M,
measure_type=MeasureType.HEIGHT, measure_type=MeasureType.HEIGHT,
name="Height", translation_key="height",
native_unit_of_measurement=UnitOfLength.METERS, native_unit_of_measurement=UnitOfLength.METERS,
device_class=SensorDeviceClass.DISTANCE, device_class=SensorDeviceClass.DISTANCE,
state_class=SensorStateClass.MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
@ -112,7 +111,6 @@ SENSORS = [
key=Measurement.TEMP_C.value, key=Measurement.TEMP_C.value,
measurement=Measurement.TEMP_C, measurement=Measurement.TEMP_C,
measure_type=MeasureType.TEMPERATURE, measure_type=MeasureType.TEMPERATURE,
name="Temperature",
native_unit_of_measurement=UnitOfTemperature.CELSIUS, native_unit_of_measurement=UnitOfTemperature.CELSIUS,
device_class=SensorDeviceClass.TEMPERATURE, device_class=SensorDeviceClass.TEMPERATURE,
state_class=SensorStateClass.MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
@ -122,7 +120,7 @@ SENSORS = [
key=Measurement.BODY_TEMP_C.value, key=Measurement.BODY_TEMP_C.value,
measurement=Measurement.BODY_TEMP_C, measurement=Measurement.BODY_TEMP_C,
measure_type=MeasureType.BODY_TEMPERATURE, measure_type=MeasureType.BODY_TEMPERATURE,
name="Body Temperature", translation_key="body_temperature",
native_unit_of_measurement=UnitOfTemperature.CELSIUS, native_unit_of_measurement=UnitOfTemperature.CELSIUS,
device_class=SensorDeviceClass.TEMPERATURE, device_class=SensorDeviceClass.TEMPERATURE,
state_class=SensorStateClass.MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
@ -132,7 +130,7 @@ SENSORS = [
key=Measurement.SKIN_TEMP_C.value, key=Measurement.SKIN_TEMP_C.value,
measurement=Measurement.SKIN_TEMP_C, measurement=Measurement.SKIN_TEMP_C,
measure_type=MeasureType.SKIN_TEMPERATURE, measure_type=MeasureType.SKIN_TEMPERATURE,
name="Skin Temperature", translation_key="skin_temperature",
native_unit_of_measurement=UnitOfTemperature.CELSIUS, native_unit_of_measurement=UnitOfTemperature.CELSIUS,
device_class=SensorDeviceClass.TEMPERATURE, device_class=SensorDeviceClass.TEMPERATURE,
state_class=SensorStateClass.MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
@ -142,7 +140,7 @@ SENSORS = [
key=Measurement.FAT_RATIO_PCT.value, key=Measurement.FAT_RATIO_PCT.value,
measurement=Measurement.FAT_RATIO_PCT, measurement=Measurement.FAT_RATIO_PCT,
measure_type=MeasureType.FAT_RATIO, measure_type=MeasureType.FAT_RATIO,
name="Fat Ratio", translation_key="fat_ratio",
native_unit_of_measurement=PERCENTAGE, native_unit_of_measurement=PERCENTAGE,
state_class=SensorStateClass.MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
update_type=UpdateType.POLL, update_type=UpdateType.POLL,
@ -151,7 +149,7 @@ SENSORS = [
key=Measurement.DIASTOLIC_MMHG.value, key=Measurement.DIASTOLIC_MMHG.value,
measurement=Measurement.DIASTOLIC_MMHG, measurement=Measurement.DIASTOLIC_MMHG,
measure_type=MeasureType.DIASTOLIC_BLOOD_PRESSURE, measure_type=MeasureType.DIASTOLIC_BLOOD_PRESSURE,
name="Diastolic Blood Pressure", translation_key="diastolic_blood_pressure",
native_unit_of_measurement=UOM_MMHG, native_unit_of_measurement=UOM_MMHG,
state_class=SensorStateClass.MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
update_type=UpdateType.POLL, update_type=UpdateType.POLL,
@ -160,7 +158,7 @@ SENSORS = [
key=Measurement.SYSTOLIC_MMGH.value, key=Measurement.SYSTOLIC_MMGH.value,
measurement=Measurement.SYSTOLIC_MMGH, measurement=Measurement.SYSTOLIC_MMGH,
measure_type=MeasureType.SYSTOLIC_BLOOD_PRESSURE, measure_type=MeasureType.SYSTOLIC_BLOOD_PRESSURE,
name="Systolic Blood Pressure", translation_key="systolic_blood_pressure",
native_unit_of_measurement=UOM_MMHG, native_unit_of_measurement=UOM_MMHG,
state_class=SensorStateClass.MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
update_type=UpdateType.POLL, update_type=UpdateType.POLL,
@ -169,7 +167,7 @@ SENSORS = [
key=Measurement.HEART_PULSE_BPM.value, key=Measurement.HEART_PULSE_BPM.value,
measurement=Measurement.HEART_PULSE_BPM, measurement=Measurement.HEART_PULSE_BPM,
measure_type=MeasureType.HEART_RATE, measure_type=MeasureType.HEART_RATE,
name="Heart Pulse", translation_key="heart_pulse",
native_unit_of_measurement=UOM_BEATS_PER_MINUTE, native_unit_of_measurement=UOM_BEATS_PER_MINUTE,
icon="mdi:heart-pulse", icon="mdi:heart-pulse",
state_class=SensorStateClass.MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
@ -179,7 +177,7 @@ SENSORS = [
key=Measurement.SPO2_PCT.value, key=Measurement.SPO2_PCT.value,
measurement=Measurement.SPO2_PCT, measurement=Measurement.SPO2_PCT,
measure_type=MeasureType.SP02, measure_type=MeasureType.SP02,
name="SP02", translation_key="spo2",
native_unit_of_measurement=PERCENTAGE, native_unit_of_measurement=PERCENTAGE,
state_class=SensorStateClass.MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
update_type=UpdateType.POLL, update_type=UpdateType.POLL,
@ -188,7 +186,7 @@ SENSORS = [
key=Measurement.HYDRATION.value, key=Measurement.HYDRATION.value,
measurement=Measurement.HYDRATION, measurement=Measurement.HYDRATION,
measure_type=MeasureType.HYDRATION, measure_type=MeasureType.HYDRATION,
name="Hydration", translation_key="hydration",
native_unit_of_measurement=UnitOfMass.KILOGRAMS, native_unit_of_measurement=UnitOfMass.KILOGRAMS,
device_class=SensorDeviceClass.WEIGHT, device_class=SensorDeviceClass.WEIGHT,
icon="mdi:water", icon="mdi:water",
@ -200,7 +198,7 @@ SENSORS = [
key=Measurement.PWV.value, key=Measurement.PWV.value,
measurement=Measurement.PWV, measurement=Measurement.PWV,
measure_type=MeasureType.PULSE_WAVE_VELOCITY, measure_type=MeasureType.PULSE_WAVE_VELOCITY,
name="Pulse Wave Velocity", translation_key="pulse_wave_velocity",
native_unit_of_measurement=UnitOfSpeed.METERS_PER_SECOND, native_unit_of_measurement=UnitOfSpeed.METERS_PER_SECOND,
device_class=SensorDeviceClass.SPEED, device_class=SensorDeviceClass.SPEED,
state_class=SensorStateClass.MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
@ -210,7 +208,7 @@ SENSORS = [
key=Measurement.SLEEP_BREATHING_DISTURBANCES_INTENSITY.value, key=Measurement.SLEEP_BREATHING_DISTURBANCES_INTENSITY.value,
measurement=Measurement.SLEEP_BREATHING_DISTURBANCES_INTENSITY, measurement=Measurement.SLEEP_BREATHING_DISTURBANCES_INTENSITY,
measure_type=GetSleepSummaryField.BREATHING_DISTURBANCES_INTENSITY, measure_type=GetSleepSummaryField.BREATHING_DISTURBANCES_INTENSITY,
name="Breathing disturbances intensity", translation_key="breathing_disturbances_intensity",
state_class=SensorStateClass.MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
update_type=UpdateType.POLL, update_type=UpdateType.POLL,
@ -219,7 +217,7 @@ SENSORS = [
key=Measurement.SLEEP_DEEP_DURATION_SECONDS.value, key=Measurement.SLEEP_DEEP_DURATION_SECONDS.value,
measurement=Measurement.SLEEP_DEEP_DURATION_SECONDS, measurement=Measurement.SLEEP_DEEP_DURATION_SECONDS,
measure_type=GetSleepSummaryField.DEEP_SLEEP_DURATION, measure_type=GetSleepSummaryField.DEEP_SLEEP_DURATION,
name="Deep sleep", translation_key="deep_sleep",
native_unit_of_measurement=UnitOfTime.SECONDS, native_unit_of_measurement=UnitOfTime.SECONDS,
icon="mdi:sleep", icon="mdi:sleep",
device_class=SensorDeviceClass.DURATION, device_class=SensorDeviceClass.DURATION,
@ -231,7 +229,7 @@ SENSORS = [
key=Measurement.SLEEP_TOSLEEP_DURATION_SECONDS.value, key=Measurement.SLEEP_TOSLEEP_DURATION_SECONDS.value,
measurement=Measurement.SLEEP_TOSLEEP_DURATION_SECONDS, measurement=Measurement.SLEEP_TOSLEEP_DURATION_SECONDS,
measure_type=GetSleepSummaryField.DURATION_TO_SLEEP, measure_type=GetSleepSummaryField.DURATION_TO_SLEEP,
name="Time to sleep", translation_key="time_to_sleep",
native_unit_of_measurement=UnitOfTime.SECONDS, native_unit_of_measurement=UnitOfTime.SECONDS,
icon="mdi:sleep", icon="mdi:sleep",
device_class=SensorDeviceClass.DURATION, device_class=SensorDeviceClass.DURATION,
@ -243,7 +241,7 @@ SENSORS = [
key=Measurement.SLEEP_TOWAKEUP_DURATION_SECONDS.value, key=Measurement.SLEEP_TOWAKEUP_DURATION_SECONDS.value,
measurement=Measurement.SLEEP_TOWAKEUP_DURATION_SECONDS, measurement=Measurement.SLEEP_TOWAKEUP_DURATION_SECONDS,
measure_type=GetSleepSummaryField.DURATION_TO_WAKEUP, measure_type=GetSleepSummaryField.DURATION_TO_WAKEUP,
name="Time to wakeup", translation_key="time_to_wakeup",
native_unit_of_measurement=UnitOfTime.SECONDS, native_unit_of_measurement=UnitOfTime.SECONDS,
icon="mdi:sleep-off", icon="mdi:sleep-off",
device_class=SensorDeviceClass.DURATION, device_class=SensorDeviceClass.DURATION,
@ -255,7 +253,7 @@ SENSORS = [
key=Measurement.SLEEP_HEART_RATE_AVERAGE.value, key=Measurement.SLEEP_HEART_RATE_AVERAGE.value,
measurement=Measurement.SLEEP_HEART_RATE_AVERAGE, measurement=Measurement.SLEEP_HEART_RATE_AVERAGE,
measure_type=GetSleepSummaryField.HR_AVERAGE, measure_type=GetSleepSummaryField.HR_AVERAGE,
name="Average heart rate", translation_key="average_heart_rate",
native_unit_of_measurement=UOM_BEATS_PER_MINUTE, native_unit_of_measurement=UOM_BEATS_PER_MINUTE,
icon="mdi:heart-pulse", icon="mdi:heart-pulse",
state_class=SensorStateClass.MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
@ -266,6 +264,7 @@ SENSORS = [
key=Measurement.SLEEP_HEART_RATE_MAX.value, key=Measurement.SLEEP_HEART_RATE_MAX.value,
measurement=Measurement.SLEEP_HEART_RATE_MAX, measurement=Measurement.SLEEP_HEART_RATE_MAX,
measure_type=GetSleepSummaryField.HR_MAX, measure_type=GetSleepSummaryField.HR_MAX,
translation_key="fat_mass",
name="Maximum heart rate", name="Maximum heart rate",
native_unit_of_measurement=UOM_BEATS_PER_MINUTE, native_unit_of_measurement=UOM_BEATS_PER_MINUTE,
icon="mdi:heart-pulse", icon="mdi:heart-pulse",
@ -277,7 +276,7 @@ SENSORS = [
key=Measurement.SLEEP_HEART_RATE_MIN.value, key=Measurement.SLEEP_HEART_RATE_MIN.value,
measurement=Measurement.SLEEP_HEART_RATE_MIN, measurement=Measurement.SLEEP_HEART_RATE_MIN,
measure_type=GetSleepSummaryField.HR_MIN, measure_type=GetSleepSummaryField.HR_MIN,
name="Minimum heart rate", translation_key="maximum_heart_rate",
native_unit_of_measurement=UOM_BEATS_PER_MINUTE, native_unit_of_measurement=UOM_BEATS_PER_MINUTE,
icon="mdi:heart-pulse", icon="mdi:heart-pulse",
state_class=SensorStateClass.MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
@ -288,7 +287,7 @@ SENSORS = [
key=Measurement.SLEEP_LIGHT_DURATION_SECONDS.value, key=Measurement.SLEEP_LIGHT_DURATION_SECONDS.value,
measurement=Measurement.SLEEP_LIGHT_DURATION_SECONDS, measurement=Measurement.SLEEP_LIGHT_DURATION_SECONDS,
measure_type=GetSleepSummaryField.LIGHT_SLEEP_DURATION, measure_type=GetSleepSummaryField.LIGHT_SLEEP_DURATION,
name="Light sleep", translation_key="light_sleep",
native_unit_of_measurement=UnitOfTime.SECONDS, native_unit_of_measurement=UnitOfTime.SECONDS,
icon="mdi:sleep", icon="mdi:sleep",
device_class=SensorDeviceClass.DURATION, device_class=SensorDeviceClass.DURATION,
@ -300,7 +299,7 @@ SENSORS = [
key=Measurement.SLEEP_REM_DURATION_SECONDS.value, key=Measurement.SLEEP_REM_DURATION_SECONDS.value,
measurement=Measurement.SLEEP_REM_DURATION_SECONDS, measurement=Measurement.SLEEP_REM_DURATION_SECONDS,
measure_type=GetSleepSummaryField.REM_SLEEP_DURATION, measure_type=GetSleepSummaryField.REM_SLEEP_DURATION,
name="REM sleep", translation_key="rem_sleep",
native_unit_of_measurement=UnitOfTime.SECONDS, native_unit_of_measurement=UnitOfTime.SECONDS,
icon="mdi:sleep", icon="mdi:sleep",
device_class=SensorDeviceClass.DURATION, device_class=SensorDeviceClass.DURATION,
@ -312,7 +311,7 @@ SENSORS = [
key=Measurement.SLEEP_RESPIRATORY_RATE_AVERAGE.value, key=Measurement.SLEEP_RESPIRATORY_RATE_AVERAGE.value,
measurement=Measurement.SLEEP_RESPIRATORY_RATE_AVERAGE, measurement=Measurement.SLEEP_RESPIRATORY_RATE_AVERAGE,
measure_type=GetSleepSummaryField.RR_AVERAGE, measure_type=GetSleepSummaryField.RR_AVERAGE,
name="Average respiratory rate", translation_key="average_respiratory_rate",
native_unit_of_measurement=UOM_BREATHS_PER_MINUTE, native_unit_of_measurement=UOM_BREATHS_PER_MINUTE,
state_class=SensorStateClass.MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
@ -322,7 +321,7 @@ SENSORS = [
key=Measurement.SLEEP_RESPIRATORY_RATE_MAX.value, key=Measurement.SLEEP_RESPIRATORY_RATE_MAX.value,
measurement=Measurement.SLEEP_RESPIRATORY_RATE_MAX, measurement=Measurement.SLEEP_RESPIRATORY_RATE_MAX,
measure_type=GetSleepSummaryField.RR_MAX, measure_type=GetSleepSummaryField.RR_MAX,
name="Maximum respiratory rate", translation_key="maximum_respiratory_rate",
native_unit_of_measurement=UOM_BREATHS_PER_MINUTE, native_unit_of_measurement=UOM_BREATHS_PER_MINUTE,
state_class=SensorStateClass.MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
@ -332,7 +331,7 @@ SENSORS = [
key=Measurement.SLEEP_RESPIRATORY_RATE_MIN.value, key=Measurement.SLEEP_RESPIRATORY_RATE_MIN.value,
measurement=Measurement.SLEEP_RESPIRATORY_RATE_MIN, measurement=Measurement.SLEEP_RESPIRATORY_RATE_MIN,
measure_type=GetSleepSummaryField.RR_MIN, measure_type=GetSleepSummaryField.RR_MIN,
name="Minimum respiratory rate", translation_key="minimum_respiratory_rate",
native_unit_of_measurement=UOM_BREATHS_PER_MINUTE, native_unit_of_measurement=UOM_BREATHS_PER_MINUTE,
state_class=SensorStateClass.MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
@ -342,7 +341,7 @@ SENSORS = [
key=Measurement.SLEEP_SCORE.value, key=Measurement.SLEEP_SCORE.value,
measurement=Measurement.SLEEP_SCORE, measurement=Measurement.SLEEP_SCORE,
measure_type=GetSleepSummaryField.SLEEP_SCORE, measure_type=GetSleepSummaryField.SLEEP_SCORE,
name="Sleep score", translation_key="sleep_score",
native_unit_of_measurement=SCORE_POINTS, native_unit_of_measurement=SCORE_POINTS,
icon="mdi:medal", icon="mdi:medal",
state_class=SensorStateClass.MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
@ -353,7 +352,7 @@ SENSORS = [
key=Measurement.SLEEP_SNORING.value, key=Measurement.SLEEP_SNORING.value,
measurement=Measurement.SLEEP_SNORING, measurement=Measurement.SLEEP_SNORING,
measure_type=GetSleepSummaryField.SNORING, measure_type=GetSleepSummaryField.SNORING,
name="Snoring", translation_key="snoring",
state_class=SensorStateClass.MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
update_type=UpdateType.POLL, update_type=UpdateType.POLL,
@ -362,7 +361,7 @@ SENSORS = [
key=Measurement.SLEEP_SNORING_EPISODE_COUNT.value, key=Measurement.SLEEP_SNORING_EPISODE_COUNT.value,
measurement=Measurement.SLEEP_SNORING_EPISODE_COUNT, measurement=Measurement.SLEEP_SNORING_EPISODE_COUNT,
measure_type=GetSleepSummaryField.SNORING_EPISODE_COUNT, measure_type=GetSleepSummaryField.SNORING_EPISODE_COUNT,
name="Snoring episode count", translation_key="snoring_episode_count",
state_class=SensorStateClass.MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
update_type=UpdateType.POLL, update_type=UpdateType.POLL,
@ -371,7 +370,7 @@ SENSORS = [
key=Measurement.SLEEP_WAKEUP_COUNT.value, key=Measurement.SLEEP_WAKEUP_COUNT.value,
measurement=Measurement.SLEEP_WAKEUP_COUNT, measurement=Measurement.SLEEP_WAKEUP_COUNT,
measure_type=GetSleepSummaryField.WAKEUP_COUNT, measure_type=GetSleepSummaryField.WAKEUP_COUNT,
name="Wakeup count", translation_key="wakeup_count",
native_unit_of_measurement=UOM_FREQUENCY, native_unit_of_measurement=UOM_FREQUENCY,
icon="mdi:sleep-off", icon="mdi:sleep-off",
state_class=SensorStateClass.MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
@ -382,7 +381,7 @@ SENSORS = [
key=Measurement.SLEEP_WAKEUP_DURATION_SECONDS.value, key=Measurement.SLEEP_WAKEUP_DURATION_SECONDS.value,
measurement=Measurement.SLEEP_WAKEUP_DURATION_SECONDS, measurement=Measurement.SLEEP_WAKEUP_DURATION_SECONDS,
measure_type=GetSleepSummaryField.WAKEUP_DURATION, measure_type=GetSleepSummaryField.WAKEUP_DURATION,
name="Wakeup time", translation_key="wakeup_time",
native_unit_of_measurement=UnitOfTime.SECONDS, native_unit_of_measurement=UnitOfTime.SECONDS,
icon="mdi:sleep-off", icon="mdi:sleep-off",
device_class=SensorDeviceClass.DURATION, device_class=SensorDeviceClass.DURATION,

View file

@ -27,5 +27,104 @@
"create_entry": { "create_entry": {
"default": "Successfully authenticated with Withings." "default": "Successfully authenticated with Withings."
} }
},
"entity": {
"binary_sensor": {
"in_bed": {
"name": "In bed"
}
},
"sensor": {
"fat_mass": {
"name": "Fat mass"
},
"fat_free_mass": {
"name": "Fat free mass"
},
"muscle_mass": {
"name": "Muscle mass"
},
"bone_mass": {
"name": "Bone mass"
},
"height": {
"name": "Height"
},
"body_temperature": {
"name": "Body temperature"
},
"skin_temperature": {
"name": "Skin temperature"
},
"fat_ratio": {
"name": "Fat ratio"
},
"diastolic_blood_pressure": {
"name": "Diastolic blood pressure"
},
"systolic_blood_pressure": {
"name": "Systolic blood pressure"
},
"heart_pulse": {
"name": "Heart pulse"
},
"spo2": {
"name": "SpO2"
},
"hydration": {
"name": "Hydration"
},
"pulse_wave_velocity": {
"name": "Pulse wave velocity"
},
"breathing_disturbances_intensity": {
"name": "Breathing disturbances intensity"
},
"deep_sleep": {
"name": "Deep sleep"
},
"time_to_sleep": {
"name": "Time to sleep"
},
"time_to_wakeup": {
"name": "Time to wakeup"
},
"average_heart_rate": {
"name": "Average heart rate"
},
"maximum_heart_rate": {
"name": "Maximum heart rate"
},
"light_sleep": {
"name": "Light sleep"
},
"rem_sleep": {
"name": "REM sleep"
},
"average_respiratory_rate": {
"name": "Average respiratory rate"
},
"maximum_respiratory_rate": {
"name": "Maximum respiratory rate"
},
"minimum_respiratory_rate": {
"name": "Minimum respiratory rate"
},
"sleep_score": {
"name": "Sleep score"
},
"snoring": {
"name": "Snoring"
},
"snoring_episode_count": {
"name": "Snoring episode count"
},
"wakeup_count": {
"name": "Wakeup count"
},
"wakeup_time": {
"name": "Wakeup time"
}
}
} }
} }