Lorsque certaines conditions climatiques défavorables sont réunies, le tirage de ma chaudière est faible et celle-ci a tendance à refouler et à se mettre en sécurité. Particulièrement lorsque le brûleur fonctionne longtemps à haut régime pour produire l’eau chaude de ma douche matinale.
Pour palier à ce problème occasionnel, j’ouvre la fenêtre de la cuisine et la porte de la chaufferie pour améliorer le tirage.
NB.: Je suis équipé d’un détecteur de monoxyde de carbone en plus des sécurités de la chaudière. Il ne s’est jamais déclenché.
Mais comment savoir, avant d’entrer sous la douche, qu’elle risque de subitement me débiter de l’eau glacée sur le dos ? 🙂
En consultant le site de meteo.be !
Nous allons donc rapatrier les informations qu’il contient et les transformer en notifications Pushbullet si nécessaire.
#!/bin/bash # On rapatrie http://www.meteo.be/meteo/view/fr/65239-Accueil.html dans le fichier index.html wget http://www.meteo.be/meteo/view/fr/ -O /home/pi/scripts/meteo-chaudiere/index.html # On recherche les mots "foyers domestiques" dans le fichier que l'on vient d'enregistrer. grep 'foyers domestiques' /home/pi/scripts/meteo-chaudiere/index.html # Le retour d'info est chargé dans la variable $retval : # 0 = présence du mot # 1 = absence du mot retval=$? if [ "$retval" = 0 ] then # On envoie la notification Pushbullet emoji=$'\xE2\x98\x81' curl -s -u <code class="bash plain">ici_votre_token_Pushbullet</code>: https://api.pushbullet.com/v2/pushes -d type=note -d title="Raspberry Pi - $emoji Météo défavorable" -d body="Les prévisions météo s'annoncent défavorables pour le tirage de la chaudière." > /dev/null # On ajoute une ligne dans le log qui contient la date et l'heure de la notification echo `date +\%Y\%m\%d` - `date +\%T` - Météo défavorable pour le tirage de la chaudière. >> /var/log/meteo-chaudiere/meteo-chaudiere-`date +\%Y\%m`.log fi # On supprime le fichier HTML rm /home/pi/scripts/meteo-chaudiere/index.html
Le script va vérifier la météo chaque jour à 7h55 via un cronjob
et envoyer une notification Pushbullet et ajouter une ligne dans un fichier log si les conditions climatiques sont défavorables au tirage de ma chaudière.
$ sudo crontab -e
Le cronjob :
# Vérifie la météo pour le tirage de la chaudière le matin à 7h55 55 7 * * * /home/pi/scripts/meteo-chaudiere/meteo-chaudiere.sh > /dev/null 2>&1
On rapatrie le fichier HTML (wget
) du site meteo.be et on vérifie (grep
) s’il contient quelques mots de la phrase : « L’IRM signale des conditions défavorables au fonctionnement des foyers domestiques et des chauffe-eau. Soyez attentif à tout symptôme de type « maux de tête » ou « envie de vomir » qui pourrait être dû à une intoxication au CO. ».
Si oui, wget
retourne 0. Sinon, 1. On stock cette réponse dans $retval
.
Si $retval
= 0, alors, on envoie une notification.
Pour insérer un emoji dans la notification, j’ai du passer par une variable.
Le script se trouve dans : /home/pi/scripts/meteo-chaudiere/meteo-chaudiere.sh
Les logs se trouvent dans : /var/log/meteo-chaudiere/meteo-chaudiere-YYYYMM.log
Notification sur l’écran verrouillé de l’iPhone :
Notification dans Pushbullet :
Références :
Insérer un emoji : https://stackoverflow.com/
Liste des emoji : http://apps.timwhitlock.info/
Test de la présence d’un mot dans un fichier : http://www.commentcamarche.net/