Recurence scenario si changement d'état

Bonjour à tous !

Avec la baisse de luminosité, rentrer la voiture en marche arrière dans l’obscurité est devenu sportif !

J’ai donc mis un fibaro fgs 222 sur l’eclairage exterieur.
1 premier scénario avec le détecteur de la porte d’entrée active le fibaro si elle s’ouvre et le stoppe 10mn après.

Le problème, c’est que le portail est hs donc pas moyen de faire la même chose quand on arrive.
J’ai donc installé le plugin info et localisation et parametré les 2 téléphones de la maison.

Lorsque la présence d’un téléphone est détectée, le fgs s’active.
(j’ai aussi mis heliotrope afin que ces scénario soient actif que lorsqu’il ne fait pas jour.)

Le 1er souci, c’est que si je ne désactive pas le scénario à la fin, l’éclairage va être allumé en permanence (presence d’un tel au moins).
J’ai donc désactivé les scénario a la fin et crée 1 scénario par téléphone.
J’ai créé un scénario master qui active les scénario à 16h tous les jours.

Le 2ème souci, c’est si on repart lorsqu’il fait nuit.
Je recherche à mettre dans le scénario master si changement d’état d’un téléphone (passe de 1 à 0), alors réactivé le scénario,
mais je bloque à ce niveau !

Une bonne âme pourrait-elle m’aider ?

Merci pour votre aide !!!

Bonjour,

Pourquoi sur détection d’un téléphone, ne pas éteindre la lumière 10 minutes après comme avec l’ouverture de la porte ?

1 « J'aime »

Salut et bienvenue ici.

Je pense que je rajouterai à la fin du scénario qui gère l’éclairage sur ouverture de la porte quelque chose comme :
DANS 10 minutes
SI état téléphone 1 == 0 alors réactiver scénario téléphone 1
SI état téléphone 2 == 0 alors réactiver scénario téléphone 2

je vais tester cette solution !
c’est quand même étrange de ne pas trouver cette possibilité nativement…

merci beaucoup !

Comment ça nativement. ?

et bien si changement d’état (presence telephone passe de 1 a 0) alors réactiver scénario

Rien ne t’empêche de faire un autre scénario avec ce déclencheur « présence téléphone == 0 » pour qu’il réactive le scénario correspondant au téléphone.
Ça marchera aussi.
Mais je suis comme prfalken je n’ai pas bien compris la notion de nativement.

Il est impossible d’intégrer dans Jeedom, nativement, qu’un scénario s’active sur présence d’un téléphone. C’est un fonctionnement très spécifique, ça dépend complément de ce que tu veux faire et donc il me semble normal que ce soit à toi de programmer cette action.

Bonjour
Peux-tu mettre une photo de tes déclencheurs ?
Je pense que tu utilises le déclencheur « téléphone »
Quand tu pourrais tout simplifier en mettant en declencheur « téléphone == 1 »
Le savais-tu ?
Ainsi, en partant (téléphone passant de 1 à 0), il se passe rien !

Attention a la répétition de valeur si Jeedom reçoit téléphone == x plusieurs fois par heure…

Bonjour
Si tu testes le déclencheur ‹ telephone › == 1 avec un DANS pour eteindre la lumière au bout du certain temps il faudrait ajouter une action ‹ remove_inat › au debut du scénario.

Comme ça si tu redeclenches le scenario alors que la lumière n’est pas encore eteinte, le cron précédent sera supprimé et un nouveau sera créé.

ainsi tu peux avoir un seul scénario déclenché par les 2 telephones.
en mettant comme déclencheur

‹ telephone1 › == 1 || ‹ telephone2 › == 1

si tu arrives, la lumière s’active pour par ex 10min.
si le 2 eme tel arrive 5min après toi, le scenario remet la lumière pour 10min.

Soit 15min et pas de cafouillage entre le premier déclenchement et le deuxième

Bonjour,

Pas besoin de remove_inat si tu repasses dans le bloc DANS. Le cron est automatiquement reprogrammé

1 « J'aime »

et aussi rajouter ta condition de sortie de la maison pour le depart
si porte == ouverte et lumière == eteinte (out fgbs ON)
alors c’est que tu pars tu declenche le même scénario

ah ce n’est pas ce que j’avais lu dans d’autres postes de gestion de lumière sur presence.:thinking:
par ex

> https://community.jeedom.com/t/gestion-detecteur-mouvement-aqara-et-plugin-zigbee/64289

La partie du code qui gère cela :

 $crons = cron::searchClassAndFunction('scenario', 'doIn', '"scenarioElement_id":' . $this->getId() . ',');
 if (is_array($crons)) {
         foreach ($crons as $cron) {
              if ($cron->getState() != 'run') {
                    $cron->remove();
                }
            }
 }
$cron = new cron();
$cron->setClass('scenario');
$cron->setFunction('doIn');

Comme tu peux le voir, il supprime l’ancien cron.
remove_inat est utile pour annuler une action programmée (À, DANS)

:wink:

1 « J'aime »

ok👌
:blush:

Je prends note.

sinon en effet il faut gérer le moment opportun de lancer les scenarios.

Soit en fonction de la luminosité avec un capteur…de luminosité😬.

Soit avec heliotrope comme tu le disais.
par une condition en debut de scenario
ex
Si #time# < [heure du lever ] || #time#> [heure du coucher] c’est ok le scenario peut continuer

à ajuster par calcul en fonction de ce que tu souhaites et de la luminosité/environnement chez toi