summaryrefslogtreecommitdiff
path: root/emailcanary/canary.py
diff options
context:
space:
mode:
Diffstat (limited to 'emailcanary/canary.py')
-rw-r--r--emailcanary/canary.py7
1 files changed, 5 insertions, 2 deletions
diff --git a/emailcanary/canary.py b/emailcanary/canary.py
index 93e9d42..2be8ccf 100644
--- a/emailcanary/canary.py
+++ b/emailcanary/canary.py
@@ -26,7 +26,8 @@ class Canary:
accounts = self.db.get_accounts(listAddress)
if len(accounts) == 0:
raise Exception("No receipients for listAddress '%s'", (listAddress,))
- for (listAddress, address, imapserver, password) in accounts:
+ result = []
+ for (listAddress, address, imapserver, password, mute) in accounts:
mail = emailutils.get_imap(imapserver, address, password)
these_subjects = []
for uid in emailutils.get_mail_uids(mail):
@@ -34,7 +35,9 @@ class Canary:
if message is not None and self.processMessage(address, message):
emailutils.delete_message(mail, uid)
emailutils.close(mail)
- return self.db.get_missing_pongs(listAddress)
+ if time.time() > mute:
+ result.extend(self.db.get_missing_pongs(listAddress, address))
+ return result
def processMessage(self, receipient, msg):
match = re.match('.*Canary Email (.+)', msg['Subject'])