Merci de ton implication
Je pense que la possibilité d’afficher du texte va bien au delà de mon utilité spécifique à cet aspirateur.
Idées :
- Bloc « Anniversaires du jour » qui indiquerait le nom des gens à qui le fêter.
- Bloc « Message perso » qui changerait en fonction des besoin.
- Bloc « Maxime du jour » (perso ma console m’affiche toujours une petite pensée de Chuck Norris, là c’est « Chuck Norris peut détruire le vide »).
- Bloc « Dernier SMS » qui afficherait le dernier SMS reçu.
- Bloc « Message d’erreur » d’une commande spécifique (comme wakeonlan ou autre commande régulièrement exécutée depuis le Raspberry). Impossible de liste toutes les erreurs de toutes les commandes et on perdrait la possibilité de préciser une erreur ou d’afficher un texte personnalisé.
- …
Tout ça facilement mis en place via du MQTT par le dev et sans avoir à toucher au code source de Gladys, car :
- C’est compliqué.
- Nous sommes dépendant de vous.
- Il vous faut du temps.
- C’est bloquant le temps que ce soit développé.
- Ça ne fait pas sens de développer des besoins perso dans Gladys.
Au final, je pense qu’il faut continuer comme vous le faites, des constantes pour des valeurs mais il faut créer une Fonctionnalité ‹ Texte › qui permettrait d’afficher le texte de son choix.
De cette façon, si c’est un texte spécifique on peut l’afficher et si c’est un texte pouvant être mis en constante, on peut l’afficher le temps que les constantes et Fonctionnalités soient créées.
Car oui, c’est plus sympa de pouvoir utiliser la bonne Fonctionnalité, avec son unité et son icône.
Pour aller plus loin, il faudrait également développer la possibilité d’utiliser une valeur texte dans le déclencheur de scène « Changement d’état de l’appareil » et « Continuer seulement si ».
Et le top serait de permettre de personnaliser l’icône (ouais je suis chiant jusqu’au bout ).
Mon point de vue, c’est qu’il faut laisser une façon simple d’afficher ce que l’on veut afin que chaque bébé dev puisse faire ses petits scripts perso de façon autonome.
Pour en revenir à mon aspirateur, voici les infos qu’il peut me donner :
États que l’on pourrait définir dans des constantes Gladys :
Valeur ‹ docked › dans le topic ‹ state:state ›.
Valeur ‹ medium › dans le topic ‹ state:fan_speed ›.
Valeur ‹ Charging › dans le topic ‹ attributes:valetudo_state.name ›.
Valeur ‹ stop › dans le topic ‹ command_status:command ›.
Valeur ‹ state › dans le topic ‹ config:schema ›.
Valeur ‹ ok › dans le topic ‹ command_status:message ›.
→ Ces valeurs peuvent être globales OK mais demanderont à gérer toutes les valeurs et à vérifier sur d’autres aspi la concordance. Les valeurs dépendraient peut être des aspirateur et des logiciels…
Message plus spécifique où dont il faudrait réussir à trouver toutes les possibilités :
Valeur ‹ No error › dans le topic ‹ attributes:last_run_stats.errorDescription ›.
→ Bien plus spécifique à mon aspi je pense.
Valeurs vraiment spécifiques à mon aspi :
Valeur ‹ rockrobo › dans le topic ‹ config:name ›.
Valeur ‹ rockrobo › dans le topic ‹ config:unique_id ›.
Valeur ‹ Roborock › dans le topic ‹ config:device.manufacturer ›.
Valeur ‹ roborock.vacuum.s5 › dans le topic ‹ config:device.model ›.
Valeur ‹ rockrobo › dans le topic ‹ config:device.name ›.
Valeur ‹ rockrobo › dans le topic ‹ config:device.identifiers ›.
Valeur ‹ 0.10.9 › dans le topic ‹ config:device.sw_version ›.
→ Ce ne sont que des textes que l’on ne peut mettre dans des constantes.
Ici il indique les topics à utiliser, donc spécifique au logiciel et à sa config :
Valeur ‹ valetudo/rockrobo/command › dans le topic ‹ config:command_topic ›.
Valeur ‹ valetudo/rockrobo/state › dans le topic ‹ config:state_topic ›.
Valeur ‹ valetudo/rockrobo/set_fan_speed › dans le topic ‹ config:set_fan_speed_topic ›.
Valeur ‹ valetudo/rockrobo/custom_command › dans le topic ‹ config:send_command_topic ›.
Valeur ‹ valetudo/rockrobo/attributes › dans le topic ‹ config:json_attributes_topic ›.
→ Ce ne sont que des textes que l’on ne peut mettre dans des constantes.
Liste des valeurs possibles de certaines commandes :
Valeur ‹ start:pause:stop:return_home:battery:status:locate:clean_spot:fan_speed:send_command › dans le topic ‹ config:supported_features ›.
Valeur ‹ min:medium:high:max:mop › dans le topic ‹ config:fan_speed_list ›.
→ Pourrait plus ou moins être mis dans Gladys mais dépend des capacités des aspirateurs.
Gestion de dates (nombre de millisecondes depuis la 01/01/1970) :
Valeur ‹ 1676655003668 › dans le topic ‹ command_status:updated ›.
Valeur ‹ 1676655000000 › dans le topic ‹ attributes:last_run_stats.startTime ›.
Valeur ‹ 1676655003000 › dans le topic ‹ attributes:last_run_stats.endTime ›.
→ Même si je calcule la date, impossible de l’afficher dans Gladys.
→ Encore une idée de Fonctionnalité à développer
Au final, ça demande du dev de votre coté alors que tout pourrait passer par une Fonctionnalité Texte.
J’apprécie réellement Gladys, son visuel, sa simplicité d’utilisation…
C’est pour ça que je suis chiant et que je me dis que ce genre de fonctionnalité générique simplifierait la vie et te permettrait de ne pas perdre de temps sur des demandes plus spécifiques (autres que les miennes qui sont bien évidemment prioritaires )
Conclusion : Merci à toi et vive Gladys !