Heute stand ich vor der Frage wie man eine Mailbox aus dem Exchange automatisiert abfragen und verarbeiten kann. Mail::Outlook hilft weiter. Es können im einfachsten Fall alle Ordner, Mails gelesen und neue erstellt werden. Microsoft Outlook muss auf dem Client vorhanden sein.
Folgendes Beispiel ließt die 3 letzten Mails und löscht sie – konfigurierter Outlookaccount vorausgesetzt. Erweiterte Funktionen wie Mails als gelesen markieren etc. stehen über das Modul aber nicht zur Verfügung.
# create the object
use Mail::Outlook;
my $outlook = new Mail::Outlook();
# start with a folder
my $outlook = new Mail::Outlook('Inbox');
# use the Win32::OLE::Const definitions
use Mail::Outlook;
use Win32::OLE::Const 'Microsoft Outlook';
my $outlook = new Mail::Outlook(olInbox);
# get/set the current folder
my $folder = $outlook->folder('Inbox');
my $message = $folder->first();
for (my $i = 0; $i<3; $i++) {
# get the first/last/next/previous message
print "Subject: " .$message->Subject() ." \n";
$message->delete();
$message = $folder->next();
}