IMAP

From MozillaZine Knowledge Base
Revision as of 06:36, 23 July 2009 by Tanstaafl (talk | contribs) (Mozilla documentation - Better Faster IMAP Plan)
Jump to navigationJump to search
This article was written for Thunderbird but also applies to Mozilla Suite / SeaMonkey (though some menu sequences may differ).

IMAP (Internet Message Access Protocol) is a network protocol used to access e-mail messages while they are still stored on the server. It supports a client server view of the world. IMAP allows a user to access messages stored in remote folders as if it was a local folder. This includes copying, moving, reading, and deleting them.

Most users are more familiar with POP (Post Office Protocol), which supports a download-centric view of the world. i.e. you read a message by downloading it from the servers inbox folder, rather than remotely viewing it wherever its stored. IMAP is a newer and more powerful protocol. However, many ISPs prefer to support POP instead because most users are used to it, and they can provide a smaller mailbox (since users will be downloading messages, not accessing them while stored on the server).

Thunderbird, Mozilla Suite and SeaMonkey support IMAP accounts. Some of the main features are:

  • You can copy or move messages and/or folders between local and remote folders at will.
  • You can automatically check for new mail in any folder.
  • You can control which folders are visible. You "subscribe" a folder to make it visible, unless its subscribed by default or you disable "Show only subscribed folders". With Thunderbird you right click on a remote folder and select "subscribe" to get to the dialog box that lets you specify which folders should be subscribed.
  • You can use it from multiple email clients at the same time. The closest equivalent to this feature with POP is to configure "leave messages on server". However, that only lets you access the inbox.
  • Its very usefull for roaming users since the messages are not stored on whatever PC you're using. The main limitation in accessing your messages from another PC is that most email providers don't provide a way to share address books. There are several extensions that support that.
  • It supports public folders, which can be used to share selected folders with other IMAP users. Typically you'd have to use a webmail command to manage which users can access that folder (by setting the appropriate ACL). This is optional functionality that many commercial IMAP email providers don't support.
  • By default IMAP only downloads the message headers to the hard disk. It does not create a mbox file like POP accounts have. This means that if you open the message again, unless its still cached in memory, it will be fetched from the IMAP server again. Thunderbird supports preferences you can set to avoid it fetching attachments until you open them.
  • When you delete a IMAP message you're really just setting a message flag. Because of this Thunderbird lets you specify whether deleted messages should be removed immediately, flagged, or moved to the trash folder. This also means that another email client might let you see the "deleted" message until you compact that folder. Some email clients hide messages deleted by other email clients, some display them normally, and some display them with a line through the headers (to indicate it was deleted by some other client). Its a implementation specific decision.
  • Its easier to migrate to a different email client (if it supports IMAP) since you don't have to move or convert the messages.
  • Supports a offline mode which can be used to keep a local synchronized copy of a remote folder. A change to either folder effects the other folder, the next time you synchronize. Some users may find it easier to use a message filter to automatically make a copy of a new message instead, if they're only concerned with the inbox.

Many IMAP email providers provide additional functionality such as server side filtering, the ability to automatically fetch and merge email from several external POP accounts (or hotmail) into your IMAP mailbox, aliases, plus or subdomain addressing (which are usefull for creating email addresses on the fly to help deal with potential spam), and run server based tools such as SpamAssassin (which adds headers useful for spam filtering).

Most free IMAP accounts have small mailboxes. AIM (AOL) provides a 2GB mailbox, though its features are non-standard. Gmail has a 7GB mailbox, with some quirks. GMX has a 5GB mailbox, with standard features. Yahoo might eventually provide free IMAP accounts that any email client can use but its currently usable only from Zimbra email clients and cell-phones. Outlook/Outlook Express, Thunderbird/Mozilla Suite and Mulberry are considered the email clients with the best IMAP support.

IMAP is mainly used for mail messages but its possible to use it for other types of storage. For example, one email provider also lets you store files in remote folders and configure web access to them. It essentially adds a WebDav server that accesses the files in the remote folders. You could use this to offer a home page for example.

Thunderbird specific features

  • A saved search folder for a IMAP account supports both online and offline searching. However, the name is misleading - it basically lets you create a virtual folder. "Online searching" just means that the virtual folder is updated every time you open it. IMAP accounts don't support a global inbox but you could use a saved search to emulate one.
  • Offline folders typically are synchronized when you switch to working offline. Thunderbird also supports a option to automatically download messages for offline use whenever you open a folder or it detects new mail.

Push support

"Push e-mail" means that when a message is delivered to the mailbox you want to get immediately notified of it. Thunderbird provides that if your IMAP server supports the optional IDLE command. The IDLE command eliminates the need for a e-mail client to poll for new mail - the mail server automatically notifies the e-mail client whenever there is new mail. "Push support" is sometimes mis-interpreted as IDLE support but it is actually proprietary Push-IMAP enhancements for mobile devices such as cell phones developed by Oracle. It can use IDLE, SMS or WAP Push to provide the notification.

The IETF has defined a standard called the Lemonade Profile that is meant to replace Push-IMAP. It includes other features such as the ability to forward a message without downloading it and the ability to quickly re-sync a connection. The Lemonade for Mobiles web site has more information on what e-mail clients and servers support Push e-mail and/or Lemonade. While Lemonade is mainly thought of for cell-phones it is also useful for laptops on trains and planes, and PC's using satellite links. Unfortunately it wasn't even considered for Thunderbird 3.

See also

External links

Generic

Name space

Mozilla documentation

Lemonade

New functionality being developed