Dropbox allume vos lumières

Tout d’abord, je vous souhaite à tous une excellente année 2012 😀

Qu’elle vous apporte plein de petits plaisirs et de grand bonheur qui font la joie de notre vie de tout les jours 🙂

Je vous propose une petite bidouille rigolote dont je me suis servie dernièrement en l’absence d’accès web sur mon serveur domotique.

Comme nombreux parmi vous je me sers de Dropbox entre mes serveurs, pcs, téléphone Android etc..

Bien évidemment, mon serveur domotique dispose d’un répertoire partagé avec mes autres équipements.

Il m’est arrivé de devoir ouvrir la porte de mon garage à distance (chose courante qui se gère par différents accès SSH, API ou interface Web) mais je n’avais pas accès à ses environnements depuis le lieu où je me trouvais. A part un accès a mon Dropbox…

Et là, j’ai eu une idée farfelue, controler par Dropbox l’interaction avec les équipements domotique 😀

Hop, c’est parti, comment j’ai mis cela en place.

Tout d’abord, bien sûr, il faut sur votre serveur domotique un Dropbox qui tourne 😉

Ensuite, on va utiliser l’excellentissime INCRON

Quoi que c’est INCRON ?

Et bien, c’est une sorte de crontab mais qui se base sur la librairie Inotify du noyau.

En gros, le démon INCRON détecte tout changement sur un ou des fichiers dans un répertoire défini, et exécute une action en conséquence.

Magique 🙂

On installe donc INCRON sur notre serveur

apt-get install incron

Dans le fichier /etc/incron.allow on ajoute les utilisateurs autorisés.
On se configure dans le répertoire /etc/incron.d/ deux petites actions, l’un en cas de création ou de copie de fichier dans le répertoire cible, l’autre en cas de suppression de ce fichier.

cat /etc/incron.d/lumieres
 
/home/guiguiabloc/Dropbox/domodrop IN_CREATE,IN_MOVED_TO /usr/local/bin/heyu on $#
 
cat /etc/incron.d/lumieresoff
/home/guiguiabloc/Dropbox/domodrop IN_DELETE,IN_MOVED_FROM /usr/local/bin/heyu off $#

Petite explication :

D’abord, le répertoire à surveiller : /home/guiguiabloc/Dropbox/domodrop

Ensuite l’évènement à surveiller (création, déplacement dedans, suppression, déplacement en dehors etc..)

La liste de tout les évènements possibles est visible en tapant :

$ incrontab -t
 
IN_ACCESS,IN_MODIFY,IN_ATTRIB,IN_CLOSE_WRITE,IN_CLOSE_NOWRITE,IN_OPEN,
 
IN_MOVED_FROM,IN_MOVED_TO,IN_CREATE,IN_DELETE,IN_DELETE_SELF,IN_CLOSE,
 
IN_MOVE,IN_ONESHOT,IN_ALL_EVENTS,IN_DONT_FOLLOW,IN_ONLYDIR,IN_MOVE_SELF

Enfin, l’action a effectuer, dans le cas de ce test, j’appelle l’utilitaire HEYU ( contrôle X10) et je lui passe en paramètre le nom du fichier par la variable $#.

Et voila, maintenant, par un simple copier-coller, si je dépose le fichier nommé « A2 » dans le répertoire domodrop de mon Dropbox, la lumière référencé par le module A2 s’allume, si je supprime le fichier, elle s’éteint 🙂 (bien évidemment avec le temps de décalage de synchronisation de Dropbox)

Pour voir ce que cela donne, je vous ai même fait un petit film ! 🙂

Marrant 😀 😀  😀

Alors je ne sais pas si cela va vous servir, en tout cas, c’est bien fun :p

Amusez vous bien 😀

Ce billet a été posté dans domotique. Bookmark le permalink.

6 commentaires sur “Dropbox allume vos lumières

  1. Original 🙂
    Comme quoi avec des systémes ouverts la seule limite est…. très très loin!

  2. Pingback: Outils, services, sites à (re)découvrir 2012 S01 | La Mare du Gof

  3. Tout simplement magique !

    Merci pour INCRON, je ne connaissais pas du tout, ca permet d’aller vraiment loin !

    Bonne continuation !

  4. Bien vu. Justement j’ai joué avec ce principe pas plus tard qu’il y a 2/3 mois. J’utilisais Dropbox pour communiquer avec un serveur isolé derrière un FW. Le client poste les commandes dans un fichier au serveur. Et le serveur répond dans un autre fichier toujours dans l’espace Dropbox. Cool…

  5. Pingback: Pourquoi Dropbox, ça boxe ? | Pour une Thèse Thèsible !