Bluetooth : Détection de présence

Bonjour, je n’ai pas trouvé de sujet généraliste sur le Bluetooth donc j’en crée hein.

Je remonte au travers de ce post un bug (ou tout du moins un problème) concernant la détection de présence via le Bluetooth que @lmilcent et moi avons remarqué.

Actuellement pour pouvoir utiliser un appareil sélectionné comme détecteur de présence dans une scène, l’appareil ajouté doit être présent dans une pièce. Lorsque celui ci n’en possède pas alors il est impossible de le trouver dans les appareils de la liste “Changement d’état de l’appareil” sur une scène.

Serait-il possible d’activer dans la liste des scènes les appareils n’étant pas associé à une pièce dans une maison ?

Pour que ça reste cohérent je me suis créé une pièce “dehors” en attendant, mais bon ça prête un peu à confusion quand on ne voit pas le nut dans la liste !

2 Likes

C’est pas bête ça :grinning_face_with_smiling_eyes:

Effectivement c’est un problème

Je me demande si il vaudrait pas mieux faire un déclencheur spécial presence qui fait que ça, ça sera plus facile à comprendre pour l’utilisateur

J’avoue que sans ton tuto sur le forum je n’aurais pas trouvé comment faire pour gérer la présence d’un utilisateur.

Le plus simple serait de faire comme pour tous les périphériques : déclenchement sur changement d’état.

  1. Le bluetooth scan toutes les 1 minutes par exemple
  2. Si mon NUT est détecté, le périphérique “Nut Louis” est marqué comme présent
  3. Si mon NUT n’est pas détecté, le périphérique “Nut Louis” est marqué comme absent
  4. Dans les scène, je peux me baser sur le changement d’état de “Nut Louis” et vérifier s’il est à 1 ou 0 (ou un bouton dédié présent / absent dans les scènes comme pour les capteurs de présence).

C’est beaucoup plus cohérent avec le reste de Gladys et on s’y retrouve plus facilement.

Je suis d’accord, et c’est d’ailleurs le cas pour la partir détection d’entrée dans la maison.

Après pour la partie “détection de sortie de la maison”, faire ça dans une scène je trouvais ça assez complexe pour un truc qui est assez similaire chez tout le monde (tout le monde va faire ça de la même manière, modulo certains paramètres), donc je trouvais que forcer les gens à recréer une scène complexe qui peut juste être une box dans les scènes c’était overkill

En fait toi tu pars de l’hypothèse que pour toi si ton périphérique n’est pas détecté une seule fois chez toi, c’est que tu n’es plus chez toi. Hors dans la réalité, des déconnexions Bluetooth de quelques secondes ça arrive tout le temps. Pour ça qu’historiquement sur Gladys, les gens ont plutôt fait des conditions basées sur une période de temps sans détection plus qu’en déconnexion qui fait des faux positifs

C’est exact. Au départ, je voulais faire autre chose, mais je pense que c’est encore impossible à faire avec Gladys : pouvoir vérifier la valeur d’un capteur sur une période de temps (ex: pas de mouvement pendant 10 minutes).

Question sur la détection de présence : je n’arrive pas à comprendre comment lancer des scènes lors du départ d’un utilisateur.
Quand je vérifie la valeur du périphérique, elle est toujours à 1 que je sois marqué comme présent ou non.

Dans la documentation, tu expliques très bien comment marquer un utilisateur absent ou présent avec la box “Vérifier la présence”, mais cette action ne permet pas de l’utiliser dans “Continuer Seulement Si” par exemple.

Ou alors j’ai raté quelque chose ?

Pourquoi ne pas lier un périphérique sur le profile de l’utilisateur?
Cela serait beaucoup plus simple, non?

Je viens d’acheter un porte clef Bluetooth à Action pour moins de 2€.
Je l’ai lié à Gladys et sa marche nickel.
Edit: Juste que je suis obligée de cliquer dessus pour l’activer. En fait non pas besoin de cliquer.

C’est bien ce que j’ai fait, le dashboard m’affiche présent ou absent. Mais comment déclencher une scène lorsque je suis absent ?

Si tu fais la même scène avec comme action “utilisateur parti de la maison”
Lorsqu’il ne voit plus ton périphérique cela devrait changer d’état, non?

Ça ne marche pas, c’est marqué : “Cette Action indique que l’utilisateur a quitté la maison.”

Ce n’est pas encore possible ! :slight_smile: C’est un développement à faire, il faut ajouter une box “quand l’utilisateur quitte la maison” et “quand l’utilisateur rentre à la maison”

Merci de la confirmation, j’en était pas totalement certain !

Je mets un message pour ceux qui tomberait ici, mon message ci dessus n’est plus d’actualité depuis Gladys v4.3 :slight_smile:

Hello, je suis en train de tester la fonctionnalité, mais mon iPhone n’est jamais listé dans Découverte bluetooth

Bonjour @Thomas_Parquier, c’est normal il n’est pas possible de faire de la détection de présence avec nos téléphones (autant iOS qu’Android), pour plusieurs raisons:

  • Ils n’émettent pas en permanence
  • Ils obfuscent volontairement leur adresse MAC bluetooth pour justement ne pas se faire traquer

Pour faire de la présence Bluetooth, je te conseille d’acheter un porte clé Bluetooth qui lui sera vu par Gladys:

Le nut par exemple: https://www.amazon.fr/Nut-Bluetooth-Télécommande-Localisation-Smartphone/dp/B01M4L7GHY

ok dommage, merci pour l’info
dans ce cas, la présence sur le réseau local me parait pertinente pour moi (vu dans un autre thread) : quelle serait la marche à suivre dans ce cas-là ?

Pour faire la présence sur le réseau local, tu peux utiliser l’app “Shortcuts” sur iOS (ou Tasker ou Automate sur Android) pour détecter que ton iPhone vient de se connecter (ou de partir) du réseau Wifi de chez toi.

Ensuite, pour envoyer l’information à Gladys, sur iOS tu peux passer par l’Open API de Gladys Plus, j’ai fais un tutoriel la semaine dernière:

Sur Android, pour quelqu’un qui a le temps et les compétences, il est possible d’envoyer la data en MQTT si le broker MQTT est disponible sur internet :slight_smile:

ok je te remercie
Avez-vous envisagé de passer par un module Gladys de détection sur le réseau local ? mDns ou autre ?

Oui il y a une demande de fonctionnalité qui va dans ce sens:

Si ça t’intéresse tu peux voter pour la fonctionnalité, pour l’instant peu de vote dessus donc elle n’est pas dans les priorités :slight_smile: