use Net::IMAP::Simple;
# open a connection to the IMAP server $server = new Net::IMAP::Simple( 'someserver' );
# login $server->login( 'someuser', 'somepassword' ); # select the desired folder $number_of_messages = $server->select( 'somefolder' );
# go through all the messages in the selected folder foreach $msg ( 1..$number_of_messages ) {
if ( $server->seen( $msg ) { print "This message has been read before...\n" }
# get the message, returned as a reference to an array of lines $lines = $server->get( $msg );
# print it print @$lines;
# get the message, returned as a temporary file handle $fh = $server->getfh( $msg ); print <$fh>; close $fh;
}
# the list of all folders @folders = $server->mailboxes();
# create a folder $server->create_mailbox( 'newfolder' );
# rename a folder $server->rename_mailbox( 'newfolder', 'renamedfolder' );
# delete a folder $server->delete_mailbox( 'renamedfolder' );
# copy a message to another folder $server->copy( $self, $msg, 'renamedfolder' );
# close the connection $server->quit();
This module was only tested under the following servers: