Advertisement
Guest User

Untitled

a guest
Jun 6th, 2017
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Perl 1.23 KB | None | 0 0
  1. #!/usr/bin/perl
  2.  
  3. use strict;
  4. use warnings;
  5. use Mail::IMAPClient;
  6. use IO::Socket::SSL;
  7.  
  8. my $username = 'USERNAME';
  9. my $password = 'PASSWORD';
  10.  
  11. my $socket = IO::Socket::SSL->new(
  12.              PeerAddr => 'imap.gmail.com',
  13.              PeerPort => 993
  14.              )
  15. or die "socket(): $@";
  16.  
  17. my $client = Mail::IMAPClient->new(
  18.              Socket   => $socket,
  19.              User     => $username,
  20.              Password => $password,
  21.              )
  22. or die "new(): $@";
  23.  
  24. if ($client->IsAuthenticated()) {
  25.         my $msgct;
  26.         $client->select("INBOX");
  27.         # $msgct = $client->unseen_count||'-';
  28.         # print "$msgct\n";
  29.         my $messages = $client->messages() or die "Could not messages: $@\n";
  30.         for my $h (values %{$client->parse_headers($messages, "Subject")})
  31.         {
  32.                 my $subject = join("\n", map { "$_:\t$h->{$_}[0]\n"} keys %$h);
  33.                 if (length($subject) > 45) {
  34.                         print substr($subject, 9, 36);
  35.                         print "...\n"
  36.                 } else {
  37.                         print substr($subject, 9, 36);
  38.                 }
  39.                 print $subject;
  40.         }
  41. } else {
  42.         die "Authentication failed: $@";
  43. }
  44. $client->logout();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement