Skip to content

Instantly share code, notes, and snippets.

@jkeroes
Last active December 20, 2015 21:08
Show Gist options
  • Select an option

  • Save jkeroes/6195063 to your computer and use it in GitHub Desktop.

Select an option

Save jkeroes/6195063 to your computer and use it in GitHub Desktop.
Exchange Perl client
#!/usr/bin/env perl
use 5.10.0;
use autodie;
use Email::Folder::Exchange::EWS;
use Email::MIME;
my $uri = 'https://example.com/ews/exchange.asmx';
my $user = 'DOMAIN\userid';
my $pass = 'password1';
my $VERBOSE = 1;
my $folder = Email::Folder::Exchange::EWS->new($uri, $user, $pass);
for my $message ($folder->messages) {
my $mid = $message->header('Message-ID') or die "Can't find message id";
my $to = $message->header('To');
my $from = $message->header('From');
my $subject = $message->header('Subject');
my $parsed = Email::MIME->new($message->body);
my $body = $parsed->body;
say <<END if $VERBOSE;
mid: $mid
to: $to
from: $from
subject: $subject
body:
$body
END
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment