Skip to content

Catalogue des blocs ​

Messages depuis 0.1.48 ​

Nouvelle catégorie Messages, trois blocs DE/EN/FR. Configuration, clés et envoi.

Depuis 0.1.50, également Signal · CallMeBot avec sa propre sélection de profil. Configurer l’application Signal.

BlocImageFonction
WhatsApp · CallMeBot
ugso_callmebot_action
CallMeBotProfil, texte/Jinja et journal. Envoi MQTT via l’application UGSo CallMeBot Whatsapp. Clés conservées dans le backend.
Signal · CallMeBot
ugso_callmebot_signal_action
CallMeBotProfil, texte/Jinja et journal. Envoi MQTT via l’application UGSo CallMeBot Signal. Clés conservées dans le backend.
Intégration WhatsApp
ugso_whatsapp_action
Intégration WhatsAppwhatsapp.send_message avec number ou target, ou notify.whatsapp. Destinataire sans +, message et compte facultatif. Configurer le jeton une fois dans HA.

Fonctions depuis 0.1.47 ​

Le catalogue actuel contient 169 types de blocs. Paramètres, export et limites.

BlocImageFonction
Définir une fonction d’action
procedures_defnoreturn
Définir une fonction d’actionSuite d’actions HA réutilisable ; jusqu’à huit paramètres via l’engrenage. Définition à côté de l’automatisation.
Appeler une fonction d’action
procedures_callnoreturn
Appeler une fonction d’actionAppel dynamique avec entrées d’argument. Export en groupe HA avec ses propres variables de paramètre.
Valeur de retour conditionnelle
ugso_function_result
Si renvoyer sinonSi / valeur / sinon ; seule la branche choisie est évaluée dans HA. Sans suite d’actions.

Depuis 0.1.45, la boîte à outils ne contient plus de doublons : nombre dans Mathématiques, texte dans Texte, couleur dans Couleur et groupe ET/OU/NON dans Logique. Valeurs contient uniquement le pourcentage. Les 163 types et projets existants restent pris en charge.

0.1.44 · 163 types. Tous les types ont été vérifiés pour les champs de sélection HA appropriés. Les images montrent les vrais blocs Blockly en français. Les variantes des menus déroulants ne sont pas des types supplémentaires. Les IDs techniques restent identiques en DE/EN/FR. Les textes et entités d’exemple gardent leurs valeurs d’origine. Sélection HA.

Déclencheurs orange, conditions violettes, valeurs vertes, actions bleues avec le thème UGSo Standard. Les autres palettes adaptent les couleurs. Usage et import · Paquets personnalisés.

Système ​

BlocImageFonction
Journal … message …
ugso_log_action
Journal … message …Écrit dans le journal système HA à l’exécution. La configuration HA peut filtrer info/debug.
Script HA … …
ugso_script_action
Script HA … …Appeler et attendre reprend après la fin du script. Transmettre les paramètres via l’action HA générique.
Actualiser l’entité …
ugso_update_action
Actualiser l’entité …Demande l’actualisation de l’entité dans HA. Prise en charge selon l’intégration ; ne définit pas un état.
Assistant … … …
ugso_helper_action
Assistant … … …Actions adaptées au type d’assistant. Rechercher une entité ou saisir son ID.

Valeurs ​

BlocImageFonction
Pourcentage
ugso_percent
PourcentageCurseur de 0 à 100, valeur numérique en pourcentage.

Date et heure ​

BlocImageFonction
Date du jour … …
ugso_date_condition
Date du jour … …Compare la date du jour, année comprise, dans le fuseau HA. Ne déclenche pas une automatisation.
L’heure actuelle est … …
ugso_time_compare
L’heure actuelle est … …Comparer l’heure locale HA ; intervalle avec début inclus et fin exclue, même à travers minuit. Condition, pas déclencheur.
L’heure actuelle … est … …
ugso_time_compare_input
L’heure actuelle … est … …Comparer une heure raccordée. Décocher l’heure actuelle affiche une entrée de date à comparer.
Heure actuelle comme date
ugso_time_now
Heure actuelle comme dateDate HA avec fuseau horaire, pour les calculs ou le formatage.
Date calculée …
ugso_time_boundary
Date calculée …Début du jour, du jour suivant, de la semaine (lundi), du mois ou de l’année dans le fuseau HA.
Prochain événement solaire … décalage (minutes) …
ugso_time_sun
Prochain événement solaire … décalage (minutes) …Prochain événement de sun.sun en heure locale HA, éventuellement demain. Une valeur absente provoque une erreur de modèle.
Calculer la date … … … …
ugso_time_shift
Calculer la date … … … …Ajouter ou soustraire une durée à une date ; millisecondes, secondes, minutes, heures ou jours. Nombre fini requis.
Date … au format …
ugso_time_format
Date … au format …Texte formaté ou temps Unix pour l’affichage ou les variables. Utiliser la date pour les calculs.

Conversion ​

BlocImageFonction
Convertir en nombre …
ugso_convert_number
Convertir en nombre …HA float() : nombre décimal complet, sans préfixe parseFloat ni valeur de secours implicite. Pour comparaisons, variables et calculs de dates, pas pour un seuil fixe de déclencheur.
Convertir en booléen …
ugso_convert_boolean
Convertir en booléen …HA bool() : true/false, on/off, yes/no, 1/0. Une valeur non reconnue provoque une erreur de modèle.
Convertir en texte …
ugso_convert_string
Convertir en texte …Représentation textuelle Jinja, sans sérialisation JSON. Les booléens deviennent True/False.
Type de …
ugso_convert_type
Type de …HA typeof() : noms de types Python, str, int, float, bool, dict, list ou NoneType. HA 2023.4 ou ultérieur.
Convertir en date/heure … entrée …
ugso_convert_datetime
Convertir en date/heure … entrée …Préférer un texte ISO avec Z ou décalage de fuseau explicite. Choisir l’unité Unix. Résultat en heure locale HA ; une entrée invalide provoque une erreur de modèle.
Date/heure … vers …
ugso_convert_date_format
Date/heure … vers …Le format détermine le raccord : date, nombre à l’exécution ou texte. Format personnalisé Python strftime.
Durée … entrée … vers …
ugso_convert_duration
Durée … entrée … vers …Durée numérique, en millisecondes par défaut comme dans ioBroker. Fractions de seconde tronquées. Heures/minutes peuvent dépasser 24/60 ; signe conservé.
JSON vers valeur …
ugso_convert_from_json
JSON vers valeur …HA from_json : objet, liste ou valeur simple. JSON invalide : erreur, sans objet vide de secours.
Valeur vers JSON … indenter …
ugso_convert_to_json
Valeur vers JSON … indenter …HA to_json avec indentation facultative. Convertir les dates en texte ISO ou nombre Unix auparavant.

Délais ​

BlocImageFonction
Pause … …
ugso_pause
Pause … …Délai natif HA. L’entrée doit fournir un nombre, vérifié à l’exécution. Les millisecondes ne garantissent pas une précision temps réel.
Attendre que … pendant au plus … … continuer après expiration …
ugso_wait
Attendre que … pendant au plus … … continuer après expiration …HA wait_template avec expiration. Sans coche : arrêt de cette exécution à l’expiration. Utiliser des conditions liées aux entités ; l’heure seule ne rafraîchit pas continuellement le modèle.
Arrêter cette exécution … comme erreur …
ugso_stop
Arrêter cette exécution … comme erreur …Arrête l’exécution HA actuelle, y compris les boucles englobantes. Ne supprime pas un temporisateur nommé ioBroker.

Objet ​

BlocImageFonction
Nouvel objet …
ugso_object_new
Nouvel objet …Dictionnaire local à attributs nommés. Ajouter des entrées avec l’engrenage ou +/−. Ce n’est ni une entité HA ni un point de données ioBroker.
Attribut … de l’objet …
ugso_object_get
Attribut … de l’objet …Lit une clé du dictionnaire, y compris keys/items. Clé absente : null ; type d’objet invalide : erreur de modèle HA.
L’objet … possède l’attribut …
ugso_object_has
L’objet … possède l’attribut …Vérifier la présence d’une clé dans un dictionnaire, y compris une clé dont la valeur est null.
Attributs de l’objet …
ugso_object_keys
Attributs de l’objet …Liste des clés du dictionnaire, pour parcourir les éléments ou produire du JSON.
Définir l’attribut … de la variable … à …
ugso_object_set
Définir l’attribut … de la variable … à …Affecte à cette variable HA un nouveau dictionnaire avec la clé modifiée. Initialiser la variable comme objet. Les autres variables et attributs HA restent inchangés.
Supprimer l’attribut … de la variable …
ugso_object_remove
Supprimer l’attribut … de la variable …Affecte un nouveau dictionnaire sans cette clé. Une clé absente laisse le contenu inchangé. La variable doit déjà contenir un objet.

Déclencheurs ​

BlocImageFonction
Quand … atteint l’état …
ugso_state_trigger
Quand … atteint l’état …Réagit à un changement d’état.
Quand … franchit … …
ugso_numeric_trigger
Quand … franchit … …Démarre au franchissement d’un seuil, pas continuellement tant que la condition reste vraie.
Quand il est …
ugso_time_trigger
Quand il est …Déclencher l’automatisation à une heure fixe au format HH:mm:ss.
Au …
ugso_sun_trigger
Au …Déclencher au lever ou au coucher du soleil, selon Home Assistant.
Quand Home Assistant démarre
ugso_start_trigger
Quand Home Assistant démarreDéclencher au démarrage de Home Assistant.

Conditions ​

BlocImageFonction
… est …
ugso_state_condition
… est …Vérifier si l’entité possède l’état indiqué. Les valeurs on/off restent les IDs HA.
… est … …
ugso_numeric_condition
… est … …Comparer l’état numérique d’une entité avec une borne fixe, au-dessus ou en dessous.

Actions ​

BlocImageFonction
Allumer / éteindre / basculer
ugso_switch_action
Allumer / éteindre / basculerAction du domaine de l’entité choisie. Vérifier sa disponibilité dans HA.
Action HA … cible … données (JSON) …
ugso_service_action
Action HA … cible … données (JSON) …Cible facultative. Données sous forme d’objet JSON ; l’intégration doit être présente dans HA.
Attendre … secondes
ugso_delay_action
Attendre … secondesAttendre un nombre de secondes via une action delay native HA.
Si … faire …
ugso_if_action
Si … faire …Branche if native HA avec actions, sinon si et sinon. Engrenage et +/− pour étendre les branches.
Lampe … couleur … luminosité … %
ugso_colour_action
Lampe … couleur … luminosité … %Action light.turn_on avec couleur RGB et brightness_pct. Lampe compatible et luminosité 0–100 requises.

Logique ​

BlocImageFonction
Groupe de conditions
ugso_logic_condition
Groupe de conditionsGroupe ET, OU ou NON extensible jusqu’à 100 conditions. Engrenage ou +/− pour modifier les entrées.
Comparaison
ugso_compare
ComparaisonCompare deux valeurs HA. Nombres et textes ont des types différents ; convertir explicitement les valeurs de capteurs dans les modèles.
ET / OU compact
ugso_binary_logic
ET / OU compactCombiner deux booléens avec ET/OU ; groupe natif HA ou expression Jinja selon l’usage.
NON …
ugso_not
NON …Nier une condition : groupe not natif HA ou expression not Jinja lorsqu’utilisé comme valeur.
Vrai / faux
ugso_boolean
Vrai / fauxConstante vrai/faux, pour conditions et variables. L’export conserve le type booléen YAML.
aucune valeur (null)
ugso_null
aucune valeur (null)YAML null ou Jinja none, ni zéro ni faux.
Si … alors valeur … sinon valeur …
ugso_ternary
Si … alors valeur … sinon valeur …Renvoie une valeur, pas une suite d’actions. HA évalue l’expression Jinja pour variables, messages de journal ou comparaisons.
Intervalle numérique
ugso_logic_range
Intervalle numériqueTester un nombre entre deux bornes, avec comparaisons strictes ou inclusives indépendantes.
Si … est … utiliser …
ugso_logic_default
Si … est … utiliser …Le mode null conserve 0, false et le texte vide. Le mode vide remplace aussi les valeurs fausses, listes/objets vides inclus. Règles Python/Jinja différentes de JavaScript.
Selon la valeur … …
ugso_case
Selon la valeur … …Exécute uniquement la première branche correspondante, sinon la branche par défaut. HA choose natif, sans passage aux cas suivants de JavaScript.

Boucles ​

BlocImageFonction
Répéter … fois faire …
ugso_repeat
Répéter … fois faire …HA repeat.count natif. repeat.index commence à 1. Le nombre de répétitions doit être un entier positif.
Répéter … … faire …
ugso_repeat_while
Répéter … … faire …Tant que vérifie avant chaque tour ; jusqu’à vérifie après et exécute au moins un tour. Ajouter une pause pour éviter une boucle infinie intensive. Aucun intervalle en arrière-plan.
Pour chaque élément de … faire …
ugso_foreach
Pour chaque élément de … faire …HA repeat.for_each. Élément : {{ repeat.item }}, indice : {{ repeat.index }}. L’entrée doit être une liste.
Compter … de … à … par pas de … faire …
ugso_for_range
Compter … de … à … par pas de … faire …Bornes entières fixes, fin inclusive si atteinte par les pas. Sens automatique, pas absolu >0, au plus 10000 tours. HA repeat.for_each affecte une variable à chaque tour.
Pour chaque valeur … de la liste … faire …
ugso_foreach_variable
Pour chaque valeur … de la liste … faire …HA repeat.for_each affecte repeat.item à la variable avant le corps. Éviter de réutiliser la même variable dans des boucles imbriquées.

Mathématiques ​

BlocImageFonction
Nombre
ugso_number
NombreNombre fixe éditable. Utilisable pour valeurs et seuils de déclencheurs numériques.
Calcul arithmétique
ugso_math_arithmetic
Calcul arithmétiqueAddition, soustraction, multiplication, division ou puissance de nombres. Aucune conversion automatique des textes/booléens.
Fonction numérique
ugso_math_single
Fonction numériqueRacine carrée, valeur absolue, négation, logarithmes et exponentielles. Valeurs invalides : erreur de modèle.
Trigonométrie
ugso_math_trig
TrigonométrieAngles en degrés ; fonctions inverses en degrés. HA utilise des radians en interne.
Constante
ugso_math_constant
ConstanteConstantes mathématiques finies. L’infini n’est pas proposé comme valeur numérique exportable.
… est …
ugso_math_property
… est …Vérifie les propriétés d’un nombre. Diviseur visible uniquement pour la divisibilité ; zéro est invalide.
… … à … décimales
ugso_math_round
… … à … décimalesArrondit à 0–10 décimales. HA/Jinja arrondit les égalités vers le pair ; supérieur/inférieur suit ceil/floor.
… de la liste …
ugso_math_list
… de la liste …Statistiques d’une liste numérique ; élément aléatoire de tout type. Somme vide : 0 ; autres résultats vides : null.
Reste de … ÷ …
ugso_math_modulo
Reste de … ÷ …Modulo Jinja. Avec un dividende négatif, le signe suit le diviseur et peut différer de JavaScript.
Limiter … entre … et …
ugso_math_clamp
Limiter … entre … et …Limite un nombre. Les bornes inversées sont d’abord triées.
Entier aléatoire entre … et …
ugso_math_random_int
Entier aléatoire entre … et …Bornes entières inclusives, au plus 10000 valeurs possibles. Bornes inversées autorisées.
Nombre aléatoire de 0 à moins de 1
ugso_math_random_fraction
Nombre aléatoire de 0 à moins de 1Pas de 0,00001, nouvelle valeur à chaque évaluation. Aléatoire non cryptographique.
Angle atan2 y … x … en degrés
ugso_math_atan2
Angle atan2 y … x … en degrésAngle sur quatre quadrants du standard Blockly, en complément des captures ioBroker.

Texte ​

BlocImageFonction
Texte …
ugso_text
Texte …Texte multiligne éditable ; contenu conservé exactement sans traduction automatique.
Saut de ligne …
ugso_text_newline
Saut de ligne …Un véritable saut de ligne pour assembler du texte.
Créer du texte avec …
ugso_text_join
Créer du texte avec …Assemble 0–100 valeurs en texte. Engrenage et +/− modifient le nombre d’entrées.
Ajouter le texte … à la variable …
ugso_text_append
Ajouter le texte … à la variable …Affecte un nouveau texte à une variable textuelle déjà initialisée. N’écrit pas dans une entité HA.
Longueur du texte …
ugso_text_length
Longueur du texte …Nombre de points de code Unicode, pas d’unités UTF-16 JavaScript.
Le texte … est vide
ugso_text_empty
Le texte … est videVérifie si la longueur du texte est zéro.
Le texte … contient …
ugso_text_contains
Le texte … contient …Recherche un sous-texte en respectant la casse.
Dans le texte … trouver la … occurrence de …
ugso_text_index
Dans le texte … trouver la … occurrence de …Position à partir de 1 en points de code Unicode ; résultat absent : 0.
Dans le texte … prendre le caractère … à …
ugso_text_char
Dans le texte … prendre le caractère … à …Position à partir de 1 depuis début/fin, premier/dernier/aléatoire. Hors limites : texte vide.
Sous-texte de … de … à … inclus
ugso_text_slice
Sous-texte de … de … à … inclusBornes inclusives à partir de 1 depuis le début. Bornes invalides/inversées : texte vide.
Texte … en …
ugso_text_case
Texte … en …Convertit le texte Unicode en majuscules, minuscules ou casse de titre.
Retirer les espaces … du texte …
ugso_text_trim
Retirer les espaces … du texte …Retire les espaces extérieurs, tabulations et sauts de ligne compris.
Compter … dans le texte …
ugso_text_count
Compter … dans le texte …Compte les occurrences sans chevauchement ; recherche vide : 0.
Remplacer … par … dans le texte …
ugso_text_replace
Remplacer … par … dans le texte …Remplace toutes les occurrences littérales, sans regex. Recherche vide : texte inchangé.
Inverser le texte …
ugso_text_reverse
Inverser le texte …Opération standard Blockly supplémentaire. Inverse les points de code Unicode, pas les graphèmes composés.

Listes ​

BlocImageFonction
Liste …
ugso_list_new
Liste …Créer une liste de 0–100 valeurs ; l’engrenage ou +/− modifie le nombre d’entrées.
Longueur de la liste …
ugso_list_length
Longueur de la liste …Nombre d’éléments, utilisable comme nombre à l’exécution. L’entrée doit être une liste.
La liste … est vide
ugso_list_empty
La liste … est videVérifie la longueur d’une liste, pas une valeur fausse générale de JavaScript.
Liste avec … copies de …
ugso_list_repeat
Liste avec … copies de …Nouvelle liste avec 0–10000 répétitions d’une valeur.
Dans la liste … trouver la … occurrence de …
ugso_list_index
Dans la liste … trouver la … occurrence de …Position à partir de 1, absent : 0. Égalité HA/Python, pas égalité de référence JavaScript.
Dans la liste … prendre l’élément … à …
ugso_list_get
Dans la liste … prendre l’élément … à …Position à partir de 1 depuis début/fin, premier/dernier/aléatoire. Hors limites ou liste vide : null.
Dans la variable … … à … la valeur …
ugso_list_set
Dans la variable … … à … la valeur …Affecte une nouvelle liste avec valeur remplacée/insérée. Indice à partir de 1 ; insertion autorisée à longueur+1. Indice invalide : liste inchangée.
Retirer la position … de la variable liste …
ugso_list_remove
Retirer la position … de la variable liste …Affecte une nouvelle liste sans cet élément. Indice à partir de 1 ; indice invalide : liste inchangée.
Sous-liste de … de … à … inclus
ugso_list_slice
Sous-liste de … de … à … inclusCopie une plage inclusive à partir de 1 depuis le début. Bornes invalides/inversées : liste vide.
… valeur … séparateur …
ugso_list_split
… valeur … séparateur …Découpe le texte selon un séparateur littéral ou assemble une liste. Séparateur vide : caractères Unicode.
Trier la liste … … …
ugso_list_sort
Trier la liste … … …Nouvelle liste triée ; original inchangé. Mode numérique : nombres requis ; mode texte : éléments convertis en texte.
Inverser la liste …
ugso_list_reverse
Inverser la liste …Nouvelle liste dans l’ordre inverse ; original inchangé.

Couleur ​

BlocImageFonction
Couleur …
ugso_colour
Couleur …Sélectionner une couleur ; conversion en liste de canaux RGB pour HA.
Couleur aléatoire
ugso_colour_random
Couleur aléatoireNouvelle liste RGB de trois canaux aléatoires de 0 à 255 à chaque évaluation.
Couleur rouge … % vert … % bleu … %
ugso_colour_rgb
Couleur rouge … % vert … % bleu … %Pourcentages RGB limités à 0–100, convertis en 0–255 et arrondis à la moitié supérieure.
Mélanger la couleur … avec … part de la couleur 2 …
ugso_colour_blend
Mélanger la couleur … avec … part de la couleur 2 …Mélange RGB linéaire. Part 0 = première couleur, 1 = seconde. Sans correction gamma ; résultat : liste RGB.

Variables ​

BlocImageFonction
Augmenter … de …
ugso_variable_change
Augmenter … de …Ajoute à une variable numérique déjà initialisée. Pas négatif : diminution. Valeurs non définies, textes, booléens et null ne sont pas automatiquement convertis.
Définir … à …
ugso_variable_set
Définir … à …Définit ou modifie une variable HA pour cette exécution. Affecter avant de lire.
Variable …
ugso_variable_get
Variable …Produit {{ nom_variable }} pour un modèle HA. Ce n’est pas un assistant enregistré durablement.

Modèles ​

BlocImageFonction
Modèle …
ugso_template
Modèle …Modèle Jinja comprenant {{ ... }} ou {% ... %}. Évalué uniquement dans Home Assistant.
Le modèle est vrai …
ugso_template_condition
Le modèle est vrai …HA évalue ce modèle Jinja comme condition. Ne déclenche pas une automatisation.

Autres blocs ​

BlocImageFonction
Automatisation … Quand … Seulement si … Alors …
ugso_automation
Automatisation … Quand … Seulement si … Alors …Automatisation native Home Assistant. Nom et mode au-dessus de l’espace de travail.

Fonctions Blockly originales ​

BlocImageFonction
Définir une fonction de valeur
procedures_defreturn
Définir une fonction de valeurÉditeur Blockly original ; jusqu’à 8 paramètres ASCII via l’engrenage. Retour requis, sans actions ni récursion. Développement en Jinja à l’export.
Appeler une fonction de valeur
procedures_callreturn
Appeler une fonction de valeurAppel disponible dynamiquement dans Fonctions. Les entrées suivent les paramètres ; définition unique et tous les arguments requis.
Lire une variable ou un paramètre
variables_get
Lire une variable ou un paramètreAccès original Blockly, notamment dans les fonctions. Lit le paramètre local si présent, sinon une variable HA.

Plugins originaux ​

Ces plugins fournissent des champs ou commandes, sans être des types de blocs supplémentaires. Licence Apache-2.0, paquets intégrés localement.

PluginUsageSource originale
toolbox-searchRechercher les blocs disponibles ; catégorie en fin de menu.Dépôt original
field-sliderChamp curseur numérique.Dépôt original
field-dateSélecteur de date.Dépôt original
field-colourSélecteur de couleur.Dépôt original
field-multilineinputTexte et modèles multilignes.Dépôt original
field-dependent-dropdownChoix d’action adapté au domaine de l’assistant.Dépôt original
theme-darkPalette sombre.Dépôt original
theme-modernPalette Modern.Dépôt original
theme-tritanopiaPalette adaptée à la tritanopie.Dépôt original
zoom-to-fitAjuster les blocs à la vue.Dépôt original
workspace-searchChercher les blocs déjà placés, Ctrl/Cmd+F.Dépôt original

IDs des déclencheurs et cibles multiples ​

Depuis 0.1.28 : États en liste JSON, par exemple ["1_single","1_double"] ; IDs facultatifs dans tous les déclencheurs standard ; Déclenché par ID comme condition native (ID individuel ou liste JSON). Les actions HA génériques acceptent Cibles en liste JSON, des métadonnées facultatives et conservent explicitement les données vides. Les automatisations à quatre boutons et quatre branches choose sont entièrement importables.

La sortie Automatisation individuelle · Éditeur HA omet l’id principal. Les IDs des déclencheurs restent présents. Les projets et la sortie liste automations.yaml conservent l’ID existant de l’automatisation.

Depuis 0.1.50, également Signal · CallMeBot avec sa propre sélection de profil. Configurer l’application Signal.

BlockImageDescription
Déclenché par ID
ugso_trigger_condition
Déclenché par IDcondition: trigger · id

Home Assistant: Trigger IDs · Trigger condition

Pompes de piscine, événements et heures multiples ​

Depuis 0.1.30 : activer Heures en liste JSON pour plusieurs heures fixes, par exemple ["10:00:00","13:00:00","19:00:00"]. Tout changement omet to ; Entités en liste JSON surveille plusieurs entités. Sans to, HA réagit aussi aux changements d’attributs. Les événements acceptent par exemple timer.finished avec un filtre de données JSON facultatif. Les conditions horaires natives conservent before/after : heures fixes, après inclusif et avant exclusif, même à travers minuit. Des bornes identiques couvrent toute la journée. Assistants horaires, modèles horaires et filtres de jours restent hors de l’import pris en charge. L’automatisation complète conserve le modèle multiligne du minuteur et les branches choose imbriquées.

BlockImageDescription
Déclencheur événement
ugso_event_trigger
Déclencheur événementtrigger: event · event_type · event_data
Condition horaire HA native
ugso_native_time_condition
Condition horaire HA nativecondition: time · before · after

Home Assistant: triggers · Time condition

Température modifiée ​

Depuis 0.1.31, le nouveau bloc prend en charge temperature.changed natif. Cible (JSON) : entity_id texte ou liste. Seuil (JSON) : type any, above, below, between ou outside. any exige seulement type ; above/below exigent value, between/outside value_min et value_max. Nombres : number et unit_of_measurement (°C/°F). Références : entity (sensor, number ou input_number). ID facultatif. Depuis 0.1.39, cibles zone, appareil, étage et étiquette prises en charge. Les topics MQTT, qos/retain/evaluate_payload et contenus JSON/Jinja multilignes restent présents.

BlockImageDescription
Température modifiée
ugso_temperature_trigger
Température modifiéetemperature.changed

Home Assistant: temperature.changed

Calendriers et variables de réponse ​

0.1.32: calendar.event_started / calendar.event_ended. Cible : objet JSON avec entity_id en texte ou liste. Options facultatives : offset avec jours, heures, minutes et secondes combinés ou HH:MM:SS ; offset_type vaut before ou after. Décalage nul, options absentes et ID de déclencheur facultatif sont conservés.

Le champ Variable de réponse (facultative) du bloc Action HA génère response_variable, par exemple termine pour calendar.get_events. Vide, il omet ce champ du YAML. L’automation complète de jours fériés/vacances conserve les deux calendriers, le démarrage HA, les variables zeitpunkt/termin_aktiv, les modèles Jinja multilignes, choose/default et le mode queued. Home Assistant traite les calendriers et les modèles.

BlocImageFonction
Début/fin d’un événement calendrier
ugso_calendar_trigger
Début/fin d’un événement calendriercalendar.event_started / calendar.event_ended

Home Assistant: calendar.event_started · calendar.event_ended · calendar.get_events

Déclencheurs numériques avec durée de maintien ​

Depuis 0.1.33, le déclencheur numérique accepte plusieurs entités : activer Entités en liste JSON et saisir par exemple ["sensor.temp_1","sensor.temp_2"]. Sans cette case, l’entité unique reste active. Durée de maintien (JSON) avec activée génère le champ facultatif for : par exemple {"hours":0,"minutes":1,"seconds":0}, 60 ou "00:01:00". Les unités days/hours/minutes/seconds/milliseconds combinées, les zéros et les modèles de sortie HA sont conservés. Décocher omet for. Toujours exactement un seuil numérique fixe (above ou below) ; les IDs et branches choose sont conservés.

Home Assistant déclenche après le franchissement du seuil lorsque la valeur reste de ce côté du seuil pendant toute la durée. Un redémarrage HA ou le rechargement des automations réinitialise le maintien en cours. Home Assistant: numeric_state.

Plusieurs variables dans une action ​

Depuis 0.1.34, le menu Variables propose Définir les variables (JSON). L’objet JSON contient 1–100 noms de variables avec texte, modèle HA, nombre, booléen ou null. Plusieurs entrées restent une seule action native variables, avec leur ordre. Les affectations uniques conservent le bloc existant. Depuis 0.1.39, listes/objets et variables au niveau automation sont pris en charge ; voir HA avancé et Jinja. Modifier noms et modèles directement dans le JSON ; le dialogue de renommage Blockly ne modifie pas ce texte JSON libre. Les noms importés sont également enregistrés dans Blockly.

L’exemple de minuterie conserve h/m, les deux entités surveillées, la condition et le mode restart. Les conditions absentes deviennent une liste vide.

BlocImageFonction
Définir les variables (JSON)
ugso_variables_action
Définir les variables (JSON)Variables avec champs individuels ; listes et objets en JSON, nouveaux noms dans les options supplémentaires.

Home Assistant: variables

Délai en texte ou modèle ​

Depuis 0.1.35, Blocks importe les textes natifs delay dans le nouveau bloc sous Délais. Exemples : 00:00:02, 01:30 (une heure et 30 minutes), 00:00:00.250 ou un modèle de sortie HA. La durée reste un texte dans le YAML et le projet sauvegardé. L’exécution HA attend avant de poursuivre les actions suivantes. Les blocs existants en secondes et unités restent disponibles. Cette extension concerne delay, pas le délai maximal du bloc attendre-jusqu’à.

L’exemple de réinitialisation désactive d’abord timer_reset, attend deux secondes puis désactive les deux cibles. L’ID input_boolean.timer_runing est conservé exactement comme fourni.

BlocImageFonction
Attendre durée en texte / modèle
ugso_delay_text
Attendre durée en texte / modèleTexte de durée delay natif / modèle HA.

Home Assistant: delay

Noms d’action HA dynamiques ​

Depuis 0.1.36, le premier champ du bloc Action HA accepte un nom d’action fixe ou un modèle Jinja. Il est éditable sur plusieurs lignes. Exemples : input_boolean.turn_on, input_boolean.turn_ suivi d’une expression Jinja ou un modèle if/else complet. Cible, données, métadonnées et variable de réponse conservent leurs champs existants. Modèles et sauts de ligne sont conservés à l’import, dans le projet et à l’export YAML.

L’exemple Shelly conserve le préfixe input_boolean.turn_ avec la lecture de l’état et les branches choose imbriquées. Home Assistant évalue le nom à l’exécution ; il doit alors produire un service disponible. Blocks vérifie les noms fixes et délimiteurs de modèle, pas la syntaxe Jinja ni le résultat à l’exécution. Les cibles restent des IDs fixes ; les modèles pour un objet data complet ne font pas partie de cette extension.

Home Assistant: choosing the action with a template

Déclencheur de motif horaire ​

Depuis 0.1.37, Déclencheurs propose un bloc natif time_pattern. Le champ JSON accepte par exemple {"seconds":"/30"} pour les secondes 0 et 30 de chaque minute. Clés facultatives : hours, minutes, seconds ; au moins une est requise. Valeurs fixes : heures 0–23, minutes/secondes 0–59, nombres ou textes sans zéro initial. * correspond à toute valeur, /n aux valeurs divisibles par n (n > 0 dans la plage du champ). Les unités omises et les types nombre/texte restent inchangés ; Home Assistant applique ses valeurs par défaut lors de l’exécution. Un ID de déclencheur facultatif est disponible.

L’automatisation LCD avec quatre actions input_text.set_value et mode: restart conserve ses modèles Jinja, formatage, découpage, remplissage et sauts de ligne après import, rechargement et export. Home Assistant exécute les modèles et le planning.

BlockType
Motif horaire (JSON)ugso_time_pattern_trigger

Home Assistant: time_pattern.

Entités cibles dynamiques ​

Depuis 0.1.39, Cible dans le bloc générique Action HA accepte un ID fixe ou un modèle HA, par exemple {{ ziel_tv }}. Le dialogue de sélection propose un champ multiligne. La liste JSON des cibles peut mélanger IDs fixes et modèles. Jinja est conservé et évalué par Home Assistant lors de l’exécution. Les cibles dynamiques importées utilisent le bloc générique, car les blocs spécialisés ne peuvent pas déterminer leur domaine de façon fiable.

L’automatisation TV de la chambre avec variable multiligne du mode été, horaires 21:30 et 00:30 et deux branches choose est vérifiée. Modèles de cible, texte de variable et conditions horaires restent inchangés après import, rechargement et export. Les champs d’entité des déclencheurs et conditions exigent toujours des IDs fixes.

Home Assistant: templates in action targets.

HA avancé et Jinja depuis 0.1.39 ​

Anleitung / Guide.

BlocImageFonction
HA state
ugso_ha_state_trigger
HA stateChamps HA nommés et options JSON supplémentaires. Structure vérifiée ; vérifier intégration et exécution dans HA.
HA numeric_state
ugso_ha_numeric_state_trigger
HA numeric_stateChamps HA nommés et options JSON supplémentaires. Structure vérifiée ; vérifier intégration et exécution dans HA.
HA time
ugso_ha_time_trigger
HA timeChamps HA nommés et options JSON supplémentaires. Structure vérifiée ; vérifier intégration et exécution dans HA.
HA sun
ugso_ha_sun_trigger
HA sunChamps HA nommés et options JSON supplémentaires. Structure vérifiée ; vérifier intégration et exécution dans HA.
HA homeassistant
ugso_ha_homeassistant_trigger
HA homeassistantChamps HA nommés et options JSON supplémentaires. Structure vérifiée ; vérifier intégration et exécution dans HA.
HA mqtt
ugso_ha_mqtt_trigger
HA mqttChamps HA nommés et options JSON supplémentaires. Structure vérifiée ; vérifier intégration et exécution dans HA.
HA template
ugso_ha_template_trigger
HA templateChamps HA nommés et options JSON supplémentaires. Structure vérifiée ; vérifier intégration et exécution dans HA.
HA webhook
ugso_ha_webhook_trigger
HA webhookChamps HA nommés et options JSON supplémentaires. Structure vérifiée ; vérifier intégration et exécution dans HA.
HA zone
ugso_ha_zone_trigger
HA zoneChamps HA nommés et options JSON supplémentaires. Structure vérifiée ; vérifier intégration et exécution dans HA.
HA device
ugso_ha_device_trigger
HA deviceChamps HA nommés et options JSON supplémentaires. Structure vérifiée ; vérifier intégration et exécution dans HA.
HA tag
ugso_ha_tag_trigger
HA tagChamps HA nommés et options JSON supplémentaires. Structure vérifiée ; vérifier intégration et exécution dans HA.
HA conversation
ugso_ha_conversation_trigger
HA conversationChamps HA nommés et options JSON supplémentaires. Structure vérifiée ; vérifier intégration et exécution dans HA.
HA geo_location
ugso_ha_geo_location_trigger
HA geo_locationChamps HA nommés et options JSON supplémentaires. Structure vérifiée ; vérifier intégration et exécution dans HA.
HA calendar
ugso_ha_calendar_trigger
HA calendarChamps HA nommés et options JSON supplémentaires. Structure vérifiée ; vérifier intégration et exécution dans HA.
HA event
ugso_ha_event_trigger
HA eventChamps HA nommés et options JSON supplémentaires. Structure vérifiée ; vérifier intégration et exécution dans HA.
Déclencheur HA (avancé)
ugso_ha_trigger
Déclencheur HA (avancé)Champs HA nommés et options JSON supplémentaires. Structure vérifiée ; vérifier intégration et exécution dans HA.
Condition HA (avancée)
ugso_ha_condition
Condition HA (avancée)Champs HA nommés et options JSON supplémentaires. Structure vérifiée ; vérifier intégration et exécution dans HA.
Étape HA (avancée)
ugso_ha_action
Étape HA (avancée)Champs HA nommés et options JSON supplémentaires. Structure vérifiée ; vérifier intégration et exécution dans HA.
Action HA type de cible cible données options d’étape
ugso_target_action
Action HA type de cible cible données options d’étapeChamps HA avancés ou Jinja original. Structure prise en charge vérifiée ; vérifier intégration et exécution dans HA.
Intégration HA cible options activées
ugso_integration_trigger
Intégration HA cible options activéesChamps HA avancés ou Jinja original. Structure prise en charge vérifiée ; vérifier intégration et exécution dans HA.
Groupe d’actions
ugso_sequence
Groupe d’actionsChamps HA avancés ou Jinja original. Structure prise en charge vérifiée ; vérifier intégration et exécution dans HA.
Parallèle branche 1 branche 2
ugso_parallel
Parallèle branche 1 branche 2Champs HA avancés ou Jinja original. Structure prise en charge vérifiée ; vérifier intégration et exécution dans HA.
Attendre un déclencheur options
ugso_wait_trigger
Attendre un déclencheur optionsChamps HA avancés ou Jinja original. Structure prise en charge vérifiée ; vérifier intégration et exécution dans HA.
Continuer seulement si
ugso_condition_step
Continuer seulement siChamps HA avancés ou Jinja original. Structure prise en charge vérifiée ; vérifier intégration et exécution dans HA.
Émettre un événement données
ugso_fire_event
Émettre un événement donnéesChamps HA avancés ou Jinja original. Structure prise en charge vérifiée ; vérifier intégration et exécution dans HA.
Réponse Assist
ugso_assist_response
Réponse AssistChamps HA avancés ou Jinja original. Structure prise en charge vérifiée ; vérifier intégration et exécution dans HA.
Activer la scène
ugso_scene
Activer la scèneChamps HA avancés ou Jinja original. Structure prise en charge vérifiée ; vérifier intégration et exécution dans HA.
Jinja (expérimental)
ugso_jinja_value
Jinja (expérimental)Champs HA avancés ou Jinja original. Structure prise en charge vérifiée ; vérifier intégration et exécution dans HA.
Condition Jinja (expérimentale)
ugso_jinja_condition
Condition Jinja (expérimentale)Champs HA avancés ou Jinja original. Structure prise en charge vérifiée ; vérifier intégration et exécution dans HA.

Structures Jinja (expérimental) ​

15 nouveaux types depuis 0.1.41. Les blocs valeur/condition extérieurs relient les parties imbriquées à HA. Expressions Jinja et parties du modèle ont des connexions typées distinctes. Import, édition et limites.

BlocImageFonction
Jinja composé
ugso_jinja_composed_value
Jinja composéBloc valeur extérieur : modèle complet, original conservé jusqu’à modification.
Condition Jinja composée
ugso_jinja_composed_condition
Condition Jinja composéeBloc booléen extérieur pour une condition de modèle HA.
Entité fonction
ugso_jinja_entity
Entité fonctionRechercher une entité et choisir states/state_attr/is_state/is_state_attr ; relier les arguments.
Filtre arguments valeur
ugso_jinja_filter
Filtre arguments valeurChoisir un filtre ; relier 0–3 arguments positionnels et une expression Jinja.
Littéral (Jinja)
ugso_jinja_literal
Littéral (Jinja)Nombre, chaîne entre guillemets, true/false ou none en syntaxe Jinja.
Variable Jinja
ugso_jinja_variable
Variable JinjaNom simple de variable Jinja en texte ; sans renommage automatique Blockly.
Maintenant (Jinja)
ugso_jinja_now
Maintenant (Jinja)Générer now() ; Home Assistant fournit l’heure lors de l’évaluation.
Expression
ugso_jinja_binary
ExpressionCalculer, comparer ou combiner deux expressions Jinja avec and/or.
Expression
ugso_jinja_unary
ExpressionAppliquer not, un signe négatif ou positif à une expression Jinja.
Valeur si sinon
ugso_jinja_select
Valeur si sinonChoisir une valeur : yes if test else no. Trois entrées obligatoires.
Afficher
ugso_jinja_output
AfficherAfficher une expression comme {{ ... }} dans un modèle.
Texte Jinja
ugso_jinja_text
Texte JinjaTexte littéral, espaces compris ; ne pas insérer de délimiteurs Jinja.
Parties du modèle puis
ugso_jinja_join
Parties du modèle puisRelier deux parties de modèle dans l’ordre affiché.
Si texte sinon
ugso_jinja_if
Si texte sinonif/else avec condition et parties texte/sortie imbriquées.
Pour dans texte si vide
ugso_jinja_for
Pour dans texte si videBoucle for simple : variable, expression, contenu et cas vide facultatif.