Aller au contenu

willyboy09

Membres
  • Compteur de contenus

    17
  • Inscription

  • Dernière visite

Messages posté(e)s par willyboy09

  1. Bonsoir à tous,

    Je vais devenir fou cela fait 2 heures que je cherche ou régler la planification des notifications dans surveillance station.

    Cela fait plus d'un an que je n'ai pas touché à ma config et je viens d'ajouter une cam et je reçois des notifications à chaque mouvement...

    Pourtant toutes mes autres caméra on un réglage particulier (et toujours fonctionnel) mais impossible de retrouver ce menu...

    Merci bcp pour votre aide...

     

    Wil

  2. Bonjour à tous,

    Je tourne en rond pour l'installation d'un script .sh depuis une semaine et j'ai l'impression d'avoir tout essayé !!!

    Donc j'ai sur mon ds214play installé Domoticz qui fonctionne bien. J'ai installé depuis peu chez moi une alarme Somfy Protexium 5000 et je cherche à mettre en place un script trouvé sur un forum dédié à Domoticz.

    Sauf que ça ne fonctionne pas... J'ai l'impression que ce Script à été réalisé pour une utilisation sur Raspberry et que cela pose problème.

    voici le script :

    #!/bin/bash
    #----------------------------------------------------------------------------------------------------------------------
    # Script alarme_Somfy.sh
    # Date : 11/2016
    # Version : 2.0
    # Par : jcjames_13009
    # Description : Script de pilotage de l'alarme Somfy Protexiom 5000
    # - Adapatation du script de Seb13 du forum easydomoticz.com pour Alarme Somfy Protexion 600 au modèle Protexion 5000
    #   * Lecture des états du système et mise à jour dans Domoticz
    #   * Mise en marche de l'alarme Zone A
    #   * Mise en marche de l'alarme Zone B
    #   * Mise en marche de l'alarme Zone C
    #   * Mise en marche de l'alarme Zones A B C
    #   * Arrêt de l'alarme Zones A B C
    #   * Reset defauts piles, liaisons et alarmes
    #   * Gestion liste des éléments
    #----------------------------------------------------------------------------------------------------------------------
    # Appel du script
    # - Mise à jour des états de l'alarme toutes les 15min via le crontab :
    #   */15 * * * * sudo /home/pi/domoticz/alarme_somfy.sh --Status
    # - Pilotage de l'alarme à partir de DOMOTICZ :
    #   Ex pour la mise en marche Zone A ajouter dans l'onglet "Action On" du capteur virtuel: 
    #   script:///home/pi/domoticz/alarme_Somfy.sh --ZoneAOn 
    #----------------------------------------------------------------------------------------------------------------------
    # Version : 2.1
    # Date : 25/11/2016
    # - Ajout d'un "sleep 1" pour éviter les pertes de retour d'état entre chaque cde dans la lecture de l'état du système
    #----------------------------------------------------------------------------------------------------------------------
    # Version : 2.2
    # Date : 27/11/2016
    # - Ajout cde reset defauts piles, liaisons et alarmes
    #----------------------------------------------------------------------------------------------------------------------
    # Version : 2.3
    # Date : 10/12/2016
    #   * Gestion liste des éléments et remonté état dans Domoticz
    #----------------------------------------------------------------------------------------------------------------------
    
    #Debug=True
    Debug=False
    
    #----------------------------------------------------------------------------------------------------------------------
    # PARAMETRES ALARME
    #----------------------------------------------------------------------------------------------------------------------
    # Carte d'authentification perso
    declare -A CarteAuthentification
    
    CarteAuthentification=( ["A1"]="xxxx" ["B1"]="xxxx" ["C1"]="xxxx" ["D1"]="xxxx" ["E1"]="xxxx" ["F1"]="xxxx" 
                      ["A2"]="xxxx" ["B2"]="xxxx" ["C2"]="xxxx" ["D2"]="xxxx" ["E2"]="xxxx" ["F2"]="xxxx" 
                      ["A3"]="xxxx" ["B3"]="xxxx" ["C3"]="xxxx" ["D3"]="xxxx" ["E3"]="xxxx" ["F3"]="xxxx" 
                      ["A4"]="xxxx" ["B4"]="xxxx" ["C4"]="xxxx" ["D4"]="xxxx" ["E4"]="xxxx" ["F4"]="xxxx" 
                      ["A5"]="xxxx" ["B5"]="xxxx" ["C5"]="xxxx" ["D5"]="xxxx" ["E5"]="xxxx" ["F5"]="xxxx" )
    
    # Adresse IP alarme Somfy 
    SrvSomfyIp="http://IP.ALARME/"
    
    # Code Utilisateur1
    CodeUtilisateur1=1234
    
    # URLs alarme SOMFY PROTEXION 5000 GSM
    UrlLogin=$SrvSomfyIp"fr/login.htm"            # Connexion à l'alarme
    UrlLogout=$SrvSomfyIp"logout.htm"            # Déconnexion de l'alarme
    UrlEtat=$SrvSomfyIp"status.xml"               # Etat du système
    UrlPilotage=$SrvSomfyIp"fr/u_pilotage.htm"      # Pilotage alarme
    UrlElements=$SrvSomfyIp"fr/u_listelmt.htm"      # Liste des éléments / Reset défauts
    
    #----------------------------------------------------------------------------------------------------------------------
    # PARAMETRES DOMOTICZ
    #----------------------------------------------------------------------------------------------------------------------
    # Capteurs virtuels Domoticz
    AlarmeSomfyPilesIdx=xxxx
    AlarmeSomfyRadioIdx=xxxx
    AlarmeSomfyPorteIdx=xxxx
    AlarmeSomfyAlarmeIdx=xxxx
    AlarmeSomfyBoitierIdx=xxxx
    
    AlarmeSomfyGSMIdx=xxxx
    AlamreSomfySignalGSMIdx=xxxx
    AlamreSomfyOperateurGSMIdx=xxxx
    
    AlarmeSomfyCameraIdx=xxxx
    
    AlamreSomfyZoneAIdx=xxxx
    AlamreSomfyZoneBIdx=xxxx
    AlamreSomfyZoneCIdx=xxxx
    
    AlamreSomfyDOEntreeIdx=xxxx
    AlamreSomfyDOAtelierIdx=xxxx
    
    # Adresse IP et port du serveur Domoticz
    SrvDomoticzIp="IP.DOMOTICZ:PORT"
    
    #----------------------------------------------------------------------------------------------------------------------
    # FONCTIONS
    #----------------------------------------------------------------------------------------------------------------------
    # Fonction menu d'aide
    Aide() {
       echo -e "\tScript Domoticz Alarme Somfy Protexion 5000"
       echo -e "\t--help or -h  \t\tMenu d'aide"
       echo -e "\t--Status      \t\tLecture de l'état du système"
       echo -e "\t--Elements    \t\tListe des éléments"
       echo -e "\t--ZoneAOn     \t\tMise en marche de l'alarme Zones A"
       echo -e "\t--ZoneBOn     \t\tMise en marche de l'alarme Zones B"
       echo -e "\t--ZoneCOn     \t\tMise en marche de l'alarme Zones C"
       echo -e "\t--ZoneABCOn   \t\tMise en marche de l'alarme Zones A B C"
       echo -e "\t--AlarmeOff   \t\tArrêt de l'alarme Zones A B C"
       echo -e "\t--RSTPiles    \t\tReset defauts piles"
       echo -e "\t--RSTAlarmes  \t\tReset defauts alarmes"
       echo -e "\t--RSTLiaisons \t\tReset defauts liaisons"
    }
    
    # Fonction connexion à l'alarme
    login_alarme () {
       # Affichage des URLs
       if [ "$Debug" = "True" ]; then
          echo " ********************************* "
          echo " Liste des URLs"
          echo " ********************************* "
          echo " UrlLogin    = "$UrlLogin
          echo " UrlLogout   = "$UrlLogout
          echo " UrlEtat     = "$UrlEtat
          echo " UrlPilotage = "$UrlPilotage
          echo " UrlElements = "$UrlElements
       fi
    
       # Récupération du code d'acces
       if [ "$Debug" = "True" ]; then
          echo " Récuperation du code d'accès"
          CodeAcces="$(curl $SrvSomfyIp $UrlLogin | grep -Eoi 'authentification <b>.*</b>')"
          CodeAcces="$(echo "${CodeAcces:20:2}")"
          echo " Code d'accès = "$CodeAcces
       else
          CodeAcces="$(curl -s $SrvSomfyIp $UrlLogin | grep -Eoi 'authentification <b>.*</b>')"
          CodeAcces="$(echo "${CodeAcces:20:2}")"
       fi
    
       # Récupération du code d'authentification à partir du code d'accès
       CodeAuthentification="${CarteAuthentification["$CodeAcces"]}"
       if [ "$Debug" = "True" ]; then
          echo " Récuperation du code d'authentification"
          echo " Code d'authentification = "$CodeAuthentification
       fi
    
       # Envoi du code utilisateur1 et du code d'authentification dans l'url Login pour connexion
       if [ "$Debug" = "True" ]; then
          echo " Envoi du code utilisateur1 et du code d'authentification"
          curl -L --cookie cjar --cookie-jar cjar --data "password="$CodeUtilisateur1"&key="$CodeAuthentification"&btn_login=Connexion" $UrlLogin | iconv -f iso8859-1 -t utf-8
       else
          curl -s -L --cookie cjar --cookie-jar cjar --data "password="$CodeUtilisateur1"&key="$CodeAuthentification"&btn_login=Connexion" $UrlLogin | iconv -f iso8859-1 -t utf-8 > /dev/null
       fi
    }
    
    # Fonction déconnexion de l'alarme
    logout_alarme () {
       if [ "$Debug" = "True" ]; then
          echo " Déconnexion de l'alarme"
          curl -L --cookie cjar --cookie-jar cjar $UrlLogout | iconv -f iso8859-1 -t utf-8
       else
          curl -s -L --cookie cjar --cookie-jar cjar $UrlLogout | iconv -f iso8859-1 -t utf-8 > /dev/null
       fi
    }
    
    # Fonction mise à jour capteurs Domoticz
    # Paramètres: $1 Nom du capteur / $2 On ou Off / $3 Idx du capteur
    maj_capteur () {
       if [ "$Debug" = "True" ]; then
          echo " Etat "$1
          if [ "$2" = "On" ]; then
             curl "http://$SrvDomoticzIp/json.htm?type=command&param=switchlight&idx=$3&switchcmd=On"
          else
             curl "http://$SrvDomoticzIp/json.htm?type=command&param=switchlight&idx=$3&switchcmd=Off"
          fi
       else
          if [ "$2" = "On" ]; then
             curl -s "http://$SrvDomoticzIp/json.htm?type=command&param=switchlight&idx=$3&switchcmd=On" > /dev/null
          else
             curl -s "http://$SrvDomoticzIp/json.htm?type=command&param=switchlight&idx=$3&switchcmd=Off" > /dev/null
          fi
       fi
    }
    
    #----------------------------------------------------------------------------------------------------------------------
    # Menu des options de lancement du script
    #----------------------------------------------------------------------------------------------------------------------
    while [[ $1 == -* ]]; do
       case "$1" in
          --help|-h) Aide; exit 0;;
          --Status) Status="1"; break;;
          --Elements) Elements="1"; break;;
          --ZoneAOn) ZoneAOn="1"; break;;
          --ZoneBOn) ZoneBOn="1"; break;;
          --ZoneCOn) ZoneCOn="1"; break;;
          --ZoneABCOn) ZoneABCOn="1"; break;;
          --AlarmeOff) AlarmeOff="1"; break;;
          --RSTPiles) RSTPiles="1"; break;;
          --RSTAlarmes) RSTAlarmes="1"; break;;
          --RSTLiaisons) RSTLiaisons="1"; break;;
          --*|-*) shift; break;;
       esac
    done
    
    #----------------------------------------------------------------------------------------------------------------------
    # Lecture de l'état du système
    #----------------------------------------------------------------------------------------------------------------------
    if [ "$Status" = "1" ]; then
       # Connexion à l'alarme
       login_alarme
       
       # Lecture de l'état du système et récupération dans les variables
       # Envoie URL http://IPAlarme/status.xml
       # Retour:
       #   <zone0>off</zone0>               -> Zone A
       #   <zone1>off</zone1>               -> Zone B
       #   <zone2>off</zone2>               -> Zone C
       #   <defaut0>ok</defaut0>            -> Piles
       #   <defaut1>ok</defaut1>            -> Radio
       #   <defaut2>ok</defaut2>            -> Porte/Fenêtre
       #   <defaut3>ok</defaut3>            -> Alarme
       #   <defaut4>ok</defaut4>            -> Boitier
       #   <gsm>GSM connecté au réseau</gsm>    -> GSM
       #   <recgsm>4</recgsm>               -> Signal GSM
       #   <opegsm>"Orange</opegsm>         -> Opérateur GSM
       #   <camera>disabled</camera>         -> Caméra
    
       if [ "$Debug" = "True" ]; then
          echo " Lecture de l'état du système"
          EtatZoneA="$(curl -L --cookie cjar --cookie-jar cjar $UrlEtat | iconv -f iso8859-1 -t utf-8 | grep -Eoi '<zone0>.*')"
          EtatZoneA="$(echo "${EtatZoneA:7:-9}")"
          sleep 1      # Attente 1s pour éviter les pertes de retour d'état entre chaque cde
          EtatZoneB="$(curl -L --cookie cjar --cookie-jar cjar $UrlEtat | iconv -f iso8859-1 -t utf-8 | grep -Eoi '<zone1>.*')"
          EtatZoneB="$(echo "${EtatZoneB:7:-9}")"
          sleep 1      # Attente 1s pour éviter les pertes de retour d'état entre chaque cde
          EtatZoneC="$(curl -L --cookie cjar --cookie-jar cjar $UrlEtat | iconv -f iso8859-1 -t utf-8 | grep -Eoi '<zone2>.*')"
          EtatZoneC="$(echo "${EtatZoneC:7:-9}")"
          sleep 1      # Attente 1s pour éviter les pertes de retour d'état entre chaque cde
          
          EtatPiles="$(curl -L --cookie cjar --cookie-jar cjar $UrlEtat | iconv -f iso8859-1 -t utf-8 | grep -Eoi '<defaut0>.*')"
          EtatPiles="$(echo "${EtatPiles:9:-11}")"
          sleep 1      # Attente 1s pour éviter les pertes de retour d'état entre chaque cde
          EtatRadio="$(curl -L --cookie cjar --cookie-jar cjar $UrlEtat | iconv -f iso8859-1 -t utf-8 | grep -Eoi '<defaut1>.*')"
          EtatRadio="$(echo "${EtatRadio:9:-11}")"
          sleep 1      # Attente 1s pour éviter les pertes de retour d'état entre chaque cde
          EtatPorte="$(curl -L --cookie cjar --cookie-jar cjar $UrlEtat | iconv -f iso8859-1 -t utf-8 | grep -Eoi '<defaut2>.*')"
          EtatPorte="$(echo "${EtatPorte:9:-11}")"
          sleep 1      # Attente 1s pour éviter les pertes de retour d'état entre chaque cde
          EtatAlarme="$(curl -L --cookie cjar --cookie-jar cjar $UrlEtat | iconv -f iso8859-1 -t utf-8 | grep -Eoi '<defaut3>.*')"
          EtatAlarme="$(echo "${EtatAlarme:9:-11}")"
          sleep 1      # Attente 1s pour éviter les pertes de retour d'état entre chaque cde
          EtatBoitier="$(curl -L --cookie cjar --cookie-jar cjar $UrlEtat | iconv -f iso8859-1 -t utf-8 | grep -Eoi '<defaut4>.*')"
          EtatBoitier="$(echo "${EtatBoitier:9:-11}")"
          sleep 1      # Attente 1s pour éviter les pertes de retour d'état entre chaque cde
    
          EtatGSM="$(curl -L --cookie cjar --cookie-jar cjar $UrlEtat | iconv -f iso8859-1 -t utf-8 | grep -Eoi '<gsm>.*')"
          EtatGSM="$(echo "${EtatGSM:5:-7}")"
          sleep 1      # Attente 1s pour éviter les pertes de retour d'état entre chaque cde
          SignalGSM="$(curl -L --cookie cjar --cookie-jar cjar $UrlEtat | iconv -f iso8859-1 -t utf-8 | grep -Eoi '<recgsm>.*')"
          SignalGSM="$(echo "${SignalGSM:8:-10}")"
          sleep 1      # Attente 1s pour éviter les pertes de retour d'état entre chaque cde
          OperateurGSM="$(curl -L --cookie cjar --cookie-jar cjar $UrlEtat | iconv -f iso8859-1 -t utf-8 | grep -Eoi '<opegsm>.*')"
          OperateurGSM="$(echo "${OperateurGSM:9:-10}")"
          sleep 1      # Attente 1s pour éviter les pertes de retour d'état entre chaque cde
          
          EtatCamera="$(curl -L --cookie cjar --cookie-jar cjar $UrlEtat | iconv -f iso8859-1 -t utf-8 | grep -Eoi '<camera>.*')"
          EtatCamera="$(echo "${EtatCamera:8:-10}")"
    
          # Affichage des états
          echo " ******************************************* "
          echo "  Etat du système"
          echo " ******************************************* "
          echo " Zone A                   = "$EtatZoneA
          echo " Zone B                   = "$EtatZoneB
          echo " Zone C                   = "$EtatZoneC
          echo ""
          echo " Etat Piles               = "$EtatPiles
          echo " Etat Communication Radio = "$EtatRadio
          echo " Etat Porte/Fenêtre       = "$EtatPorte
          echo " Etat Alarme              = "$EtatAlarme
          echo " Etat Boitier             = "$EtatBoitier
          echo ""
          echo " Etat GSM                 = "$EtatGSM
          echo " Signal GSM               = "$SignalGSM
          echo " Opérateur GSM            = "$OperateurGSM
          echo ""
          echo " Etat caméra              = "$EtatCamera
       else
          EtatZoneA="$(curl -s -L --cookie cjar --cookie-jar cjar $UrlEtat | iconv -f iso8859-1 -t utf-8 | grep -Eoi '<zone0>.*')"
          EtatZoneA="$(echo "${EtatZoneA:7:-9}")"
          sleep 1      # Attente 1s pour éviter les pertes de retour d'état entre chaque cde
          EtatZoneB="$(curl -s -L --cookie cjar --cookie-jar cjar $UrlEtat | iconv -f iso8859-1 -t utf-8 | grep -Eoi '<zone1>.*')"
          EtatZoneB="$(echo "${EtatZoneB:7:-9}")"
          sleep 1      # Attente 1s pour éviter les pertes de retour d'état entre chaque cde
          EtatZoneC="$(curl -s -L --cookie cjar --cookie-jar cjar $UrlEtat | iconv -f iso8859-1 -t utf-8 | grep -Eoi '<zone2>.*')"
          EtatZoneC="$(echo "${EtatZoneC:7:-9}")"
          sleep 1      # Attente 1s pour éviter les pertes de retour d'état entre chaque cde
          
          EtatPiles="$(curl -s -L --cookie cjar --cookie-jar cjar $UrlEtat | iconv -f iso8859-1 -t utf-8 | grep -Eoi '<defaut0>.*')"
          EtatPiles="$(echo "${EtatPiles:9:-11}")"
          sleep 1      # Attente 1s pour éviter les pertes de retour d'état entre chaque cde
          EtatRadio="$(curl -s -L --cookie cjar --cookie-jar cjar $UrlEtat | iconv -f iso8859-1 -t utf-8 | grep -Eoi '<defaut1>.*')"
          EtatRadio="$(echo "${EtatRadio:9:-11}")"
          sleep 1      # Attente 1s pour éviter les pertes de retour d'état entre chaque cde
          EtatPorte="$(curl -s -L --cookie cjar --cookie-jar cjar $UrlEtat | iconv -f iso8859-1 -t utf-8 | grep -Eoi '<defaut2>.*')"
          EtatPorte="$(echo "${EtatPorte:9:-11}")"
          sleep 1      # Attente 1s pour éviter les pertes de retour d'état entre chaque cde
          EtatAlarme="$(curl -s -L --cookie cjar --cookie-jar cjar $UrlEtat | iconv -f iso8859-1 -t utf-8 | grep -Eoi '<defaut3>.*')"
          EtatAlarme="$(echo "${EtatAlarme:9:-11}")"
          sleep 1      # Attente 1s pour éviter les pertes de retour d'état entre chaque cde
          EtatBoitier="$(curl -s -L --cookie cjar --cookie-jar cjar $UrlEtat | iconv -f iso8859-1 -t utf-8 | grep -Eoi '<defaut4>.*')"
          EtatBoitier="$(echo "${EtatBoitier:9:-11}")"
          sleep 1      # Attente 1s pour éviter les pertes de retour d'état entre chaque cde
    
          EtatGSM="$(curl -s -L --cookie cjar --cookie-jar cjar $UrlEtat | iconv -f iso8859-1 -t utf-8 | grep -Eoi '<gsm>.*')"
          EtatGSM="$(echo "${EtatGSM:5:-7}")"
          sleep 1      # Attente 1s pour éviter les pertes de retour d'état entre chaque cde
          SignalGSM="$(curl -s -L --cookie cjar --cookie-jar cjar $UrlEtat | iconv -f iso8859-1 -t utf-8 | grep -Eoi '<recgsm>.*')"
          SignalGSM="$(echo "${SignalGSM:8:-10}")"
          sleep 1      # Attente 1s pour éviter les pertes de retour d'état entre chaque cde
          OperateurGSM="$(curl -s -L --cookie cjar --cookie-jar cjar $UrlEtat | iconv -f iso8859-1 -t utf-8 | grep -Eoi '<opegsm>.*')"
          OperateurGSM="$(echo "${OperateurGSM:9:-10}")"
          sleep 1      # Attente 1s pour éviter les pertes de retour d'état entre chaque cde
          
          EtatCamera="$(curl -s -L --cookie cjar --cookie-jar cjar $UrlEtat | iconv -f iso8859-1 -t utf-8 | grep -Eoi '<camera>.*')"
          EtatCamera="$(echo "${EtatCamera:8:-10}")"
       fi
       
       # Déconnexion de l'alarme
       logout_alarme
       
       # Mise à jour capteurs Domoticz
       if [ "$Debug" = "True" ]; then
          echo " Mise à jour capteurs Domoticz"
       fi
    
       # Zone A
       if [ "$EtatZoneA" = "off" ]; then
          maj_capteur ZoneA Off $AlamreSomfyZoneAIdx
       else
          maj_capteur ZoneA On $AlamreSomfyZoneAIdx
       fi
    
       # Zone B
       if [ "$EtatZoneB" = "off" ]; then
          maj_capteur ZoneB Off $AlamreSomfyZoneBIdx
       else
          maj_capteur ZoneB On $AlamreSomfyZoneBIdx
       fi
    
       # Zone C
       if [ "$EtatZoneC" = "off" ]; then
          maj_capteur ZoneC Off $AlamreSomfyZoneCIdx
       else
          maj_capteur ZoneC On $AlamreSomfyZoneCIdx
       fi
    
       # Etat Piles
       if [ "$EtatPiles" = "ok" ]; then
          maj_capteur Piles On $AlarmeSomfyPilesIdx
       else
          maj_capteur Piles Off $AlarmeSomfyPilesIdx
       fi
    
       # Communication Radio
       if [ "$EtatRadio" = "ok" ]; then
          maj_capteur Radio On $AlarmeSomfyRadioIdx
       else
          maj_capteur Radio Off $AlarmeSomfyRadioIdx
       fi
    
       # Porte/Fenêtre
       if [ "$EtatPorte" = "ok" ]; then
          maj_capteur Porte/Fenetre Off $AlarmeSomfyPorteIdx
       else
          maj_capteur Porte/Fenetre On $AlarmeSomfyPorteIdx
       fi
    
       # Alarme
       if [ "$EtatAlarme" = "ok" ]; then
          maj_capteur Alarme Off $AlarmeSomfyAlarmeIdx
       else
          maj_capteur Alarme On $AlarmeSomfyAlarmeIdx
       fi
    
       # Boitier
       if [ "$EtatBoitier" = "ok" ]; then
          maj_capteur Boitier Off $AlarmeSomfyBoitierIdx
       else
          maj_capteur Boitier On $AlarmeSomfyBoitierIdx
       fi
    
       # GSM
       if [ "$EtatGSM" = "GSM connecté au réseau" ]; then
          maj_capteur GSM On $AlarmeSomfyGSMIdx
       else
          maj_capteur GSM Off $AlarmeSomfyGSMIdx
       fi
       
       # Niveau Signal GSM
       if [ "$Debug" = "True" ]; then
          echo " Niveau Signal GSM"
          curl "http://$SrvDomoticzIp/json.htm?type=command&param=udevice&idx=$AlamreSomfySignalGSMIdx&nvalue=0&svalue=$SignalGSM"
       else
          curl -s "http://$SrvDomoticzIp/json.htm?type=command&param=udevice&idx=$AlamreSomfySignalGSMIdx&nvalue=0&svalue=$SignalGSM" > /dev/null
       fi
          
       # Opérateur GSM
       if [ "$Debug" = "True" ]; then
          echo " Opérateur GSM"
          curl "http://$SrvDomoticzIp/json.htm?type=command&param=udevice&idx=$AlamreSomfyOperateurGSMIdx&nvalue=0&svalue=$OperateurGSM"
       else
          curl -s "http://$SrvDomoticzIp/json.htm?type=command&param=udevice&idx=$AlamreSomfyOperateurGSMIdx&nvalue=0&svalue=$OperateurGSM" > /dev/null
       fi   
    
       # Caméra
       if [ "$EtatCamera" = "disabled" ]; then
          maj_capteur Camera Off $AlarmeSomfyCameraIdx
       else
          maj_capteur Camera On $AlarmeSomfyCameraIdx
       fi
       
    fi   
    
    #----------------------------------------------------------------------------------------------------------------------
    # Mise en marche de l'alarme Zones A B C
    #----------------------------------------------------------------------------------------------------------------------
    if [ "$ZoneABCOn" = "1" ]; then
       # Connexion à l'alarme
       login_alarme
    
       # Mise en marche de l'alarme Zones A B C
       if [ "$Debug" = "True" ]; then
          echo "Mise en marche de l'alarme Zones A B C"
          curl -L --cookie cjar --cookie-jar cjar --data "hidden=hidden&hidden=hidden&btn_zone_on_ABC=Marche A B C" $UrlPilotage | iconv -f iso8859-1 -t utf-8
       else
          curl -s -L --cookie cjar --cookie-jar cjar --data "hidden=hidden&hidden=hidden&btn_zone_on_ABC=Marche A B C" $UrlPilotage | iconv -f iso8859-1 -t utf-8 > /dev/null
       fi
    
       # Déconnexion de l'alarme
       logout_alarme
    
       # Mise à jour capteurs Domoticz
       if [ "$Debug" = "True" ]; then
          echo " Mise à jour capteurs Domoticz"
       fi
       maj_capteur ZoneA On $AlamreSomfyZoneAIdx
       maj_capteur ZoneB On $AlamreSomfyZoneBIdx
       maj_capteur ZoneC On $AlamreSomfyZoneCIdx
    fi
    
    #----------------------------------------------------------------------------------------------------------------------
    # Mise en marche de l'alarme Zone A
    #----------------------------------------------------------------------------------------------------------------------
    if [ "$ZoneAOn" = "1" ]; then
       # Connexion à l'alarme
       login_alarme
    
       # Mise en marche de l'alarme Zone A
       if [ "$Debug" = "True" ]; then
          echo "Mise en marche de l'alarme Zone A"
          curl -L --cookie cjar --cookie-jar cjar --data "hidden=hidden&hidden=hidden&btn_zone_on_A=Marche A" $UrlPilotage | iconv -f iso8859-1 -t utf-8
       else
          curl -s -L --cookie cjar --cookie-jar cjar --data "hidden=hidden&hidden=hidden&btn_zone_on_A=Marche A" $UrlPilotage | iconv -f iso8859-1 -t utf-8 > /dev/null
       fi
    
       # Déconnexion de l'alarme
       logout_alarme
    
       # Mise à jour capteurs Domoticz
       if [ "$Debug" = "True" ]; then
          echo " Mise à jour capteurs Domoticz"
       fi
       maj_capteur ZoneA On $AlamreSomfyZoneAIdx
    fi
    
    #----------------------------------------------------------------------------------------------------------------------
    # Mise en marche de l'alarme Zone B
    #----------------------------------------------------------------------------------------------------------------------
    if [ "$ZoneBOn" = "1" ]; then
       # Connexion à l'alarme
       login_alarme
    
       # Mise en marche de l'alarme Zone B
       if [ "$Debug" = "True" ]; then
          echo "Mise en marche de l'alarme Zone B"
          curl -L --cookie cjar --cookie-jar cjar --data "hidden=hidden&hidden=hidden&btn_zone_on_B=Marche B" $UrlPilotage | iconv -f iso8859-1 -t utf-8
       else
          curl -s -L --cookie cjar --cookie-jar cjar --data "hidden=hidden&hidden=hidden&btn_zone_on_B=Marche B" $UrlPilotage | iconv -f iso8859-1 -t utf-8 > /dev/null
       fi
    
       # Déconnexion de l'alarme
       logout_alarme
    
       # Mise à jour capteurs Domoticz
       if [ "$Debug" = "True" ]; then
          echo " Mise à jour capteurs Domoticz"
       fi
       maj_capteur ZoneB On $AlamreSomfyZoneBIdx
    fi
    
    #----------------------------------------------------------------------------------------------------------------------
    # Mise en marche de l'alarme Zone C
    #----------------------------------------------------------------------------------------------------------------------
    if [ "$ZoneCOn" = "1" ]; then
       # Connexion à l'alarme
       login_alarme
    
       # Mise en marche de l'alarme Zone C
       if [ "$Debug" = "True" ]; then
          echo "Mise en marche de l'alarme Zone C"
          curl -L --cookie cjar --cookie-jar cjar --data "hidden=hidden&hidden=hidden&btn_zone_on_C=Marche C" $UrlPilotage | iconv -f iso8859-1 -t utf-8
       else
          curl -s -L --cookie cjar --cookie-jar cjar --data "hidden=hidden&hidden=hidden&btn_zone_on_C=Marche C" $UrlPilotage | iconv -f iso8859-1 -t utf-8 > /dev/null
       fi
    
       # Déconnexion de l'alarme
       logout_alarme
    
       # Mise à jour capteurs Domoticz
       if [ "$Debug" = "True" ]; then
          echo " Mise à jour capteurs Domoticz"
       fi
       maj_capteur ZoneC On $AlamreSomfyZoneCIdx
    fi
    
    #----------------------------------------------------------------------------------------------------------------------
    # Arrêt de l'alarme Zones A B C
    #----------------------------------------------------------------------------------------------------------------------
    if [ "$AlarmeOff" = "1" ]; then
       # Connexion à l'alarme
       login_alarme
    
       # Arrêt de l'alarme Zones A B C
       if [ "$Debug" = "True" ]; then
          echo "Arret de l'alarme Zones A B C"
          curl -L --cookie cjar --cookie-jar cjar --data "hidden=hidden&btn_zone_off_ABC=Arrêt A B C" $UrlPilotage | iconv -f iso8859-1 -t utf-8
       else
          curl -s -L --cookie cjar --cookie-jar cjar --data "hidden=hidden&btn_zone_off_ABC=Arrêt A B C" $UrlPilotage | iconv -f iso8859-1 -t utf-8 > /dev/null
       fi
    
       # Déconnexion de l'alarme
       logout_alarme
       
       # Mise à jour capteurs Domoticz
       if [ "$Debug" = "True" ]; then
          echo " Mise à jour capteurs Domoticz"
       fi
       maj_capteur ZoneA Off $AlamreSomfyZoneAIdx
       maj_capteur ZoneB Off $AlamreSomfyZoneBIdx
       maj_capteur ZoneC Off $AlamreSomfyZoneCIdx
    fi
    
    #----------------------------------------------------------------------------------------------------------------------
    # Reset defauts piles
    #----------------------------------------------------------------------------------------------------------------------
    if [ "$RSTPiles" = "1" ]; then
       # Connexion à l'alarme
       login_alarme
    
       # Reset defauts piles
       if [ "$Debug" = "True" ]; then
          echo "Reset defauts piles"
          curl -L --cookie cjar --cookie-jar cjar --data "btn_del_pil=Piles" $UrlElements | iconv -f iso8859-1 -t utf-8
       else
          curl -s -L --cookie cjar --cookie-jar cjar --data "btn_del_pil=Piles" $UrlElements | iconv -f iso8859-1 -t utf-8 > /dev/null
       fi
    
       # Déconnexion de l'alarme
       logout_alarme
    fi
    
    #----------------------------------------------------------------------------------------------------------------------
    # Reset defauts alarmes
    #----------------------------------------------------------------------------------------------------------------------
    if [ "$RSTAlarmes" = "1" ]; then
       # Connexion à l'alarme
       login_alarme
    
       # Reset defauts alarmes
       if [ "$Debug" = "True" ]; then
          echo "Reset defauts alarmes"
          curl -L --cookie cjar --cookie-jar cjar --data "btn_del_alm=Alarmes" $UrlElements | iconv -f iso8859-1 -t utf-8
       else
          curl -s -L --cookie cjar --cookie-jar cjar --data "btn_del_alm=Alarmes" $UrlElements | iconv -f iso8859-1 -t utf-8 > /dev/null
       fi
    
       # Déconnexion de l'alarme
       logout_alarme
    fi
    
    #----------------------------------------------------------------------------------------------------------------------
    # Reset defauts liaisons
    #----------------------------------------------------------------------------------------------------------------------
    if [ "$RSTLiaisons" = "1" ]; then
       # Connexion à l'alarme
       login_alarme
    
       # Reset defauts liaisons
       if [ "$Debug" = "True" ]; then
          echo "Reset defauts liaisons"
          curl -L --cookie cjar --cookie-jar cjar --data "btn_del_lia=Liaisons" $UrlElements | iconv -f iso8859-1 -t utf-8
       else
          curl -s -L --cookie cjar --cookie-jar cjar --data "btn_del_lia=Liaisons" $UrlElements | iconv -f iso8859-1 -t utf-8 > /dev/null
       fi
    
       # Déconnexion de l'alarme
       logout_alarme
    fi
    
    #----------------------------------------------------------------------------------------------------------------------
    # Gestion de la liste des éléments
    #----------------------------------------------------------------------------------------------------------------------
    if [ "$Elements" = "1" ]; then
       # Connexion à l'alarme
       login_alarme
    
       # Gestion de la Liste des éléments et récupération dans des tableaux
       # Envoie URL http://IPAlarme/fr/u_listelmt.htm
       # Retour:
     var item_type     = ["typetrans", "typebadgerfid", ...];
     var item_label    = ["Tr Tél", "Badge", ...];
     var item_pause    = ["running", "paused", ...];
     var elt_name      = ["Centrale", "Badge 1", ...];
     var elt_code      = ["521907", "788853", ...];
     var elt_pile      = ["itembattok", "itemhidden", ...];
     var elt_as        = ["itemboxok", "itemhidden", ...];
     var elt_maison    = ["itemhouseok", "itemhouseok", ...];
     var elt_onde      = ["itemcomok", "itemhidden", ...];
     var elt_porte     = ["itemhidden", "itemhidden", ...];
     var elt_zone      = ["SYS", "SYS", ...];
    
       # Script à modifier en focntion des éléments du système et des états remontés dans Domoticz
    
       if [ "$Debug" = "True" ]; then
          echo "Gestion liste des éléments"
          echo " Type des éléments"
          # Récup du type des éléments
          TypeElements="$(curl -L --cookie cjar --cookie-jar cjar $UrlElements | iconv -f iso8859-1 -t utf-8 | grep -Eoi 'var item_label.*')"
          echo $TypeElements
          # Suppression des 21 1er caractères et 2 derniers
          TypeElements="$(echo "${TypeElements:21:-2}")"
          # Suppression des "
          TypeElements="$(echo "$TypeElements" | sed s/\"//g)"
          # Suppression des espaces entre les ,
          TypeElements="$(echo "$TypeElements" | sed s/\,\ /\,/g)"
          # Déclaration , comme séparateur
          IFS=","
          # Stockage dans le tableau
          TabTypeElements=($TypeElements)
    
          echo " Nom des éléments"
          # Récup des noms des éléments
          sleep 1      # Attente 1s pour éviter les pertes de retour d'état entre chaque cde
          NomElements="$(curl -L --cookie cjar --cookie-jar cjar $UrlElements | iconv -f iso8859-1 -t utf-8 | grep -Eoi 'var elt_name.*')"
          echo $NomElements
          # Suppression des 21 1er caractères et 2 derniers
          NomElements="$(echo "${NomElements:21:-2}")"
          # Suppression des "
          NomElements="$(echo "$NomElements" | sed s/\"//g)"
          # Suppression des espaces entre les ,
          NomElements="$(echo "$NomElements" | sed s/\,\ /\,/g)"
          # Déclaration , comme séparateur
          IFS=","
          # Stockage dans le tableau
          TabNomElements=($NomElements)
          
          echo " Etat des éléments"
          # Récup état des éléments
          sleep 1      # Attente 1s pour éviter les pertes de retour d'état entre chaque cde
          EtatElements="$(curl -L --cookie cjar --cookie-jar cjar $UrlElements | iconv -f iso8859-1 -t utf-8 | grep -Eoi 'var item_pause.*')"
          echo $EtatElements
          # Suppression des 21 1er caractères et 2 derniers
          EtatElements="$(echo "${EtatElements:21:-2}")"
          # Suppression des "
          EtatElements="$(echo "$EtatElements" | sed s/\"//g)"
          # Suppression des espaces entre les ,
          EtatElements="$(echo "$EtatElements" | sed s/\,\ /\,/g)"
          # Déclaration , comme séparateur
          IFS=","
          # Stockage dans le tableau
          TabEtatElements=($EtatElements)
          # Modification valeurs tableau
          TailleTab=${#TabEtatElements[@]}
          for (( i=0; i<$TailleTab; i++ ))
          do
             if [ ${TabEtatElements["$i"]} = "running" ]; then TabEtatElements["$i"]="Activé"
             else
                TabEtatElements["$i"]="Désactivé"
             fi
          done
    
          echo " Etat des piles"
          # Récup état des piles
          sleep 1      # Attente 1s pour éviter les pertes de retour d'état entre chaque cde
          EtatPiles="$(curl -L --cookie cjar --cookie-jar cjar $UrlElements | iconv -f iso8859-1 -t utf-8 | grep -Eoi 'var elt_pile.*')"
          echo $EtatPiles
          # Suppression des 21 1er caractères et 2 derniers
          EtatPiles="$(echo "${EtatPiles:21:-2}")"
          # Suppression des "
          EtatPiles="$(echo "$EtatPiles" | sed s/\"//g)"
          # Suppression des espaces entre les ,
          EtatPiles="$(echo "$EtatPiles" | sed s/\,\ /\,/g)"
          # Déclaration , comme séparateur
          IFS=","
          # Stockage dans le tableau
          TabEtatPiles=($EtatPiles)
          # Modification des valeurs du tableau
          TailleTab=${#TabEtatPiles[@]}
          for (( i=0; i<$TailleTab; i++ ))
          do
             if [ ${TabEtatPiles["$i"]} = "itemhidden" ]; then TabEtatPiles["$i"]="NA"
             else
                if [ ${TabEtatPiles["$i"]} = "itembattok" ]; then TabEtatPiles["$i"]="OK"
                else
                   TabEtatPiles["$i"]="NOK"
                fi
             fi
          done
    
          echo " Etat liaison radio"
          # Récup état liaison radio
          sleep 1      # Attente 1s pour éviter les pertes de retour d'état entre chaque cde
          EtatLiaison="$(curl -L --cookie cjar --cookie-jar cjar $UrlElements | iconv -f iso8859-1 -t utf-8 | grep -Eoi 'var elt_onde.*')"
          echo $EtatLiaison
          # Suppression des 21 1er caractères et 2 derniers
          EtatLiaison="$(echo "${EtatLiaison:21:-2}")"
          # Suppression des "
          EtatLiaison="$(echo "$EtatLiaison" | sed s/\"//g)"
          # Suppression des espaces entre les ,
          EtatLiaison="$(echo "$EtatLiaison" | sed s/\,\ /\,/g)"
          # Déclaration , comme séparateur
          IFS=","
          # Stockage dans le tableau
          TabEtatLiaison=($EtatLiaison)
          # Modification des valeurs du tableau
          TailleTab=${#TabEtatLiaison[@]}
          for (( i=0; i<$TailleTab; i++ ))
          do
             if [ ${TabEtatLiaison["$i"]} = "itemhidden" ]; then TabEtatLiaison["$i"]="NA"
             else
                if [ ${TabEtatLiaison["$i"]} = "itemcomok" ]; then TabEtatLiaison["$i"]="OK"
                else
                   TabEtatLiaison["$i"]="NOK"
                fi
             fi
          done
          
          echo " Etat détecteurs ouverture"
          # Récup état détecteurs ouverture
          sleep 1      # Attente 1s pour éviter les pertes de retour d'état entre chaque cde
          EtatPortes="$(curl -L --cookie cjar --cookie-jar cjar $UrlElements | iconv -f iso8859-1 -t utf-8 | grep -Eoi 'var elt_porte.*')"
          echo $EtatPortes
          # Suppression des 21 1er caractères et 2 derniers
          EtatPortes="$(echo "${EtatPortes:21:-2}")"
          # Suppression des "
          EtatPortes="$(echo "$EtatPortes" | sed s/\"//g)"
          # Suppression des espaces entre les ,
          EtatPortes="$(echo "$EtatPortes" | sed s/\,\ /\,/g)"
          # Déclaration , comme séparateur
          IFS=","
          # Stockage dans le tableau
          TabEtatPortes=($EtatPortes)
          # Modification des valeurs du tableau
          TailleTab=${#TabEtatPortes[@]}
          for (( i=0; i<$TailleTab; i++ ))
          do
             if [ ${TabEtatPortes["$i"]} = "itemhidden" ]; then TabEtatPortes["$i"]="NA"
             else
                if [ ${TabEtatPortes["$i"]} = "itemdoorok" ]; then TabEtatPortes["$i"]="Fermée"
                else
                   TabEtatPortes["$i"]="Ouverte"
                fi
             fi
          done
          
          echo " Etat ouverture boitiers"
          # Récup état ouverture boitiers
          sleep 1      # Attente 1s pour éviter les pertes de retour d'état entre chaque cde
          EtatBoitiers="$(curl -L --cookie cjar --cookie-jar cjar $UrlElements | iconv -f iso8859-1 -t utf-8 | grep -Eoi 'var elt_as.*')"
          echo $EtatBoitiers
          # Suppression des 21 1er caractères et 2 derniers
          EtatBoitiers="$(echo "${EtatBoitiers:21:-2}")"
          # Suppression des "
          EtatBoitiers="$(echo "$EtatBoitiers" | sed s/\"//g)"
          # Suppression des espaces entre les ,
          EtatBoitiers="$(echo "$EtatBoitiers" | sed s/\,\ /\,/g)"
          # Déclaration , comme séparateur
          IFS=","
          # Stockage dans le tableau
          TabEtatBoitiers=($EtatBoitiers)
          # Modification des valeurs du tableau
          TailleTab=${#TabEtatBoitiers[@]}
          for (( i=0; i<$TailleTab; i++ ))
          do
             if [ ${TabEtatBoitiers["$i"]} = "itemhidden" ]; then TabEtatBoitiers["$i"]="NA"
             else
                if [ ${TabEtatBoitiers["$i"]} = "itemboxok" ]; then TabEtatBoitiers["$i"]="Fermé"
                else
                   TabEtatBoitiers["$i"]="Ouvert"
                fi
             fi
          done
          
          echo " Etat alarme"
          # Récup état alarme
          sleep 1      # Attente 1s pour éviter les pertes de retour d'état entre chaque cde
          EtatAlarme="$(curl -L --cookie cjar --cookie-jar cjar $UrlElements | iconv -f iso8859-1 -t utf-8 | grep -Eoi 'var elt_maison.*')"
          echo $EtatAlarme
          # Suppression des 21 1er caractères et 2 derniers
          EtatAlarme="$(echo "${EtatAlarme:21:-2}")"
          # Suppression des "
          EtatAlarme="$(echo "$EtatAlarme" | sed s/\"//g)"
          # Suppression des espaces entre les ,
          EtatAlarme="$(echo "$EtatAlarme" | sed s/\,\ /\,/g)"
          # Déclaration , comme séparateur
          IFS=","
          # Stockage dans le tableau
          TabEtatAlarme=($EtatAlarme)
          # Modification des valeurs du tableau
          TailleTab=${#TabEtatAlarme[@]}
          for (( i=0; i<$TailleTab; i++ ))
          do
             if [ ${TabEtatAlarme["$i"]} = "itemhouseok" ]; then TabEtatAlarme["$i"]="Pas d'alarme"
             else
                TabEtatAlarme["$i"]="Alarme"
             fi
          done
          
          # Affichage de la liste des éléments
          echo " Liste des éléments"
          TailleTab=${#TabNomElements[@]}
          for (( i=0; i<$TailleTab; i++ ))
          do
             echo " Type : "${TabTypeElements["$i"]} "/ Nom : "${TabNomElements["$i"]} "/ Etat : "${TabEtatElements["$i"]} "/ Etat piles : "${TabEtatPiles["$i"]} "/ Etat liaison : "${TabEtatLiaison["$i"]} "/ Etat portes : "${TabEtatPortes["$i"]} "/ Etat boitiers : "${TabEtatBoitiers["$i"]} "/ Etat alarme : "${TabEtatAlarme["$i"]}
          done   
       else
          # Récup du type des éléments
          TypeElements="$(curl -s -L --cookie cjar --cookie-jar cjar $UrlElements | iconv -f iso8859-1 -t utf-8 | grep -Eoi 'var item_label.*')"
          # Suppression des 21 1er caractères et 2 derniers
          TypeElements="$(echo "${TypeElements:21:-2}")"
          # Suppression des "
          TypeElements="$(echo "$TypeElements" | sed s/\"//g)"
          # Suppression des espaces entre les ,
          TypeElements="$(echo "$TypeElements" | sed s/\,\ /\,/g)"
          # Déclaration , comme séparateur
          IFS=","
          # Stockage dans le tableau
          TabTypeElements=($TypeElements)
    
          # Récup des noms des éléments
          sleep 1      # Attente 1s pour éviter les pertes de retour d'état entre chaque cde
          NomElements="$(curl -s -L --cookie cjar --cookie-jar cjar $UrlElements | iconv -f iso8859-1 -t utf-8 | grep -Eoi 'var elt_name.*')"
          # Suppression des 21 1er caractères et 2 derniers
          NomElements="$(echo "${NomElements:21:-2}")"
          # Suppression des "
          NomElements="$(echo "$NomElements" | sed s/\"//g)"
          # Suppression des espaces entre les ,
          NomElements="$(echo "$NomElements" | sed s/\,\ /\,/g)"
          # Déclaration , comme séparateur
          IFS=","
          # Stockage dans le tableau
          TabNomElements=($NomElements)
          
          # Récup état des éléments
          sleep 1      # Attente 1s pour éviter les pertes de retour d'état entre chaque cde
          EtatElements="$(curl -s -L --cookie cjar --cookie-jar cjar $UrlElements | iconv -f iso8859-1 -t utf-8 | grep -Eoi 'var item_pause.*')"
          # Suppression des 21 1er caractères et 2 derniers
          EtatElements="$(echo "${EtatElements:21:-2}")"
          # Suppression des "
          EtatElements="$(echo "$EtatElements" | sed s/\"//g)"
          # Suppression des espaces entre les ,
          EtatElements="$(echo "$EtatElements" | sed s/\,\ /\,/g)"
          # Déclaration , comme séparateur
          IFS=","
          # Stockage dans le tableau
          TabEtatElements=($EtatElements)
          # Modification valeurs tableau
          TailleTab=${#TabEtatElements[@]}
          for (( i=0; i<$TailleTab; i++ ))
          do
             if [ ${TabEtatElements["$i"]} = "running" ]; then TabEtatElements["$i"]="Activé"
             else
                TabEtatElements["$i"]="Désactivé"
             fi
          done
    
          # Récup état des piles
          sleep 1      # Attente 1s pour éviter les pertes de retour d'état entre chaque cde
          EtatPiles="$(curl -s -L --cookie cjar --cookie-jar cjar $UrlElements | iconv -f iso8859-1 -t utf-8 | grep -Eoi 'var elt_pile.*')"
          # Suppression des 21 1er caractères et 2 derniers
          EtatPiles="$(echo "${EtatPiles:21:-2}")"
          # Suppression des "
          EtatPiles="$(echo "$EtatPiles" | sed s/\"//g)"
          # Suppression des espaces entre les ,
          EtatPiles="$(echo "$EtatPiles" | sed s/\,\ /\,/g)"
          # Déclaration , comme séparateur
          IFS=","
          # Stockage dans le tableau
          TabEtatPiles=($EtatPiles)
          # Modification des valeurs du tableau
          TailleTab=${#TabEtatPiles[@]}
          for (( i=0; i<$TailleTab; i++ ))
          do
             if [ ${TabEtatPiles["$i"]} = "itemhidden" ]; then TabEtatPiles["$i"]="NA"
             else
                if [ ${TabEtatPiles["$i"]} = "itembattok" ]; then TabEtatPiles["$i"]="OK"
                else
                   TabEtatPiles["$i"]="NOK"
                fi
             fi
          done
    
          # Récup état liaison radio
          sleep 1      # Attente 1s pour éviter les pertes de retour d'état entre chaque cde
          EtatLiaison="$(curl -s -L --cookie cjar --cookie-jar cjar $UrlElements | iconv -f iso8859-1 -t utf-8 | grep -Eoi 'var elt_onde.*')"
          # Suppression des 21 1er caractères et 2 derniers
          EtatLiaison="$(echo "${EtatLiaison:21:-2}")"
          # Suppression des "
          EtatLiaison="$(echo "$EtatLiaison" | sed s/\"//g)"
          # Suppression des espaces entre les ,
          EtatLiaison="$(echo "$EtatLiaison" | sed s/\,\ /\,/g)"
          # Déclaration , comme séparateur
          IFS=","
          # Stockage dans le tableau
          TabEtatLiaison=($EtatLiaison)
          # Modification des valeurs du tableau
          TailleTab=${#TabEtatLiaison[@]}
          for (( i=0; i<$TailleTab; i++ ))
          do
             if [ ${TabEtatLiaison["$i"]} = "itemhidden" ]; then TabEtatLiaison["$i"]="NA"
             else
                if [ ${TabEtatLiaison["$i"]} = "itemcomok" ]; then TabEtatLiaison["$i"]="OK"
                else
                   TabEtatLiaison["$i"]="NOK"
                fi
             fi
          done
          
          # Récup état détecteurs ouverture
          sleep 1      # Attente 1s pour éviter les pertes de retour d'état entre chaque cde
          EtatPortes="$(curl -s -L --cookie cjar --cookie-jar cjar $UrlElements | iconv -f iso8859-1 -t utf-8 | grep -Eoi 'var elt_porte.*')"
          # Suppression des 21 1er caractères et 2 derniers
          EtatPortes="$(echo "${EtatPortes:21:-2}")"
          # Suppression des "
          EtatPortes="$(echo "$EtatPortes" | sed s/\"//g)"
          # Suppression des espaces entre les ,
          EtatPortes="$(echo "$EtatPortes" | sed s/\,\ /\,/g)"
          # Déclaration , comme séparateur
          IFS=","
          # Stockage dans le tableau
          TabEtatPortes=($EtatPortes)
          # Modification des valeurs du tableau
          TailleTab=${#TabEtatPortes[@]}
          for (( i=0; i<$TailleTab; i++ ))
          do
             if [ ${TabEtatPortes["$i"]} = "itemhidden" ]; then TabEtatPortes["$i"]="NA"
             else
                if [ ${TabEtatPortes["$i"]} = "itemdoorok" ]; then TabEtatPortes["$i"]="Fermée"
                else
                   TabEtatPortes["$i"]="Ouverte"
                fi
             fi
          done
          
          # Récup état ouverture boitiers
          sleep 1      # Attente 1s pour éviter les pertes de retour d'état entre chaque cde
          EtatBoitiers="$(curl -s -L --cookie cjar --cookie-jar cjar $UrlElements | iconv -f iso8859-1 -t utf-8 | grep -Eoi 'var elt_as.*')"
          # Suppression des 21 1er caractères et 2 derniers
          EtatBoitiers="$(echo "${EtatBoitiers:21:-2}")"
          # Suppression des "
          EtatBoitiers="$(echo "$EtatBoitiers" | sed s/\"//g)"
          # Suppression des espaces entre les ,
          EtatBoitiers="$(echo "$EtatBoitiers" | sed s/\,\ /\,/g)"
          # Déclaration , comme séparateur
          IFS=","
          # Stockage dans le tableau
          TabEtatBoitiers=($EtatBoitiers)
          # Modification des valeurs du tableau
          TailleTab=${#TabEtatBoitiers[@]}
          for (( i=0; i<$TailleTab; i++ ))
          do
             if [ ${TabEtatBoitiers["$i"]} = "itemhidden" ]; then TabEtatBoitiers["$i"]="NA"
             else
                if [ ${TabEtatBoitiers["$i"]} = "itemboxok" ]; then TabEtatBoitiers["$i"]="Fermé"
                else
                   TabEtatBoitiers["$i"]="Ouvert"
                fi
             fi
          done
          
          # Récup état alarme
          sleep 1      # Attente 1s pour éviter les pertes de retour d'état entre chaque cde
          EtatAlarme="$(curl -s -L --cookie cjar --cookie-jar cjar $UrlElements | iconv -f iso8859-1 -t utf-8 | grep -Eoi 'var elt_maison.*')"
          # Suppression des 21 1er caractères et 2 derniers
          EtatAlarme="$(echo "${EtatAlarme:21:-2}")"
          # Suppression des "
          EtatAlarme="$(echo "$EtatAlarme" | sed s/\"//g)"
          # Suppression des espaces entre les ,
          EtatAlarme="$(echo "$EtatAlarme" | sed s/\,\ /\,/g)"
          # Déclaration , comme séparateur
          IFS=","
          # Stockage dans le tableau
          TabEtatAlarme=($EtatAlarme)
          # Modification des valeurs du tableau
          TailleTab=${#TabEtatAlarme[@]}
          for (( i=0; i<$TailleTab; i++ ))
          do
             if [ ${TabEtatAlarme["$i"]} = "itemhouseok" ]; then TabEtatAlarme["$i"]="Pas d'alarme"
             else
                TabEtatAlarme["$i"]="Alarme"
             fi
          done
       fi
       
       # Déconnexion de l'alarme
       logout_alarme
    
       # Mise à jour capteurs Domoticz
       if [ "$Debug" = "True" ]; then
          echo " Mise à jour capteurs Domoticz"
       fi
    
       # DO Entré
       TailleTab=${#TabNomElements[@]}
       for (( i=0; i<$TailleTab; i++ ))
       do
          if [ ${TabNomElements["$i"]} = "DO Entree" ]; then PosElement=$i
          fi
       done
       if [ ${TabEtatPortes["$PosElement"]} = "Fermée" ]; then
          maj_capteur DOEntrée Off $AlamreSomfyDOEntreeIdx
       else
          maj_capteur DOEntrée On $AlamreSomfyDOEntreeIdx
       fi
       
       # DO Atelier
       for (( i=0; i<$TailleTab; i++ ))
       do
          if [ ${TabNomElements["$i"]} = "DO Atelier" ]; then PosElement=$i
          fi
       done
       if [ ${TabEtatPortes["$PosElement"]} = "Fermée" ]; then
          maj_capteur DOAtelier Off $AlamreSomfyDOAtelierIdx
       else
          maj_capteur DOAtelier On $AlamreSomfyDOAtelierIdx
       fi
       
    fi
    
    exit 0

    voici ce que j'ai lorsque je l'exécute : 

    wil@Synology:/usr/local/domoticz/var/scripts$ ./somfyv1.sh --Status
    ./somfyv1.sh: line 148: iconv: command not found
    (23) Failed writing body
    ./somfyv1.sh: line 285: iconv: command not found
    (23) Failed writing body
    ./somfyv1.sh: line 288: iconv: command not found
    (23) Failed writing body
    ./somfyv1.sh: line 291: iconv: command not found
    (23) Failed writing body
    ./somfyv1.sh: line 295: iconv: command not found
    (23) Failed writing body
    ./somfyv1.sh: line 298: iconv: command not found
    (23) Failed writing body
    ./somfyv1.sh: line 301: iconv: command not found
    (23) Failed writing body
    ./somfyv1.sh: line 304: iconv: command not found
    (23) Failed writing body
    ./somfyv1.sh: line 307: iconv: command not found
    (23) Failed writing body
    ./somfyv1.sh: line 311: iconv: command not found
    (23) Failed writing body
    ./somfyv1.sh: line 314: iconv: command not found
    (23) Failed writing body
    ./somfyv1.sh: line 317: iconv: command not found
    (23) Failed writing body
    ./somfyv1.sh: line 321: iconv: command not found
    (23) Failed writing body
    ./somfyv1.sh: line 158: iconv: command not found
    (23) Failed writing body

    Wil@Synology:/usr/local/domoticz/var/scripts$ ./somfyv1.sh --ZoneABCOn
    ./somfyv1.sh: line 137: CarteAuthentification: bad array subscript
    ./somfyv1.sh: line 148: iconv: command not found
    (23) Failed writing body
    ./somfyv1.sh: line 433: iconv: command not found
    (23) Failed writing body
    ./somfyv1.sh: line 158: iconv: command not found
    (23) Failed writing body
     
    J'en ai déduit qu'il y a une erreur avec iconv qui n'est pas installé sur mon syno. J'ai donc téléchargé la librairie libiconv-1.15 mais j'ai une erreur  sur le ssh lorsque je lance la commande iconv : Segmentation fault (core dumped)
     
    J'ai essayé de supprimer toutes les lignes iconv du script et puis j'ai transformer le fichier avec la commande dos2unix, mais cela n'a pas l'air de fonctionner non plus
     
    Bon vous l'avez compris je n'y connais rien et la je ne sais plus quoi faire...  merci pour votre aide !!
     
    William
  3. Slt Zegorax,

    Désolé, tu as raison en faite je ne voulais pas mettre on ip directement mais tous les ip sont identiques dans mon dns server et dans cloudFlare.

    Concernant l'adresse j'ai aussi voulu la modifier mais j'ai oublié 3 endroits... en faite il faut bien lire bulledebeaute.tk et cela partout beauté.tk n'existe pas c'est juste une retouche de li'mage que j'ai effectuée...

    Désolé je te complique les choses, mais dans l'ensemble je suis sûr d'avoir rempli les cases comme tu le disais de faire

    Encore merci pour ton aide

    William

  4. Bonjour a tous,

    Merci pour ce tuto, mais j'ai le même problème que Seb773. Je peux recevoir mais pas envoyer (erreur smtp (-1) echec de la connexion au serveur). J'ai vérifié 4 fois et je ne vois pas ou est le problème. J'ai testé mes ports et c'est ok de ce côté également...

    Moi je suis chez Free et je revérifié mon compte et je suis bien en blocage smtp inactif.

    Quelqu'un a une solution ???

    Pour info j'ai un IP fixe, je ne sais pas si ca change quelque chose sur le tuto.

    merci pour votre aide.

  5. Bonsoir,

    Voici ce qu'il faut modifier dans le fichier XXXX.ovpn pour que cela fonctionne :

    supprimer le # devant redirect-gateway

    et supprimer le # et mettre l'ip de votre routeur à la ligne suivante :

    #dhcp-option DNS DNS_IP_ADDRESS

    (l'ip de votre routeur doit etre mis à la place de à la place de DNS_IP_ADDRESS)

    Bonne soirée

    William

  6. bonjour à tous,

    Je cherche à creer un serveur vpn sur mon synology ds214play afin de pouvoir me connecter de l’étranger avec mon ip français ;-). J utilise deja openvpn en passant par un fournisseur mais je souhaite utiliser ma propre connexion.
    J ai bien configurer server vpn en open vpn, j ai le serveur open vpn qui tourne bien sur le synology. Sur un pc j ai recuperer les certificats puis je me connect sur ma connexion 3g et je met en route openvpn et la connexion se realise bien sur le synology mais je garde tjrs l ip de mon reseau telephonique, et ds les debits de transfere d open vpn ils restent quasi nul. J ai certainement oublié de parametrer quelque chose?
    Est ce que quelqu un connait la solution?

    Merci pour votre aide

    William

  7. bonjour a tous,

    Je suis de la Region parisienne et je viens d acquerir un ds214play en remplacement de mon dlink dns323.

    Pas mal de possibilite avec ce materiel mais parfois des configuration reseau compliquee pour un novice.

    A bientot sur le forum

×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.