Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/perl
- # Put this in ~/.gmail/ and use "crontab -e" to add something like
- # "* * * * * ~/.gmail/gmail.pl > /dev/null" to run it every minute.
- # ${exec cat ~/.gmail/.gmail_top} shows your inbox in Conky.
- # Note that this was intended to be used with Gmail or any other
- # ssl-enabled pop3 server.
- # beginning of configuration
- # pop3 host
- $pop_host = "pop.gmail.com";
- # pop3 username (for Gmail, I didn't have to put @gmail.com at the end)
- $pop_user = "**";
- # pop3 password
- $pop_pass = "**";
- # ssl port number (995 is what Gmail uses)
- $ssl_port = "995";
- # ssl protocol
- $ssl_prot = "tcp";
- # number of emails to show
- $dis_numb = "5";
- # end of configuration
- use Mail::POP3Client;
- use IO::Socket::SSL;
- my $socket = IO::Socket::SSL->new( PeerAddr => $pop_host,
- PeerPort => $ssl_port,
- Proto => $ssl_prot);
- my $pop = Mail::POP3Client->new();
- $pop->User($pop_user);
- $pop->Pass($pop_pass);
- $pop->Socket($socket);
- $pop->Connect();
- $msg_count = $pop->Count();
- for ($i = $msg_count, $j = 0; $i >= $msg_count-($dis_numb-1); $i--, $j++) {
- foreach ( $pop->Head( $i ) ) {
- #/^(From|Subject):\s+/i and print $_, "\n";
- if ($_ =~ m/^From:/) {
- ($from) = ($_ =~ m#^From: .*<(.*)>#);
- $from = substr($from, 0, 30);
- $out = "$j = $from\n";
- }
- }
- #chop $out;
- `echo "$out"> ~/.gmail/.gmail_top`;
- }
- $pop->Close();
Add Comment
Please, Sign In to add comment