Ce projet détaille la réalisation d’un mini système d’alarme à l’aide d’un Mac équipé d’une webcam.
Étant actuellement en résidence universitaire, je tiens à être certain que personne ne peut accéder à ma chambre pendant mon absence sans autorisation. Pour cela, j’ai mis en place un système de surveillance sur mon MacBook. Le principe est le suivant :
Pendant mon absence, la webcam est orientée vers l’entrée de la chambre, un logiciel tourne en arrière-plan et est programmé pour enregistrer une vidéo à chaque détection de mouvement. Dans le même temps, un script Shell tourne en boucle et vérifie le nombre de fichiers présents dans un répertoire donné. Si ce nombre de fichiers change, cela signifie qu’un mouvement a été détecté. À ce moment, le script envoie une notification push sur mon iPhone, puis un fichier son est exécuté afin de prévenir l’individu qu’il n’a pas le droit d’entrer et que j’en ai été informé.
Evocam
Le logiciel de détéction vidéo que j’ai utilisé est EvoCam. Il est paramétré pour enregistrer une vidéo à chaque mouvement puis prononcer une phrase à l’aide de voiceOver (synthèse vocale sur Mac).
Le Script shell
#!/bin/bash echo "Start" sleep 15 #Donne 15 secondes pour quitter la chambre i=0 nbfichier=`ls | wc -l` #Compte le nombre de fichier dans le répertoire open -a /Applications/EvoCam.app #Ouvre EvoCam while : #Boucle infinie do echo "-----------------"; echo $i; let i++; if [ "`ls | wc -l`" != "$nbfichier" ] #Si le nombre de fichiers actuel et différent du nombre de fichiers précédent, alors exécuter l'alarme then echo "New alarm !!!" curl -k https://prowl.weks.net/publicapi/add -F apikey=YOUR_API_KEY -F application="Alarme" -F event="" -F priority="1" -F description="Quelqu'un est rentré dans la chambre" #Envoi de la notification Push iPhone avec Prowl sleep 4 #Attente de 4 secondes open -a /Applications/vlc.app /Users/clement/Temps/Camera/aswer_the_phone.aiff #Ouverture du fichier son avec VLC fi nbfichier=`ls | wc -l`; echo "Nombre de fichier : "; echo $nbfichier; sleep 2 done |
Remarque : n’oubliez pas de renseigner votre API_Key pour l’utilisation de Prowl (pour plus d’information, consulter ce post)
Pour lancer le système il suffit d’exécuter le script dans le bon répertoire (en ayant pris soin de rendre le fichier exécutable). Ensuite vous avez 15 secondes pour quitter la chambre.