diff --git a/.config b/.config new file mode 100644 index 0000000..3ecad7a --- /dev/null +++ b/.config @@ -0,0 +1,5 @@ +smtp_server = smtp.gmail.com +smtp_port = 587 +mail_address = test@mail.com +path = /home/user/Bureau/WEB/xdrm-brackets/enigmail.py + diff --git a/enigmail/.config b/enigmail/.config index b03fbdc..98a5ea0 100644 --- a/enigmail/.config +++ b/enigmail/.config @@ -1,3 +1,3 @@ smtp_server = smtp.gmail.com smtp_port = 587 -mail_address = test@mail.com +mail_address = doowap31@gmail.com diff --git a/enigmail/bucket-file b/enigmail/bucket-file index 8baef1b..719a1e4 100644 --- a/enigmail/bucket-file +++ b/enigmail/bucket-file @@ -1 +1,24 @@ -abc +Cher(e) client(e), + +Votre annonce est en ligne sur Leboncoin depuis maintenant 7 jours. + +Vous avez la possibilité de la mettre en avant et de la modifier. +Pour cela, rendez-vous sur http://www2.leboncoin.fr/ai?id=737934934&cmd=sub_toplist&trid=80982 + +En gérant au mieux votre annonce, vous vendez plus rapidement... + + + +L'équipe Leboncoin.fr +www.leboncoin.fr + + +PS: Ceci est un email automatique, merci de ne pas y répondre. +_____________________________________________________________________________ +Leboncoin.fr, vendez, achetez, près de chez vous. Simple, rapide et efficace. +http://www.leboncoin.fr + +Mobile.leboncoin.fr, découvrez notre nouveau site mobile en vous connectant depuis +votre téléphone portable. +http://mobile.leboncoin.fr +M \ No newline at end of file diff --git a/enigmail/enigmail.sh b/enigmail/enigmail.sh index 57e7156..1d7a6a9 100644 --- a/enigmail/enigmail.sh +++ b/enigmail/enigmail.sh @@ -1,14 +1,21 @@ #!/bin/bash +path=$(readlink -f $(dirname $0)) + if [ $# -eq 1 ] then # si 1 paramètre case $1 in - 'init') echo """\nalias enigmail="sh $(pwd)/enigmail.sh"\n""";; - 'config') nano .config ;; - 'write') nano bucket-file ;; - 'read') echo "\n======================================="; cat bucket-file; echo "\n=======================================";; + 'init') # initialise le contenu du fichier de config + echo "smtp_server = smtp.gmail.com" > "$path/.config" + echo "smtp_port = 587" >> "$path/.config" + echo "mail_address = test@mail.com" >> "$path/.config" + ;; + 'config') nano "$path/.config";; # ouvre en modification le fichier de config + 'write') nano "$path/bucket-file";; # ouvre en modification le bucket file + # ouvre en lecture le bucket file + 'read') echo "\n======================================="; cat "$path/bucket-file"; echo "\n=======================================";; *) echo "Erreur"; esac; else - python source/interface.py; + python "$path/source/interface.py"; fi; diff --git a/enigmail/source/enigmail.py b/enigmail/source/enigmail.py index 47fe33d..e84f077 100644 --- a/enigmail/source/enigmail.py +++ b/enigmail/source/enigmail.py @@ -8,8 +8,8 @@ from email.MIMEText import MIMEText # cette fonction récupère toutes les lignes du fichier enigmail.config et les stocke dans un dictionaire qui est retourné -def getConf(): - fConf = open('.config', 'r'); +def getConf(pPath): + fConf = open(pPath+'/../.config', 'r'); lines = fConf.readlines(); fConf.close(); @@ -20,7 +20,7 @@ def getConf(): confVal = i[i.index('=')+1:].replace(' ', '').replace('\n', ''); conf[confKey] = confVal; - if( len(conf) >= 3 ): # si le fichier de config est bien récupéré et qu'il est complet (3 entrées) + if( len(conf) == 3 ): # si le fichier de config est bien récupéré et qu'il est complet return conf; else: return False; @@ -28,29 +28,27 @@ def getConf(): # cette fonction envoie un mail -def sendMail(pPass, pTo, pSubject, pMessage): - conf = getConf(); # on récupère les informations du fichier de config - - if( not conf ): # si enigmail.config est imcomplet ou a une erreur on envoie pas le mail - print "> Fichier enigmail.config incomplet ou contient une erreur" - else: # si tout est ok => envoi du mail +def sendMail(pConf, pPass, pTo, pSubject, pMessage): + try: pMsg = MIMEMultipart(); - pMsg['From'] = conf['mail_address']; + pMsg['From'] = pConf['mail_address']; pMsg['To'] = pTo; pMsg['Subject'] = pSubject; pMsg.attach( MIMEText(pMessage.encode('utf-8')) ); - srv = smtplib.SMTP(conf['smtp_server'], conf['smtp_port']); + srv = smtplib.SMTP(pConf['smtp_server'], pConf['smtp_port']); srv.ehlo(); srv.starttls(); srv.ehlo(); - srv.login(conf['mail_address'], pPass); + srv.login(pConf['mail_address'], pPass); - srv.sendmail( conf['mail_address'], pTo, pMsg.as_string() ); + srv.sendmail( pConf['mail_address'], pTo, pMsg.as_string() ); srv.quit(); print "> Mail envoye !"; + except smtplib.SMTPAuthenticationError: + print "> Mauvais login ou mot de passe\n\(enigmail config) pour changer votre adresse"; diff --git a/enigmail/source/enigmail.pyc b/enigmail/source/enigmail.pyc new file mode 100644 index 0000000..dc0b25b Binary files /dev/null and b/enigmail/source/enigmail.pyc differ diff --git a/enigmail/source/interface.py b/enigmail/source/interface.py index 915dcd2..b1c9559 100644 --- a/enigmail/source/interface.py +++ b/enigmail/source/interface.py @@ -1,8 +1,15 @@ # -*- coding: utf-8 -*- from enigmail import * -import getpass +import getpass, sys, os +path = os.path.abspath( os.path.dirname(sys.argv[0]) ); +# paramètres utilisateurs +conf = getConf(path); + +if( conf == False ): # si manque des paramètres + print "parametres manquants"; + raise SystemExit(0); # DEFINITION DE L'ALPHABET @@ -36,7 +43,7 @@ for i in range(0, LEVEL): # printRotors(ROTOR); # OUVERTURE ET LECTURE DU FICHIER -inFile = open('bucket-file', 'r'); +inFile = open(path + '/../bucket-file', 'r'); m = inFile.read().decode('utf-8'); inFile.close(); @@ -62,10 +69,10 @@ if( type == 'M' ): Pass = str( getpass.getpass('Mot de passe : ') ); print '...'; - sendMail(Pass, To, Subj, M); + sendMail(conf, Pass, To, Subj, M); # ECRITURE FICHIER else: - outFile = open('bucket-file', 'w'); + outFile = open(path + '/../bucket-file', 'w'); outFile.write( M.encode('utf-8') ); outFile.close(); diff --git a/enigmail/test.py b/enigmail/test.py new file mode 100644 index 0000000..e69de29