Déclencheurs
L'éditeur de déclencheur : identité et emplacement, la carte Planification avec Nature, Intervalle et Action à exécuter, le rail Cadencement, le planificateur à 100 ms avec son délai fixe et ses tops ignorés, les commandes, et ce qu'un déclencheur ne peut pas faire.
Un déclencheur lie une cause à une action. L'unique nature de cause aujourd'hui est Intervalle : le planificateur exécute l'action associée à une période fixe. Sélectionnez un déclencheur sous la section Déclencheurs de la colonne Logic (ou créez-en un avec Nouveau… > Nouveau déclencheur) pour ouvrir son éditeur ; lire demande Voir Logic, modifier Configurer Logic. Un déclencheur n'a pas de verbe de pilotage : il part de lui-même, et l'exécution à la main est le verbe Exécuter de l'action.
L'en-tête montre la marque du déclencheur, le nom, la ligne « Une planification qui exécute une action d'elle-même, à l'intervalle que vous fixez. » et un badge Désactivé tant qu'il est éteint. La colonne du formulaire porte IDENTITÉ et PLANIFICATION ; le rail porte CADENCEMENT.
Identité
| Champ | Ce que c'est | Valeurs et valeur par défaut | Effet |
|---|---|---|---|
| Nom | Le nom affiché ; les exécutions que le déclencheur lance sont journalisées sous ce nom. | Texte libre ; un nouveau déclencheur s'appelle TriggerN ; un nom vide s'enregistre comme Trigger. |
S'enregistre automatiquement à chaque frappe. Les déclencheurs sont référencés par identité : le renommage n'affecte rien d'autre. |
| Ligne d'emplacement | Où le déclencheur est classé : Triggers / <dossier> / <nom>. |
Lecture seule. | Un déclencheur n'a pas d'adresse. Changez le dossier avec Déplacer vers dans l'arborescence. |
| Description (facultative) | Texte libre. | Vide. | Aucun. |
Planification
| Champ | Ce que c'est | Valeurs et valeur par défaut | Effet |
|---|---|---|---|
| Nature | La cause. | Intervalle, la seule nature. | Aucun aujourd'hui. |
| Intervalle (ms) | La période de déclenchement. | Un entier d'au moins 100 (la résolution du balayage du planificateur) ; 1000 par défaut. | Une saisie plus petite, négative ou illisible conserve l'intervalle enregistré et affiche « L'intervalle doit être un entier d'au moins 100 ms (la résolution du planificateur). » Un intervalle changé remet l'horloge à zéro : le prochain top est dû un intervalle entier après le prochain balayage. |
| Action à exécuter | L'action que le déclencheur lance. | (aucune) ou n'importe quelle action de la station ; (aucune) par défaut. |
Un déclencheur sans action reste inactif et indique « Associez une action. Le déclencheur reste inactif d'ici là. » ; celui dont l'action a été supprimée indique « L'action associée n'existe plus. Choisissez-en une autre. » ; celui dont l'action est désactivée indique « L'action associée « X » est désactivée, donc le déclencheur reste inactif. » |
Chaque champ s'enregistre automatiquement ; le message de validation est réévalué toutes les demi-secondes sous la carte.
Cadencement
Le planificateur balaie toutes les 100 ms et envoie sur la file de la logique ce qui est dû :
- Un déclencheur qui vient d'être créé, activé, ou modifié dans son intervalle, sa nature ou son action est amorcé au balayage suivant : son premier top est dû un intervalle plus tard.
- Après un déclenchement, le top suivant est dû un intervalle entier à partir de maintenant (délai fixe) : il n'y a jamais de rafale de rattrapage après une période chargée.
- Un top qui devient dû alors que l'exécution précédente de ce déclencheur est encore en file ou en cours est ignoré, pas mis en file ; l'oubli est compté et le top suivant replanifié. Aucun retard ne peut s'accumuler derrière une action lente.
- Un déclencheur dont l'action manque ou est désactivée reste inactif : il est replanifié sans partir, et rester inactif ne compte jamais comme un top ignoré.
- L'exécution est journalisée sous le nom du déclencheur et son issue arrive sur le rail DERNIÈRE EXÉCUTION de l'action. Un déclencheur désactivé ne part jamais.
Le rail CADENCEMENT montre les diagnostics en direct : Dernier déclenchement, Prochain déclenchement (un tiret tant que le planificateur n'a pas amorcé l'horloge), Tops ignorés (un compte tenu en mémoire, remis à 0 après un redémarrage), et la note « Un top qui arrive alors que l'exécution précédente est encore en cours est ignoré, pas mis en file (aucun retard accumulé). Seule une exécution en échec parvient à la console des événements, sous le nom de ce déclencheur. »
Le volet de la racine Déclencheurs liste chaque déclencheur avec son état dans la colonne Valeur : « Toutes les 1000 ms · dernier <quand> · oublis N », ou « Désactivé ».
Commandes
| Commande | Ce qu'elle fait | Grisée quand | Non dessinée quand |
|---|---|---|---|
| Activer / Désactiver | Bascule Activé ; activer réamorce l'horloge. | Station verrouillée ou en lecture seule. | Le rôle n'a pas Configurer Logic. |
| Copier | Duplique le déclencheur (même action, même intervalle) à la racine Déclencheurs sous un nom libre et l'ouvre ; la copie démarre sans planification. | Station verrouillée ou en lecture seule. | Le rôle n'a pas Configurer Logic. |
| Supprimer le déclencheur | Demande « Supprimer « X » ? Cela retire le déclencheur. Cette action est irréversible. » | Station verrouillée ou en lecture seule. | Le rôle n'a pas Configurer Logic. |
Supprimer l'action associée laisse le déclencheur sans action plutôt que de le supprimer avec elle.
Ce que les déclencheurs ne font pas
Il n'existe aucune autre nature de cause : rien ne part sur un changement de valeur, sur une condition, à une heure de la journée ni au démarrage. Un déclencheur lance une action, jamais plusieurs, et ne part jamais à la main : exécutez l'action elle-même. Le planificateur s'arrête avec le runtime, et un déclenchement refusé par « Runtime arrêté » pendant que la station se ferme est abandonné en silence.