Email桌面提醒

最近在研究awesome的widget,想加一个Email提醒功能,在awesome的wiki里翻了半天,找到几个现成的。但我感觉awesome的widget栏本来就很小,就算他在那狂闪,我也不一定能注意的到,所以只用了他给的Python脚本,稍微hack了下。

效果图如下:
Email提醒效果图

脚本在这里下载

01 #!/usr/bin/python2.7
02
03 import imaplib
04 import os
05
06 #first field is imap server, second – port (993 for gmail SSL IMAP)
07 M=imaplib.IMAP4_SSL("imap.gmail.com", 993)
08 #first field is imap login (gmail uses login with domain and '@' character), second – password
09 M.login("[email protected]","passwd")
10
11 status, counts = M.status("Inbox","(MESSAGES UNSEEN)")
12
13 unread = counts[0].split()[4][:1]
14 if int(unread) == 0:
15     print "  No new mails.  "
16 else:
17     os.system("notify-send '<span color=\"green\" size=\"18000\">You have " + unread  + " new mail(s) on Gmail!</span>'")
18
19 M.logout()

修改其中邮箱和密码即可,当然你也可以更改字体大小或者颜色。

然后用cron来定时执行这个脚本
crontab -e

添加如下命令
*/2 * * * * env DISPLAY=:0 /home/user/mail.py >/dev/null 2>&1

当然这个脚本要有可执行权限,env DISPLAY=:0 表示在X环境下,否则不会有提示出来。
这条命令表示每两分钟执行一次检测脚本,如果想改成其他时间段,按照cron的规则修改即可。

参考资料
Asmer imap mail widget

Linux , , ,

1 comment


Leave a Reply to peterpainkiller Cancel reply

Your email address will not be published. Required fields are marked *