Un événement important auquel votre SmartHome doit pouvoir réagir est le statut de présence des résidents. Par exemple, vous pouvez éteindre les lampes lorsque vous êtes absent ou allumer les radiateurs lorsque vous êtes présent.
S'il vous arrive d'avoir encore une FritzBox, cette détection de présence est particulièrement facile.
Tout ce dont vous avez besoin est une FritzBox, NodeRed et la ou les adresses MAC du smartphone du résident.
La manière dont vous implémentez la détection de présence avec la FritzBox dans NodeRed est décrite dans l'article suivant.
Consignes de sécurité
Je sais que les notes suivantes sont toujours un peu ennuyeuses et semblent inutiles. Malheureusement, de nombreuses personnes qui savaient "mieux" ont perdu des yeux, des doigts ou d'autres choses à cause d'une négligence ou se sont blessées. La perte de données est presque négligeable en comparaison, mais même celles-ci peuvent être vraiment ennuyeuses. Par conséquent, veuillez prendre cinq minutes pour lire les consignes de sécurité. Parce que même le projet le plus cool ne vaut pas une blessure ou d'autres problèmes.
https://www.nerdiy.de/sicherheitshinweise/
Liens d'affiliation/publicitaires
Les liens vers des boutiques en ligne répertoriés ici sont des liens dits d'affiliation. Si vous cliquez sur un tel lien d'affiliation et effectuez un achat via ce lien, Nerdiy.de recevra une commission de la boutique en ligne ou du fournisseur concerné. Le prix ne change pas pour vous. Si vous effectuez vos achats via ces liens, vous aidez Nerdiy.de à pouvoir proposer d'autres projets utiles à l'avenir. 🙂
Conditions préalables
Articles utiles :
Pour que vous puissiez accepter cette configuration, NodeRed doit bien entendu déjà être installé.
Comment préparer un RaspberryPi puis installer NodeRed dessus est décrit dans les articles suivants.
Les articles suivants décrivent ce qui doit être fait pour préparer le RaspberryPi :
RaspberryPi - configuration pour les nerdiys !
RaspberryPi – La première configuration !
RaspberryPi - Contrôlez le RaspberryPi via SSH
NodeRed – Installer NodeRed sur le RaspberryPi
NodeRed – Installer de nouveaux nœuds
Outil requis
-Non-
Matériel requis :
Dans la liste suivante, vous trouverez toutes les pièces dont vous avez besoin pour mettre en œuvre cet article.
Connectez-vous à l'interface de configuration de NodeRed
Avant de pouvoir modifier votre configuration NodeRed, vous devez - si activé - vous connecter d'abord à l'interface de configuration NodeRed.

Installer le nœud FritzBox
Damit NodeRed mit Eurer FritzBox kommunizieren kann müsst Ihr die Node “node-red-contrib-fritz” installieren. Wie Ihr Nodes installiert ist im Artikel NodeRed – Installer de nouveaux nœuds décrites.
Entrer dans la configuration du nœud FritzBox
Pour que le nœud FritzBox qui vient d'être installé puisse également communiquer avec votre FritzBox, vous devez entrer vos données de connexion FritzBox dans la configuration du nœud.



Code de nœud pour la détection de présence
La détection de présence via la FritzBox fonctionne en principe en vérifiant quels smartphones sont enregistrés dans le WLAN ou le réseau de la FritzBox.
La première chose à faire est d'introduire le code du nœud ci-dessous dans votre configuration NodeRed.
Ensuite, vous avez besoin des adresses MAC des smartphones dont vous souhaitez détecter la présence. Vous devez ensuite le saisir dans une étape ultérieure de la configuration du nœud Fritz!Box.

Code nœud :
[ { "id": "cf98613.60e11a", "type": "comment", "z": "7289f257a02aeac1", "name": "AnwesenheitHandy1", "info": "", "x": 210, "y": 720, "wires": [] }, { "id": "eedc08fb.12b8f8", "type": "inject", "z": "7289f257a02aeac1", "name": "AnwesenheitHandy1", "props": [ { "p": "payload" }, { "p": "topic", "vt": "str" } ], "repeat": "60", "crontab": "", "once": true, "onceDelay": "1", "topic": "", "payload": "{'NewMACAddress': 'XX: XX: XX: XX: XX: XX'}", "payloadType": "jsonata", "x": 260, "y": 780, "wires": [ [ "38b70c39.68f504" ] ] }, { "id": "c546f3f1.387d1", "type": "debug", "z": "7289f257a02aeac1", "name": "AnwesenheitHandy1", "active": false, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload.NewActive", "x": 680, "y": 760, "wires": [] }, { "id": "1c07ae94.c6b621", "type": "trigger", "z": "7289f257a02aeac1", "name": "", "op1": "AnwesenheitHandy1 ist im Netzwerk angemeldet", "op2": "0", "op1type": "str", "op2type": "str", "duration": "0", "extend": false, "units": "ms", "reset": "0", "bytopic": "all", "outputs": 1, "x": 950, "y": 780, "wires": [ [ "38b38282.c0058e" ] ] }, { "id": "3c25ea32.a803d6", "type": "change", "z": "7289f257a02aeac1", "name": "", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "payload.NewActive", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 700, "y": 840, "wires": [ [ "1c07ae94.c6b621", "379d6bd2.312594" ] ] }, { "id": "379d6bd2.312594", "type": "trigger", "z": "7289f257a02aeac1", "name": "", "op1": "AnwesenheitHandy1 ist nicht mehr im Netzwerk angemeldet", "op2": "0", "op1type": "str", "op2type": "str", "duration": "0", "extend": false, "units": "ms", "reset": "1", "bytopic": "all", "outputs": 1, "x": 950, "y": 860, "wires": [ [ "59fcf739.918c68" ] ] }, { "id": "38b38282.c0058e", "type": "pushbullet", "z": "7289f257a02aeac1", "config": "274f4530.883c1a", "pushtype": "note", "title": "Anwesenheit", "chan": "", "name": "", "x": 1170, "y": 780, "wires": [] }, { "id": "59fcf739.918c68", "type": "pushbullet", "z": "7289f257a02aeac1", "config": "274f4530.883c1a", "pushtype": "note", "title": "Anwesenheit", "chan": "", "name": "", "x": 1170, "y": 860, "wires": [] }, { "id": "38b70c39.68f504", "type": "fritzbox-in", "z": "7289f257a02aeac1", "device": "eef817a2.74b848", "name": "", "service": "urn:dslforum-org:service:Hosts:1", "action": "GetSpecificHostEntry", "arguments": "{'NewMACAddress':'value'}", "x": 460, "y": 780, "wires": [ [ "c546f3f1.387d1", "3c25ea32.a803d6" ] ] } ]
Il est important que vous mettiez à jour l'adresse MAC saisie dans le nœud FritzBox après avoir importé le code du nœud. Cela doit bien sûr correspondre à l'appareil dont vous souhaitez surveiller la présence. Comment connaître l'adresse ou les adresses MAC des appareils de votre réseau se trouve dans l'article Afficher/connaître l'adresse IP des appareils du réseau mentionné.

Spécifiez une adresse MAC fixe pour le smartphone
Certains fabricants de smartphones sont désormais passés à la modification aléatoire des adresses MAC de leurs appareils. Il s'agit d'une fonction de sécurité afin que votre smartphone ne puisse pas être suivi dans des WLAN potentiellement étrangers.
Dans notre cas, cependant, c'est un frein car nous identifions les smartphones par l'adresse MAC fixe. Vous devez donc désactiver cette fonction pour votre WLAN.
Désactivez l'adresse MAC aléatoire sur Android 11 :
Passe à :
- Idées
- liens
- ACCÈS INTERNET SANS FIL
- Cliquez sur l'engrenage à côté de votre WLAN (connecté)
- avancé
- MAC-Adresstyp -> Einstellen auf “Telefon-MAC”
Désactiver l'adresse MAC aléatoire sur iOS :
Unter iOS verbirgt sich diese FUnktion etwas kryptisch unter dem begriff “Private WLAN-Adresse”. Ihr findet Sie unter:
- Idées
- ACCÈS INTERNET SANS FIL
- Réseau (celui auquel vous êtes actuellement connecté)
- Adresse WLAN privée -> désactiver
Amusez-vous avec le projet
J'espère que tout a fonctionné comme décrit. Si ce n'est pas le cas ou si vous avez des questions ou des suggestions, faites-le moi savoir dans les commentaires. Je les ajouterai à l'article si nécessaire.
Les idées de nouveaux projets sont toujours les bienvenues. 🙂
PS Beaucoup de ces projets - en particulier les projets matériels - coûtent beaucoup de temps et d'argent. Bien sûr, je le fais parce que j'aime ça, mais si vous pensez que c'est cool que je partage l'information avec vous, je serais heureux d'un petit don au fonds du café. 🙂
Bonjour à tous,
J'ai utilisé vos instructions comme décrit ci-dessus.
Leider erscheint bei mir in der “debug” Leiste folgendes:
“No credentials set for pushbullet config.”
où puis-je définir des informations d'identification pour la configuration pushbullet ?
Et qu'est-ce que je dois y mettre exactement?
J'espère que vous pourrez m'aider 🙂
Sincèrement
Jürgen
Bonjour Jürgen,
vous voyez le message d'erreur car un message pushbullet est envoyé lorsque la présence ou l'absence est détectée. Il s'agit d'un service de notification push. Vous pouvez trouver plus d'informations et comment le configurer ici: https://nerdiy.de/nodered-pushbullet-nachrichten-bei-ereignissen-senden/
Si vous ne souhaitez pas utiliser le service, vous pouvez bien sûr simplement supprimer les nœuds. 🙂
Cordialement
Fabien
Hallo ich hoffe das dieser Bereich noch in Beobachtung ist. Wenn ich den Node Code importieren möchte schreibt mir Node RED an diversen Stellen einen Syntax Fehler
Hi Stefan,
du hast recht, danke für den Hinweis. Ich habe den Code nun nochmal neu hochgeladen. Jetzt müsste es gehen. 🙂
Cordialement
Fabien
Der Inject-Typ ist falsch. Der muss auf “JSONata” stehen für die MAC-Adresse, nicht auf “JSON”. Dann funktioniert der Spaß auch, wie er soll 🙂
Aber danke für den Tipp mit Pushbullet, das ist genau das, was ich noch gesucht habe.
Salut,
oh dann muss sich etwas an der Implementierung geändert haben. Hatte den Code so bisher genutzt. Hab es aber jetzt angepasst.
Danke dir für den Hinweis. 🙂
Cordialement
Fabien
Hallo Fabian, ich habe eine Frage; Alles funktioniert einwandfrei, allerdings erhalte ich keine Push-Nachricht, wenn das iPhone wieder im Netzwerk ist. Ich sehe, dass sich unter dem anderen Knoten „Trigger and Block“ ein quadratisches Kästchen befindet. Meine zweite Frage ist, dass ich eine andere Fritzbox (gleiche SSID, kein DHCP usw.) in meinem Netzwerk habe, um mein Netzwerk zu stärken. Wenn mein iPhone dorthin geht, erhalte ich auch eine Benachrichtigung vom Netzwerk
Hi Bert,
hast du den Punkt mit der Mac Adresse beim iPhone beachtet? Um unauthorisierte Verfolgung zu verhindern simuliert das iPhone standardmäßig unterschiedliche Mac Adressen wenn es sich in ein WLAN einloggt. Dies solltest du für dein WLAN deaktivieren. Ich glaube ich habe das im Artikel beschrieben. (Kann aktuell leider nicht nachgucken). Hast du diesen Punkt schon beachtet? 🙂
Cordialement
Fabien