UIX Broker
UIX Broker transforme les événements du navigateur, les raccourcis clavier et les événements de bus d'événements Home Assistant en interactions déclaratives. Une interaction sélectionne un élément du navigateur, vérifie les règles facultatives, puis exécute les directives dans leur ordre configuré.
Realm → Listen → Interaction anchor → Rules (Optional anchors) → Directives (Optional anchors)Utilisez UIX Broker lorsqu'un comportement d'interface peut être configuré plutôt que écrit sous forme de carte, de script ou de correctif personnalisé. UIX Broker peut réagir à un clic, personnaliser un événement avant de le redistribuer, concentrer un élément, mettre à jour une propriété d'objet, appeler une méthode d'élément sécurisée, ajouter un bouton interactif et exécuter des actions JavaScript avec des variables d'interaction disponibles.
uix_broker:
- realm: browser
listen: click
anchor: target
rules:
- ".action-button"
directives:
- type: block
- type: event
name: another-action
data:
source: action-buttonGuides du courtier UIX
- Broker — structure d'interaction, sources de configuration, cycle de vie et débogage.
- Domaines — événements de navigateur, raccourcis clavier et événements de bus d'événements Home Assistant.
- Ancres d'interaction — sélection du chemin d'événement composé et de l'élément
select_tree. - Règles — correspondance de l'élément hôte, des données capturées et de l'identité du navigateur.
- Directives —
block,property,event,call,buttonet actions Home Assistant. - Exemples — exemples. Voir également UIX Guides, où des exemples plus détaillés peuvent être publiés.
::: note Pour la correspondance de l'identité du navigateur, Browser Mod est requis.
:::
Fonctionnalités futures
UIX Broker est en développement actif. Jusqu'à présent, toutes les fonctionnalités et exemples proviennent d'idées d'utilisateurs partagées sur le forum de la communauté. Si vous avez une idée sur la façon dont UIX Broker peut être étendu, veuillez démarrer une discussion GitHub. Les fonctionnalités qui obtiennent 10 votes positifs peuvent être déplacées vers une demande de fonctionnalité dans le suivi des problèmes UIX GitHub.
Les futures fonctionnalités prévues d'UIX Broker incluent :
- Règle JavaScript : exécute JavaScript avec l'état d'interaction actuel fourni sous forme de variables. Renvoie un objet avec
{result: <truthy>, [optional] namedObject: <object data>}, avec lenamedObjectfacultatif alors disponible pour d'autres règles et toutes les directives. - Directive d'action JavaScript étendue : prend en charge le retour de la directive d'action JavaScript actuelle. Format de retour :
{continue: <truthy>, [optional] namedObject: <object data>}. Sicontinueest faux, aucune autre directive n'est exécutée. LenamedObjectoptionnel est alors disponible pour le reste des opérations de directive. - Règle du modèle Jinja2 : restitue un modèle Jinja2 unique qui renvoie un résultat véridique et peut éventuellement renvoyer des données d'objet.
