Seconde partie du dossier spécial domotisation de la tireuse à bière, hier nous installions une sonde Oregon dans la pompe à bière via une petite modification de câblage pour l’installer au plus près du fut et disposer de la température de la bière. Aujourd’hui, passons au script qui nous permettra de calculer l’age du fut et disposer d’un compteur dans l’eedomus mais également de déterminer l’état de la bière. Avec toutes ces informations, la pompe sera connectée et pourra vous informer de son état en temps réel via la box domotique et des notifications push sur votre smartphone.
Le script
Le script est un script à héberger sur un serveur web local, raspberry Pi ou Synology. Il y à deux fichiers dans l’archive, le fichier BeerAutomation.php qui contient le script pour lequel vous n’avez rien à faire dessus, puis un fichier parametres.php qui est le seul fichier ou vous allez appliquer une configuration très simple.
Afin de remplir ce fichier parametres.php vous devez avoir sous la main dans un premier temps l’adresse IP de la box eedomus ainsi que vos codes API User et Secret et saisissez les en lieu est place des XXX, XXXXX et 192.168.1.100
Les périphériques
1 Créez un premier état virtuel configuré de la manière suivante et notez bien son code API (pour l’exemple 33333)
2 Appliquez lui les valeurs suivantes et enregistrez.
3 Créez un second état virtuel nommé Age du fût et configurez le ainsi:
Encore une fois, notez bien le code API pour la suite, pour l’exemple son code API est 22222. Enfin sauvegardez la configuration.
4 Créez un nouveau périphérique virtuel et nommez le “Etat du fut”. Configurez le comme suit et notez son code API, pour l’exemple ce sera le code 11111:
Enfin donnez lui les deux valeurs suivantes:
5 Créez maintenant un actionneur HTTP “Beer Script” et configurez le ainsi:
6 Ajoutez une valeur à cet actionneur HTTP
L’actionneur pointe simplement vers le script BeerAutomation.php que vous avez déposé sur votre serveur web. Il est donc important que le chemin pointe bien vers ce fichier.
Configuration du script partie 2
Procédez au remplacement des code API 11111, 22222, 33333 par les codes API de vos périphériques dans le fichier parametres.php
Vous disposez maintenant de cinq périphériques qui déterminent les fonctions vitales de votre tireuse à bière.
Explications du script
Au remplacement du fût, passer le périphérique Etat fut à neuf, cela à pour incidence de générer un nouvelle état à date sur ce périphérique et exécuter le script.
le script compare alors la date du jour avec la date de mise à jour du périphérique “Etat fut” et stock la donnée dans le périphérique “Age du fut”.
Un test de condition est alors opéré sur la valeur de l’age du fut, mettant ainsi à jour le périphérique “Etat bière” en fonction de l’algorithme.
Enfin, un test est effectué sur le bon envoie des données à la box eedomus. Cela vous permet d’exécuter le script dans un navigateur pour bénéficier d’un mode debug en cas de défaut du script.
Automatisation
Afin de mettre automatiquement à jour les différents états, il est nécessaire d’exécuter le script quotidiennement. Pour cela, créez la règle suivante
Enfin, la seconde règle qui va permettre de réinitialiser les compteurs quand vous remplacez le fut, il suffira alors de passer le périphérique état du fut à Neuf pour tout reset.
Conclusion
Voila, la pompe à bière connectée et maintenant devenue réalité, à deux jours de l’euro, il est encore temps de mettre le dossier en pratique pour profiter d’une petite mousse bien fraîche pendant les matchs.
Bientôt une V2, j’ai quelques idées d’amélioration pour ce script, attendes vous donc à de nouveaux articles à venir dans ce dossier.
Merci! Est il possible de partager les icônes?
Bonjour
j’ai essaye votre script mais rien n’y fait quand je clic sur Neuf rien ne bouge???
j’ai un serveur Synology mais je pense qu’il doit etre mal configure
pouvez vous m’aidez?
cordialement
Bonjour,
avez vous essayé de vérifier l’état de votre serveur web sur syno dans un premier temps?
est-il fonctionnel?
pour cala, il faut créer un fichier test.php
coller les lignes suivantes dedans:
et y accéder depuis un navigateur
La page doit renvoyer les informations sur php si tout est ok !
Bonjour
je pense pas , je debute dans la domo et la progrmation
quelle ligne dois je mettre??
j’ai mon adresse ip de mon serveur, mais y a 4 dossiers, dont un “web” avec dossier phpmyadmin j’ai copier les fichiers parametre.php et beerautomotion.php dedans
mais dans eedomus ça focntionne pas j’ai erreur 404
merci d’avance
Hello
merci tout fonctionne super
bon week de paques