Arrêtez d'automatiser Home Assistant à la dure : « Continuer en cas d'erreur » change tout
Avez-vous déjà vu une domotique Home Assistant s'arrêter parce que quelque chose s'est mal passé lors d'une des actions ? Cela est parfois souhaitable, mais dans certaines circonstances, il peut être préférable que le reste de l'automatisation continue de s'exécuter même si l'une des actions échoue. Grâce à une récente mise à jour de Home Assistant, il est désormais possible de faire fonctionner vos automatisations même lorsqu'une erreur se produit.
Sommaire
4 plans Home Assistant qui m'ont épargné des heures d'efforts
Vous n'avez pas besoin de réinventer la roue.
Les automatisations Home Assistant ont toujours été vulnérables aux erreurs
Une action ratée pourrait tout faire tomber
Jusqu’à récemment, certains automatismes Home Assistant présentaient une faiblesse. Si une action de votre automatisation échouait, toute l'automatisation s'arrêterait à ce stade et aucune des actions suivantes ne serait exécutée.
Les actions peuvent échouer pour diverses raisons, par exemple si un service est introuvable, si l'entité cible tente d'effectuer une action que l'entité cible ne peut pas effectuer ou lorsqu'une intégration rencontre des problèmes de communication avec un appareil. Lorsque cela se produit, Home Assistant génère une erreur pouvant entraîner l’arrêt de l’automatisation.
Il y avait une option pour modifier ce comportement par défaut en ajoutant continue_on_error: true au YAML d’une automatisation. Cependant, jusqu'à la récente mise à jour, il n'était pas possible de modifier ce paramètre dans l'interface utilisateur de l'éditeur d'automatisation.
Maintenir les automatisations en marche signifiait plus de travail
Il fallait construire autour de l'échec
La fonctionnalité Continuer en cas d'erreur existait déjà en option pour les automatisations YAML, mais si vous souhaitiez les créer dans l'éditeur d'automatisation, la fonctionnalité n'était pas disponible. Cela signifiait que vous deviez apporter des modifications à votre automatisation pour gérer les erreurs et garantir que votre automatisation continuerait à fonctionner.
Cela impliquait des solutions de contournement telles que la division des automatisations en branches parallèles, afin qu'une branche défaillante n'empêche pas les autres de s'exécuter. Une autre option consistait à vérifier qu'une action serait exécutée avant de l'exécuter réellement et à ignorer cette action spécifique en cas d'échec.
Tout cela signifiait que vos automatisations devaient être beaucoup plus complexes que nécessaire. S'assurer qu'une automatisation continuerait à fonctionner si une action produisait une erreur nécessitait souvent une planification minutieuse.
Continuer en cas d'erreur rend les automatisations plus résilientes
Les étapes ratées ne sont plus à craindre
La bonne nouvelle est que Continuer en cas d'erreur a enfin été ajouté à l'éditeur d'automatisation de Home Assistant. Cela signifie que vous pouvez appliquer le paramètre à n'importe quelle action à l'aide de l'interface utilisateur plutôt que d'avoir à ajouter manuellement la ligne au YAML de l'automatisation. Bien que Continuer en cas d'erreur soit désactivé par défaut, vous pouvez l'activer pour toute action de votre automatisation.
Pour activer Continuer en cas d'erreur pour une action, cliquez sur le bouton icône à trois points pour cette action. Sélectionner Continuer en cas d'erreur. Vous verrez un Continuer sur l'icône d'erreur apparaissent à côté de l'action. Pour désactiver Continuer en cas d'erreur, cliquez sur le bouton icône à trois points et sélectionnez Continuer en cas d'erreur encore. L'icône devrait maintenant disparaître. Dans la vue YAML de l'automatisation, vous verrez continue_on_error: true pour toutes les actions pour lesquelles Continuer en cas d'erreur est activé. Vous pouvez également ajouter manuellement cette ligne dans YAML plutôt que d'utiliser l'interface utilisateur.
Vous avez toujours besoin d’une bonne conception d’automatisation
Continuer sur l'erreur rend les choses plus faciles
Si Continuer en cas d'erreur est si utile, pourquoi n'est-il pas activé par défaut ? La raison en est que vous ne souhaitez pas nécessairement qu'une automatisation continue de fonctionner si une action échoue.
Si Continuer en cas d'erreur était activé par défaut, chaque automatisation s'exécuterait jusqu'à la fin, quel que soit le nombre d'actions intermédiaires ayant échoué. Vous ignorerez peut-être alors totalement que les actions échouaient puisque les autres actions se dérouleraient toujours comme prévu. L'arrêt d'une automatisation lorsqu'une action échoue permet de détecter beaucoup plus facilement les problèmes.
La vérité est que vous ne voulez pas toujours ignorer toutes les erreurs qui surviennent dans vos automatisations. Cependant, il existe de nombreuses situations dans lesquelles vous souhaitez que l'automatisation se termine, même si quelque chose ne va pas.
Par exemple, si vous avez une routine au coucher qui effectue toute une série d'actions, notamment le verrouillage de votre porte d'entrée, vous ne voulez pas que votre porte d'entrée reste déverrouillée toute la nuit simplement parce qu'il y a eu un problème pour éteindre la prise intelligente de votre téléviseur. La porte d'entrée doit se verrouiller quoi qu'il arrive, donc utiliser Continuer en cas d'erreur dans cette situation en vaut vraiment la peine.
D'autres cas où la fonctionnalité peut être utile incluent les notifications critiques, par exemple lorsqu'une fuite d'eau ou de la fumée est détectée, ou pour les automatisations de chauffage où vous ne voulez pas que votre chauffage continue de fonctionner toute la nuit simplement parce qu'une partie de l'automatisation est en panne.
Cela ne diminue en rien l’importance d’une bonne conception d’automatisation. Cela signifie simplement qu'il est plus rapide et plus facile de décider quelles actions doivent arrêter votre automatisation dans son élan en cas d'échec, et lesquelles peuvent être ignorées.
- Dimensions (extérieur)
-
4,41″L x 4,41″l x 1,26″H
- Poids
-
12 onces
Home Assistant Green est un hub pré-construit directement par l'équipe Home Assistant. Il s'agit d'une solution plug-and-play qui comprend tout ce dont vous avez besoin pour configurer Home Assistant chez vous sans avoir besoin d'installer le logiciel vous-même.
Une petite solution avec un grand impact
Continuer sur erreur n'est pas nouveau, mais c'est quelque chose qui manque cruellement dans l'éditeur d'automatisation depuis un certain temps. La possibilité de modifier ce paramètre rapidement et facilement dans l'interface utilisateur facilite encore davantage la création d'automatisations qui font ce que vous voulez, quand vous le souhaitez.
