RSS

Alarme Somfy Protexiom et Script Bach

12 Sep

Je suis l’heureux propriétaire d’une alarme Somfy Protexiom 400 depuis Juillet mais cette dernière n’a pas la possibilité d’envoyer son statut sur mon serveur Linux (Ubuntu 11.04), malgré une interface Web bien faite sur la « Centrale Téléphonique », je suis forcé de constater que cette fonction manque !

J’ai tenté « d’usurper  » l’identité des serveurs de Somfy (grâce à mon DNS Local) pour l’accès à distance. Mais sans succès : la centrale envoie des codes (nombres) et le serveur distant en renvoie d’autres: je n’ai pas réussi à percer leurs significations.

Une seule solution me restait « faire lire » à intervalle donné la page Web des états des Zones de l’alarme. Il a fallu que je me replonge dans le bash (avec ces commandes awk, sed…) mais le résultat est pas trop mal. La difficulté a été la connexion par le serveur avec la commande WGET. En effet, le login, nécessite un « mot de passe » bien attendu, mais aussi un code d’authentification à lire sur le tableau de la carte d’Authentification (voir page 17 de ce document).

Pour le moment ce script Bash, me permet d’afficher les ON ou OFF des zones A, B & C mais l’idée finale serait d’activer la camera IP (en mode Monitor) de la zone en question grâce à ZoneMinder (le logiciel gratuit de video-Surveillance):  Pour Rappel : la fonction d’arrêt de Zoneminder existe (/usr/bin/zmpkg.pl stop) ainsi que son démarrage (/usr/bin/zmpkg.pl start).

Donc Voici le Script en Question: SomfyProtexionScript. Notez aussi que ce script devrait fonctionner aussi avec l’alarme Somfy Protexiom 600. Pour l’installation, juste 2 commandes : « tar xvf SomfyProtexionScript.tar » et un « chmod 755 SomfyPretexiomStat_1.sh »

Coté Configuration : Vous devez renseigner le Code Pin utilisateur1, l’adresse IP de la Centrale Téléphonique et ré-écrire complétement votre Carte d’authentification dans le Script sous la forme:

Authent=( [« A1″]= »5032 » [« B1″]= »0831 » [« C1″]= »3064 » [« D1″]= »0594 » [« E1″]= »5446 » [« F1″]= »1555 » [« A2″]= »7829 » [« B2 »]= »8374″…. et ainsi de suite !

Après tout ça, vous serez capable de voir:

philippe@madomotique:~$ ./SomfyPretexiomStat.sh
Zone A is OFF
Zone B is OFF
Zone C is OFF
philippe@madomotique:~$

Je ferai un Update prochainement de ce script avec l’ajout de l’exécution de commande en fonction des états des zones l’alarme (merci la Cron tab). Mon idée est donc d’activer ou non Zoneminder en fonction des Zones activées, et parce que je n’utiliserai que 2 zones pour l’alarme, utiliser la dernière pour, par exemple, éteindre ou allumer toutes les lampes extérieures. Et, je pense être capable d’envoyer des messages Xpl des états des Zones à Domogik. Wait and See….

Merci Somfy de ne pas toujours nous mâcher le travail !

 
7 Commentaires

Publié par le 12 septembre 2011 dans Hardware, Software

 

7 réponses à “Alarme Somfy Protexiom et Script Bach

  1. JT28

    27 février 2012 at 16:34

    Bonjour, ca marche super. Beau travail !

    Avez vous avancé sur l’update ?

    Cordialement.

     
  2. madomotique

    27 février 2012 at 21:54

    Salut JT28,

    Désolé pas d’Update actuellement.
    Je bloque sur le fait qu’a chaque lancement du script (SomfyPretexiomStat.sh), la connexion est « loggée » par la centrale Alarme. Du coup si vous lancez le script toutes les minutes, vous aurez des logs trés trés long et vous ne pourrez voir si il y a eu intrusion ou non… (et en bonus l’interface Rame avec tout ces logs…) Pénible…

    Je cherche….

     
  3. JT28

    28 février 2012 at 16:01

    Ok, merci pour la réponse.

    Ne faut il pas faire une déconnexion à la fin du script, est ce possible ?

    Bon courage.

     
  4. madomotique

    3 mars 2012 at 23:03

    Perso j’ai réglé la déconnexion automatique au bout d’une minute d’inactivité !

     
  5. Stéphan

    25 janvier 2013 at 09:21

    Bonjour,

    Tout d’abord merci pour votre script. Il m’a bien aidé à « interfacer » mon alarme sur ma centrale domotique. Bien que cela ne soit pas parfait, tout marche correctement.

    J’ai découvert récemment que l’alarme répondait à l’url suivante: http(s)://ip-de-l’alarme/status.xml. Et dedans, il y a ce dont nous avons besoin pour connaitre l’état de l’alarme. Malheureusement pour nous, l’accès à cette url n’est permise qu’aux personnes se logguant sur l’alarme.

    Voilà pour la trouvaille. Peut être arriverons-nous un jour à percer le mystère autour de cette boite noire…

     
  6. madomotique

    25 janvier 2013 at 12:30

    De rien !
    Je serais curieux de voir votre travail : « l’interface avec votre centrale domotique ».
    Merci pour le status.xml, je verrais si une nouvelle version du script avec ce fichier ne serais pas mieux que le « parsing » de l’interface html…

     
  7. Stéphan

    25 janvier 2013 at 14:03

    J’ai publié le code sur un gist: https://gist.github.com/4634276

     

Commentaires...

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s