From 2e45306af075c366de863ce005fe7a01144b762f Mon Sep 17 00:00:00 2001 From: Geert Meersman Date: Fri, 26 Jul 2024 17:51:12 +0200 Subject: [PATCH] feat: add reset mower blades button --- custom_components/robonect/button.py | 6 ++++++ custom_components/robonect/entity.py | 5 +++-- custom_components/robonect/manifest.json | 2 +- custom_components/robonect/translations/de.json | 3 +++ custom_components/robonect/translations/en.json | 3 +++ custom_components/robonect/translations/fr.json | 3 +++ custom_components/robonect/translations/nl.json | 3 +++ 7 files changed, 22 insertions(+), 3 deletions(-) diff --git a/custom_components/robonect/button.py b/custom_components/robonect/button.py index b0e4d80..7a3879c 100644 --- a/custom_components/robonect/button.py +++ b/custom_components/robonect/button.py @@ -47,6 +47,12 @@ class RobonectButtonEntityDescription(ButtonEntityDescription): params={"reset": 1}, category="NONE", ), + RobonectButtonEntityDescription( + key="blades_reset", + icon="mdi:backup-restore", + cmd="reset_blades", + category="NONE", + ), RobonectButtonEntityDescription( key="home", icon="mdi:home-import-outline", diff --git a/custom_components/robonect/entity.py b/custom_components/robonect/entity.py index 341b3ef..90e2e75 100644 --- a/custom_components/robonect/entity.py +++ b/custom_components/robonect/entity.py @@ -105,9 +105,10 @@ async def async_send_command( try: response = await self.coordinator.client.async_cmd(command, params) except Exception as exception: - response = {"successful": False, "exception": f"{exception}"} + _LOGGER.error(f"Exception during async command execution: {exception}") + response = {"successful": False, "exception": str(exception)} await self.async_fire_event( - response | {"command": command, "params": params} + {**response, "command": command, "params": params} ) elif self.entry.data[CONF_MQTT_ENABLED] is True and "topic" in kwargs: _LOGGER.debug( diff --git a/custom_components/robonect/manifest.json b/custom_components/robonect/manifest.json index 965a67e..d221ae6 100644 --- a/custom_components/robonect/manifest.json +++ b/custom_components/robonect/manifest.json @@ -17,7 +17,7 @@ "automower/mqtt" ], "requirements": [ - "aiorobonect>=1.0.8", + "aiorobonect>=1.1.3", "jsonpath" ], "version": "v1.7.2" diff --git a/custom_components/robonect/translations/de.json b/custom_components/robonect/translations/de.json index b46cee1..accdba9 100644 --- a/custom_components/robonect/translations/de.json +++ b/custom_components/robonect/translations/de.json @@ -664,6 +664,9 @@ "error_reset": { "name": "Fehler zur\u00fccksetzen" }, + "blades_reset": { + "name": "Messer zur\u00fccksetzen" + }, "start": { "name": "Start" }, diff --git a/custom_components/robonect/translations/en.json b/custom_components/robonect/translations/en.json index 4cdf3f9..aa1eeba 100644 --- a/custom_components/robonect/translations/en.json +++ b/custom_components/robonect/translations/en.json @@ -664,6 +664,9 @@ "error_reset": { "name": "Reset error" }, + "blades_reset": { + "name": "Reset blades" + }, "start": { "name": "Start" }, diff --git a/custom_components/robonect/translations/fr.json b/custom_components/robonect/translations/fr.json index 90ec3c2..b67c083 100644 --- a/custom_components/robonect/translations/fr.json +++ b/custom_components/robonect/translations/fr.json @@ -664,6 +664,9 @@ "error_reset": { "name": "R\u00e9initialiser l'erreur" }, + "blades_reset": { + "name": "R\u00e9initialiser les lames" + }, "start": { "name": "D\u00e9marrer" }, diff --git a/custom_components/robonect/translations/nl.json b/custom_components/robonect/translations/nl.json index 0540139..ac29ce9 100644 --- a/custom_components/robonect/translations/nl.json +++ b/custom_components/robonect/translations/nl.json @@ -664,6 +664,9 @@ "error_reset": { "name": "Fout resetten" }, + "blades_reset": { + "name": "Messen resetten" + }, "start": { "name": "Start" },