r12 - 21 Jan 2004 - 11:45:00 - MimiYinYou are here: OSAF >  Projects Web  >  DevelopmentHome > ServicesWorkingGroup > EmailService > AllPossibleMailFeatures > MailConfiguration

Possible Email Configuration Features

This area is for describing every single feature that any email program might ever possibly have relating to setting up an email client. The OSAF staff will eventually use this to determine what features should go in which (if any) release.

Account Management

Users might want to use an email client to check email from multiple accounts. The user might want to specify the following things differently for different accounts or personas:

  • Persona characteristics
    • "Real name" (e.g. "Kaitlin Duck Sherwood" or "Ducky Sherwood")
    • Return address
    • Default signature
    • Default style sheet
  • Retrieving messages
    • Server name
    • Type of account {POP3/IMAP/Exchange/Yahoo/Hotmail/AOL/RSS} (note that AOL is next-to-impossible)
    • Email ID (e.g. "ducky")
    • Storage of messages: {leave on server, delete immediately, delete after specified days}
    • Reorder messages to download smaller messages first {yes/no}
    • Do not download messages larger than size
    • Download partial message or message headers and display before downloading bodies (for users on slow connections)
      • Pre-fetch the body of messages in background
    • Use SSL {TLS, alternate port} for download {always, never, when possible}
    • Authentication type {IMAP: Password, NTLM/SPA, DIGEST-MD5, CRAM-MD5; POP: Kerberos, APOP}
    • Remember password {yes/no}
    • Retrieve mail from server (poll):
      • never
      • manually (e.g., a "check mail" action)
      • at startup and a {specifiable} interval thereafter
    • Filters (or allow filter rule to be able to identify persona)
    • How to notify user
    • Select different notifications based on location (e.g. don't want "work" alerts when "at home" or vice versa)
    • Specify disk space quotas (to enable e.g. intelligent bounce messages if someone is over quota)
    • Proxy info {yes/no}
    • Select which folders to make local copies of (IMAP and other server-based email protocols only)

  • Sending messages
    • Select SMTP servers
    • Auto-select SMTP server {yes/no}
    • Use secure connection {always/never/when possible}
    • Server authentication type {NTLM/SPA,DIGEST-MD5,CRAM-MD5,Login,POP Before SMTP}
    • Remember password {yes/no} (probably should be same as "Remember password" under retrieving messages)
    • Always prompt for attachment {yes/no}

Global Preferences

This section lists all the possible things that users might want to set "globally" or as the default behavior:
  • How to notify user
  • Inline images default (note that "inline" means that the image is displayed in-line; such an image may be local (in the message itself) or remote (accessed over a network))
    • always disable completely
    • always enable
    • enable for whitelist (e.g., "is in address book")
    • enable local images only
    • enable local images, remote images enabled for whitelist
    • show placeholder, click on placeholder to display image inline {on/off}
  • HTML display enable/disable default
  • Enable/disable vacation message
    • for everybody
    • for whitelist
  • Enable/disable sending Chandler attributes with responses
  • Enable/disable stripping Chandler attributes from incoming messages
  • Acknowledge return receipts
    • automatically for everybody
    • automatically for whitelist
    • when prompted for everybody
    • when prompted for whitelist
    • never
    • automatically determined on a per-user basis (which means an extra field in the Contact)
  • Request return receipts (same options as for acknowledging as above)
  • Display/suppress specified message headers when displaying
  • Display/suppress specified message headers when replying/fowarding
  • Enable/disable responses inheriting attributes from original message
  • Turn on/off pre-loaded filters (e.g., junk filters)
  • Select SMTP server based on user's current location (persona)
  • Select which helper applications to use for which MIME-types
  • Enable/disable dangerous display features
    • iframe
    • "web bugs" -- externally loaded images (see inline images above)
    • scripts (Javascript, ActiveX)
    • redirection
    • attachments from unrecognized correspondents
    • executable/infectable attachments (e.g. exe, pif, bat, etc.)
  • Select which headers to appear when replying/forwarding
  • Delete from server after number days
  • Wait a specified "cooling off" period before actually sending a message
  • Set default for "attachment checkbox" (see Possible Message Composition Features)

Email Import

This is a list of all the possible data formats that any email program might want to import:
  • mbox (Eudora, with toc; Netscape, with metadata)
  • MAPI (Microsoft)
  • Exchange
  • Palm Desktop

Folder Preferences

  • Look for new messages in specified folders
  • Set access control for folder

Related preferences

See IdentityIssues for non-Email-specific requirements including
  • LDAP support
  • AutoConfiguration (ACAP) support

External resources

Web sites:
  • http://asg.web.cmu.edu/acap/
  • NewsGator Outlook RSS plug-in

Mailing list messages:

  • Mail: parsing bounce messages by Bruce Dykes
  • Wayne Pierce asks personas to switch between behind-firewall and not-behind-firewall modes
  • Gary Yuen suggests different notifcations for home and work
  • RayRyan asks for Chandler to switch SMTP servers based on where he is.
  • Feature request: Custom Application registration by BruceDykes?
  • DavidRLambert? requests disabling various display features
  • CharlieJoynt? requests control over which headers get included in replies and forwards
  • CharlesWilson? requests control over which headers get displayed to the user
  • Feature request: A "no, wait!" capability by RayRyan


  • AlCho
  • ChaoLam
  • DuckySherwood

Instead of having special cases for POP and IMAP, there should be a more generic model that also covers other mail-retrieval protocols and other input channels like NNTP. This model should be broken out onto a separate page.

It should start out treating the local copy of a message as a cache of a remote original (a mirror), yet be able to break the mirror and have the local copy become the master. This would allow for both the POP model (where basically the ISP expects you to download the message and delete the original) and the IMAP model (where messages stay on the server indefinitely) as well as the NNTP model (which is really similar to POP). While mirrored, a local delete is propogated to a remote delete and a remote delete is propagated to a local delete (which handles the case of a multi-drop mailbox and would cause spam to be deleted immediately). After the mirror is broken, it should allow the original to stay on the remote for a settable period (approximately long enough for it to be backed up); this period could vary from immediate to a month or so.

The model should also integrate with off-line processing by being able to queue up deletes (and other transactions) and post them to the remote in a bunch. Even when on-line, deletes should be batched for better performance: for example, don't delete messages until the next poll cycle.

Note that in the somewhat confused paragraphs above, there are some conflicting goals. For example, some remote messages (spam) can be deleted immediately since there is no requirement to back them up, while some messages should have a grace period even when they are deleted on the local to allow for an undelete. Or maybe not; it's probable that this whole thing should be discussed.

-- GregNoel - 03 Mar 2003

Rearranged, congealed, agglomerated....

Removed "Read-only ("notification") as well as read-write mailboxes" because I don't understand it. Anyone want to clue me in?

-- DuckySherwood - 04 Mar 2003

For example, a multi-drop mailbox containing current announcements that is shared by a group of people; only a few people can update it, but everyone can connect to it. My department had one of these; everyone was expected to check it at least daily so that they were up-to-date about, e.g., when the company picnic was scheduled. Yes, a netnews server would have been a better match to the requirement, but everyone already used mail; news would have been another application that everyone would have to learn. (This probably should be described as a scenario...)

-- GregNoel - 05 Mar 2003

Ah, okay -- I put that under Possible Browsing Features.

-- DuckySherwood - 05 Mar 2003

I'm at a loss to understand the relationship between an identity, a persona, and an account. There can be multiple personas per account (mail from a mailing list should use the "Greg the Guru" persona, mail from my niece should use the "Uncle Gregie-poo" persona). There can be multiple accounts per persona (mail to me at Jungle.SourceForge should also use the "Greg the Guru" persona). I'm pretty sure that an identity is intended to map more-or-less to a person, so there can be multiple personas and multiple accounts for a given identity, yet an account can also have multiple identities (e.g., a tech support account could be read and processed by several different people). (I'm not sure if a persona can have multiple identities.)

Is there anywhere that these concepts are defined and the relationship between them clarified? As it stands, some of the things in a page like this cannot be accurately placed.

-- GregNoel - 05 Mar 2003

My understanding of how OSAF uses the terms is that identity implies authentication. I'll see about getting a better description into the ChandlerGlossary.

-- DuckySherwood - 05 Mar 2003

This can't be the whole story, since an account is the focus for authentication; that's why it has all those options for passwords and certificates, after all. This has always been a confusing area; it may be that the terminology (and its implicit semantics) is leading us astray.

-- GregNoel - 05 Mar 2003

Added folder settings.

-- DuckySherwood - 25 Mar 2003

Edit | WYSIWYG | Attach | Printable | Raw View | Backlinks: Web, All Webs | History: r12 < r11 < r10 < r9 < r8 | More topic actions
Open Source Applications Foundation
Except where otherwise noted, this site and its content are licensed by OSAF under an Creative Commons License, Attribution Only 3.0.
See list of page contributors for attributions.