Comme vous le savez, nous avons changé d’heure le week-end passé. Dans un des prochains articles, vous verrez comment j’ai planifié l’allumage et l’extinction de mon radiateur électrique. Aussi, je devais m’assurer que l’heure utilisée dans ma solution domotique était correcte. Je me suis alors aperçu qu’il n’y avait rien de prévu pour cela. Aussi, je me suis lancé dans quelques recherches et je vous propose une solution simple pour afficher l’heure dans Home Assistant.

Comment l’heure est-elle gérée ?

De base, Home Assistant est installé sur une solution Linux qui, je le rappelle, est un système d’exploitation. L’heure provient donc de cet OS. Pour consulter l’heure sur ce système, je vous suggère d’ouvrir un terminal Linux sur votre Chromebook et de taper la commande <date>. Cependant, il n’est pas simple de récupérer l’heure système sous Home Assistant car Il n’y a pas d’entité correspondante.

Comment récupérer l’heure courante dans Home Assistant ?

Au sein de Home Assistant, il existe une fonction nommée now() qui comme son nom l’indique permet de récupérer la date et l’heure actuelle. De plus, comme indiqué lors de la présentation de cette solution, il est possible d’utiliser le langage de programmation Python dans Home Assistant. Il existe une fonction spécifique pour formater la date nommée strftme . Vous pouvez trouver plus de détails sur cette fonction en suivant ce lien. En bas de la page, vous verrez alors un tableau indiquant les codes de formatage.

Je conçois que ce paragraphe paraît très technique mais nous allons tout de suite passer à la pratique.

Créons le code qui va bien

Passons au concret: Je me rends dans mon instance Home Assistant puis le menu <Outils de développement> et je sélectionne l’onglet <modèle>. Cet onglet permet en quelque sorte de tester du code:

Comme vous pouvez le constater sur votre instance, il y a déjà des bouts de code par défaut. La partie gauche sous <Éditeur de modèle> est modifiable et le résultat s’affiche automatiquement à droite.

Ainsi, avec deux lignes de code, j’ai pu afficher la date du jour et l’heure. Le format est défini avec des codes du type %d, %m,… c’est ce qui est indiqué dans le tableau que je vous ai indiqué précédement.

Je ne rentre pas dans les détails mais pour les spécialistes, ce code est un mix de Jinja et de python.

Afficher l’heure dans Home Assistant

J’ai donc le code nécessaire, il ne me reste  qu’à l’afficher sur mon tableau de bord. Pour cela, je vais créer une  nouvelle carte de type  Markdown et y inclure le code ci-dessous (Vous pouvez tout simplement le copier – coller):

Là encore, je ne rentre pas dans le détail mais les deux premiers caractères permettent de définir un texte en gras.

Une fois sauvegardé et votre carte ajustée, vous obtenez alors un tableau de bord équivalent à l’image ci-dessous:

Cerise sur le gâteau, l’heure se met à jour automatiquement :-)

Conclusion

A présent, vous avez un tableau de bord qui vous permet d’afficher l’heure dans Home Assistant de manière plutôt simple. Je suis conscient que cet article est un peu plus technique que d’habitude mais cela permet aussi de montrer toute la puissance de la solution Home Assistant. Aussi, je suis curieux de savoir si vous avez mis en place cette carte sur votre instance. En cas de soucis, n’hésitez pas à laisser un commentaire.

A bientôt…

Shares:

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.