« Projet raspberry : code projet mail detector 2000 » : différence entre les versions

De TravauxIndse
Aller à la navigation Aller à la recherche
Aucun résumé des modifications
Aucun résumé des modifications
 
(Une version intermédiaire par le même utilisateur non affichée)
Ligne 3 : Ligne 3 :
=== Mail detector ===
=== Mail detector ===


[[Fichier:GDevelop.png|400px|thumb|right]]
[[Projet : Mail detector 2000]]
 
<code>import RPi.GPIO as GPIO
<br>GPIO.setwarnings(False)
<br>import imaplib
<br>import time
<br>//Ici, on importe, comme ce nom l'indique en anglais, les dépendances nécessaires au bon fonctionnement du code
<br>//Le setwarnings mit en false, désactive les messages d'erreurs inutiles
 
<br>login="nomutilisateur"
<br>passwd="motdepasse"
<br>username=login+"@indse.be"
<br>//On renseigne le nom d'utilisateur et le mot de passe (à changer évidement), ainsi que "indse.be" ou "gmail.com". Ces 2 ci fonctionnent mais nous n'avons pas testé les autres
 
<br>imap=imaplib.IMAP4_SSL("imap.gmail.com")
<br>imap.login(username,passwd)
<br>//On se connecte grâce à la dépendance imap importée plus tôt
 
<br>status,messages=imap.select("INBOX")
<br>nombreMessages=int(messages[0])
<br>//On regarde uniquement dans la boîte de réception et on compte le nombre de messages
 
<br>gpio = 4
<br>//Le raspberry envoie du courant dans le système électrique par le gpio 4 (on connecte donc le câble sur le pin 7 et sur le pin 9(ground))
 
<br>GPIO.setmode(GPIO.BCM)
<br>GPIO.setup(gpio, GPIO.OUT)
 
<br>try:
<br>while True:
<br>status,messages=imap.select("INBOX")
<br>nombreMessages=int(messages[0])
<br>_, data = imap.search(None, 'UnSeen')
<br>if len(data[0].split()) == 0:                         
<br>GPIO.output(gpio, False)
<br>else:
<br>GPIO.output(gpio, True)
<br>time.sleep(10)
<br>except KeyboardInterrupt:
<br>GPIO.cleanup()
<br>//Création d'une boucle qui définit le nombre de messages dans la boîte de réception à 0
<br>//Ensuite, on compte le nombre de messages non lu
<br>//Si celui-ci est égale à 0, le raspberry n'envoie pas de courant aux leds
<br>//Si celui-ci est différent de 0, le rasberry envoie du courant aux leds qui vont donc s'allumer
<br>//On attend 10 secondes avant de reprendre au début de la boucle pour ne pas surcharger les services Google
 
</code>

Dernière version du 26 janvier 2021 à 09:51

Code Raspberry[modifier]

Mail detector[modifier]

Projet : Mail detector 2000

import RPi.GPIO as GPIO
GPIO.setwarnings(False)
import imaplib
import time
//Ici, on importe, comme ce nom l'indique en anglais, les dépendances nécessaires au bon fonctionnement du code
//Le setwarnings mit en false, désactive les messages d'erreurs inutiles


login="nomutilisateur"
passwd="motdepasse"
username=login+"@indse.be"
//On renseigne le nom d'utilisateur et le mot de passe (à changer évidement), ainsi que "indse.be" ou "gmail.com". Ces 2 ci fonctionnent mais nous n'avons pas testé les autres


imap=imaplib.IMAP4_SSL("imap.gmail.com")
imap.login(username,passwd)
//On se connecte grâce à la dépendance imap importée plus tôt


status,messages=imap.select("INBOX")
nombreMessages=int(messages[0])
//On regarde uniquement dans la boîte de réception et on compte le nombre de messages


gpio = 4
//Le raspberry envoie du courant dans le système électrique par le gpio 4 (on connecte donc le câble sur le pin 7 et sur le pin 9(ground))


GPIO.setmode(GPIO.BCM)
GPIO.setup(gpio, GPIO.OUT)


try:
while True:
status,messages=imap.select("INBOX")
nombreMessages=int(messages[0])
_, data = imap.search(None, 'UnSeen')
if len(data[0].split()) == 0:
GPIO.output(gpio, False)
else:
GPIO.output(gpio, True)
time.sleep(10)
except KeyboardInterrupt:
GPIO.cleanup()
//Création d'une boucle qui définit le nombre de messages dans la boîte de réception à 0
//Ensuite, on compte le nombre de messages non lu
//Si celui-ci est égale à 0, le raspberry n'envoie pas de courant aux leds
//Si celui-ci est différent de 0, le rasberry envoie du courant aux leds qui vont donc s'allumer
//On attend 10 secondes avant de reprendre au début de la boucle pour ne pas surcharger les services Google