Compare commits

...

3 Commits

Author SHA1 Message Date
3wc 2e3175a222 Update requirements 2021-08-11 13:42:05 +02:00
3wc 4055530baf Black formatter 2021-08-11 13:41:31 +02:00
3wc 90da68359a Add command to run the thing 2021-08-11 13:32:20 +02:00
3 changed files with 23 additions and 19 deletions

View File

@ -9,4 +9,5 @@ git clone ssh://git@git.autonomic.zone:2222/3wordchant/mailboop.git
pip install -r requirements-dev.txt
cp .envrc.sample .envrc
envrc allow
python -m mailboop
```

View File

@ -10,9 +10,9 @@ import requests
def main():
print("connecting to imap server")
mb = MailBox(os.getenv("MAIL_SERVER"), 993).login(
os.getenv("MAIL_USER"), os.getenv("MAIL_PASSWORD")
os.getenv("MAIL_USER"), os.getenv("MAIL_PASSWORD")
)
# Fetch all emails
# Fetch all emails
# Don't mark them as seen
# Set bulk=True to read them all into memory in one fetch
# (as opposed to in streaming which is slower but uses less memory)
@ -21,41 +21,44 @@ def main():
messages = list(message_reader)
unread = list(filter(lambda x: '\\Seen' not in x.flags, messages))
unread = list(filter(lambda x: "\\Seen" not in x.flags, messages))
dates = [m.date.replace(tzinfo=None) for m in messages]
median_date = sorted(dates)[len(dates) // 2]
median_delta = datetime.now() - median_date
oldest_date = sorted(dates)[0]
oldest_delta = datetime.now() - oldest_date
count = len(dates)
count_unread = len(unread)
output = f'''\
output = f"""\
booping ur snoots :point_right:
total emails: **{count}**
unread: **{count_unread}**
median email: recevied **{median_date}**, {median_delta} ago
oldest email: recevied **{oldest_date}**, {oldest_delta} ago
'''
"""
print("sendin boops")
r = requests.post(os.getenv("ROCKETCHAT_HOOK_URL"), json={
"alias": "mailboop",
"emoji": ":snake:",
"text": output,
# "attachments": [{
# "title": "Rocket.Chat",
# "title_link": "https://rocket.chat",
# "text": output,
# # "image_url": "/images/integration-attachment-example.png",
# "color": "#764FA5"
# }]
})
r = requests.post(
os.getenv("ROCKETCHAT_HOOK_URL"),
json={
"alias": "mailboop",
"emoji": ":snake:",
"text": output,
# "attachments": [{
# "title": "Rocket.Chat",
# "title_link": "https://rocket.chat",
# "text": output,
# # "image_url": "/images/integration-attachment-example.png",
# "color": "#764FA5"
# }]
},
)
if __name__ == "__main__":

View File

@ -1,2 +1,2 @@
rocketchat-API==1.16.0
imap-tools==0.45.0
requests==2.26.0