mirror of
https://github.com/home-assistant/core.git
synced 2026-09-04 18:15:04 -05:00
Velbus Exception translations (#159627)
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
This commit is contained in:
committed by
Bram Kragten
co-authored by
Copilot
parent
a697e63b8c
commit
2e157f1bc6
@@ -105,7 +105,10 @@ async def async_setup_entry(hass: HomeAssistant, entry: VelbusConfigEntry) -> bo
|
||||
try:
|
||||
await controller.connect()
|
||||
except VelbusConnectionFailed as error:
|
||||
raise ConfigEntryNotReady("Cannot connect to Velbus") from error
|
||||
raise ConfigEntryNotReady(
|
||||
translation_domain=DOMAIN,
|
||||
translation_key="connection_failed",
|
||||
) from error
|
||||
|
||||
task = hass.async_create_task(velbus_scan_task(controller, hass, entry.entry_id))
|
||||
entry.runtime_data = VelbusData(controller=controller, scan_task=task)
|
||||
|
||||
@@ -66,6 +66,7 @@ class VelbusEntity(Entity):
|
||||
self._channel.remove_on_status_update(self._on_update)
|
||||
|
||||
async def _on_update(self) -> None:
|
||||
"""Handle status updates from the channel."""
|
||||
self.async_write_ha_state()
|
||||
|
||||
|
||||
@@ -80,8 +81,13 @@ def api_call[_T: VelbusEntity, **_P](
|
||||
try:
|
||||
await func(self, *args, **kwargs)
|
||||
except OSError as exc:
|
||||
entity_name = self.name if isinstance(self.name, str) else "Unknown"
|
||||
raise HomeAssistantError(
|
||||
f"Could not execute {func.__name__} service for {self.name}"
|
||||
translation_domain=DOMAIN,
|
||||
translation_key="api_call_failed",
|
||||
translation_placeholders={
|
||||
"entity": entity_name,
|
||||
},
|
||||
) from exc
|
||||
|
||||
return cmd_wrapper
|
||||
|
||||
@@ -56,7 +56,7 @@ rules:
|
||||
entity-device-class: todo
|
||||
entity-disabled-by-default: done
|
||||
entity-translations: todo
|
||||
exception-translations: todo
|
||||
exception-translations: done
|
||||
icon-translations: todo
|
||||
reconfiguration-flow: todo
|
||||
repair-issues:
|
||||
|
||||
@@ -57,8 +57,14 @@
|
||||
}
|
||||
},
|
||||
"exceptions": {
|
||||
"api_call_failed": {
|
||||
"message": "Action execute for {entity} failed."
|
||||
},
|
||||
"clear_cache_failed": {
|
||||
"message": "Could not cleat the Velbus cache: {error}"
|
||||
"message": "Could not clear the Velbus cache: {error}"
|
||||
},
|
||||
"connection_failed": {
|
||||
"message": "Could not connect to Velbus."
|
||||
},
|
||||
"integration_not_found": {
|
||||
"message": "Integration \"{target}\" not found in registry."
|
||||
|
||||
Reference in New Issue
Block a user