Détails de reflet

L’acteur Détails de reflet est un composant conçu pour afficher dynamiquement les informations détaillées et gérer les commandes pour n’importe quel type de reflet.

Fonctionnement

Cet acteur s’adapte automatiquement au type de reflet que vous lui indiquez. Une fois configuré avec le chemin vers un reflet (par exemple, vers une chaudière ou une vanne) :

  1. Il Affiche la vue détaillée appropriée avec toutes les informations pertinentes et, le cas échéant, les commandes spécifiques à cet équipement.
  2. Il gère l’envoi de commandes si le reflet est commandable, le détail de reflet présente les commandes disponibles et permet à l’utilisateur de les exécuter directement depuis l’interface.
Sommaire

🔧 propriété · ℹ️ information · ⚙️ méthode · ⚡ évènement · 🔒 lecture seule

Propriétés

Il existe deux types de configuration pour cet acteur :

  • Autonome : L’acteur gère lui-même les requêtes vers le REDY lorsque la propriété Autonome isAutonomous est vraie afin obtenir et rafraîchir les données du reflet. Dans ce mode, il n’a pas besoin d’un acteur requêteur externe. La propriété Requêteur requesterKey est ignorée.
  • Non autonome : L’acteur s’appuie sur un acteur requêteur de reflet lorsque la propriété Autonome isAutonomous est fausse afin d’effectuer les requêtes. Cela permet de centraliser les requêtes et d’optimiser les performances si plusieurs acteurs Détails de reflet ou d’autre acteur de reflet sont utilisés dans la même scène.

Auto rafraîchi?

this.properties.autoRefresh · boolean · défaut true

Active/désactive le rafraîchissement automatique de la donnée.

Indique si l’acteur doit automatiquement rafraîchir les données du reflet lorsque de nouvelles données sont disponibles.

Autonome?

this.properties.isAutonomous · boolean · défaut true

Indique si l’acteur fonctionne de manière autonome, sans nécessiter d’acteur requêteur.

Avec date?

this.properties.withLastRefreshDate · boolean · défaut false · modifie : Taille

Active/désactive l’affichage de la date de fraîcheur du reflet.

Active ou désactive l’affichage de la date de dernière mise à jour des données du reflet.

Avec icône?

this.properties.withIcon · boolean · défaut true · modifie : Taille

Active/désactive l’affichage de l’icône du reflet.

Active ou désactive l’affichage de l’icône associée au reflet.

Avec nom?

this.properties.withName · boolean · défaut true · modifie : Taille

Active/désactive l’affichage du nom du reflet.

Active ou désactive l’affichage du nom du reflet.

Commandable?

this.properties.allowCommand · boolean · défaut true · modifie : Taille

Permet d’afficher l’interface de commande du reflet s’il est commandable.

Si activée (true), permet à l’utilisateur d’envoyer des commandes au reflet via l’interface fournie par cet acteur, si, bien entendu, le reflet est lui-même commandable.

Délai

this.properties.autoRefreshDelay · number · défaut 30

Délai de rafraîchissement automatique de la donnée.

Cette propriété est uniquement prise en compte lorsque le mode Autonome est activé.

Le délai en secondes entre chaque rafraîchissement automatique des données du reflet.

Mode de commande

this.properties.submitMode · 'action' | 'manual' | 'auto' · défaut 'action'

Mode de validation de commande.

  • 'action' (défaut) : des boutons s’afficheront en cas de modification de la commande pour choisir l’action à effectuer.
  • 'manual' : la commande devra être envoyée manuellement, par script.
  • 'auto' : la commande sera envoyée automatiquement dès modification ou dès la perte de focus.

Définit le mode des commandes.

  • Confirmation action: Chaque commande nécessite une confirmation de l’utilisateur avant d’être envoyée.
  • Sans confirmation auto: Les commandes sont envoyées immédiatement après un changement, sans confirmation.
  • Manuel manual: Les commandes sont mises en attente et doivent être envoyées manuellement, par script.

Reflet

this.properties.reflectPath · string · défaut ''

Le chemin vers le reflet que cet acteur doit afficher depuis :easy.RESS. Par exemple, R00001 pour une ressource spécifique. C’est la propriété principale pour lier l’acteur à un équipement.

Requêteur

this.properties.requesterKey · string · défaut ''

Cette propriété est uniquement prise en compte lorsque le mode Autonome est désactivé.

La clé de l’acteur requêteur responsable de la communication avec le serveur REDY. Nécessaire si isAutonomous est désactivé.

Vertical?

this.properties.isVertical · boolean · défaut true · modifie : Taille

Permet d’activer/désactiver le mode vertical d’affichage des détails.

Si activée (true), organise les éléments (icône, nom, détails) verticalement. Sinon, ils sont disposés horizontalement.

Informations

Accessibles par script, via this dans un script de l’acteur ou context.getActor('clé') depuis un autre acteur.

autoRefreshing

this.autoRefreshing · 🔒 lecture seule · Boolean

Indique si le rafraîchissement automatique est actif.

canSubmit

this.canSubmit · 🔒 lecture seule

Indique si la commande peut être envoyée.

childActors

this.childActors · 🔒 lecture seule · Array<BaseActor

Obtiens la liste de tous les acteurs enfants.

commandError

this.commandError · 🔒 lecture seule

Erreur de la dernière commande envoyée.

data

this.data

Donnée reçue par la dernière requête.

error

this.error · 🔒 lecture seule · String ou null

Erreur de requête.

fullPath

this.fullPath · 🔒 lecture seule

Obtient le chemin complet vers le reflet.

hasCommandError

this.hasCommandError · 🔒 lecture seule

Indique si la dernière commande a échoué.

hasError

this.hasError · 🔒 lecture seule · Boolean

Indique s’il y a eu une erreur de requête.

hasPendingCommand

this.hasPendingCommand · 🔒 lecture seule · Boolean

Indique si le reflet a une commande en attente.

isCommanding

this.isCommanding

Indique si une commande est en cours d’envoi.

isRequesting

this.isRequesting · 🔒 lecture seule · Boolean

Indique si la requête est en cours.

isValorized

this.isValorized · 🔒 lecture seule

Indique si la donnée a été valorisée.

lastRequestDate

this.lastRequestDate · 🔒 lecture seule · String ou null

Date de la dernière requête (ISO 8601), null avant la première.

pendingCommand

this.pendingCommand · 🔒 lecture seule

Commande en attente du reflet, null sans commande.

reflect

this.reflect

Obtient le reflet chargé (alias en lecture seule de data).

reflectPath

this.reflectPath · 🔒 lecture seule

Obtient le chemin du reflet relatif au requêteur source (properties.reflectPath).

requesterSource

this.requesterSource

Obtient le requêteur de reflet source.

Méthodes

cancelCommand()

this.cancelCommand()

Annule la commande en cours.

getActor(key)

this.getActor(key) · renvoie Actor.BaseActor

Obtient un acteur enfant par sa clé.

  • key : Clé de l’acteur à trouver.

refresh()

this.refresh()

Effectue un rafraîchissement de la donnée.

removePendingCommand()

this.removePendingCommand()

Supprime la commande en attente.

request()

this.request()

Effectue une requête : celle de l’acteur s’il est autonome, sinon celle de son requêteur de reflet.

requestDebounce()

this.requestDebounce() · renvoie Promise<any>

Effectue une requête retardée : celle de l’acteur s’il est autonome, sinon celle de son requêteur de reflet.

submitCommand()

this.submitCommand()

Envoie la commande.

write()

this.write()

Envoie la commande du reflet si l’acteur et le reflet l’autorisent.

Événements

Les évènements communs à tous les acteurs sont décrits avec l’acteur de base.

onDidCommand

Se produit lorsque la commande est réalisée.

context : contexte d’évènement, avec en plus :

Membre de context Type Description
error Object ou null L’erreur éventuelle de la commande (null si elle a réussi)
data any La réponse du REDY à la commande (absente en cas d’erreur)

L’évènement onDidCommand est déclenché lorsqu’une commande a été envoyée au reflet.

  • data : Le modèle du reflet mis à jour.
  • error : Un message d’erreur si la requête a échoué, ou null si elle a réussi.

onDidReflectChange

Se produit lorsque l’acteur reçoit un reflet alors qu’il n’en avait pas encore (premier chargement, ou après une requête sans reflet) ; les mises à jour suivantes du même reflet ne le déclenchent pas.

context : contexte d’évènement, avec en plus :

Membre de context Type Description
reflect Object ou null Le reflet reçu (null si la requête n’en a pas trouvé)

L’évènement onDidReflectChange est déclenché lorsque le reflet a changé.

L’évènement comporte un objet context avec les propriétés suivantes :

  • reflect : Le nouveau reflet obtenu.

onRequestDone

Se produit lorsque la requête s’est terminée.

context : contexte d’évènement, avec en plus :

Membre de context Type Description
error String ou Object ou null Une erreur éventuelle
data any La donnée

L’évènement onRequestDone est déclenché lorsque l’acteur a terminé une requête vers le REDY pour obtenir ou rafraîchir le reflet.

L’évènement comporte un objet context avec les propriétés suivantes :

  • data : Le reflet obtenu du REDY, cet objet contient toutes les informations relative au reflet (nom, chemin, etc …).
  • error : Un message d’erreur si la requête a échoué, ou null si elle a réussi.

Hérite de

Outre ce qui est décrit ici, l’acteur a tout ce que décrit l’acteur de base : propriétés communes (taille, disposition, aspect, texte, bordures, effets…), évènements communs (cycle de vie, souris, clavier…) et membres accessibles par script.

Il hérite aussi de :

  • ReflectDetailsBase : Acteur de base des details de reflet.
  • Parenthood (comportement) : Étend la classe pour permettre d’avoir des acteurs enfants.
  • BaseRequest : Acteur de base pour un acteur alimenté par requête.
  • Requesterable (comportement) : Attribut la possibilité à un acteur de réaliser des requêtes.

Conseils et optimisations

Centralisation des requêtes : Si vous avez plusieurs acteurs “Détails de reflet” dans votre scène, il est recommandé de ne pas les paramétrer comme autonome et d’utiliser un requêteur de reflet commun. Cette pratique permet de mutualiser les requête et d’optimiser les performances globales de votre scène. Cela permet également de synchroniser les détails de reflet entre eux.

Reflets du REDY supportés par Synapps

Voici la liste des types de reflets REDY que Synapps est capable de reconnaître et d’afficher en détail.

Les champs de chaque type sont décrits dans le modèle Reflet.

Reflet dans Synapps type Synapps Reflets dans REDY
Agenda agenda - Reflet Agenda
- Reflet Agendapp
Analogique analog - Reflet Analogique
- Reflet Analogique avec Seuils témoins
- Reflet Analogique avec Forçage
Chaudière boiler Reflet Chaudière
Bruleur burner Reflet Bruleur
Digital digital - Reflet Digital
- Reflet Digital avec Forçage
Courbe de chauffe heating-curve Reflet Courbe de chauffe
Tableau de consignes setpoints-table Reflet Tableau de consignes
PID pid Reflet PID
Fil Pilote pilot-wire Reflet Fil Pilote
Pompe pump Reflet Pompe
Etat state Reflet Etat
Texte text Reflet Texte
Vanne valve Reflet Vanne
Inconnu unknown Pour les reflet que Synapps ne connait pas encore.