Si il y a bien une notion difficile à appréhender pour toutes les personnes qui utilisent la Zibase, c’est la notion de Tickets
Pourtant, malgré son apparente complexité, cette notion est très simple, puissante et permet souvent de simplifier très fortement des scénarios complexes.
Le principe est simple, chaque scénario disposent d’un nombre de ticket d’exécution. Chaque fois qu’il s’exécute, il doit « donner » un ticket.
Soit il a un nombre de ticket illimité, dans ce cas, il pourra s’éxecuter autant de fois qu’il le souhaite, soit il a un nombre de ticket à 0, dans ce cas il ne pourra plus s’exécuter tant qu’il n’a pas récupéré de nouveaux tickets, soit il a un nombre donné de ticket et dans ce cas, il pourra s’exécuter un certain nombre de fois précis (1 ticket = 1 exécution, 2 tickets = 2 exécution …)
Voici un petit graphique montrant le fonctionnement :
Tous les scénarios sur Zibase se déclenchent grâce à un événement en entrée (sonde de température, détecteur de présence, calendrier …). Au moment de l’exécuter, le système contrôle que le scénario a le droit de s’exécuter (nombre de ticket supérieur à 0). Si le scénario a un nombre de tickets illimités, il s’exécute toujours. Si le nombre de tickets n’est pas illimité, le scénario s’exécute et le nombre de ticket est diminué de 1. Si le nombre de ticket est à 0, le scénario ne se lancera pas.
L’utilisation des tickets permet très facilement d’activer / désactiver un scénario. Il suffit de lui allouer un nombre illimité de tickets ou zéro ticket. On pourra aussi utiliser le système de ticket pour faire une exécution limitée (par exemple pour un événement d’alerte qui ne devra pas être émise périodiquement)
Voici un exemple d’utilisation des tickets :
Recevoir un mail dès qu’une température passe en dessous d’un seuil.
Il faut un scénario qui gère l’émission du mail d’alerte, c’est sur celui ci que nous jouerons avec les tickets pour activer ou non son exécution :
Ensuite, il faut le scénario qui sera lancé par la sonde de température :
Ce scénario test la température et lance soit le scénario « Action à effectuer » si on est en dessous du seuil, soit le scénario « Dessus Seuil« .
Le scénario « Action à effectuer » s’exécutera donc si il a 1 ticket, il enverra le mail et son nombre de ticket deviendra égal à 0. Le mail d’alerte ne sera donc plus transmis tant que la température ne sera pas repassée au dessus du seuil. Si la température repasse au dessus du seuil, elle lance le scénario « Dessus Seuil » :
A ce moment la, le scénario alloue à nouveau 1 ticket à « Action à effectuer » pour réactiver l’émission de l’alerte.
Un autre exemple d’utilisation sera par exemple la gestion de l’alarme, les scénarios de détection d’intrusion seront désactivés avec un nombre de ticket égal à zéro lorsque l’alarme est désactivée. Puis un nombre de ticket illimité sur les scénarios de détection permettront de mettre en route la phase « Alarme »…
Et voila, bon scénario à tous…
Source : Mon article sur Zibase-club.com
Bonjour,
J’aurais une petite question qui peut paraitre stupide mais bon…
Si lors de la première exécution du scénario, la température est au dessus du seuil, il va donc lancer le scénario « dessus seuil » et allouer un ticket supplémentaire ce qui va faire passer le nbre de tickets à 2 et ainsi de suite non ?
Du coup, le mode 0 ou 1 seul ticket ne va plus être valable ?
Cela signifie qu’il faut donc que la première exécution soit réalisée lorsque la température passe en dessous du seuil. Or on ne connait cette valeur qu’après le premier calcul de l’expression…
Bonjour,
Ce n’est pas « ajouter » un ticket comme action, c’est allouer 1 ticket. Donc même si ce scénario est exécuté 50 fois, il n’y aura qu’un seul ticket au final.
Mickael
Petite question supplémentaire: peut-on aussi gérer des tickets sur des scénarios déclenchés sur calendrier? (Ex: allumer les lumières du salon au coucher du soleil… la gestion des tickets permettrait de ne lancer ce scénario que durant les jours de semaine)?
A ce que j’en ai compris, la Zibase, déclenche un sénario sur calendrier même si le nombre de ticket du sénario est 0
Merci d’avance pour votre aide
A+
Marc
@Marc : Nomalement oui, quelque soit la source de déclenchement, les tickets activent ou désactivent le scénario.
Bonjour,
C’est un très bon tuto, Merci.
J’ai une petite question complémentaire.
Est ce qu’un scénario à un nombre de ticket illimité en standard ?
Merci.
Franck
@Franck : oui ticket illimité par défaut.
Merci. 🙂
Bonjour,
Lorsque je marque I0*50 il me marque 18*50 sans faire le calcul (i0 à une valeur de 18 dans mon exemple) es normal docteur?
Merci pour l’info.
Seb.
Bonjour à Tous,
Merci Mickael pour cette procédure.
N’étant pas un spécialiste, pourriez-vous m’indiquer comment on calcule le seuil de température ? Dans votre exemple : 0° = IO-150
Que faut-il mettre pour par exemple : -2°, +4°, +6°
Bonne soirée,
René
Il faut multiplier la consigne par 10 et la soustraire de 0.
Par exemple pour -2, ca donne I0+20, pour +4, ca donne I0-40 et pour +6°C, ca donne I0-60
Bonsoir,
je vous remercie beaucoup pour votre réponse.
Bonne soirée,
René
Bonjour,
Les évènements climatiques permettant de faire des essais en réel, je constate que le scénario de température < à 0° fonctionne très bien mais l'alerte mail n'arrête pas de m’envoyer des mails.
J'ai pourtant respecté scrupuleusement vos procédures.
Peut-être avez vous une solution ?
Bonne journée,
René
Bonjour,
ma question va vous paraître stupide mais je ne trouve pas la solution.
je voudrais utiliser exactement le même scénario mais pour être averti quand la température devient positive au lieu de négative.
Merci pour votre aide, je ne trouve pas en conservant le ticket …
Bonjour Sylvain,
Vous pouvez faire exactement le même scénario mais en inversant le signe dans la condition à calculer.
Donc au lieu de I0-150, vous pouvez faire 150-I0.
Rebonjour Pierre,
je viens de m’apercevoir que le sujet datait de 2012, comme quoi cela reste d’actualité.
En fait, j’ai essayé d’entrer -I0 dans la valeur à calculer puisque je veux recevoir une alerte et une seule quand la température devient positive mais je ne peux mettre la valeur « – » avant I0.
Je ne sais donc toujours pas quoi mettre 🙁
Merci
Sylvain