Re: Script alarme Somfy Protexiom 600
Publié : 20 nov. 2016, 23:23
Hello, voici la suite avec l'état des Piles pour chaque élément.
Il suffit de voir de même pour le reste... je terminerai plus tard... je suis mort de fatigue
A ajouter toujours dans la version 3 de mon code.
Je ne vous montre pas le résultat sinon vous allez voir tous mes éléments de mon alarme
Il suffit de voir de même pour le reste... je terminerai plus tard... je suis mort de fatigue
A ajouter toujours dans la version 3 de mon code.
Je ne vous montre pas le résultat sinon vous allez voir tous mes éléments de mon alarme
Code : Tout sélectionner
Connexion_Somfy
# Recherche les elements
#curl -L --cookie cjar --cookie-jar cjar $UrluListeElement | iconv -f iso8859-1 -t utf-8 | grep 'var elt_name'
# Recherche l etat de la pile pour chaque element
#curl -L --cookie cjar --cookie-jar cjar $UrluListeElement | iconv -f iso8859-1 -t utf-8 | grep 'var elt_pile'
# TRAITEMENT POUR LES ELEMENTS
# On recup la liste des elements par la recherche elt_name
ListeElement="$(curl -s -L --cookie cjar --cookie-jar cjar $UrluListeElement | iconv -f iso8859-1 -t utf-8 | grep 'var elt_name')"
# On supprime les 21 premiers caracteres et les 2 derniers
ListeElement="$(echo "${ListeElement:21:-2}")"
# On remplace les " par rien on les supprime
ListeElement="$(echo "$ListeElement" | sed s/\"//g)"
# On remplace ", " par "," on supprime les espaces entre les virgules
ListeElement="$(echo "$ListeElement" | sed s/\,\ /\,/g)"
# On doit avoir la liste des elements sans , et avec des ' a la place des "
#echo "Liste des elements = "$ListeElement
# On declare la virgule comme element separateur
IFS=","
# On alimente la variable tableau avec les elements separes par une virgule
TabListeElement=($ListeElement)
# On affiche les elements du tableau
#for TabLecture in ${TabListeElement[*]}
#do
#echo $TabLecture;
#done
# TRAITEMENT POUR L ETAT DES PILES DES ELEMENTS
# On recup la liste des elements par la recherche elt_name
ListeEtatPile="$(curl -s -L --cookie cjar --cookie-jar cjar $UrluListeElement | iconv -f iso8859-1 -t utf-8 | grep 'var elt_pile')"
# On supprime les 21 premiers caracteres et les 2 derniers
ListeEtatPile="$(echo "${ListeEtatPile:21:-2}")"
# On remplace les " par rien on les supprime
ListeEtatPile="$(echo "$ListeEtatPile" | sed s/\"//g)"
# On remplace ", " par "," on supprime les espaces entre les virgules
ListeEtatPile="$(echo "$ListeEtatPile" | sed s/\,\ /\,/g)"
# On remplace "itemhidden" par "Pas de Pile"
ListeEtatPile="$(echo "$ListeEtatPile" | sed s/itemhidden/Pas\ de\ Pile/g)"
# On remplace "itembattok" par "Etat Pile OK"
ListeEtatPile="$(echo "$ListeEtatPile" | sed s/itembattok/Etat\ Pile\ OK/g)"
# On remplace "itembattko" par "Etat Pile KO" JE N AI PAS FAIT LE TEST CAR PILE TJS OK
ListeEtatPile="$(echo "$ListeEtatPile" | sed s/itembattko/Etat\ Pile\ KO/g)"
# On doit avoir la liste des elements sans , et avec des ' a la place des "
#echo "Liste Etat Pile = "$ListeEtatPile
# On declare la virgule comme element separateur
IFS=","
# On alimente la variable tableau avec les elements separes par une virgule
TabListeEtatPile=($ListeEtatPile)
# On affiche les elements du tableau
#for TabLecture in ${TabListeEtatPile[*]}
#do
#echo $TabLecture;
#done
# On affiche les elements du tableau
TailleTab=${#TabListeElement[@]}
for (( i=0; i<$TailleTab; i++ ))
do
echo "Element : "${TabListeElement["$i"]} " Etat Pile : "${TabListeEtatPile["$i"]}
done
Deconnexion_Somfy