Thunderbird:Autoconfiguration:ConfigFileFormat

From MozillaWiki
Revision as of 00:09, 18 March 2008 by BenB (talk | contribs) (Moving XML proposal from main page)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Config file format

It should be XML, with a clearly defined format, to be stable and usable by other mail clients, too.

The current RDF format seems good in structure, but needs to be cleaned up to remove the RDF bits, Mozilla specifics etc.. It would be processed as normal XML, e.g. using E4X in Thunderbird.

<?xml version="1.0"?>
<clientConfig
    xmlns="http://mailconfig.mozillamessaging.com/fileformat/namespace/2008">

    <emailProvider id="googlemail.com">
      <domain>gmail.com</domain>
      <domain>googlemail.com</domain>

      <displayName>Google Mail</displayName>
      <displayShortName>GMail</displayShortName>

      <incomingServer type="pop3">
         <hostname>pop.googlemail.com</hostname>
         <port>995</port>
         <socketType>TLS</socketType>
           <!-- unexcrypted, SSL, TLS
                "if available" options considered harmful -->
         <username>%EMAILFIRSTPART%</username>
         <authentication>DIGEST-MD5</authentication>
            <!-- anonymous,
                 plain,
                 login,
                 CRAM-MD5,
                 DIGEST-MD5,
                 KerberosV4,
                 GSSAPI (Kerberos v5),
            -->
         <displayName>Google Mail</displayName> <!-- needed? -->
         <pop3>
            <leaveMessagesOnServer>true</leaveMessagesOnServer>
            <deleteMailLeftOnServer>false</deleteMailLeftOnServer>
            <authentication>plain</authentication> <!-- todo list -->
         </pop3>
         <!-- remove the following and leave to client/user? -->
         <loginAtStartUp>true</loginAtStartUp>
         <downloadDuringNewMailCheck>true</downloadDuringNewMailCheck>
         <rememberPassword>true</rememberPassword>
      </incomingServer>

      <outgoingServer type="smtp">
         <hostname>smtp.googlemail.com</hostname>
         <port>587</port>
         <socketType>TLS</socketType> <!-- see above -->
         <username>%EMAILFIRSTPART%</username> <!-- if smtp-auth -->
         <authentication>smtp-auth</authentication>
            <!-- none (server grants access based on IP address),
                 smtp-auth (RFC 2554, 4954),
                 smtp-after-pop (authenticate to incoming mail server first
                 before contacting the smtp server)-->
         <displayName>Google Mail</displayName> <!-- needed? -->
         <addThisServer>true</addThisServer>
         <useGlobalPreferredServer>true</useGlobalPreferredServer>
      </outgoingServer>

      <identity>
         <!-- needed? -->
         <!-- We don't want Verizon setting "Organization: Verizon"
              for its customers -->
      </identity>

      <!-- Will not be used with this proposal: -->
      <sampleEmail>example@googlemail.com</sampleEmail>
      <sampleUserName>example</sampleUserName>
      <usernameDescription>Google Mail Username</usernameDescription>

    <emailProvider>

    <clientConfigUpdate url="https://www.googlemail.com/config/mozilla.xml" />
</clientConfig>

Placeholders:

  • %EMAILADDRESS% (full email address of the user, usually entered by the user)
  • %EMAILFIRSTPART% (email address, part before @)
  • %EMAILDOMAIN% (email address, part after @)
  • %REALNAME% (needed?)

TODO:

  • IMAP
  • All settings and enum values