Get stiebel_eltron integration to bronze level (#174953)

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: Markus Tuominen <3738613+Markus98@users.noreply.github.com>
This commit is contained in:
Manuel Stahl
2026-07-06 15:38:20 +03:00
committed by GitHub
co-authored by Claude Sonnet 4.6 Markus Tuominen
parent 229e009dfd
commit e0576ac675
4 changed files with 77 additions and 13 deletions
@@ -42,7 +42,6 @@ class StiebelEltronDataCoordinator(DataUpdateCoordinator[None]):
# the register values), so there is nothing to diff against.
always_update=True,
)
self._model = model
self.api_client = LwzStiebelEltronAPI(host=host, port=port)
self.device_info = DeviceInfo(
identifiers={(DOMAIN, entry.entry_id)},
@@ -58,21 +57,11 @@ class StiebelEltronDataCoordinator(DataUpdateCoordinator[None]):
_LOGGER.debug("Closing connection to %s", self.host)
await self.api_client.close()
@property
def is_connected(self) -> bool:
"""Check modbus client connection status."""
return self.api_client.is_connected
@property
def host(self) -> str:
"""Return the host address of the Stiebel Eltron ISG."""
return self.api_client.host
@property
def model(self) -> str:
"""Return the controller model name of the Stiebel Eltron ISG."""
return self._model.name
@override
async def _async_update_data(self) -> None:
"""Fetch the latest data from the source."""
@@ -7,5 +7,6 @@
"integration_type": "device",
"iot_class": "local_polling",
"loggers": ["pymodbus", "pystiebeleltron"],
"quality_scale": "bronze",
"requirements": ["pystiebeleltron==0.2.5"]
}
@@ -0,0 +1,76 @@
rules:
# Bronze
action-setup:
status: exempt
comment: Integration does not register custom actions.
appropriate-polling: done
brands: done
common-modules: done
config-flow-test-coverage: done
config-flow: done
dependency-transparency: done
docs-actions:
status: exempt
comment: Integration does not register custom actions.
docs-conditions:
status: exempt
comment: Integration does not register custom conditions.
docs-high-level-description: done
docs-installation-instructions: done
docs-removal-instructions: done
docs-triggers:
status: exempt
comment: Integration does not register custom triggers.
entity-event-setup: done
entity-unique-id: done
has-entity-name: done
runtime-data: done
test-before-configure: done
test-before-setup: done
unique-config-entry: done
# Silver
action-exceptions: todo
config-entry-unloading: todo
docs-configuration-parameters:
status: exempt
comment: Integration does not have an options flow.
docs-installation-parameters: done
entity-unavailable: done
integration-owner: done
log-when-unavailable: done
parallel-updates: done
reauthentication-flow:
status: exempt
comment: Integration does not require reauthentication.
test-coverage: done
# Gold
devices: done
diagnostics: todo
discovery-update-info: todo
discovery: todo
docs-data-update: todo
docs-examples: todo
docs-known-limitations: todo
docs-supported-devices: done
docs-supported-functions: done
docs-troubleshooting: todo
docs-use-cases: todo
dynamic-devices: todo
entity-category: done
entity-device-class: done
entity-disabled-by-default: done
entity-translations: todo
exception-translations: todo
icon-translations: todo
reconfiguration-flow: todo
repair-issues: todo
stale-devices: todo
# Platinum
async-dependency: done
inject-websession:
status: exempt
comment: Integration does not use web sessions.
strict-typing: todo
-2
View File
@@ -862,7 +862,6 @@ INTEGRATIONS_WITHOUT_QUALITY_SCALE_FILE = [
"statsd",
"steam_online",
"steamist",
"stiebel_eltron",
"stream",
"streamlabswater",
"subaru",
@@ -1827,7 +1826,6 @@ INTEGRATIONS_WITHOUT_SCALE = [
"statsd",
"steam_online",
"steamist",
"stiebel_eltron",
"stream",
"streamlabswater",
"stookwijzer",