Forum eedomus
https://forum.eedomus.com/

Récupération de l'état de votre alarme Somfy
https://forum.eedomus.com/viewtopic.php?f=50&t=1641
« Précédent  Page 3 sur 6  Suivant »
Auteur:  domowawa [ 08 Oct 2014 13:50 ]
Sujet du message:  Re: Récupération de l'état de votre alarme Somfy

ArnaudP a écrit:Un petit UP, personne pour m'aider ?



Salut ArnaudP,
Je suis dans la même configuration que toi : somfy protexiom 600 et zibase (non non pas de eedomus, j'espère que je ne vais pas me faire jeter des pierres ;) ).
J'ai aussi un syno qui héberge déja certains scripts lancés par la zibase.
Je souhaite aussi pouvoir récupérer l'état de mon alarme et/ou pouvoir l'activer via la zibase.

J'ai essayé de me connecter sur http://"ipsomfy"/fr/login.htm est j'ai bien accès à la page.
Etrange que tu n'y aies pas accès étant donné que mon alarme est de 2012.

Je vais maintenant me pencher sur le script que l'on peut trouver en première page de ce post. On verra bien si j'arrive à quelque chose (ce qui n'est pas garanti).

Je te tiens au courant si je trouve quelque chose.
Auteur:  ArnaudP [ 08 Oct 2014 16:27 ]
Sujet du message:  Re: Récupération de l'état de votre alarme Somfy

Bonjour domowawa !
De mon cote je ne suis pas un experten PHP par contre j ai un ami qui maitrise .. par contre n a aucune notion en domotique donc assez difficile de lui faire comprendre mes (nos) besoins..

Pour ne pas encombrer ce forum je te laisse un MP avec mon adresse mail...
§Si nous arrivons a faire qlq chose nous ferons (si cela t interresse) un tuto sur un forum generaliste section zibase..

Merci bp pour ton retour
ARNAUDP
Auteur:  bubu [ 23 Nov 2014 23:41 ]
Sujet du message:  Re: Récupération de l'état de votre alarme Somfy

J'ai quaiment réussi à modifier le script pour qu'il fonctionne avec les alarmes PROTEXIOM >2012 qui ne possèdent pas de page d'accès mobile ( étant donné que SOMFY a sorti son app mobile, ils n'ont pas remis cette page dans leurs alarmes).
Si ca intéresse quelqu'un...let me know

NEANMOINS j'ai encore besoin d'aide...
J'arrive à allumer et couper l'alarme mais j'ai un soucis sur la récupération des statuts.
Quand je fais un "TEST" du capteur http, ca marche mais la eedomus retourne une erreur quand la requete est faite automatiquement...
" [Impossible de parser le XML]. Aperçu du contenu."

et ce contenu:
<?xml version="1.0" encoding="iso-8859-15"?>
<response>

<zone0>off</zone0>
<zone1>off</zone1>
<zone2>off</zone2>
%0 [...]


Vous auriez une idée?

Merci beaucoup
Auteur:  slider [ 25 Nov 2014 10:41 ]
Sujet du message:  Re: Récupération de l'état de votre alarme Somfy

Bonjour à tous.

Désolé de vous avoir abandonné, mais j'étais sur un autre projet (voir la section plugin).

Je peux essayer de vous aider. Reposer moi vos question si vous le souhaitez.
Auteur:  bubu [ 28 Nov 2014 21:28 ]
Sujet du message:  Re: Récupération de l'état de votre alarme Somfy

salut Slider,

Tu pourrais me confirmer ce que tu as mis dans ton capteur http qui récupère le status stp?

Merci
Auteur:  slider [ 29 Nov 2014 18:40 ]
Sujet du message:  Re: Récupération de l'état de votre alarme Somfy

http://localhost/script/?exec=alarme_so ... ion=status
Auteur:  bubu [ 01 Déc 2014 11:08 ]
Sujet du message:  Re: Récupération de l'état de votre alarme Somfy

Il y avait un bug dans la lecture XML de l'eedomus, d'ou mon probleme depuis quelques temps
L'équipe vient de trouver le patch et va le déployer prochainement.

Merci beaucoup à la team eedomus pour son efficacité....
et merci à Slider
Auteur:  micka83 [ 31 Déc 2015 13:32 ]
Sujet du message:  Re: Récupération de l'état de votre alarme Somfy

Bonjour,
Merci à slider pour son script, mais comme bubu la signalé, la page internet a changé et du coup le script n'arrive pas à se connecter sur mon alarme.
Est ce que quelqu'un a modifié ce script et pourrai le publier car je ne connais rien au langage php et je patoge.
Mertci à vous.
Auteur:  bubu [ 01 Jan 2016 19:46 ]
Sujet du message:  Re: Récupération de l'état de votre alarme Somfy

Oui c'est bon j'ai finalement reussi a l'epoque. Je te poste ca quand je rentre chez moi
Auteur:  micka83 [ 01 Jan 2016 20:25 ]
Sujet du message:  Re: Récupération de l'état de votre alarme Somfy

Ok, c'est super. Je te remercie et j'attends ça avec impatience.
Auteur:  bubu [ 01 Jan 2016 20:29 ]
Sujet du message:  Re: Récupération de l'état de votre alarme Somfy

Ca sera Mardi au plus tot
Auteur:  micka83 [ 01 Jan 2016 20:47 ]
Sujet du message:  Re: Récupération de l'état de votre alarme Somfy

C'est pas grave j'attendrai et je te remercie encore pour ton aide.
Auteur:  bubu [ 07 Jan 2016 13:22 ]
Sujet du message:  Re: Récupération de l'état de votre alarme Somfy

Et voilà le script modifié. Désolé pour le délai

Code : Tout sélectionner
<?
$GLOBALS['ip_alarme'] = getArg('ip_alarme');
$GLOBALS['password'] = getArg('password');
$action = getArg('action');

$GLOBALS['code'] = array(
   'A1' => 'xxx', 'A2' => 'xxx', 'A3' => 'xxx', 'A4' => 'xxx', 'A5' => 'xxx',
   'B1' => 'xxx', 'B2' => 'xxx', 'B3' => 'xxx', 'B4' => 'xxx', 'B5' => 'xxx',
   'C1' => 'xxx', 'C2' => 'xxx', 'C3' => 'xxx', 'C4' => 'xxx', 'C5' => 'xxx',
   'D1' => 'xxx', 'D2' => 'xxx', 'D3' => 'xxx', 'D4' => 'xxx', 'D5' => 'xxx',
   'E1' => 'xxx', 'E2' => 'xxx', 'E3' => 'xxx', 'E4' => 'xxx', 'E5' => 'xxx',
   'F1' => 'xxx', 'F2' => 'xxx', 'F3' => 'xxx, 'F4' => 'xxx', 'F5' => 'xxx'
);

function sdk_somfy_login() {
  $http_result = httpQuery("http://" . $GLOBALS['ip_alarme'] . "/");
  $login_code = $GLOBALS['code'][substr($http_result, strpos($http_result, "Code d'authentification") + 27, 2)];

  httpQuery("http://" . $GLOBALS['ip_alarme'] . "/fr/login.htm", 'POST', "login=u&password=" . $GLOBALS['password'] . "&key={$login_code}&btn_login=Connexion", NULL, NULL, true);
}

function sdk_somfy_logout() {
  httpQuery("http://" . $GLOBALS['ip_alarme'] . "/logout.htm", "GET", NULL, NULL, NULL, true);
}

switch($action) {
  case 'status':
    if (time() > loadVariable('last_alarm_access') + 60) { // every 60 seconds
       sdk_somfy_login();

      $status = httpQuery("http://" . $GLOBALS['ip_alarme'] . "/status.xml", "GET", NULL, NULL, NULL, true);
      $status = str_replace("</response>", "<instance>new</instance>" . "</response>", $status);
       sdk_somfy_logout();

       saveVariable('last_alarm_access', time());
       saveVariable('last_status', $status);
    } else {
       $status = str_replace("new", "old", loadVariable('last_status'));
    }

    sdk_header('text/xml');
    $search = array("\r\n", "\n");
    $result = str_replace($search, '', $status);
    echo $result;

    break;
  case 'alarm_off':
    sdk_somfy_login();
    httpQuery("http://" . $GLOBALS['ip_alarme'] . "/fr/u_pilotage.htm", 'POST', "hidden=hidden&btn_zone_off_ABC=Arr%EAt+A+B+C", NULL, NULL, true);
    sdk_somfy_logout();
    break;
  case 'alarm_on':
    sdk_somfy_login();
    httpQuery("http://" . $GLOBALS['ip_alarme'] . "/fr/u_pilotage.htm", 'POST', "hidden=hidden&btn_zone_on_ABC=Marche+A+B+C", NULL, NULL, true);
    sdk_somfy_logout();
    break;
}

?>
Auteur:  micka83 [ 07 Jan 2016 13:50 ]
Sujet du message:  Re: Récupération de l'état de votre alarme Somfy

Je te remercie et je vais essayer ça rapidement. :D
Auteur:  stefanski [ 07 Jan 2016 17:03 ]
Sujet du message:  Re: Récupération de l'état de votre alarme Somfy

Bonjour,
Nouveau possesseur d'un box eedomus et d"une alarme Somfy, je me suis confronté au même problème de script qui ne fonctionnait pas avec les nouvelles versions des alarmes Somfy.
J'avais adapté le script d'origine hier soir, ça revenait à peu près à ce que bubu a posté ce jour.
Je me suis dit qu'il est possible d'aller plus loin, je posterai d'ici lundi je pense (le temps pour moi de tester un peu mieux) le script que j'ai maintenant qui permet de :
- Récupérer le statut d'activation de chaque zone et l'afficher dans l'actionneur
- Armer tout ou seulement une seule zone
- Il gère la reprise d'erreur quand quelqu'un est déjà connecté pendant la récupération de statut
- On peut récupérer l'état de tous les périphériques Somfy, pratique pour intégrer les détecteurs d'ouvertures dans eedomus, même si malheureusement ça n'est pas du temps réel puisque les requêtes ne sont faisables que toutes les minutes au minimum.

Voici un petit aperçu :
Alarme.png
Alarme.png (22.88 Kio) Consulté 21295 fois


A mon avis il y aura encore pas mal d'évolutions, à voir...
Auteur:  micka83 [ 07 Jan 2016 20:05 ]
Sujet du message:  Re: Récupération de l'état de votre alarme Somfy

Je vais commencer par installer le script de bubu mais ne connaissant rien au langage php tes améliorations m'intéresse beaucoup et ton aperçu me plait.
Auteur:  droopyy63 [ 18 Jan 2016 09:19 ]
Sujet du message:  Re: Récupération de l'état de votre alarme Somfy

Bonjour,

J'ai une alarme protexiom 400 de 2008 et je n'arrive pas à faire fonctionner les scripts pour récupérer le statut , mettre en marche et eteindre l'alarme. J'ai le message clé erronnée lorsque je lance le script de récupération de status. Si j'ouvre une session à la main et que je lance de nouveau ca fonctionne ... pouvez vous m'aider ?

Merci d'avance
Auteur:  Ludovic M [ 01 Mars 2016 08:36 ]
Sujet du message:  Re: Récupération de l'état de votre alarme Somfy

Bonjour à tous,
Merci pour vos échanges grâces auxquels j'ai réussit à paramétrer le script.
quelques questions restent :
si on créer un capteur par état cela va lancer le script autant de fois que de capteur et saturer le nombre de connexion, n'est il pas possible de récupérer et afficher tout les états avec le résultat d'une requête ou ai je mal compris ?
Dans l'alarme protexiom quel est la valeur à indiquer dans temps de déconnexion pour optimiser les connections en boucle ?
Stefanski pourrais tu poster ton script comportant les possibilités de ta capture d'écran stp
Merci
Auteur:  mickael38 [ 02 Mars 2016 20:38 ]
Sujet du message:  Re: Récupération de l'état de votre alarme Somfy

bubu a écrit:J'ai quaiment réussi à modifier le script pour qu'il fonctionne avec les alarmes PROTEXIOM >2012 qui ne possèdent pas de page d'accès mobile ( étant donné que SOMFY a sorti son app mobile, ils n'ont pas remis cette page dans leurs alarmes).
Si ca intéresse quelqu'un...let me know

NEANMOINS j'ai encore besoin d'aide...
J'arrive à allumer et couper l'alarme mais j'ai un soucis sur la récupération des statuts.
Quand je fais un "TEST" du capteur http, ca marche mais la eedomus retourne une erreur quand la requete est faite automatiquement...
" [Impossible de parser le XML]. Aperçu du contenu."

et ce contenu:
<?xml version="1.0" encoding="iso-8859-15"?>
<response>


<zone0>off</zone0>
<zone1>off</zone1>
<zone2>off</zone2>
%0 [...]


Vous auriez une idée?

Merci beaucoup


Salut bubu,

pourrais tu nous dire comment appeler les action en commande http pour les différente action de type :

on / off / zone A etc... ?

et egalement quel scipt php marche avec quel version de modéle ?

Je voudrais reprendre ce script php pour l'heberger sur un synology afin d'appeler des commande http et permettre un pilotage depuis un automate crestron

merci pour ton aide
Auteur:  bubu [ 05 Mars 2016 15:02 ]
Sujet du message:  Re: Récupération de l'état de votre alarme Somfy

http://adressipeedomus/script/?exec=alarme_somfybeta.php&ip_alarme="ipalarme"&password=xxxx&action=status

xpath:
etat:
/response/defaut4

etat gsm
/response/gsm

etat des piles:
/response/defaut0


etc... les autres xpath sont analysables en faisant un "test"



je n'ai pas trop d'appronfondir aujourd'hui...

dis moi si ca te va.
Page 3 sur 6 Le fuseau horaire est UTC+1 heure