in reply to Re: Exchange Server and IMAP
in thread Exchange Server and IMAP

IMAP is perfectly capable of doing this task. Exchange may not be (I am not familiar enough with its implementation of the protocol to say). It is absolutely possible to grant a user read-only access to other people's mailboxes (see, for example, IMAP::Admin, Mail::IMAPTalk). The Mail::IMAPTalk module will allow downloading attachments, providing unique ids and changing folders (there's an example in the POD of looking at another user's mailbox):

$imap = Mail::IMAPTalk->new( Server => 'foo.com', Port => 143, Username => 'joebloggs', Password => 'mypassword', Separator => '.', RootFolder => 'inbox', CaseInsensitive => 1) || die "Connection to foo.com failed. Reason: $@"; $imap->select('user.john'); # Selects 'user.john' my $Res = $imap->fetch('1:*', 'all');

Updated: Here's the example for changing folder access:

# Get full access for user 'joe' on his own folder $imap->setacl('user.joe','joe','lrswipcda') || die "IMAP error: $@"; # Remove write, insert, post, create, delete access for user 'andrew' $imap->setacl('user.joe','andrew','-wipcd') || die "IMAP error: $@"; # Add lookup, read, keep unseen information for user 'paul' $imap->setacl('user.joe','paul','+lrs') || die "IMAP error: $@";

The intelligent reader will judge for himself. Without examining the facts fully and fairly, there is no way of knowing whether vox populi is really vox dei, or merely vox asinorum. -- Cyrus H. Gordon

Replies are listed 'Best First'.
Re^3: Exchange Server and IMAP
by jfroebe (Parson) on Nov 18, 2004 at 17:44 UTC

    Hi

    IMAP for Exchange 5.5 and 2000 has to be enabled for it to work. As this produces extra overhead (performance, maintenance, security and administrative) for the Exchange server, it generally is undesirable. The only proper way (according Microsoft) to interface with the Exchange server from a script or application is to use CDO.

    I've written enough Exchange apps in VB6, VB.NET and vbscript to know that Perl is, unfortunately, ill suited for any real Exchange development. Atleast until someone writes a set of modules that is able to interface with Exchange with CDO on more than superficial terms.

    Jason L. Froebe

    Team Sybase member

    No one has seen what you have seen, and until that happens, we're all going to think that you're nuts. - Jack O'Neil, Stargate SG-1