3 """Mailove rozhrani pro sadu kryptoanalytickych nastroju."""
10 from email.mime.text import MIMEText
11 from time import asctime
14 from ocesavac import ocesat
15 from spolecne import ABECEDA
20 settings = pickle.load(open('./robot_settings'))
21 os.chdir(settings.path)
23 def posli_mail(komu, predmet, text, loguj=None):
25 msg['Subject'] = predmet
26 msg['From'] = settings.name + " <" + settings.mail + ">"
28 smtplib.SMTP('localhost').sendmail(settings.mail, komu, msg.as_string())
30 soubor = open(loguj, 'w')
31 soubor.write(msg.as_string())
35 mail = email.message_from_file(sys.stdin)
36 predmet, _, opsny = mail['Subject'].strip().upper().partition(' ')
37 odesilatel = mail['From']
38 if predmet != settings.subject:
41 mail = pickle.load(open('./msg_last.tmp'))
42 m1 = re.match(r".*\<(.*)\>.*", mail['From'])
43 m2 = re.match(r".*\<(.*)\>.*", odesilatel)
53 posli_mail(odesilatel, "Omluva", "Omlouvam se,"
54 " ale Vase zprava uz bohuzel neni na serveru ulozena.\n")
57 if mail.is_multipart():
58 telo = mail.get_payload(0).get_payload().strip()
60 telo = mail.get_payload().strip()
62 if len(ocesat(telo, False)) < 2:
63 posli_mail(odesilatel, "Omluva", "Omlouvam se,"
64 " ale Vase zprava je prilis kratka.\n")
68 # TODO zpracovat zpravu a odeslat vysledek
69 #pridat "\nS pozdravem\nVas Robot"
71 posli_mail(odesilatel,
72 "Analyza Vasi zpravy",
76 f = open('./msg_last.tmp', 'w')
80 f = open('./robot.log', 'a')
81 m = re.match(r".*\<(.*)\>.*", odesilatel)
83 odesilatel2 = m.group(1)
85 odesilatel2 = odesilatel
86 f.write(asctime() + " " + odesilatel2 + " " + opsny + "\n")