Tags : présence domotique Jeedom
0. Contexte
Rapidement, lorsqu’on développe sa domotique avec Jeedom contrairement à des basiques comme Tuya, ou autre box fabricant, on souhaite pouvoir adapter celle-ci en fonction de qui est présent et quand. Et souvent ce scénario n’est pas le plus simple.
En fonction depuis plusieurs années je souhaitais vous faire profiter du mien
1 Scénario Présent


1.1 Premier SI
Je vérifie qu’un de mes déclencheurs soit présent
#[cellier][Jardin][loic]#==1 ou #[Présence][Présence Géofence ios Loic][Présent maison]#==1 ou #[Présence][Wifi Présence][Etat wifi Loic]# == 1 ou #[Présence][ loic Jeedom connect][Maison]# == 1 ou #[Présence][badge somfy loic][Présent]#==1
Sinon, je déclenche le scénario absent que nous verrons par la suite
1.2 Deuxième SI
- Je vérifie si mon virtuel présent est bien à l’état 0 pour éviter les doublons
- Je passe le virtuel présent à 1
- J’enregistre à QUAND et à QUEL MOMENT via variable Prsce_date_Loic (sjour# #jour# #smois# #annee) qui me donne le jour de la semaine et la date et via la variable Prsce_heure_Loic (formatTime(#time#) qui me donne l’heure
- Le scénario absent s’arrête
- Tout comme changement de mode
- Et je redémarre celui-ci pour qu’il prenne en compte ma présence
- Je mets à jour mon état widget
- Et j’annule mon option retour travail
1.3 Troisième & quatrième SI
Je vérifie que mon alarme est bien désactivée sinon je le fais
#[Alarme][Link][myfox:AlarmStatusState]# != 'disarmed'
SI je suis dans des heures ouvrable et que je n’ai pas exécuté cela trop de fois, je signale mon arrivée avec la musique de DARK VADOR
(#time# > 0830 et #time# < 2100) et variable(presenceloicsound)<= 2
2 Scénario Absent
Détaillons maintenant le scénario absent


2.1 Premier SI
Je vérifie que je suis bien identifié comme présent
#[Présence][Virtuel présence loic][Etat]# == 1
Sinon c’est que je suis déjà identifié comme absent
2.2 Deuxième SI
Je vérifie que je ne suis pas présent dans mes déclencheurs Geofence
#[Présence][Présence Géofence ios Loic][Présent maison]#==0 et #[Présence][ loic Jeedom connect][Maison]# == 0
Sinon, je relance le scénario dans 1 minute
2.3 Troisième SI
Mon déclencheur cellier est-il bien à 0 ?
#[cellier][Jardin][loic]#==0
J’attends 300 secondes avant mon quatrième SI
2.4 Quatrième SI
Je vérifie si mon wifi me voit bien absent
#[Présence][Wifi Présence][Etat wifi Loic]# == 0
Si oui :
- Je passe mon virtuel en absent
- J’enregistre à QUAND et à QUEL MOMENT via variable Absce_date_loic (sjour# #jour# #smois# #annee) qui me donne le jour de la semaine et la date et via la variable Absce_heure_Loic (formatTime(#time#) qui me donne l’heure
- Mon scénario changement de mode se lance
- Je mets à jour mon état widget
Si non :
remove_inat pour vider mes « dans » à chaque lancement
Si j’ai relancé moins de deux fois le scénario, je relance et je mets à jour variable (NbAbsLoic) avec la formule variable(NbAbsLoic,1) + 1
SI j’ai relancé plus de deux fois, j’attends 5 minutes, je remets ma variable (NbAbsLoic) à 0 et je relance le scénario Absent
Et voila, vous avez votre premier Scénario de présence à multiprotocole !
3 Virtuel présence
Voici un exemple de virtuel présence
Pour fonctionner nous n’avons besoin que d’une info binaire etat
et de deux actions Présent et absent qui passe respectivement etat à 1 et 0
« Présent à » , « Absent à », « le » reprennent les variables du scénario présent et absent

Voila j’espère que cet article aura pu vous aider
N’oubliez pas que la vie est une fête
Loïc

