<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2008 The Android Open Source Project

     Licensed under the Apache License, Version 2.0 (the "License");
     you may not use this file except in compliance with the License.
     You may obtain a copy of the License at

          http://www.apache.org/licenses/LICENSE-2.0

     Unless required by applicable law or agreed to in writing, software
     distributed under the License is distributed on an "AS IS" BASIS,
     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     See the License for the specific language governing permissions and
     limitations under the License.
-->

    <!--
        This file contains configuration data for commonly-used email providers.

        ==== CONTENT GUIDELINES ====

        This file should only be used for email providers that are considered "universal"
        and are appropriate for *all* android platform devices.  These entries must be accessible
        from all networks.  It should be reasonable for any user to obtain an account on these
        networks, and test accounts must be easily obtainable.  No entries should be added
        that are device, product, or carrier-specific.

        Entries that are device, product or carrier-specific should be added as overlays
        in the appropriate providers_product.xml file.

        ==== FORMAT OF ENTRIES ====

        This file is used to specify providers that we know default settings for
        so that the user can set up their account by simply entering their email
        address and password.

        When a user starts this process, the email address is parsed, the domain
        broken out and used to search this file for a provider. If one is found the
        provider's settings are used to attempt to connect to the account.

        At this time, the id and label attributes are not used.  However, please include them
        if you make edits to this file.  id must also be completely unique.  label will be shown
        to the user when there are multiple options provided for a single domain (not currently
        supported).

        A provider contains the settings for setting up an email account
        that ends with the given domain. Domains should be unique within
        this file. Each provider should have at least one incoming section and
        one outgoing section. If more than one is specified only the first
        will be used.

        Valid incoming uri schemes are:
            imap        IMAP with no transport security.
            imap+tls+   IMAP with required TLS transport security.
                            If TLS is not available the connection fails.
            imap+ssl+   IMAP with required SSL transport security.
                            If SSL is not available the connection fails.

            pop3        POP3 with no transport security.
            pop3+tls+   POP3 with required TLS transport security.
                            If TLS is not available the connection fails.
            pop3+ssl+   POP3 with required SSL transport security.
                            If SSL is not available the connection fails.

        Valid outgoing uri schemes are:
            smtp        SMTP with no transport security.
            smtp+tls+   SMTP with required TLS transport security.
                            If TLS is not available the connection fails.
            smtp+ssl+   SMTP with required SSL transport security.
                            If SSL is not available the connection fails.

        To the above schemes you may also add "trustallcerts" to indicate that,
        although link encryption is still required, "non-trusted" certificates may
        will be excepted.  For example, "imap+ssl+trustallcerts" or
        "smtp+tls+trustallcerts".  This should only used when necessary, as it
        could allow a spoofed server to intercept password and mail.

        The URIs must contain all of the information to make a connection,
        including a port if the service uses a non-default port.  The default
        ports are as follows:
            imap        143     pop3        110     smtp        587
            imap+tls+   143     pop3+tls+   110     smtp+tls+   587
            imap+ssl+   993     pop3+ssl+   995     smtp+ssl+   465

        ==== DOMAIN PATTERNS ====

        Often times a hosting company will have multiple mail server addresses. Often
        times used for load balancing or based upon geographical boundaries. In these
        cases, it would be unwieldy to maintain a list of 2-dozen providers that all
        point to essentially the same mail server. To alleviate this, domains may
        contain pattern matching characters that can be used to match user entered
        domains without knowing the exact domain.

        An asterisk (*) is used to match that part of a domain name that is demarcated
        by a period (dot); no other characters may appear on either side of an asterisk.
        Therefore, foo.*.com and *.mail.com are valid, whereas a*.com and foo.c* are not.
        An asterisk is also not greedy; it only matches a single part of a domain name;
        therefore, foo.bar.bletch is NOT matched by foo.*; it does, however, match
        foo.*.* or foo.bar.*.

        The alternate is the wild card character - a '?'. The wild card character
        matches any single character. This is very useful when the number of characters
        is known (such as the country code in the domain).

        ==== TEMPLATES ====

        Both the username and uri attributes (for both incoming and outgoing elements)
        are templates.

        The username attribute is used to supply a template for the username
        that will be presented to the server. This username is built from a
        set of variables that are substituted with parts of the user specified
        email address.

        Valid substitution values for all templates are:
            $email - the email address the user entered
            $user - the string before the @ sign in the email address the user entered
            $domain - the string after the @ sign in the email address the user entered

        The username attribute MUST be specified for the incoming element, so the POP3 or IMAP
        server can identify the mailbox to be opened.

        The username attribute MAY be the empty string for the outgoing element, but only if the
        SMTP server supports anonymous transmission (most don't).
    -->

<providers>

    <!-- Gmail variants -->
    <provider id="gmail" label="Gmail" domain="gmail.com">
        <incoming uri="imap+ssl+://imap.gmail.com" username="$email" />
        <outgoing uri="smtp+ssl+://smtp.gmail.com" username="$email" />
    </provider>
    <provider id="googlemail" label="Google Mail" domain="googlemail.com">
        <incoming uri="imap+ssl+://imap.googlemail.com" username="$email" />
        <outgoing uri="smtp+ssl+://smtp.googlemail.com" username="$email" />
    </provider>
    <provider id="google" label="Google" domain="google.com">
        <incoming uri="imap+ssl+://imap.gmail.com" username="$email" />
        <outgoing uri="smtp+ssl+://smtp.gmail.com" username="$email" />
    </provider>
    <provider id="android" label="Android" domain="android.com">
        <incoming uri="imap+ssl+://imap.gmail.com" username="$email" />
        <outgoing uri="smtp+ssl+://smtp.gmail.com" username="$email" />
    </provider>

    <!-- USA -->

    <!-- AOL and variants -->
    <!-- Note, AOL appears to support SSL on both sides, as well -->
    <provider id="aim" label="AIM" domain="aim.com">
        <incoming uri="imap+ssl+://imap.aim.com" label="IMAP" username="$email" />
        <outgoing uri="smtp+ssl+://smtp.aim.com" username="$email" />
    </provider>
    <!-- Note, AOL appears to support SSL on both sides, as well -->
    <provider id="aol" label="AOL" domain="aol.com">
        <incoming uri="imap+ssl+://imap.aol.com" label="IMAP" username="$email" />
        <outgoing uri="smtp+ssl+://smtp.aol.com" username="$email" />
    </provider>

    <!-- MobileMe and variants -->
    <provider id="dotmac" label=".Mac" domain="mac.com">
        <incoming uri="imap+ssl+://mail.mac.com" username="$email" />
        <outgoing uri="smtp+tls+://smtp.mac.com" username="$email" />
    </provider>
    <!-- Note: Mac Mail.app sets IMAP to mail.mac.com, but it's the same server -->
    <provider id="mobileme" label="MobileMe" domain="me.com">
        <incoming uri="imap+ssl+://mail.me.com" username="$email" />
        <outgoing uri="smtp+tls+://smtp.me.com" username="$email" />
    </provider>

    <!-- Hotmail and variants.  NOTE: These are handled by exchange if available, else POP3. -->
    <!-- EXCHANGE-REMOVE-SECTION-START -->
    <provider id="live1" label="Windows Live Hotmail Plus" domain="live.*">
        <incoming uri="eas+ssl+://m.hotmail.com"  username="$email" />
        <outgoing uri="eas+ssl+://m.hotmail.com" username="$email" />
    </provider>
    <provider id="live2" label="Windows Live Hotmail Plus" domain="live.*.*">
        <incoming uri="eas+ssl+://m.hotmail.com"  username="$email" />
        <outgoing uri="eas+ssl+://m.hotmail.com" username="$email" />
    </provider>
    <provider id="live3" label="Windows Live Hotmail Plus" domain="*.live.*">
        <incoming uri="eas+ssl+://m.hotmail.com"  username="$email" />
        <outgoing uri="eas+ssl+://m.hotmail.com" username="$email" />
    </provider>
    <provider id="hotmail1" label="Windows Live Hotmail Plus" domain="hotmail.*">
        <incoming uri="eas+ssl+://m.hotmail.com"  username="$email" />
        <outgoing uri="eas+ssl+://m.hotmail.com" username="$email" />
    </provider>
    <provider id="hotmail2" label="Windows Live Hotmail Plus" domain="hotmail.*.*">
        <incoming uri="eas+ssl+://m.hotmail.com"  username="$email" />
        <outgoing uri="eas+ssl+://m.hotmail.com" username="$email" />
    </provider>
    <provider id="hotmail3" label="Windows Live Hotmail Plus" domain="livemail.*">
        <incoming uri="eas+ssl+://m.hotmail.com"  username="$email" />
        <outgoing uri="eas+ssl+://m.hotmail.com" username="$email" />
    </provider>
    <provider id="hotmail4" label="Windows Live Hotmail Plus" domain="livemail.*.*">
        <incoming uri="eas+ssl+://m.hotmail.com"  username="$email" />
        <outgoing uri="eas+ssl+://m.hotmail.com" username="$email" />
    </provider>
    <provider id="msn" label="Windows Live Hotmail Plus" domain="msn.*">
        <incoming uri="eas+ssl+://m.hotmail.com"  username="$email" />
        <outgoing uri="eas+ssl+://m.hotmail.com" username="$email" />
    </provider>
    <provider id="msnhotmail" label="Windows Live Hotmail Plus" domain="msnhotmail.com">
        <incoming uri="eas+ssl+://m.hotmail.com"  username="$email" />
        <outgoing uri="eas+ssl+://m.hotmail.com" username="$email" />
    </provider>
    <!-- EXCHANGE-REMOVE-SECTION-END -->
    <provider id="live" label="Windows Live Hotmail Plus" domain="live.com"
            note="@string/provider_note_live">
        <incoming uri="pop3+ssl+://pop3.live.com"  username="$email" />
        <outgoing uri="smtp+tls+://smtp.live.com" username="$email" />
    </provider>
    <provider id="hotmail" label="Windows Live Hotmail Plus" domain="hotmail.com"
            note="@string/provider_note_live">
        <incoming uri="pop3+ssl+://pop3.live.com"  username="$email" />
        <outgoing uri="smtp+tls+://smtp.live.com" username="$email" />
    </provider>
    <provider id="msn" label="Windows Live Hotmail Plus" domain="msn.com"
            note="@string/provider_note_live">
        <incoming uri="pop3+ssl+://pop3.live.com"  username="$email" />
        <outgoing uri="smtp+tls+://smtp.live.com" username="$email" />
    </provider>

    <!-- Yahoo! Mail variants -->
    <provider id="yahoo" label="Yahoo!" domain="yahoo.com">
        <incoming uri="imap+ssl+://android.imap.mail.yahoo.com" username="$email" />
        <outgoing uri="smtp+ssl+://android.smtp.mail.yahoo.com" username="$email" />
    </provider>
    <provider id="rocketmail" label="Yahoo! RocketMail" domain="rocketmail.com">
        <incoming uri="imap+ssl+://android.imap.mail.yahoo.com" username="$email" />
        <outgoing uri="smtp+ssl+://android.smtp.mail.yahoo.com" username="$email" />
    </provider>
    <provider id="ymail" label="Yahoo!" domain="ymail.com">
        <incoming uri="imap+ssl+://android.imap.mail.yahoo.com" username="$email" />
        <outgoing uri="smtp+ssl+://android.smtp.mail.yahoo.com" username="$email" />
    </provider>
    <provider id="bellsouth" label="AT&amp;T Bell South" domain="bellsouth.net">
        <incoming uri="imap+ssl+://android.imap.mail.yahoo.com" username="$email" />
        <outgoing uri="smtp+ssl+://android.smtp.mail.yahoo.com" username="$email" />
    </provider>
    <provider id="att" label="AT&amp;T" domain="att.net">
        <incoming uri="imap+ssl+://android.imap.mail.yahoo.com" username="$email" />
        <outgoing uri="smtp+ssl+://android.smtp.mail.yahoo.com" username="$email" />
    </provider>
    <provider id="pacbell" label="AT&amp;T Pacific Bell" domain="pacbell.net">
        <incoming uri="imap+ssl+://android.imap.mail.yahoo.com" username="$email" />
        <outgoing uri="smtp+ssl+://android.smtp.mail.yahoo.com" username="$email" />
    </provider>
    <provider id="sbcglobal" label="AT&amp;T SBC Global" domain="sbcglobal.net">
        <incoming uri="imap+ssl+://android.imap.mail.yahoo.com" username="$email" />
        <outgoing uri="smtp+ssl+://android.smtp.mail.yahoo.com" username="$email" />
    </provider>
    <provider id="swbell" label="AT&amp;T Southwest Bell" domain="swbell.net">
        <incoming uri="imap+ssl+://android.imap.mail.yahoo.com" username="$email" />
        <outgoing uri="smtp+ssl+://android.smtp.mail.yahoo.com" username="$email" />
    </provider>
    <provider id="btinternet" label="BT Internet" domain="btinternet.com">
        <incoming uri="imap+ssl+://android.imap.mail.yahoo.com" username="$email" />
        <outgoing uri="smtp+ssl+://android.smtp.mail.yahoo.com" username="$email" />
    </provider>
    <provider id="btopenworld" label="BT Open World" domain="btopenworld.com">
        <incoming uri="imap+ssl+://android.imap.mail.yahoo.com" username="$email" />
        <outgoing uri="smtp+ssl+://android.smtp.mail.yahoo.com" username="$email" />
    </provider>
    <provider id="talk21" label="BT Talk 21" domain="talk21.com">
        <incoming uri="imap+ssl+://android.imap.mail.yahoo.com" username="$email" />
        <outgoing uri="smtp+ssl+://android.smtp.mail.yahoo.com" username="$email" />
    </provider>
    <provider id="rogers" label="Rogers" domain="rogers.com">
        <incoming uri="imap+ssl+://android.imap.mail.yahoo.com" username="$email" />
        <outgoing uri="smtp+ssl+://android.smtp.mail.yahoo.com" username="$email" />
    </provider>
    <provider id="rogers-nl" label="Rogers" domain="nl.rogers.com">
        <incoming uri="imap+ssl+://android.imap.mail.yahoo.com" username="$email" />
        <outgoing uri="smtp+ssl+://android.smtp.mail.yahoo.com" username="$email" />
    </provider>

    <!-- Roadrunner variants -->
    <provider id="rr-roadrunner" label="RoadRunner" domain="roadrunner.com">
        <incoming uri="pop3://pop-server.roadrunner.com" username="$email" />
        <outgoing uri="smtp://mobile-smtp.roadrunner.com" username="$email" />
    </provider>
    <provider id="rr-global" label="RoadRunner" domain="*.rr.com">
        <incoming uri="pop3://pop-server.$domain" username="$email" />
        <outgoing uri="smtp://mobile-smtp.roadrunner.com" username="$email" />
    </provider>

    <!-- USA (other)-->
    <provider id="comcast" label="Comcast" domain="comcast.net">
        <incoming uri="pop3+ssl+://mail.comcast.net" username="$user" />
        <outgoing uri="smtp+ssl+://smtp.comcast.net" username="$user" />
    </provider>
    <provider id="compuserve" label="CompuServe" domain="cs.com">
        <incoming uri="imap://imap.cs.com" username="$user" />
        <outgoing uri="smtp://smtp.cs.com" username="$user" />
    </provider>
    <provider id="cox" label="Cox" domain="cox.net">
        <incoming uri="pop3+ssl+://pop.east.cox.net" username="$user" />
        <outgoing uri="smtp+ssl+://smtp.east.cox.net" username="$user" />
    </provider>
    <provider id="earthlink" label="Earthlink" domain="earthlink.net">
        <incoming uri="pop3://pop.earthlink.net" username="$email" />
        <outgoing uri="smtp://smtpauth.earthlink.net:587" username="$email" />
    </provider>
    <!-- Tested with imap/ssl (no connection) and imap/tls (unsupported)-->
    <!-- Tested with smtp/ssl (no connection) and smtp/tls (unsupported)-->
    <provider id="juno" label="Juno" domain="juno.com">
        <incoming uri="pop3://pop.juno.com" username="$user" />
        <outgoing uri="smtp://smtp.juno.com" username="$user" />
    </provider>
    <provider id="netzero" label="NetZero" domain="netzero.com">
        <incoming uri="pop3://pop.netzero.com" username="$user" />
        <outgoing uri="smtp://smtp.netzero.com" username="$user" />
    </provider>
    <provider id="verizon" label="Verizon" domain="verizon.net">
        <incoming uri="pop3://incoming.verizon.net" username="$user" />
        <outgoing uri="smtp://outgoing.verizon.net" username="$user" />
    </provider>

    <!-- UK -->
    <provider id="aol-uk" label="AOL" domain="aol.co.uk">
        <incoming uri="imap+ssl+://imap.uk.aol.com" label="IMAP" username="$user" />
        <outgoing uri="smtp+ssl+://smtp.uk.aol.com" username="$user" />
    </provider>

    <!-- Germany -->
    <provider id="freenet" label="Freenet" domain="freenet.de">
        <incoming uri="pop3://mx.freenet.de" username="$user" />
        <outgoing uri="smtp+ssl://mx.freenet.de" username="$email" />
    </provider>
    <provider id="gmx" label="GMX" domain="gmx.de">
        <incoming uri="pop3://pop.gmx.net" username="$email" />
        <outgoing uri="smtp://mail.gmx.net" username="$email" />
    </provider>
    <provider id="T-Online" label="T-Online" domain="t-online.de"
              note="@string/provider_note_t_online">
        <incoming uri="pop3://popmail.t-online.de" username="$email" />
        <outgoing uri="smtp://smtpmail.t-online.de" username="$email" />
    </provider>
    <provider id="web.de" label="Web.de" domain="web.de">
        <incoming uri="pop3://pop3.web.de" username="$user" />
        <outgoing uri="smtp://smtp.web.de" username="$user" />
    </provider>

    <!-- Netherlands -->
    <!-- TODO:  For all of these, please confirm POP3, and switch to IMAP if supported -->
    <!-- TODO:  username="" in incoming element is broken - will not work -->
    <!-- Disabled until username="" is resolved
    <provider id="hetnet" label="Het Net" domain="hetnet.nl">
        <incoming uri="pop3://pop.hetnet.nl" username="" />
        <outgoing uri="smtp://mailhost.hetnet.nl" username="" />
    </provider>
    -->
    <!-- Disabled until test accounts provided
    <provider id="planet inet" label="Planet Internet" domain="planet.nl">
        <incoming uri="pop3://pop.planet.nl" username="$user" />
        <outgoing uri="smtp://mail.planet.nl" username="" />
    </provider>
    -->
    <!-- TODO:  username="" in incoming element is broken - will not work -->
    <!-- Disabled until username="" is resolved
    <provider id="tiscali" label="Tiscali" domain="tiscali.nl">
        <incoming uri="pop3://pop3.tiscali.nl" username="" />
        <outgoing uri="smtp://smtp.tiscali.nl" username="" />
    </provider>
    -->
    <!-- Disabled until test accounts provided
    <provider id="wanadoo" label="Wanadoo" domain="wanadoo.nl">
        <incoming uri="pop3://pop.wanadoo.nl" username="$user" />
        <outgoing uri="smtp://smtp.wanadoo.nl" username="$user" />
    </provider>
     -->

    <!-- Poland -->
    <provider id="onet" label="Onet.pl" domain="poczta.onet.pl">
        <incoming uri="pop3://pop3.poczta.onet.pl" username="$email" />
        <outgoing uri="smtp://smtp.poczta.onet.pl" username="$email" />
    </provider>
    <provider id="wirtualna" label="Wirtualna Polska" domain="wp.pl">
        <incoming uri="pop3://pop3.wp.pl" username="$user" />
        <outgoing uri="smtp://smtp.wp.pl" username="$user" />
    </provider>
    <provider id="interia" label="Interia" domain="interia.pl">
        <incoming uri="pop3+ssl://poczta.interia.pl" username="$user" />
        <outgoing uri="smtp+ssl://poczta.interia.pl" username="$user" />
    </provider>
    <provider id="o2" label="O2" domain="o2.pl">
        <incoming uri="pop3+ssl://poczta.o2.pl" username="$user" />
        <outgoing uri="smtp+ssl://poczta.o2.pl" username="$user" />
    </provider>

    <!-- Korea -->
    <provider id="daum" label="Daum Hanmail" domain="hanmail.net">
        <incoming uri="imap+ssl+://imap.hanmail.net" username="$user" />
        <outgoing uri="smtp+ssl+://smtp.hanmail.net" username="$user" />
    </provider>
    <provider id="naver" label="NAVER" domain="naver.com">
        <incoming uri="imap+ssl+://imap.naver.com" username="$user" />
        <outgoing uri="smtp+tls+://smtp.naver.com" username="$user" />
    </provider>
    <provider id="paran" label="Paran" domain="paran.com">
        <incoming uri="imap+ssl+://imap.paran.com" username="$email" />
        <outgoing uri="smtp+ssl+://smtp.paran.com" username="$email" />
    </provider>

    <!-- Yahoo! country-specific email domains -->
    <provider id="yahoo-y7" label="Yahoo!7" domain="y7mail.com">
        <incoming uri="imap+ssl+://android.imap.mail.yahoo.com" username="$email" />
        <outgoing uri="smtp+ssl+://android.smtp.mail.yahoo.com" username="$email" />
    </provider>
    <provider id="kimo" label="Yahoo! Taiwan" domain="kimo.com">
        <incoming uri="imap+ssl+://android.imap.mail.yahoo.com" username="$email" />
        <outgoing uri="smtp+ssl+://android.smtp.mail.yahoo.com" username="$email" />
    </provider>
    <!-- Note: Yahoo! Japan's ne.jp domain requires $user rather than the usual $email -->
    <provider id="yahoo-jp-ybb" label="Yahoo! Japan" domain="ybb.ne.jp">
        <incoming uri="imap+ssl+://imap.mail.yahoo.co.jp" username="$user" />
        <outgoing uri="smtp+ssl+://smtp.mail.yahoo.co.jp" username="$user" />
    </provider>
    <!-- Note: Yahoo! Japan's co.jp domain requires $user rather than the usual $email -->
    <provider id="yahoo-jp" label="Yahoo! Japan" domain="yahoo.co.jp">
        <incoming uri="imap+ssl+://imap.mail.yahoo.co.jp" username="$user" />
        <outgoing uri="smtp+ssl+://smtp.mail.yahoo.co.jp" username="$user" />
    </provider>
    <provider id="yahoo-com-XX" label="Country specific Yahoo!" domain="yahoo.com.??">
        <incoming uri="imap+ssl+://android.imap.mail.yahoo.com" username="$email" />
        <outgoing uri="smtp+ssl+://android.smtp.mail.yahoo.com" username="$email" />
    </provider>
    <provider id="yahoo-co-XX" label="Country specific Yahoo!" domain="yahoo.co.??">
        <incoming uri="imap+ssl+://android.imap.mail.yahoo.com" username="$email" />
        <outgoing uri="smtp+ssl+://android.smtp.mail.yahoo.com" username="$email" />
    </provider>
    <provider id="yahoo-XX" label="Country specific Yahoo!" domain="yahoo.??">
        <incoming uri="imap+ssl+://android.imap.mail.yahoo.com" username="$email" />
        <outgoing uri="smtp+ssl+://android.smtp.mail.yahoo.com" username="$email" />
    </provider>
</providers>
