Ligne 13 : |
Ligne 13 : |
| | | |
| == Script Python == | | == Script Python == |
| + | == Le script Python == |
| + | Pour créer facilement ce script sur votre python, nous vous proposons une méthode à base de copier/coller à l'aide des étapes suivantes à réaliser dans un terminal (ou une connexion SSH). |
| + | |
| + | === Copier/coller le code === |
| + | Voici une méthode Copier/Coller super simple<br /> |
| + | |
| + | On commence par demander la création du fichier |
| + | <nowiki>cat <<! > raspi-gmail.py</nowiki> |
| + | |
| + | On fait ensuite le copier/coller du code |
| + | <nowiki>#!/usr/bin/env python |
| + | # -*- coding: latin-1 -*- |
| + | |
| + | import RPi.GPIO as GPIO, feedparser, time |
| + | |
| + | DEBUG = 1 |
| + | |
| + | USERNAME = "utilisateur-gmail" # seulement ce qui se trouve devant le signe @, mettez le votre ici |
| + | PASSWORD = "mot-de-passe" |
| + | |
| + | NEWMAIL_OFFSET = 1 # le nombre de message non lu, le mien est à 88, vous devriez y placer votre propre valeur |
| + | MAIL_CHECK_FREQ = 60 # vérifier les e-mails toutes les 60 secondes (4 toutes les 4 secondes ca marche pas mal pour faire un test) |
| + | |
| + | GPIO.setmode(GPIO.BCM) |
| + | GREEN_LED = 18 |
| + | RED_LED = 23 |
| + | GPIO.setup(GREEN_LED, GPIO.OUT) |
| + | GPIO.setup(RED_LED, GPIO.OUT) |
| + | |
| + | while True: |
| + | # === retirer le commentaire des lignes suivantes si vous voulez voir l'URL appelée === |
| + | # url = "https://" + USERNAME + ":" + PASSWORD +"@mail.google.com/gmail/feed/atom" |
| + | # print url |
| + | |
| + | newmails = int(feedparser.parse("https://" + USERNAME + ":" + PASSWORD +"@mail.google.com/gmail/feed/atom")["feed"]["fullcount"]) |
| + | |
| + | if DEBUG: |
| + | print "You have", newmails, "new emails!" |
| + | |
| + | if newmails > NEWMAIL_OFFSET: |
| + | GPIO.output(GREEN_LED, True) |
| + | GPIO.output(RED_LED, False) |
| + | else: |
| + | GPIO.output(GREEN_LED, False) |
| + | GPIO.output(RED_LED, True) |
| + | |
| + | time.sleep(MAIL_CHECK_FREQ)</nowiki> |
| + | |
| + | On termine l'opération de saisie simplement avec: |
| + | <nowiki>!</nowiki> |
| + | |
| + | === Editer le fichier === |
| + | Vous aurez besoin de modifier le fichier raspi-gmail.py, pour y inclure votre login et mot de passe GMail.<br /> |
| + | Vous pouvez utiliser nano... rudimentaire mais '''simple et efficace'''. |
| + | |
| + | <nowiki>nano raspi-gmail.py</nowiki> |
| + | |
| + | Sachez juste que les options affichée comme '''^X''' signifie '''Ctrl+X''' |
| + | |
| + | === Rendre le fichier exécutable === |
| + | Par défaut, les fichier sont considéré comme des fichiers texte non exécutable... même s'il contiennent des scripts. |
| + | |
| + | Il faut donc indiquer au système d'exploitation qu'il peut autoriser l'exécution de notre raspi-blink.py |
| + | <nowiki>chmod +x raspi-gmail.py</nowiki> |
| + | |
| + | == Exécuter notre programme == |
| + | <nowiki>sudo ./raspi-gmail.py</nowiki> |
| + | |
| + | Si votre compte ne contient qu'un seul e-mail non lu... il suffit de vous envoyer un e-mail pour voir la LED rouge s'allumer. |
| + | |
| + | Au premier démarrage de mon programme j'ai constaté que j'avais 88 e-mails non lus.<br /> |
| + | J'ai donc modifier |
| + | |
| + | == Arrêter votre programme == |
| + | Un simple Ctrl + C fera l'affaire |