{"id":3842,"date":"2019-09-15T14:47:05","date_gmt":"2019-09-15T13:47:05","guid":{"rendered":"https:\/\/olivier.hoarau.org\/?p=3842"},"modified":"2019-09-16T21:53:22","modified_gmt":"2019-09-16T20:53:22","slug":"alarme-de-detection-de-mouvement-maison","status":"publish","type":"post","link":"https:\/\/olivier.hoarau.org\/?p=3842","title":{"rendered":"alarme de d\u00e9tection de mouvement maison"},"content":{"rendered":"\n<p>J&rsquo;ai bricol\u00e9 une alarme de d\u00e9tection de mouvement bas\u00e9e simplement sur la webcam de mon PC. Le principe est le suivant, un logiciel sur le PC d\u00e9tecte tout mouvement avec la webcam, fait une courte vid\u00e9o de l&rsquo;\u00e9v\u00e8nement qu&rsquo;il place dans un r\u00e9pertoire. Ensuite un script d\u00e9tecte le rajout d&rsquo;un fichier et envoie un mail automatique. Dans le m\u00eame temps, le r\u00e9pertoire o\u00f9 se trouve les fichiers vid\u00e9os est rendu accessible sur internet.<\/p>\n\n\n\n<p>Pour le logiciel de d\u00e9tection de mouvement, j&rsquo;ai utilis\u00e9 <strong>motion<\/strong> qu&rsquo;on trouvera par <a href=\"https:\/\/motion-project.github.io\/\">ici<\/a>. Pour l&rsquo;installation je suis parti des sources, il suffit de taper successivement<\/p>\n\n\n\n<pre data-mode=\"php\" data-theme=\"monokai\" data-fontsize=\"14\" data-lines=\"Infinity\" class=\"wp-block-simple-code-block-ace\">    autoreconf -fiv\n    .\/configure\n    make\n    <\/pre>\n\n\n\n<p>Puis en tant que root<\/p>\n\n\n\n<pre data-mode=\"php\" data-theme=\"monokai\" data-fontsize=\"14\" data-lines=\"Infinity\" class=\"wp-block-simple-code-block-ace\">make install\n<\/pre>\n\n\n\n<p>J&rsquo;ai d\u00fb installer \u00e9galement le package <strong>lib64microhttpd-devel<\/strong> m\u00eame si je ne me sers pas du serveur web <strong>httpd<\/strong> local. Le fichier de configuration se trouve par d\u00e9faut sous <strong>\/usr\/local\/etc\/motion<\/strong>, il faudra renommer le fichier <strong>motion-dist.conf <\/strong>en <strong>motion.conf<\/strong>. Personnellement je n&rsquo;ai fait que changer la variable<strong> target_dir <\/strong>pour indiquer le r\u00e9pertoire d&rsquo;accueil des vid\u00e9os. Sur ma configuration, ce r\u00e9pertoire est un partage r\u00e9seau qui se trouve physiquement sur mon <a href=\"https:\/\/olivier.hoarau.org\/?p=2195\">serveur Dell PowerEdge.<\/a><\/p>\n\n\n\n<p>Sur le serveur, j&rsquo;ai rendu le r\u00e9pertoire accessible via le web en configurant <a href=\"https:\/\/www.funix.org\/fr\/linux\/index.php?ref=apache2\">apache<\/a> avec restriction d&rsquo;acc\u00e8s en rajoutant \u00e9galement une r\u00e8gle au firewall  <strong>shorewall<\/strong>. Pour que le serveur soit visible d&rsquo;internet, j&rsquo;ai utilis\u00e9 les services gratuits de <a href=\"https:\/\/www.noip.com\/\">no ip<\/a> qui permet de nommer votre serveur sur internet avec un nom compr\u00e9hensible et de rediriger les requ\u00eates vers l&rsquo;adresse IP fournie par le fournisseur d&rsquo;acc\u00e8s.  Sur le <a href=\"https:\/\/olivier.hoarau.org\/?p=3036\">routeur<\/a> de mon r\u00e9seau, j&rsquo;ai enfin rajout\u00e9 une redirection vers le port d&rsquo;<strong>apache<\/strong>.<\/p>\n\n\n\n<p>Pour terminer j&rsquo;ai cr\u00e9\u00e9 un script bas\u00e9 sur le package <strong>inotify-tools <\/strong>et <a href=\"https:\/\/olivier.hoarau.org\/?p=2725\">mutt<\/a> pour envoyer un mail d\u00e8s qu&rsquo;un nouveau fichier fait son apparition.<\/p>\n\n\n\n<pre data-mode=\"php\" data-theme=\"monokai\" data-fontsize=\"14\" data-lines=\"Infinity\" class=\"wp-block-simple-code-block-ace\">#!\/bin\/bash\ninotifywait -m \/var\/httpd\/webcam -e create -e moved_to |\n    while read path action file; do\n        echo \"Le fichier '$file' est apparu dans le r\u00e9pertoire '$path' via '$action'\"\n\techo \"Webcam : nouveau fichier\" | mutt -s \"Un nouveau fichier vid\u00e9o a \u00e9t\u00e9 cr\u00e9\u00e9\" -- maildenvoi\n    done\n    <\/pre>\n\n\n\n<p>Dans la pratique, on re\u00e7oit le mail qui signale la cr\u00e9ation d&rsquo;un fichier et on va visualiser ensuite le fichier sur internet. <\/p>\n\n\n\n<p>Tout cela n&rsquo;est pas tr\u00e8s \u00e9colo et monopolise 2 ordinateurs, il faudra que j&rsquo;optimise tout cela sur une seule machine, et pourquoi pas tenter l&rsquo;exp\u00e9rience Rasbperry.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>J&rsquo;ai bricol\u00e9 une alarme de d\u00e9tection de mouvement bas\u00e9e simplement sur la webcam de mon PC. Le principe est le suivant, un logiciel sur le PC d\u00e9tecte tout mouvement avec la webcam, fait une courte vid\u00e9o de l&rsquo;\u00e9v\u00e8nement qu&rsquo;il place dans un r\u00e9pertoire. Ensuite un script d\u00e9tecte le rajout d&rsquo;un fichier et envoie un mail &hellip; <a href=\"https:\/\/olivier.hoarau.org\/?p=3842\" class=\"more-link\">Continuer la lecture de <span class=\"screen-reader-text\">alarme de d\u00e9tection de mouvement maison<\/span>  <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":4,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","_share_on_mastodon":"0"},"categories":[5],"tags":[],"class_list":["post-3842","post","type-post","status-publish","format-standard","hentry","category-logiciels-libres"],"share_on_mastodon":{"url":"","error":""},"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/peOjJ-ZY","jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=\/wp\/v2\/posts\/3842","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=3842"}],"version-history":[{"count":3,"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=\/wp\/v2\/posts\/3842\/revisions"}],"predecessor-version":[{"id":3845,"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=\/wp\/v2\/posts\/3842\/revisions\/3845"}],"wp:attachment":[{"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=3842"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=3842"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=3842"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}