Bump aiowithings to 3.0.1 (#118854)
This commit is contained in:
parent
bfff3c0524
commit
f6c66dfd27
7 changed files with 1034 additions and 105 deletions
|
@ -9,6 +9,7 @@ from typing import TYPE_CHECKING
|
||||||
from aiowithings import (
|
from aiowithings import (
|
||||||
Activity,
|
Activity,
|
||||||
Goals,
|
Goals,
|
||||||
|
MeasurementPosition,
|
||||||
MeasurementType,
|
MeasurementType,
|
||||||
NotificationCategory,
|
NotificationCategory,
|
||||||
SleepSummary,
|
SleepSummary,
|
||||||
|
@ -85,7 +86,9 @@ class WithingsDataUpdateCoordinator[_DataT](DataUpdateCoordinator[_DataT]):
|
||||||
|
|
||||||
|
|
||||||
class WithingsMeasurementDataUpdateCoordinator(
|
class WithingsMeasurementDataUpdateCoordinator(
|
||||||
WithingsDataUpdateCoordinator[dict[MeasurementType, float]]
|
WithingsDataUpdateCoordinator[
|
||||||
|
dict[tuple[MeasurementType, MeasurementPosition | None], float]
|
||||||
|
]
|
||||||
):
|
):
|
||||||
"""Withings measurement coordinator."""
|
"""Withings measurement coordinator."""
|
||||||
|
|
||||||
|
@ -98,9 +101,13 @@ class WithingsMeasurementDataUpdateCoordinator(
|
||||||
NotificationCategory.WEIGHT,
|
NotificationCategory.WEIGHT,
|
||||||
NotificationCategory.PRESSURE,
|
NotificationCategory.PRESSURE,
|
||||||
}
|
}
|
||||||
self._previous_data: dict[MeasurementType, float] = {}
|
self._previous_data: dict[
|
||||||
|
tuple[MeasurementType, MeasurementPosition | None], float
|
||||||
|
] = {}
|
||||||
|
|
||||||
async def _internal_update_data(self) -> dict[MeasurementType, float]:
|
async def _internal_update_data(
|
||||||
|
self,
|
||||||
|
) -> dict[tuple[MeasurementType, MeasurementPosition | None], float]:
|
||||||
"""Retrieve measurement data."""
|
"""Retrieve measurement data."""
|
||||||
if self._last_valid_update is None:
|
if self._last_valid_update is None:
|
||||||
now = dt_util.utcnow()
|
now = dt_util.utcnow()
|
||||||
|
|
|
@ -9,5 +9,5 @@
|
||||||
"iot_class": "cloud_push",
|
"iot_class": "cloud_push",
|
||||||
"loggers": ["aiowithings"],
|
"loggers": ["aiowithings"],
|
||||||
"quality_scale": "platinum",
|
"quality_scale": "platinum",
|
||||||
"requirements": ["aiowithings==2.1.0"]
|
"requirements": ["aiowithings==3.0.1"]
|
||||||
}
|
}
|
||||||
|
|
|
@ -10,6 +10,7 @@ from typing import Any
|
||||||
from aiowithings import (
|
from aiowithings import (
|
||||||
Activity,
|
Activity,
|
||||||
Goals,
|
Goals,
|
||||||
|
MeasurementPosition,
|
||||||
MeasurementType,
|
MeasurementType,
|
||||||
SleepSummary,
|
SleepSummary,
|
||||||
Workout,
|
Workout,
|
||||||
|
@ -63,12 +64,14 @@ class WithingsMeasurementSensorEntityDescription(SensorEntityDescription):
|
||||||
"""Immutable class for describing withings data."""
|
"""Immutable class for describing withings data."""
|
||||||
|
|
||||||
measurement_type: MeasurementType
|
measurement_type: MeasurementType
|
||||||
|
measurement_position: MeasurementPosition | None = None
|
||||||
|
|
||||||
|
|
||||||
MEASUREMENT_SENSORS: dict[
|
MEASUREMENT_SENSORS: dict[
|
||||||
MeasurementType, WithingsMeasurementSensorEntityDescription
|
tuple[MeasurementType, MeasurementPosition | None],
|
||||||
|
WithingsMeasurementSensorEntityDescription,
|
||||||
] = {
|
] = {
|
||||||
MeasurementType.WEIGHT: WithingsMeasurementSensorEntityDescription(
|
(MeasurementType.WEIGHT, None): WithingsMeasurementSensorEntityDescription(
|
||||||
key="weight_kg",
|
key="weight_kg",
|
||||||
measurement_type=MeasurementType.WEIGHT,
|
measurement_type=MeasurementType.WEIGHT,
|
||||||
native_unit_of_measurement=UnitOfMass.KILOGRAMS,
|
native_unit_of_measurement=UnitOfMass.KILOGRAMS,
|
||||||
|
@ -76,7 +79,7 @@ MEASUREMENT_SENSORS: dict[
|
||||||
device_class=SensorDeviceClass.WEIGHT,
|
device_class=SensorDeviceClass.WEIGHT,
|
||||||
state_class=SensorStateClass.MEASUREMENT,
|
state_class=SensorStateClass.MEASUREMENT,
|
||||||
),
|
),
|
||||||
MeasurementType.FAT_MASS_WEIGHT: WithingsMeasurementSensorEntityDescription(
|
(MeasurementType.FAT_MASS_WEIGHT, None): WithingsMeasurementSensorEntityDescription(
|
||||||
key="fat_mass_kg",
|
key="fat_mass_kg",
|
||||||
measurement_type=MeasurementType.FAT_MASS_WEIGHT,
|
measurement_type=MeasurementType.FAT_MASS_WEIGHT,
|
||||||
translation_key="fat_mass",
|
translation_key="fat_mass",
|
||||||
|
@ -85,7 +88,7 @@ MEASUREMENT_SENSORS: dict[
|
||||||
device_class=SensorDeviceClass.WEIGHT,
|
device_class=SensorDeviceClass.WEIGHT,
|
||||||
state_class=SensorStateClass.MEASUREMENT,
|
state_class=SensorStateClass.MEASUREMENT,
|
||||||
),
|
),
|
||||||
MeasurementType.FAT_FREE_MASS: WithingsMeasurementSensorEntityDescription(
|
(MeasurementType.FAT_FREE_MASS, None): WithingsMeasurementSensorEntityDescription(
|
||||||
key="fat_free_mass_kg",
|
key="fat_free_mass_kg",
|
||||||
measurement_type=MeasurementType.FAT_FREE_MASS,
|
measurement_type=MeasurementType.FAT_FREE_MASS,
|
||||||
translation_key="fat_free_mass",
|
translation_key="fat_free_mass",
|
||||||
|
@ -94,7 +97,7 @@ MEASUREMENT_SENSORS: dict[
|
||||||
device_class=SensorDeviceClass.WEIGHT,
|
device_class=SensorDeviceClass.WEIGHT,
|
||||||
state_class=SensorStateClass.MEASUREMENT,
|
state_class=SensorStateClass.MEASUREMENT,
|
||||||
),
|
),
|
||||||
MeasurementType.MUSCLE_MASS: WithingsMeasurementSensorEntityDescription(
|
(MeasurementType.MUSCLE_MASS, None): WithingsMeasurementSensorEntityDescription(
|
||||||
key="muscle_mass_kg",
|
key="muscle_mass_kg",
|
||||||
measurement_type=MeasurementType.MUSCLE_MASS,
|
measurement_type=MeasurementType.MUSCLE_MASS,
|
||||||
translation_key="muscle_mass",
|
translation_key="muscle_mass",
|
||||||
|
@ -103,7 +106,7 @@ MEASUREMENT_SENSORS: dict[
|
||||||
device_class=SensorDeviceClass.WEIGHT,
|
device_class=SensorDeviceClass.WEIGHT,
|
||||||
state_class=SensorStateClass.MEASUREMENT,
|
state_class=SensorStateClass.MEASUREMENT,
|
||||||
),
|
),
|
||||||
MeasurementType.BONE_MASS: WithingsMeasurementSensorEntityDescription(
|
(MeasurementType.BONE_MASS, None): WithingsMeasurementSensorEntityDescription(
|
||||||
key="bone_mass_kg",
|
key="bone_mass_kg",
|
||||||
measurement_type=MeasurementType.BONE_MASS,
|
measurement_type=MeasurementType.BONE_MASS,
|
||||||
translation_key="bone_mass",
|
translation_key="bone_mass",
|
||||||
|
@ -112,7 +115,7 @@ MEASUREMENT_SENSORS: dict[
|
||||||
device_class=SensorDeviceClass.WEIGHT,
|
device_class=SensorDeviceClass.WEIGHT,
|
||||||
state_class=SensorStateClass.MEASUREMENT,
|
state_class=SensorStateClass.MEASUREMENT,
|
||||||
),
|
),
|
||||||
MeasurementType.HEIGHT: WithingsMeasurementSensorEntityDescription(
|
(MeasurementType.HEIGHT, None): WithingsMeasurementSensorEntityDescription(
|
||||||
key="height_m",
|
key="height_m",
|
||||||
measurement_type=MeasurementType.HEIGHT,
|
measurement_type=MeasurementType.HEIGHT,
|
||||||
translation_key="height",
|
translation_key="height",
|
||||||
|
@ -122,14 +125,17 @@ MEASUREMENT_SENSORS: dict[
|
||||||
state_class=SensorStateClass.MEASUREMENT,
|
state_class=SensorStateClass.MEASUREMENT,
|
||||||
entity_registry_enabled_default=False,
|
entity_registry_enabled_default=False,
|
||||||
),
|
),
|
||||||
MeasurementType.TEMPERATURE: WithingsMeasurementSensorEntityDescription(
|
(MeasurementType.TEMPERATURE, None): WithingsMeasurementSensorEntityDescription(
|
||||||
key="temperature_c",
|
key="temperature_c",
|
||||||
measurement_type=MeasurementType.TEMPERATURE,
|
measurement_type=MeasurementType.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,
|
||||||
),
|
),
|
||||||
MeasurementType.BODY_TEMPERATURE: WithingsMeasurementSensorEntityDescription(
|
(
|
||||||
|
MeasurementType.BODY_TEMPERATURE,
|
||||||
|
None,
|
||||||
|
): WithingsMeasurementSensorEntityDescription(
|
||||||
key="body_temperature_c",
|
key="body_temperature_c",
|
||||||
measurement_type=MeasurementType.BODY_TEMPERATURE,
|
measurement_type=MeasurementType.BODY_TEMPERATURE,
|
||||||
translation_key="body_temperature",
|
translation_key="body_temperature",
|
||||||
|
@ -137,7 +143,10 @@ MEASUREMENT_SENSORS: dict[
|
||||||
device_class=SensorDeviceClass.TEMPERATURE,
|
device_class=SensorDeviceClass.TEMPERATURE,
|
||||||
state_class=SensorStateClass.MEASUREMENT,
|
state_class=SensorStateClass.MEASUREMENT,
|
||||||
),
|
),
|
||||||
MeasurementType.SKIN_TEMPERATURE: WithingsMeasurementSensorEntityDescription(
|
(
|
||||||
|
MeasurementType.SKIN_TEMPERATURE,
|
||||||
|
None,
|
||||||
|
): WithingsMeasurementSensorEntityDescription(
|
||||||
key="skin_temperature_c",
|
key="skin_temperature_c",
|
||||||
measurement_type=MeasurementType.SKIN_TEMPERATURE,
|
measurement_type=MeasurementType.SKIN_TEMPERATURE,
|
||||||
translation_key="skin_temperature",
|
translation_key="skin_temperature",
|
||||||
|
@ -145,7 +154,7 @@ MEASUREMENT_SENSORS: dict[
|
||||||
device_class=SensorDeviceClass.TEMPERATURE,
|
device_class=SensorDeviceClass.TEMPERATURE,
|
||||||
state_class=SensorStateClass.MEASUREMENT,
|
state_class=SensorStateClass.MEASUREMENT,
|
||||||
),
|
),
|
||||||
MeasurementType.FAT_RATIO: WithingsMeasurementSensorEntityDescription(
|
(MeasurementType.FAT_RATIO, None): WithingsMeasurementSensorEntityDescription(
|
||||||
key="fat_ratio_pct",
|
key="fat_ratio_pct",
|
||||||
measurement_type=MeasurementType.FAT_RATIO,
|
measurement_type=MeasurementType.FAT_RATIO,
|
||||||
translation_key="fat_ratio",
|
translation_key="fat_ratio",
|
||||||
|
@ -153,35 +162,41 @@ MEASUREMENT_SENSORS: dict[
|
||||||
suggested_display_precision=2,
|
suggested_display_precision=2,
|
||||||
state_class=SensorStateClass.MEASUREMENT,
|
state_class=SensorStateClass.MEASUREMENT,
|
||||||
),
|
),
|
||||||
MeasurementType.DIASTOLIC_BLOOD_PRESSURE: WithingsMeasurementSensorEntityDescription(
|
(
|
||||||
|
MeasurementType.DIASTOLIC_BLOOD_PRESSURE,
|
||||||
|
None,
|
||||||
|
): WithingsMeasurementSensorEntityDescription(
|
||||||
key="diastolic_blood_pressure_mmhg",
|
key="diastolic_blood_pressure_mmhg",
|
||||||
measurement_type=MeasurementType.DIASTOLIC_BLOOD_PRESSURE,
|
measurement_type=MeasurementType.DIASTOLIC_BLOOD_PRESSURE,
|
||||||
translation_key="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,
|
||||||
),
|
),
|
||||||
MeasurementType.SYSTOLIC_BLOOD_PRESSURE: WithingsMeasurementSensorEntityDescription(
|
(
|
||||||
|
MeasurementType.SYSTOLIC_BLOOD_PRESSURE,
|
||||||
|
None,
|
||||||
|
): WithingsMeasurementSensorEntityDescription(
|
||||||
key="systolic_blood_pressure_mmhg",
|
key="systolic_blood_pressure_mmhg",
|
||||||
measurement_type=MeasurementType.SYSTOLIC_BLOOD_PRESSURE,
|
measurement_type=MeasurementType.SYSTOLIC_BLOOD_PRESSURE,
|
||||||
translation_key="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,
|
||||||
),
|
),
|
||||||
MeasurementType.HEART_RATE: WithingsMeasurementSensorEntityDescription(
|
(MeasurementType.HEART_RATE, None): WithingsMeasurementSensorEntityDescription(
|
||||||
key="heart_pulse_bpm",
|
key="heart_pulse_bpm",
|
||||||
measurement_type=MeasurementType.HEART_RATE,
|
measurement_type=MeasurementType.HEART_RATE,
|
||||||
translation_key="heart_pulse",
|
translation_key="heart_pulse",
|
||||||
native_unit_of_measurement=UOM_BEATS_PER_MINUTE,
|
native_unit_of_measurement=UOM_BEATS_PER_MINUTE,
|
||||||
state_class=SensorStateClass.MEASUREMENT,
|
state_class=SensorStateClass.MEASUREMENT,
|
||||||
),
|
),
|
||||||
MeasurementType.SP02: WithingsMeasurementSensorEntityDescription(
|
(MeasurementType.SP02, None): WithingsMeasurementSensorEntityDescription(
|
||||||
key="spo2_pct",
|
key="spo2_pct",
|
||||||
measurement_type=MeasurementType.SP02,
|
measurement_type=MeasurementType.SP02,
|
||||||
translation_key="spo2",
|
translation_key="spo2",
|
||||||
native_unit_of_measurement=PERCENTAGE,
|
native_unit_of_measurement=PERCENTAGE,
|
||||||
state_class=SensorStateClass.MEASUREMENT,
|
state_class=SensorStateClass.MEASUREMENT,
|
||||||
),
|
),
|
||||||
MeasurementType.HYDRATION: WithingsMeasurementSensorEntityDescription(
|
(MeasurementType.HYDRATION, None): WithingsMeasurementSensorEntityDescription(
|
||||||
key="hydration",
|
key="hydration",
|
||||||
measurement_type=MeasurementType.HYDRATION,
|
measurement_type=MeasurementType.HYDRATION,
|
||||||
translation_key="hydration",
|
translation_key="hydration",
|
||||||
|
@ -190,7 +205,10 @@ MEASUREMENT_SENSORS: dict[
|
||||||
state_class=SensorStateClass.MEASUREMENT,
|
state_class=SensorStateClass.MEASUREMENT,
|
||||||
entity_registry_enabled_default=False,
|
entity_registry_enabled_default=False,
|
||||||
),
|
),
|
||||||
MeasurementType.PULSE_WAVE_VELOCITY: WithingsMeasurementSensorEntityDescription(
|
(
|
||||||
|
MeasurementType.PULSE_WAVE_VELOCITY,
|
||||||
|
None,
|
||||||
|
): WithingsMeasurementSensorEntityDescription(
|
||||||
key="pulse_wave_velocity",
|
key="pulse_wave_velocity",
|
||||||
measurement_type=MeasurementType.PULSE_WAVE_VELOCITY,
|
measurement_type=MeasurementType.PULSE_WAVE_VELOCITY,
|
||||||
translation_key="pulse_wave_velocity",
|
translation_key="pulse_wave_velocity",
|
||||||
|
@ -198,7 +216,7 @@ MEASUREMENT_SENSORS: dict[
|
||||||
device_class=SensorDeviceClass.SPEED,
|
device_class=SensorDeviceClass.SPEED,
|
||||||
state_class=SensorStateClass.MEASUREMENT,
|
state_class=SensorStateClass.MEASUREMENT,
|
||||||
),
|
),
|
||||||
MeasurementType.VO2: WithingsMeasurementSensorEntityDescription(
|
(MeasurementType.VO2, None): WithingsMeasurementSensorEntityDescription(
|
||||||
key="vo2_max",
|
key="vo2_max",
|
||||||
measurement_type=MeasurementType.VO2,
|
measurement_type=MeasurementType.VO2,
|
||||||
translation_key="vo2_max",
|
translation_key="vo2_max",
|
||||||
|
@ -206,7 +224,10 @@ MEASUREMENT_SENSORS: dict[
|
||||||
state_class=SensorStateClass.MEASUREMENT,
|
state_class=SensorStateClass.MEASUREMENT,
|
||||||
entity_registry_enabled_default=False,
|
entity_registry_enabled_default=False,
|
||||||
),
|
),
|
||||||
MeasurementType.EXTRACELLULAR_WATER: WithingsMeasurementSensorEntityDescription(
|
(
|
||||||
|
MeasurementType.EXTRACELLULAR_WATER,
|
||||||
|
None,
|
||||||
|
): WithingsMeasurementSensorEntityDescription(
|
||||||
key="extracellular_water",
|
key="extracellular_water",
|
||||||
measurement_type=MeasurementType.EXTRACELLULAR_WATER,
|
measurement_type=MeasurementType.EXTRACELLULAR_WATER,
|
||||||
translation_key="extracellular_water",
|
translation_key="extracellular_water",
|
||||||
|
@ -215,7 +236,10 @@ MEASUREMENT_SENSORS: dict[
|
||||||
state_class=SensorStateClass.MEASUREMENT,
|
state_class=SensorStateClass.MEASUREMENT,
|
||||||
entity_registry_enabled_default=False,
|
entity_registry_enabled_default=False,
|
||||||
),
|
),
|
||||||
MeasurementType.INTRACELLULAR_WATER: WithingsMeasurementSensorEntityDescription(
|
(
|
||||||
|
MeasurementType.INTRACELLULAR_WATER,
|
||||||
|
None,
|
||||||
|
): WithingsMeasurementSensorEntityDescription(
|
||||||
key="intracellular_water",
|
key="intracellular_water",
|
||||||
measurement_type=MeasurementType.INTRACELLULAR_WATER,
|
measurement_type=MeasurementType.INTRACELLULAR_WATER,
|
||||||
translation_key="intracellular_water",
|
translation_key="intracellular_water",
|
||||||
|
@ -224,33 +248,42 @@ MEASUREMENT_SENSORS: dict[
|
||||||
state_class=SensorStateClass.MEASUREMENT,
|
state_class=SensorStateClass.MEASUREMENT,
|
||||||
entity_registry_enabled_default=False,
|
entity_registry_enabled_default=False,
|
||||||
),
|
),
|
||||||
MeasurementType.VASCULAR_AGE: WithingsMeasurementSensorEntityDescription(
|
(MeasurementType.VASCULAR_AGE, None): WithingsMeasurementSensorEntityDescription(
|
||||||
key="vascular_age",
|
key="vascular_age",
|
||||||
measurement_type=MeasurementType.VASCULAR_AGE,
|
measurement_type=MeasurementType.VASCULAR_AGE,
|
||||||
translation_key="vascular_age",
|
translation_key="vascular_age",
|
||||||
entity_registry_enabled_default=False,
|
entity_registry_enabled_default=False,
|
||||||
),
|
),
|
||||||
MeasurementType.VISCERAL_FAT: WithingsMeasurementSensorEntityDescription(
|
(MeasurementType.VISCERAL_FAT, None): WithingsMeasurementSensorEntityDescription(
|
||||||
key="visceral_fat",
|
key="visceral_fat",
|
||||||
measurement_type=MeasurementType.VISCERAL_FAT,
|
measurement_type=MeasurementType.VISCERAL_FAT,
|
||||||
translation_key="visceral_fat_index",
|
translation_key="visceral_fat_index",
|
||||||
entity_registry_enabled_default=False,
|
entity_registry_enabled_default=False,
|
||||||
),
|
),
|
||||||
MeasurementType.ELECTRODERMAL_ACTIVITY_FEET: WithingsMeasurementSensorEntityDescription(
|
(
|
||||||
|
MeasurementType.ELECTRODERMAL_ACTIVITY_FEET,
|
||||||
|
None,
|
||||||
|
): WithingsMeasurementSensorEntityDescription(
|
||||||
key="electrodermal_activity_feet",
|
key="electrodermal_activity_feet",
|
||||||
measurement_type=MeasurementType.ELECTRODERMAL_ACTIVITY_FEET,
|
measurement_type=MeasurementType.ELECTRODERMAL_ACTIVITY_FEET,
|
||||||
translation_key="electrodermal_activity_feet",
|
translation_key="electrodermal_activity_feet",
|
||||||
native_unit_of_measurement=PERCENTAGE,
|
native_unit_of_measurement=PERCENTAGE,
|
||||||
entity_registry_enabled_default=False,
|
entity_registry_enabled_default=False,
|
||||||
),
|
),
|
||||||
MeasurementType.ELECTRODERMAL_ACTIVITY_LEFT_FOOT: WithingsMeasurementSensorEntityDescription(
|
(
|
||||||
|
MeasurementType.ELECTRODERMAL_ACTIVITY_LEFT_FOOT,
|
||||||
|
None,
|
||||||
|
): WithingsMeasurementSensorEntityDescription(
|
||||||
key="electrodermal_activity_left_foot",
|
key="electrodermal_activity_left_foot",
|
||||||
measurement_type=MeasurementType.ELECTRODERMAL_ACTIVITY_LEFT_FOOT,
|
measurement_type=MeasurementType.ELECTRODERMAL_ACTIVITY_LEFT_FOOT,
|
||||||
translation_key="electrodermal_activity_left_foot",
|
translation_key="electrodermal_activity_left_foot",
|
||||||
native_unit_of_measurement=PERCENTAGE,
|
native_unit_of_measurement=PERCENTAGE,
|
||||||
entity_registry_enabled_default=False,
|
entity_registry_enabled_default=False,
|
||||||
),
|
),
|
||||||
MeasurementType.ELECTRODERMAL_ACTIVITY_RIGHT_FOOT: WithingsMeasurementSensorEntityDescription(
|
(
|
||||||
|
MeasurementType.ELECTRODERMAL_ACTIVITY_RIGHT_FOOT,
|
||||||
|
None,
|
||||||
|
): WithingsMeasurementSensorEntityDescription(
|
||||||
key="electrodermal_activity_right_foot",
|
key="electrodermal_activity_right_foot",
|
||||||
measurement_type=MeasurementType.ELECTRODERMAL_ACTIVITY_RIGHT_FOOT,
|
measurement_type=MeasurementType.ELECTRODERMAL_ACTIVITY_RIGHT_FOOT,
|
||||||
translation_key="electrodermal_activity_right_foot",
|
translation_key="electrodermal_activity_right_foot",
|
||||||
|
@ -650,6 +683,7 @@ async def async_setup_entry(
|
||||||
measurement_coordinator, MEASUREMENT_SENSORS[measurement_type]
|
measurement_coordinator, MEASUREMENT_SENSORS[measurement_type]
|
||||||
)
|
)
|
||||||
for measurement_type in new_measurement_types
|
for measurement_type in new_measurement_types
|
||||||
|
if measurement_type in MEASUREMENT_SENSORS
|
||||||
)
|
)
|
||||||
|
|
||||||
measurement_coordinator.async_add_listener(_async_measurement_listener)
|
measurement_coordinator.async_add_listener(_async_measurement_listener)
|
||||||
|
@ -796,14 +830,23 @@ class WithingsMeasurementSensor(
|
||||||
@property
|
@property
|
||||||
def native_value(self) -> float:
|
def native_value(self) -> float:
|
||||||
"""Return the state of the entity."""
|
"""Return the state of the entity."""
|
||||||
return self.coordinator.data[self.entity_description.measurement_type]
|
return self.coordinator.data[
|
||||||
|
(
|
||||||
|
self.entity_description.measurement_type,
|
||||||
|
self.entity_description.measurement_position,
|
||||||
|
)
|
||||||
|
]
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def available(self) -> bool:
|
def available(self) -> bool:
|
||||||
"""Return if the sensor is available."""
|
"""Return if the sensor is available."""
|
||||||
return (
|
return (
|
||||||
super().available
|
super().available
|
||||||
and self.entity_description.measurement_type in self.coordinator.data
|
and (
|
||||||
|
self.entity_description.measurement_type,
|
||||||
|
self.entity_description.measurement_position,
|
||||||
|
)
|
||||||
|
in self.coordinator.data
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -401,7 +401,7 @@ aiowatttime==0.1.1
|
||||||
aiowebostv==0.4.0
|
aiowebostv==0.4.0
|
||||||
|
|
||||||
# homeassistant.components.withings
|
# homeassistant.components.withings
|
||||||
aiowithings==2.1.0
|
aiowithings==3.0.1
|
||||||
|
|
||||||
# homeassistant.components.yandex_transport
|
# homeassistant.components.yandex_transport
|
||||||
aioymaps==1.2.2
|
aioymaps==1.2.2
|
||||||
|
|
|
@ -374,7 +374,7 @@ aiowatttime==0.1.1
|
||||||
aiowebostv==0.4.0
|
aiowebostv==0.4.0
|
||||||
|
|
||||||
# homeassistant.components.withings
|
# homeassistant.components.withings
|
||||||
aiowithings==2.1.0
|
aiowithings==3.0.1
|
||||||
|
|
||||||
# homeassistant.components.yandex_transport
|
# homeassistant.components.yandex_transport
|
||||||
aioymaps==1.2.2
|
aioymaps==1.2.2
|
||||||
|
|
|
@ -323,5 +323,476 @@
|
||||||
"modelid": 45,
|
"modelid": 45,
|
||||||
"model": "BPM Connect",
|
"model": "BPM Connect",
|
||||||
"comment": null
|
"comment": null
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"grpid": 5149666502,
|
||||||
|
"attrib": 0,
|
||||||
|
"date": 1560000000,
|
||||||
|
"created": 1560000000,
|
||||||
|
"modified": 1560000000,
|
||||||
|
"category": 1,
|
||||||
|
"deviceid": "51e8d0e7d16da9ff673accf10958ca94fea55d6e",
|
||||||
|
"hash_deviceid": "51e8d0e7d16da9ff673accf10958ca94fea55d6e",
|
||||||
|
"measures": [
|
||||||
|
{
|
||||||
|
"value": 95854,
|
||||||
|
"type": 1,
|
||||||
|
"unit": -3,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 7718,
|
||||||
|
"type": 5,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 7
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 7718,
|
||||||
|
"type": 5,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 7
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 1866,
|
||||||
|
"type": 8,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 7
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 1866,
|
||||||
|
"type": 8,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 7
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 7338,
|
||||||
|
"type": 76,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 7
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 5205,
|
||||||
|
"type": 77,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 7
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 380,
|
||||||
|
"type": 88,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 7
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 2162,
|
||||||
|
"type": 168,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 7
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 3043,
|
||||||
|
"type": 169,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 7
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 32,
|
||||||
|
"type": 170,
|
||||||
|
"unit": -1,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 7
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 4000,
|
||||||
|
"type": 173,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 12
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 1350,
|
||||||
|
"type": 173,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 10
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 469,
|
||||||
|
"type": 173,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 3
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 1406,
|
||||||
|
"type": 173,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 11
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 491,
|
||||||
|
"type": 173,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 2
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 1209,
|
||||||
|
"type": 174,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 12
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 241,
|
||||||
|
"type": 174,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 10
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 107,
|
||||||
|
"type": 174,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 3
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 207,
|
||||||
|
"type": 174,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 11
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 99,
|
||||||
|
"type": 174,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 2
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 3823,
|
||||||
|
"type": 175,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 12
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 1277,
|
||||||
|
"type": 175,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 10
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 442,
|
||||||
|
"type": 175,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 3
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 1330,
|
||||||
|
"type": 175,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 11
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 463,
|
||||||
|
"type": 175,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 2
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 2263,
|
||||||
|
"type": 226,
|
||||||
|
"unit": 0,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 7
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 19467,
|
||||||
|
"type": 6,
|
||||||
|
"unit": -3
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"modelid": 10,
|
||||||
|
"model": "Body Scan",
|
||||||
|
"comment": null
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"grpid": 5156052100,
|
||||||
|
"attrib": 0,
|
||||||
|
"date": 1560000000,
|
||||||
|
"created": 1560000000,
|
||||||
|
"modified": 1560000000,
|
||||||
|
"category": 1,
|
||||||
|
"deviceid": "51e8d0e7d16da9ff673accf10958ca94fea55d6e",
|
||||||
|
"hash_deviceid": "51e8d0e7d16da9ff673accf10958ca94fea55d6e",
|
||||||
|
"measures": [
|
||||||
|
{
|
||||||
|
"value": 96440,
|
||||||
|
"type": 1,
|
||||||
|
"unit": -3,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 7863,
|
||||||
|
"type": 5,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 7
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 7863,
|
||||||
|
"type": 5,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 7
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 1780,
|
||||||
|
"type": 8,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 7
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 1780,
|
||||||
|
"type": 8,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 7
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 7475,
|
||||||
|
"type": 76,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 7
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 5296,
|
||||||
|
"type": 77,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 7
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 387,
|
||||||
|
"type": 88,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 7
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 2175,
|
||||||
|
"type": 168,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 7
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 3120,
|
||||||
|
"type": 169,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 7
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 31,
|
||||||
|
"type": 170,
|
||||||
|
"unit": -1,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 7
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 4049,
|
||||||
|
"type": 173,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 12
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 1384,
|
||||||
|
"type": 173,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 10
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 505,
|
||||||
|
"type": 173,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 3
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 1405,
|
||||||
|
"type": 173,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 11
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 518,
|
||||||
|
"type": 173,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 2
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 1099,
|
||||||
|
"type": 174,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 12
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 245,
|
||||||
|
"type": 174,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 10
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 103,
|
||||||
|
"type": 174,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 3
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 233,
|
||||||
|
"type": 174,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 11
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 99,
|
||||||
|
"type": 174,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 2
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 3870,
|
||||||
|
"type": 175,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 12
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 1309,
|
||||||
|
"type": 175,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 10
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 477,
|
||||||
|
"type": 175,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 3
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 1329,
|
||||||
|
"type": 175,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 11
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 489,
|
||||||
|
"type": 175,
|
||||||
|
"unit": -2,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 2
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 2308,
|
||||||
|
"type": 226,
|
||||||
|
"unit": 0,
|
||||||
|
"algo": 218235904,
|
||||||
|
"fm": 3,
|
||||||
|
"position": 7
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"value": 18457,
|
||||||
|
"type": 6,
|
||||||
|
"unit": -3
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"modelid": 10,
|
||||||
|
"model": "Body Scan",
|
||||||
|
"comment": null
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
|
@ -5,30 +5,166 @@
|
||||||
'has_valid_external_webhook_url': True,
|
'has_valid_external_webhook_url': True,
|
||||||
'received_activity_data': False,
|
'received_activity_data': False,
|
||||||
'received_measurements': list([
|
'received_measurements': list([
|
||||||
1,
|
list([
|
||||||
8,
|
1,
|
||||||
5,
|
None,
|
||||||
76,
|
]),
|
||||||
88,
|
list([
|
||||||
4,
|
5,
|
||||||
12,
|
None,
|
||||||
71,
|
]),
|
||||||
73,
|
list([
|
||||||
6,
|
8,
|
||||||
9,
|
None,
|
||||||
10,
|
]),
|
||||||
11,
|
list([
|
||||||
54,
|
76,
|
||||||
77,
|
None,
|
||||||
91,
|
]),
|
||||||
123,
|
list([
|
||||||
155,
|
77,
|
||||||
168,
|
None,
|
||||||
169,
|
]),
|
||||||
198,
|
list([
|
||||||
197,
|
88,
|
||||||
196,
|
None,
|
||||||
170,
|
]),
|
||||||
|
list([
|
||||||
|
168,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
169,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
170,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
173,
|
||||||
|
12,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
173,
|
||||||
|
10,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
173,
|
||||||
|
3,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
173,
|
||||||
|
11,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
173,
|
||||||
|
2,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
174,
|
||||||
|
12,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
174,
|
||||||
|
10,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
174,
|
||||||
|
3,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
174,
|
||||||
|
11,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
174,
|
||||||
|
2,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
175,
|
||||||
|
12,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
175,
|
||||||
|
10,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
175,
|
||||||
|
3,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
175,
|
||||||
|
11,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
175,
|
||||||
|
2,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
0,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
6,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
4,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
12,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
71,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
73,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
9,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
10,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
11,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
54,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
91,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
123,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
155,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
198,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
197,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
196,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
]),
|
]),
|
||||||
'received_sleep_data': True,
|
'received_sleep_data': True,
|
||||||
'received_workout_data': True,
|
'received_workout_data': True,
|
||||||
|
@ -41,30 +177,166 @@
|
||||||
'has_valid_external_webhook_url': False,
|
'has_valid_external_webhook_url': False,
|
||||||
'received_activity_data': False,
|
'received_activity_data': False,
|
||||||
'received_measurements': list([
|
'received_measurements': list([
|
||||||
1,
|
list([
|
||||||
8,
|
1,
|
||||||
5,
|
None,
|
||||||
76,
|
]),
|
||||||
88,
|
list([
|
||||||
4,
|
5,
|
||||||
12,
|
None,
|
||||||
71,
|
]),
|
||||||
73,
|
list([
|
||||||
6,
|
8,
|
||||||
9,
|
None,
|
||||||
10,
|
]),
|
||||||
11,
|
list([
|
||||||
54,
|
76,
|
||||||
77,
|
None,
|
||||||
91,
|
]),
|
||||||
123,
|
list([
|
||||||
155,
|
77,
|
||||||
168,
|
None,
|
||||||
169,
|
]),
|
||||||
198,
|
list([
|
||||||
197,
|
88,
|
||||||
196,
|
None,
|
||||||
170,
|
]),
|
||||||
|
list([
|
||||||
|
168,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
169,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
170,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
173,
|
||||||
|
12,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
173,
|
||||||
|
10,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
173,
|
||||||
|
3,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
173,
|
||||||
|
11,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
173,
|
||||||
|
2,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
174,
|
||||||
|
12,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
174,
|
||||||
|
10,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
174,
|
||||||
|
3,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
174,
|
||||||
|
11,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
174,
|
||||||
|
2,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
175,
|
||||||
|
12,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
175,
|
||||||
|
10,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
175,
|
||||||
|
3,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
175,
|
||||||
|
11,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
175,
|
||||||
|
2,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
0,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
6,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
4,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
12,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
71,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
73,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
9,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
10,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
11,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
54,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
91,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
123,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
155,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
198,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
197,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
196,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
]),
|
]),
|
||||||
'received_sleep_data': True,
|
'received_sleep_data': True,
|
||||||
'received_workout_data': True,
|
'received_workout_data': True,
|
||||||
|
@ -77,30 +349,166 @@
|
||||||
'has_valid_external_webhook_url': True,
|
'has_valid_external_webhook_url': True,
|
||||||
'received_activity_data': False,
|
'received_activity_data': False,
|
||||||
'received_measurements': list([
|
'received_measurements': list([
|
||||||
1,
|
list([
|
||||||
8,
|
1,
|
||||||
5,
|
None,
|
||||||
76,
|
]),
|
||||||
88,
|
list([
|
||||||
4,
|
5,
|
||||||
12,
|
None,
|
||||||
71,
|
]),
|
||||||
73,
|
list([
|
||||||
6,
|
8,
|
||||||
9,
|
None,
|
||||||
10,
|
]),
|
||||||
11,
|
list([
|
||||||
54,
|
76,
|
||||||
77,
|
None,
|
||||||
91,
|
]),
|
||||||
123,
|
list([
|
||||||
155,
|
77,
|
||||||
168,
|
None,
|
||||||
169,
|
]),
|
||||||
198,
|
list([
|
||||||
197,
|
88,
|
||||||
196,
|
None,
|
||||||
170,
|
]),
|
||||||
|
list([
|
||||||
|
168,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
169,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
170,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
173,
|
||||||
|
12,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
173,
|
||||||
|
10,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
173,
|
||||||
|
3,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
173,
|
||||||
|
11,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
173,
|
||||||
|
2,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
174,
|
||||||
|
12,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
174,
|
||||||
|
10,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
174,
|
||||||
|
3,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
174,
|
||||||
|
11,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
174,
|
||||||
|
2,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
175,
|
||||||
|
12,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
175,
|
||||||
|
10,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
175,
|
||||||
|
3,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
175,
|
||||||
|
11,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
175,
|
||||||
|
2,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
0,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
6,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
4,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
12,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
71,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
73,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
9,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
10,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
11,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
54,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
91,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
123,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
155,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
198,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
197,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
|
list([
|
||||||
|
196,
|
||||||
|
None,
|
||||||
|
]),
|
||||||
]),
|
]),
|
||||||
'received_sleep_data': True,
|
'received_sleep_data': True,
|
||||||
'received_workout_data': True,
|
'received_workout_data': True,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue