The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Win32::Outlook::IAF - Internet Account File (*.iaf) management for Outlook Express/2003.

VERSION

Version 0.92

SYNOPSIS

    use Win32::Outlook::IAF;

    my $iaf=new Win32::Outlook::IAF;

    my $src='MyAccount.iaf';

    local $/;
    open(INPUT,$src) or die "Can't open $src for reading: $!\n";
    binmode(INPUT);

    $iaf->read_iaf(<INPUT>);
    close(INPUT);

    # forgot your POP3 password?
    print $iaf->POP3Password();

    $iaf=new Win32::Outlook::IAF(
      IMAPServer => 'imap.example.com',
      IMAPUserName => 'user@example.com',
    );

    $iaf->IMAPSecureConnection(1);     # set boolean value
    $iaf->IMAPSecureConnection('yes'); # .. in another way

    $iaf->IMAPUserName(undef); # delete this field

    $iaf->SMTPAuthMethod(IAF_AM_USE_INCOMING); # handy constants

    $iaf->SMTPPort('hundred'); # dies (not a number)

    $iaf->NonExistent(); # dies (can't access nonexistent field)

DESCRIPTION

Allows to create SMTP, POP3, IMAP and HTTP email or NNTP news account configuration files, that can be imported by Microsoft Outlook Express/2003 clients.

Reverse operation is possible - most fields from such files can be decoded.

General Methods

new()
read_iaf($buffer)

Reads binary data from the specified buffer.

write_iaf($buffer)

Writes binary data into the specified buffer.

text_iaf($buffer[,$delimiter])

Writes 'name - value' pairs as text into the specified buffer. Delimiter defaults to 'tab' character. Passwords are hidden with asterisks.

Account Fields

AccountName()

Account name displayed in list of accounts in Outlook or Outlook Express.

AccountID()

Unique ID of the account. Name of the registry key that stores the account settings.

Connection Fields

ConnectionType()

Connection type used by account. One of the IAF_CT_* enumeration values.

ConnectionName()

Name of the dial-up account. This is used when ConnectionType() is set to IAF_CT_DIALUP.

SMTP Fields

SMTPServer()

SMTP server host name.

SMTPUserName()

User name used when connecting to SMTP server.

SMTPPassword()

Password used when connecting to SMTP server.

SMTPPasswordPrompt()

Prompt for password when logging on to SMTP server.

SMTPAuthMethod()

Authentication method required by SMTP server. One of the IAF_AM_* enumeration values.

SMTPPort()

SMTP server port.

SMTPSecureConnection()

Use secure connection (SSL) to the SMTP server.

SMTPTimeout()

Timeout in seconds for communication with SMTP server.

SMTPDisplayName()

Display name of the user. This is used as a name in 'From:' mail header.

SMTPOrganizationName()

Organization of the user. This is used in 'Organization:' mail header.

SMTPEmailAddress()

Sender email address. This is used as the email address in 'From:' mail header.

SMTPReplyToEmailAddress()

Reply To email address. This is used as the email address in 'Reply-To:' mail header.

SMTPSplitMessages()

Break apart messages.

SMTPSplitMessageSize()

Break apart messages larger than size in KB.

SMTPSignature()

Registry key of the SMTP signature.

POP3 Fields

POP3Server()

POP3 server host name.

POP3UserName()

User name used when connecting to POP3 server.

POP3Password()

Password used when connecting to POP3 server.

POP3PasswordPrompt()

Prompt for password when logging on to POP3 server.

POP3AuthUseSPA()

Logon to POP3 server using Secure Password Authentication (SPA).

POP3Port()

POP3 server port.

POP3SecureConnection()

Use secure connection (SSL) to the POP3 server.

POP3Timeout()

Timeout in seconds for communication with POP3 server.

POP3LeaveMailOnServer()

Leave mail on POP3 server.

POP3RemoveWhenDeleted()

Remove messages from POP3 server when deleted from Deleted Items.

POP3RemoveWhenExpired()

Remove messages from POP3 server after a period of days.

POP3ExpireDays()

How many days to leave messages on POP3 server.

POP3SkipAccount()

Do not include this account when receiving mail or synchronizing.

IMAP Fields

IMAPServer()

IMAP server host name.

IMAPUserName()

User name used when connecting to IMAP server.

IMAPPassword()

Password used when connecting to IMAP server.

IMAPPasswordPrompt()

Prompt for password when connecting to IMAP server.

IMAPAuthUseSPA()

Logon to IMAP server using Secure Password Authentication (SPA).

IMAPPort()

IMAP server port.

IMAPSecureConnection()

Use secure connection (SSL) to the IMAP server.

IMAPTimeout()

Timeout in seconds for communication with IMAP server.

IMAPRootFolder()

Root folder path on IMAP server.

IMAPUseLSUB()
IMAPPolling()

Include this account when receiving mail or synchronizing.

IMAPStoreSpecialFolders()

Store special folders on IMAP server.

IMAPSentItemsFolder()

Send Items folder path on IMAP server.

IMAPDraftsFolder()

Drafts folder path on IMAP server.

IMAPDirty()
IMAPPollAllFolders()

Check for new messages in all folders on IMAP server.

HTTP Fields

HTTPServer()

HTTPMail server url.

HTTPUserName()

User name used when connecting to HTTPMail server.

HTTPPassword()

Password used when connecting to HTTPMail server.

HTTPPasswordPrompt()

Prompt for password when connecting to HTTPMail server.

HTTPAuthUseSPA()

Logon to HTTPMail server using Secure Password Authentication (SPA).

HTTPFriendlyName()
HTTPPolling()

Include this account when receiving mail or synchronizing.

NNTP Fields

NNTPServer()

NNTP server host name.

NNTPUserName()

User name used when connecting to NNTP server.

NNTPPassword()

Password used when connecting to NNTP server.

NNTPPasswordPrompt()

Prompt for password when logging on to NNTP server.

NNTPAuthMethod()

Authentication method required by NNTP server. One of the IAF_AM_* enumeration values.

NNTPPort()

NNTP server port.

NNTPSecureConnection()

Use secure connection (SSL) to the NNTP server.

NNTPTimeout()

Timeout in seconds for communication with NNTP server.

NNTPDisplayName()

Display name of the user. This is used as a name in 'From:' message header.

NNTPOrganizationName()

Organization of the user. This is used in 'Organization:' message header.

NNTPEmailAddress()

Sender email address. This is used as the email address in 'From:' message header.

NNTPReplyToEmailAddress()

Reply To email address. This is used as the email address in 'Reply-To:' message header.

NNTPSplitMessages()

Break apart messages.

NNTPSplitMessageSize()

Break apart messages larger than size in KB.

NNTPUseGroupDescriptions()

Use newsgroups descriptions when downloading newsgroups list from NNTP server.

NNTPPolling()

Include this account when receiving messages.

NNTPPostingFormat()

News posting format.

NNTPSignature()

Registry key of the NNTP signature.

Misc Fields

TemporaryAccount()
ConnectionFlags()
BackupConnectionName()
MakeAvailableOffline()
ServerReadOnly()
DomainIsMSN()
AdBarURL()
ShowAdBar()
MinPollingInterval()
GotPollingInterval()
LastPolledTime()

Enumeration Values

ConnectionType Values

IAF_CT_IE_DEFAULT

Use IE connection setting.

IAF_CT_DIALER

Connect using 3rd party dialer.

IAF_CT_DIALUP

Connect using dial-up account.

IAF_CT_LAN

Connect using local network.

AuthMethod Values

IAF_AM_NONE

SMTP server does not require authentication.

IAF_AM_SPA

Logon to SMTP server using name and Secure Password Authentication (SPA).

IAF_AM_USE_INCOMING

Logon to SMTP server using incoming mail server settings.

IAF_AM_PLAIN

Logon to SMTP server using name and plaintext password.

PostingFormat Values

IAF_PF_USE_OPTIONS

Use news sending format defined in program options.

IAF_PF_PLAIN

Ignore news sending format defined in program options and post using plain text.

IAF_PF_HTML

Ignore news sending format defined in program options and post using HTML.

AUTHOR

Przemek Czerkas, <pczerkas at gmail.com>

SUPPORT

You can find documentation for this module with the perldoc command.

    perldoc Win32::Outlook::IAF

You can also look for information at:

BUGS

Please report any bugs or feature requests to bug-win32-outlook-iaf at rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Win32-Outlook-IAF. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

COPYRIGHT & LICENSE

Copyright 2007 Przemek Czerkas, all rights reserved.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.