Page 1 sur 1

[Bash] Script pour connaitre l'état d'un poele PALAZZETTI + Alerte SMS

Publié : 10 janv. 2017, 18:26
par Viand0x
Bonjour,
Je continue de tester et approfondir la connexion box. J'ai écrit un script pour Domoticz qui me log tous les changements d'état poêle et qui m'envoie un SMS si le niveau de pellet est trop bas.

Prérequis : connexion box opérationnelle, domoticz (linux) sur le réseau local, abonnement Free Mobile.

Il y a 3 choses à modifier : l'adresse IP du poele, l'adresse IP de Domoticz et les identifiants pour SMS

Le script est le suivant. Il faut créer le fichier etat_poele.sh, copier le script dedans, lui donner les droits d'éxécution et ensuite le mettre dans le crontab : @reboot /home/pi/etat_poele.sh > /dev/null

Code : Tout sélectionner

#!/bin/bash

# Initialisation des variables
statut=0
var_stat=0
oldstatut=0

# Le programme tourne en boucle : 

while true;
do 

# On récupère la variable du statut :
var_stat=$(curl -s "http://192.168.XXX.XXX/sendmsg.php?cmd=get+stat" | jq '. | ."Status".STATUS')
# La commande n'est pas très réactive, on attend 10 sec
sleep 10

# On traduit le code du statut par sa signification

case $var_stat in
                                "0")
                                        statut="Le%20poële%20est%20éteind"
                                        ;;
                                "1")
                                        statut="Le%20poële%20est%20éteind%20selon%20la%20programmation"
                                        ;;
                                "2")
                                        statut="Vérification"
                                        ;;
                                "3")
                                        statut="Préchauffage"
                                        ;;
                                "4")
                                        statut="Chargement%20de%20pellets"
                                        ;;
                                "5")
                                        statut="Test%20d'allumage"
                                        ;;
                                "6")
                                        statut="En%20chauffe"
                                        ;;
                                "9")
                                        statut="Refroidissement%20du%20fluide%20caloporteur"
                                        ;;
                                "10")
                                        statut="Arrêt%20de%20la%20flamme"
                                        ;;
                                "11")
                                        statut="Brûlage%20des%20derniers%20pellets"
                                        ;;
                                "12")
                                        statut="Refroidissement"
										;;
								"253")
										statut="Pellet%20bas"
esac

# On vérifie si le statut a changé depuis la dernière fois

if [ $statut != $oldstatut ]
# Dans ce cas on envoi la variable vers le compteur domoticz :
then
curl -s "http://192.168.XXX.XXX:8080/json.htm?type=command&param=udevice&idx=54&nvalue=0&svalue=$statut" 
fi

# On test si la variable est "Pellet bas"

if [ $var_stat = "253" ]

# Dans ce cas on envoi un SMS
then
curl -sk "https://smsapi.free-mobile.fr/sendmsg?user=USERFREE&pass=PASSFREE&msg=Attention%20niveau%20de%20pellets%20bas!"
fi
# On passe le nouveau statut en ancien statut

oldstatut=$statut

# On attent 45 secondes avant de relancer
sleep 45

done

Re: Script pour connaitre l'état d'un poele PALAZZETTI + Alerte SMS

Publié : 10 janv. 2017, 22:00
par mickaelr30
salut,
un petit hors sujet : tu arrive à mettre en marche le poêle j'ai créé un bouton avec en commande ON : http://192.168.1.xx/sendmsg.php?cmd=CMD%20ON
et OFF : http://192.168.1.xx/sendmsg.php?cmd=CMD%20OFF
chez moi la commande OFF fonctionne bien mais le ON ne marche jamais

Re: Script pour connaitre l'état d'un poele PALAZZETTI + Alerte SMS

Publié : 10 janv. 2017, 23:17
par Viand0x
Je n'ai pas testé cette fonction, je n'en ai pas l'utilité, chez moi le poele est notre seule source de chauffage, donc je ne l'arrête jamais (enfin si quand il fait chaud dehors!)