Capteur aqara et statut porte pendant x secondes

Bonjour à tous

j’ai un capteur d’ouverture de marque aqara qui me fait remonter:
niveau de vibration
porte ouverte
etc.

Ma question: j’aimerais activer mon système de sécurité basé sur plusieurs choses dont celles ci: comment savoir si la porte a été ouverte dans les 10 secondes passés?

car je m’explique:
j’ai la condition suivante qui ne s’applique pas à chaque fois:
#[Sécurité][Sécurité][Mode]# == 'Absent' && #[Sécurité][Détecteur Porte Entrée][Porte]# == 1 && #[Sécurité][Détecteur Hue][Présence]# == 1

porte == 0 alors porte fermee
et si porte = 1 alors porte ouverte

le mode absent est actif car basé sur mes tiles
le détecteur hue est lui derrière la porte pour vérifier si présence attestée

pour le reste j’ai tenté orientation vibration / niveu de vibration mais rien ne fonctionne totalement

que la porte soit ouverte ou déjà fermée ne doit rien changer.
si ouverte ou fermé ou encore ouverte pendant x secondes alors la condition continue d’etre remplie

une idée?
merci par avance

edit le scenario en question que j’aimerais optimisé avant ajout alarme,sonore

Bonsoir,

lastChangeStateDuration(#[Sécurité][Détecteur Porte Entrée][Porte]#,1) te donnera le nombre de secondes depuis le dernier passage à l’état 1 (donc ouvert).

Du coup dans l’idée si cette commande est à 0 (fermée) et que le résultat du lastChangeStateDuration est inférieur à 10 c’est que la porte a été ouverte dans les 10 dernières secondes (puis refermée).

Bonjour,

ok, super merci pour la formulation!
il me faut donc un capteur d’ouverture plus précis comme j’ai pour mes velux car ce capteur aqara a une certaine latence et plus voué à une détection de vibration donc effraction plus qu’autre chose.

Je le connait pas lui, c’est quel modèle ?

je me suis certainement mal exprime: capteur de vibration et non d’ouverture
image

1 « J'aime »

C’est plus clair…
pour le fond du pb, Bison a répondu.
Bon test !

Attention : perso j’en est qu’un, et il me fait, tout les 2, 3 mois, de faux positif (il envoie une vibration alors qu’il n’y a rien. Personne dans la maison et le capteur est juste posé sur une boite devant la fenètre), c’est casse pied… (je suis avec une clef Deconz et plugin Zigbee)

afin de palier de palier le soucis d’ouverture fermeture j’ai commande un detecteur frient qui je sais fonctionne bien car j’en ai déjà une dizaine pour mes velux et tout ok

toutefois j’envisageais de garder le capteur aqara afin de détecter des vibrations si absent et constater une éventuelle effraction.
j’ai ca en condition:

Bonjour bison,

je viens enfin de recevoir mon detecteur d’ouverture frient et de le configurer
du coup je vais intégrer votre proposition de ligne de commande!

dans mon cas cela donne:
j’ai activé l’historisation de l’ouverture pensant cela obligatoire, mais à me confirmer svp

lastChangeStateDuration(#[Sécurité][Détecteur entrée][Ouverture]#,1)```

dans ma condition actuelle j’en suis à:

#[Sécurité][Sécurité][Mode]# == "Absent"  && #[Sécurité][Détecteur entrée][Ouverture]# == 1  && #[Sécurité][Détecteur Hue][Présence]# == 1  

si je tente de prendre en compte:

Du coup dans l’idée si cette commande est à 0 (fermée) et que le résultat du lastChangeStateDuration est inférieur à 10 c’est que la porte a été ouverte dans les 10 dernières secondes (puis refermée).

il faut soit que la porte soit ouverte soit referme dans les 10 dernieres secondes mais du coup pas sur que cela soit utile car de base dans ma condition
mode = absent ok
porte forcement ouverte quand le detecteur hue va signaler une presence…
du coup condition remplie de base

Salut,

Si j’ai compris le besoin tu veux basiquement repérer une présence quand tu n’es pas là en combinant le fait qu’une porte soit ouverte et que le capteur de présence detecte une présence.

Avec cette condition il faut (j’exclue le mode absent) que la porte s’ouvre et que le capteur de présence détecte immédiatement la présence (en même temps finalement) puisque je présume que tu mets ces 2 commandes en déclencheur du scénario.

#[Sécurité][Sécurité][Mode]# == "Absent" && #[Sécurité][Détecteur entrée][Ouverture]# == 1 && #[Sécurité][Détecteur Hue][Présence]# == 1

Du coup je placerais un « sleep 2 » ou « sleep 2 » avant le test histoire de laisser potentiellement le temps au détecteur de capter la présence.

Mais … potentiellement la porte pourrait être refermée immédiatement avant que ton capteur de présence détecte quelque chose ? dans ce cas ça ne fonctionne plus et l’idée de voir si elle avait été ouverte dans les 10 secondes prend son sens.

Du coup :

sleep 2
SI #[Sécurité][Sécurité][Mode]# == "Absent"  && (#[Sécurité][Détecteur entrée][Ouverture]# == 1  || (#[Sécurité][Détecteur entrée][Ouverture]# == 0  && lastChangeStateDuration(#[Sécurité][Détecteur entrée][Ouverture]#,1) < 10) && #[Sécurité][Détecteur Hue][Présence]# == 1

Tout dépend comment ton capteur détecte au moment de l’ouverture de la porte :slight_smile:
Faut faire des tests.

Merci Bison

vu la distance je ne pense pas effectivement pas que la porte ne ne puisse être refermée avant que le détecteur ait vu le mouvement.

Mais bon sait on jamais du coup je retiens la proposition
pour le moment j’ai mis cela en declencheur:

je ne vois pas trop l’interet du sleep mais je l’ai intégré en mettant 1, histoire de verifier
cela lance une alerte vocale + un wait avant sirene…

merci à vous en tout cas

Je pense que tu peux retirer le mode absence de ton déclencheur, il ne sert à rien.

Tu peux remontrer ton scénario au final parce que à l’origine le dernier SI ne sert à rien du tout (SI != ‹ absent ›)

alors pour le mode absent non car cela indique si une personne est presente ou pas
ce scenario ne doit fonctionner que si tout le monde absent

cela donne du coup:


et le passage en mode present est gére via clavier

le sound d’alexa sera remplacé à terme par sirene et ne sert qu’aux tests

par contre j’ai un soucis cela geenre une erreur

Bonjour
La dernière parenthèse !

Ton test du mode absent est nécessaire oui, dans le scénario. Mais il ne sert à rien que le scénario soit déclenché quand le mode passe à Absent. Ou alors je ne vois pas l’ensemble du scénario et il se passe un autre truc avec ce passage à Absent ?

Il faut retirer le SI de la formule, ajouter une parenthèse (que j’ai oublié) après le « < 10 »

Et ce que je disais c’est que le 2eme bloc SI étant inclu dans le 1er il ne sert à rien car si le premier bloc est OK c’est que le mode est absent. Donc il ne pourra pas être différent de absent ensuite dans le même bloc.

je pense comprendre mais n’en suis pas sur:
autrement dit il me faut retirer le mode absent du déclencheur c’est bien ca?

je vais tenter de résumer ce qui est en place et ce que je souhaiterais faire

1)le mode absent est activé par défaut lorsque les deux tiles (celui de ma femme et le mien) ne sont plus détectés et autrement dit plus personnes présent

  1. si le mode absent est activé, un ensemble de matériels se mettent en route: cameras, détecteurs etc.

  2. si mode absent / que la porte est ouverte ou a été ouverte dans les 10 secondes / que le détecteur de présence a détecté quelque chose alors alerte vocale pour désactiver l’alarme/ sirène qui se mettra en route dans les 60 secondes
    on a donc 60 secondes pour désactiver le mode absent et repasser en présent (via code ou badge rfrid)

autrement dit j’ai tenté de mettre ca en place via le scénario
je viens d’enlever le mode absent en déclencheur ce qui donne:

je conserve le si avec l’ajout de parenthèse manquante
SI #[Sécurité][Sécurité][Mode]# == "Absent" && (#[Sécurité][Détecteur entrée][Ouverture]# == 1 || (#[Sécurité][Détecteur entrée][Ouverture]# == 0 && lastChangeStateDuration(#[Sécurité][Détecteur entrée][Ouverture]#,1) < 10)) && #[Sécurité][Détecteur Hue][Présence]# == 1

je corrige en enlevant le deuxieme si ce qui donnerait:

cela vous parait il correct?

edit: pas top j’ai bien le délai d’attente mais des que je passe le badge rfid j’entends l’alarme vocale et juste apres que la sécurité est bine désactivé…

de meme dans le meme scénario j’avais mais du fait des declencheurs pas forcement adapté j’avais prévu un cas d’effraction via le detecteur de vibration en ayant:

merci par avance