Safe get for backflush status in lamarzocco (#145559)

* Safe get for backflush status in lamarzocco

* add correct default
This commit is contained in:
Josef Zweck 2025-05-25 14:01:15 +02:00 committed by GitHub
parent 6b1484a7f0
commit d0bc71752b
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 9 additions and 3 deletions

View File

@ -61,7 +61,10 @@ ENTITIES: tuple[LaMarzoccoBinarySensorEntityDescription, ...] = (
device_class=BinarySensorDeviceClass.RUNNING, device_class=BinarySensorDeviceClass.RUNNING,
is_on_fn=( is_on_fn=(
lambda machine: cast( lambda machine: cast(
BackFlush, machine.dashboard.config[WidgetType.CM_BACK_FLUSH] BackFlush,
machine.dashboard.config.get(
WidgetType.CM_BACK_FLUSH, BackFlush(status=BackFlushStatus.OFF)
),
).status ).status
is BackFlushStatus.REQUESTED is BackFlushStatus.REQUESTED
), ),

View File

@ -5,7 +5,7 @@ from dataclasses import dataclass
from datetime import datetime from datetime import datetime
from typing import cast from typing import cast
from pylamarzocco.const import ModelName, WidgetType from pylamarzocco.const import BackFlushStatus, ModelName, WidgetType
from pylamarzocco.models import ( from pylamarzocco.models import (
BackFlush, BackFlush,
BaseWidgetOutput, BaseWidgetOutput,
@ -106,7 +106,10 @@ ENTITIES: tuple[LaMarzoccoSensorEntityDescription, ...] = (
device_class=SensorDeviceClass.TIMESTAMP, device_class=SensorDeviceClass.TIMESTAMP,
value_fn=( value_fn=(
lambda config: cast( lambda config: cast(
BackFlush, config[WidgetType.CM_BACK_FLUSH] BackFlush,
config.get(
WidgetType.CM_BACK_FLUSH, BackFlush(status=BackFlushStatus.OFF)
),
).last_cleaning_start_time ).last_cleaning_start_time
), ),
entity_category=EntityCategory.DIAGNOSTIC, entity_category=EntityCategory.DIAGNOSTIC,