METHODS AND SYSTEMS FOR CONFIGURING AN EMAIL ACCOUNT ON AN EMAIL CLIENT

A technique of configuring an email client application to set up a user's email account on the email client application. In one embodiment, the email client application requests the user to input an email address and a password and based on the email address, the email client application determines the corresponding email server providing the email service. Then, the email client searches stored information regarding the email service or server and automatically sets up an email account based on the stored information.

Skip to: Description  ·  Claims  · Patent History  ·  Patent History
Description
CROSS REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of U.S. Provisional Application No. 60/933,777, filed Jun. 8, 2007, hereby incorporated by reference.

TECHNICAL FIELD

This invention relates to methods and systems for setting up an email account on an email client application.

BACKGROUND

An electronic mail (or email) system provides a way of storing, sending, and receiving messages over electronic communication systems. An email system can be a web-based email system, a client-server email system, or both. A user can have an email account established with an email service, such as one provided by an internet service provider (ISP) or a web-based service provider. The email service is generally provided by way of an email server accessible to a client. The user can access his/her emails through a client-side application.

It has become common for a user to maintain many different email accounts with various email services. For example, a user may maintain an alumni email account with a university email service, an email account with an employer's email service, an email account with a residential ISP, along with an email account with any number of web-based email services. However, rather than learning to use the default email client interface provided by an email service provider, it is frequently more convenient for the user to adopt a single email client application that is feature-rich yet user-friendly and configure that email client application to access their different email services.

Conventionally, the user must first configure the email client application so that the client application can find and connect to the email server providing the email service for which the user has an account. So, the chosen email client application may need to be configured by the user a number of times, once for each subscribed email service and each time presenting the user with the need to input email service configuration information.

In known art, a user needs to provide an email client application with various types of configuration information, such as, the email server's domain name, also referred to as the email service hostname, the email server type indicating the email protocol, the port number, etc. However, a user may not have all of this configuration information available at the time of configuring the email client or perhaps the user is unaware of where such configuration information may be located.

Thus, an easy way of configuring a client-side email application is desirable.

SUMMARY

An aspect of the invention relates to techniques of configuring an email client application to set up a user's email account on the email client application. According to one of the techniques, the email client application requests the user to input an email address, a password. Based on the email address, the email client application determines the corresponding email service. Then, the email client searches stored information regarding the email service and automatically sets up an email account for that email service based on the stored information.

In an embodiment, the stored information provides email service parameters, such as, but not limited to an email service locator (e.g. hostname), email service protocol, email service commercial source identifier, encryption type, port number, authentication type, relay restrictions and email size restrictions. In a further embodiment, the stored information is provided as a local service extension. In an alternative embodiment, the stored information is provided on a remote server and is automatically accessed by the email client application upon receiving a user input of at least an email address. In a particular embodiment, the stored information is provided on a Domain Name System (DNS) server.

In a further embodiment, the email client generates a plurality of permutations of at least the email service hostname and email protocol which are then determined to be valid if attempts to connect to an email server are successful. In a particular embodiment, the email client attempts to connect to an email service identified by the hostname using first Internet Message Access Protocol (IMAP) prior to attempting to connect to the email service identified by the hostname using a Post Office Protocol (POP), such as POP3. Upon receiving a response from a server of the email service server, the account and password may be authenticated.

In another embodiment, an option for the user to select automatic email client application configuration is presented to the user dependent on a prior successful authentication of the email account on the email server. In one such embodiment, the option is provided as a checkbox with the dialog requesting user input of the email address and password. In a further embodiment, display of the option to select automatic email client configuration is dependent on a prior successful authentication of the email account with the email server. The display of the option to select automatic email client configuration may further include display of a commercial name, mark, or logo corresponding to the email service.

In another embodiment, email, such as that stored in an inbox of the email server, is accessed by the email client application and automatically presented to the user in a new window upon successful authentication of the email account with the email server. In one such embodiment, during the accessing of the email, the email client application provides an indication to the user that account configuration or account authentication is occurring to enhance to apparent speed of the email access.

Thus, without asking the user to input a host of technical information to connect to each subscribed email service, the technique introduced here requests only readily accessible information (e.g. email address and password) to be input by the user, from which the user's email account(s) may be set up on the email client application; saving a lot of time and effort for the user.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram illustrating an email system in which the present invention can be implemented.

FIG. 2 depicts stored information in fields of a server profile database in accordance with an embodiment of the present invention.

FIG. 3 is a flow diagram illustrating a process of setting up an account on an email client application according to an embodiment of the present invention.

FIG. 4A shows a graphical user interface (GUI) through which a user can set up an email account on an email client application according to an embodiment of the present invention.

FIG. 4B shows a graphical user interface (GUI) through which a user can set up an email account on an email client application according to an embodiment of the present invention.

FIG. 5A shows a GUI presented to the user if stored information may be used to configure the email client according to an embodiment of the present invention.

FIG. 5B shows a GUI presented to the user if the user has requested stored information to be used for configuring the email client according to an embodiment of the present invention.

FIG. 6 depicts various permutations with which an email client may attempt to connect an email service according to an embodiment of the present invention.

FIG. 7 depicts a GUI presented to the user while the email client application is accessing email from an email service according to an embodiment of the present invention.

FIG. 8 depicts a GUI presented to the user after configuration of the email client is complete according to an embodiment of the present invention.

FIG. 9 is a high level block diagram illustrating a processing system which may be employed to perform an embodiment of the present invention.

DETAILED DESCRIPTION

Described herein are methods and systems for configuring an email account. In the following description, numerous specific details are set forth. However, it is understood that embodiments may be practiced without these specific details. For example, well known equivalent components may be used in place of those described herein. In other instances, well known components have not been shown in detail in order not to obscure the understanding of this description.

Reference throughout this specification to “an embodiment” means that a particular feature, structure, material, or characteristic described in connection with the embodiment is included in at least one embodiment of the invention. Thus, the appearances of the phrase “in an embodiment” in various places throughout this specification are not necessarily referring to the same embodiment of the invention. Furthermore, the particular features, structures, materials, or characteristics may be combined in any suitable manner in one or more embodiments.

The present description includes material protected by copyrights, such as illustrations of graphical user interface images. The owners of the copyrights, including the assignee of the present invention, hereby reserve their rights, including copyright, in these materials. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office file or records, but otherwise reserves all copyrights whatsoever. Copyright Apple Computer, Inc. 2007.

FIG. 1 is a block diagram illustrating an email system in which the present invention can be implemented. As shown, the email system includes an email client application 101, an email server 102, and a server profile database 103. The email client application 101 communicates with the email server 102 via a network 104 to access email service 105. The email service 105 may include and/or be provided by any number of email servers.

To access the email server 102, a user opens an email account with the email service 105. Then, the user needs to configure the email client application 101 so that the user may access, with the email client application 101, the email service 105 provided by the email server 102. As used herein, the configuration of the email client application 101 is also called “setting up” an email account on the email client application. Generally, the method described herein requests a user to provide only the most basic and readily available information and using this information, automatically configures the email client application information stored in server profile database 103. If the email client application cannot be so configured automatically with the readily available and basic information, the system requests more information from the user to set up the email client application.

The server profile database 103 may be implemented in a variety of ways. In one embodiment, the server profile database 103 is implemented as a local service extension to the email client application 101. In another embodiment, the server profile database 103 is implemented as a remote server accessible to the email client application 101. In a further embodiment, server profile database 103 is implemented as a service of a DNS server. In such an embodiment, a DNS server is enabled to respond to queries for more information about the email service settings based on the user entered email address. Such a DNS implementation provides the advantage of good security because the email service provider maintains control of the email service locator corresponding to the email service. In still another embodiment, the server profile database 103 is implemented as both a local service extension, which is first accessed by the email client application and upon failing to find any more information for an email service corresponding to the domain name of the email address, a remote network database is then accessed in an attempt to locate stored information about the email server.

In one embodiment, the server profile database 103 includes a list of parent domain names of various email services along with corresponding email service settings. An exemplary server profile database 203 is depicted in FIG. 2. The server profile database 203 includes and an email address domain name 205 (e.g. “example1.com,” example2.com,” etc.) and an email service locator 210 corresponding to that parent domain name. As used herein, an email service locator may be provided in the form of: 1) a hostname (e.g. “POP” or “SMTP”); 2) a sub domain name for the email service (e.g. “mail.example1.com.”); 3) a fully qualified domain name (FQDM) (e.g. pop.mail.example1.com); 4) a Universal Resource Identifier (URI) (e.g. us.f507.mail.domain2.com); 5) an internet protocol (IP) address. In a further embodiment, the server profile database 203 also includes email service protocol 215, such as IMAP, POP, and Simple Mail Transfer Protocol (SMTP). In another embodiment, Hypertext Transfer Protocol (HTTP) may be utilized by the email service. In still another embodiment, the server profile database 203 stores, for a given email service, port numbers 220 (e.g. 110, 465, 443, 993), encryption types 225 (e.g. TSL/SSL), authentication types 230, and commercial source identifiers 235. Commercial source identifiers 235 may be either logos or trademarks. Typically commercial source identifiers 235 are stored as image files.

In one embodiment the only information input to the email client application 101 includes a user's email address, and the password. Based on the email address, a process of the email client application 101 (or a software module integrated with the email client application 101) determines a domain name corresponding to the email address. A process of the email client application 101 then searches the server profile database 103 for that domain name to determine more information about the email service settings rather than requiring the user to provide a set of technical email service settings. Email service settings include, but are not limited to, server name (also referred to herein as hostname) server type (also referred to herein as email service protocol), port number, etc. Based on the returned information, a process of the email client application 101 automatically configures itself to connect to the email server 102 and retrieves the emails from the user's email account with the email service 105.

FIG. 3 is a flow diagram illustrating a process of setting up an email account on an email client application, according to an embodiment of the present invention. At operation 301, a computer process of the email client application receives a user's input of an email address and a password for pertaining to an account with an email service. FIG. 4A shows a page of a graphic user interface (GUI) through which a user can configure an email client application, according to an embodiment of the present invention. As shown, the first page 400 of the GUI requests the user to input the user's email address 412, and the password 413. In a further embodiment, the email client application may further request input of a user's full name 411. Full name 411 may be used by the email client application to identify the user as the author of outgoing email messages, such as in a “from” field of an email message. Full name 411 may further be provided by the system as a stored database entry provided by a user at an earlier time, such as during an install of an operating system framework application like Mac OS X®, available from Apple, Inc. of Cupertino, Calif.

FIG. 4B depicts a GUI, according to an embodiment, with the requested fields completed by the user to have an email address 412 of “account@unsupportedservice.com” and a password 413. Returning to FIG. 3, at operation 305, a computer process of the email client application determines the domain name of the email service (i.e. server domain) from the email address 412 input by the user. The process then determines, at operation 307, whether there is that domain name in the server profile database 103 having a corresponding email service locator 210. For example, at operation 307, the process parses the email address 412 to identify the “unsupportedservice.com” portion following the “@” sign as the email service parent domain. Where the process finds no such email service domain name entry in the server profile database 103, the process determines the email service domain to be an unsupported service and the method proceeds to operation 315 to request user input of additional information pertaining to the email service settings in response to the user selecting the button 414 labeled “continue” in FIG. 4B.

If however, the process finds a match in the server profile database 103, the method proceeds to operation 310. For example, as shown in FIG. 5A, the email address 412 is user_account@domain1.com and “domain1.com” is an email address domain name 205 in the server profile database 203 of FIG. 2. As shown in the exemplary data record, the “domain1.com” has two corresponding email service locators 210, “pop.mail.domain1.com” (an incoming email hostname) and “smtp.mail.domain1.com” (an outgoing email hostname).

In another embodiment, at operation 307, the process also determines if there is a commercial source identifier entry in the server profile database 103 corresponding to the email service domain name. For example, in email server profile database 203, “logo.jpg” is a commercial source identifier 235 associated with the “domain1.com” email address domain name 205.

At operation 310, the process displays to the user an option for the user to select automatic email client application configuration. In the exemplary embodiment shown in FIG. 5A, automatic setup option 515 is provided to the user within the same dialog in which the user entered email address 412, and the password 413. Automatic setup option 515 may be displayed to the user after the process determines, at operation 307, there is a record in the server profile database 203 matching the email address 412. In a further embodiment, the process also displays the commercial source identifier 235 of the email service for which the email client will be automatically set up. Such an embodiment is advantageous in that it provides the user with a well-known visual indication of the email service that the email client application is to set up.

The process then determines at operation 312, whether to perform automatic setup using the stored information. In the exemplary embodiment depicted in FIG. 5B, this determination is made by receipt of a user's check 516 of a checkbox 515. In one embodiment, if the user checks the checkbox 515, the title of the button 414 is changed from “continue” to “create” to indicate to the user that the email account will now be created without the user inputting any addition information. If instead, the user selects the button 414 without selecting automatic setup at operation 312, the method proceeds to operation 315 to request user input of additional information pertaining to the email service settings rather than enlisting the information stored in the server profile database 203.

In still another embodiment, after the user inputs the email address at operation 301, upon changing the focus of input from the text box for the email address 412 to another GUI item (e.g., the text box for inputting the email password 413 or full name 411), the system determines at operation 305 whether the user's account can be automatically set up. Such an embodiment allows the process to perform operations 305, 307 and 310 while the user's attention is on inputting other setup information. This may provide an enhanced user experience because the operations 305, 307 and 310 may be perceived to be faster.

Returning to FIG. 3, after a user selects automatic configuration the process determines, at operation 318, if there is an email service protocol (i.e. server type) stored, for example, in the email server profile database 103. If an email service protocol entry is stored, then the email client application, at operation 320, attempts to access the email service using the email service locator 210 and the email service protocol. For example, referring to FIG. 2, the email service protocol 215 associated with the “domain1.com” email address domain name 205 is POP3 and this protocol would be used to attempt a connection to a server identified by “pop.mail.domain1.com” service locator 210. Similarly, other settings associated with the “domain1.com” email address domain name 205, such as, but not limited to, port number 220, encryption type 225, authentication type 230, etc. may be used to configure the email client application either prior to the attempt to connect to the email service at operation 320 or subsequent to the attempt to connect.

If, at operation 318, there is no email service protocol stored or the one that was stored failed to connect at operation 320, the process attempts to proceed with automatic configuration of the email client by generating permutations of email service settings at operation 325. In one embodiment, the permutations may include the email service locator 210 combined with email service protocols, such as POP, IMAP, and SMTP. In another embodiment, the permutations may include the email service locator 210 combined with HTTP. In a further embodiment, the permutations may be ranked by connection preference at operation 327 prior to attempting to connect at operation 320 with the most preferred permutation. In one such embodiment, IMAP is ranked above POP.

For example, because the email address domain name 205 of “domain4.com,” includes no email service protocol 215 stored in the server profile database 203, upon a user entering an email address of “account@domain4.com,” the process generates permutations of the email service protocol, such as those depicted in FIG. 6. In the particular embodiment shown in FIG. 6, IMAP is prioritized over POP3. For each email service protocol, the process may further generate permutations based on port number 620. In one such embodiment, port numbers assigned to the email service protocol identified by Internet Assigned Numbers Authority (IANA) are prioritized over well known ports which in turn are prioritized over registered ports.

In a further embodiment, the process may also generate permutations based on encryption type 625. In one such embodiment, the process further prioritizes encrypted connections over unencrypted connections. For example, as shown in FIG. 6, IMAP4, supporting Secure Sockets Layer (SSL) encryption, is prioritized over unencrypted IMAP. In another exemplary implementation, for each port number specified in the server profile database for the particular email service locator 210 (e.g. hostname), the process prioritizes an encrypted connection to that port. For example, connection attempt 2 with SSL encryption and port 143 while connection attempt 3 is an unencrypted with port 143.

At operation 320, the process makes an attempt to connect to the email service using the stored email service locator 210 and the stored email service protocol 215 or the most preferred permutation identified at operation 327. At operation 330, the process then determines if a server responded to the attempt to connect. If no response is received within a period of time, the process then determines, at operation 335, if there are any lower priority connection setting permutations that have not yet been attempted. If so, the most preferred permutation is identified at operation 327 and another connection attempt is made at operation 330. In one embodiment, if there is more than one email service locator 210 for an email address domain name entry in the server profile database, all permutations generated at operation 325 are re-tried with each email service locator 210. In a further embodiment, where there is more than one email service locator and a connection has been made with using one of the email service locators, the process further determines if the other email service locator is for an outgoing mail service using an outgoing mail service protocol such as SMTP and attempts to connect to a server hosting this service. If none of the generated permutations connects, the process returns to operation 315 to request additional information from the user to complete the setup. If at least one of the attempts to connect does work, the process proceeds to operation 340 to authenticate the email account with the email service.

At operation 340, the process authenticates the user by trying to login into the account on the email server with the account name and password. For example, for the email address 412 shown in FIG. 5, the process identifies, to an email server, the email service account “account” from the email address along with the password 413. In one embodiment, the server profile database contains a list of authentication mechanisms. The process ranks the list from the most secure mechanism to least secure mechanism. The process then attempts to authenticate the user by using the authentication mechanism from the most secure one to the least secure one. In a further embodiment, the process attempts to authenticate the account for both the incoming and outgoing mail service. If the email client application receives, at operation 345, an indication that the email service has authenticated the account by at least one of the authentication mechanisms, the process proceeds to operation 350. If however, authentication fails, the process proceeds to operation 315 to allow the user to provide more setup information, such as re-entering the email account password and/or the email address.

In an alternative embodiment, the process displays to the user an option to perform automatic configuration only after receipt of an indication that authentication was successful, rather than upon identification of a matching record in the server profile database at operation 307 as is shown in FIG. 3. Thus, in this alternative embodiment, operations 305, 307, 318, 320, 325, 327, 330, 335 and 340 of FIG. 3 would all be performed by the process prior to providing the user an option to select automatic configuration.

Proceeding to operation 350, the process automatically completes configuration of the authenticated email account in the email client application, connects to the email server, and accesses the user's emails on the email service. FIG. 7 depicts a GUI presented to the user while the email client application is accessing email from an email service according to an embodiment of the present invention. In one embodiment, the process displays an indication to the user that automatic configuration of the email client is occurring. In the exemplary embodiment depicted in FIG. 7, the process displays an indication that account authentication is occurring with message 705. For such embodiments, the user experience may be enhanced by mitigating the relatively long time it may take to display a large amount of email that may be on the email service the first time it is accessed by the email client application. Because the authentication process and the email client configuration may have been comparatively fast to complete, either delaying an indication to the user that email is being accessed or delaying an indication that the automatic account configuration is completed (e.g. by displaying message 705) may be an enhancement to the user experience. According to another embodiment, the process at operation 350 first accesses only the email in an incoming mail file, or inbox, on the server.

At operation 355, the process automatically displays, to the user, the email accessed in a window of the email client application. For example in the exemplary GUI depicted in FIG. 8, email client application 805 is displayed with a inbox window 810 displaying header fields of email accessed from the email server for which the automatic configuration was completed.

If, however, no entry corresponding to the email address domain name is located in operation 307, the user does not choose automatic setup at operation 312, all setting permutations fail the connection operation 320, or no authentication is received at operation 345, the process proceeds to operation 315. At operation 315, the process provides the user with a request for more setup information in a GUI (not shown), though which the user may input configuration settings the process was unable to identify.

In an embodiment, operation 315 may display to the user the automatic configuration failure mode and may also suggest re-entry of information or entry of additional new information. For example, in one embodiment, where no email address domain name is found in the server profile database, the process may ask for entry of an email service locator and then re-attempt automatic configuration by generating permutations of settings, such as email protocol and/or ports, etc. at operation 325, and attempt to connect at operation 320. In another embodiment where the user does not choose automatic setup at operation 312, the process displays a GUI with requests for all information typically required for manual account setup, such as an email service locator (e.g. hostnames for incoming and outgoing email service), email service protocols (e.g. IMAP and SMTP), and authentication requirements (e.g. incoming email service only). Along with these fields the GUI provides the user another option to perform automatic in the case that the user only then realizes they do not have all required setting information. In yet another embodiment where a connection was established at operation 320, but no authentication is received at operation 345, the process, at operation 315, displays a notification of password failure and requests user verification/re-entry of the account password.

FIG. 9 is a high level block diagram illustrating a processing system. The email client application or a server of the email service described in the present application can be implemented by such a processing system illustrated in FIG. 9. Certain standard and well-known components which are not germane to the present invention are not shown. The processing system includes one or more processors 901 coupled to a bus system 903.

The bus system 903 in FIG. 9 is an abstraction that represents any one or more separate physical buses and/or point-to-point connections, connected by appropriate bridges, adapters and/or controllers. The bus system 903, therefore, may include, for example, a system bus, a form of Peripheral Component Interconnect (PCI) bus, HyperTransport or industry standard architecture (ISA) bus, small computer system interface (SCSI) bus, universal serial bus (USB), or Institute of Electrical and Electronics Engineers (IEEE) standard 1394 bus (sometimes referred to as “Firewire”).

The processors 901 are the central processing units (CPUs) of the processing system and, thus, control the overall operation of processing system. In certain embodiments, the processors 901 accomplish this by executing software stored in memory 902. A processor 901 may be, or may include, one or more programmable general-purpose or special-purpose microprocessors, digital signal processors (DSPs), programmable controllers, application specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), programmable logic devices (PLDs), or the like, or a combination of such devices.

The processing system also includes memory 902 coupled to the bus system 903. The memory 902 represents any form of random access memory (RAM), read-only memory (ROM), flash memory, or a combination thereof. Memory 902 stores, among other things, the operating system 904 of the processing system.

Also connected to the processors 901 through the bus system 903 are a mass storage device 905, a storage adapter 906, and a network adapter 907. Mass storage device 905 may be or include any conventional medium for storing large quantities of data in a non-volatile manner, such as one or more disks. The storage adapter 906 allows the processing system to access external storage systems. The network adapter 907 provides the processing system with the ability to communicate with remote devices and may be, for example, an Ethernet adapter or a Fibre Channel adapter.

Memory 902 and mass storage device 905 store software instructions and/or data, which may include instructions and/or data used to implement the techniques introduced here. The system may include other components (e.g. input devices, such as a mouse and keyboard, and output devices such as a display).

Software to implement the technique introduced here may be stored on a machine-readable medium. A “machine-accessible medium,” as the term is used herein, includes any mechanism that provides (i.e. stores and/or transmits) information in a form accessible by a machine (e.g. a computer, manufacturing tool, any device with one or more processors, etc.). For example, a machine-accessible medium includes recordable/non-recordable media (e.g. read-only memory (ROM); random access memory (RAM); magnetic disk storage media; optical storage media; flash memory devices; etc.), etc.

This invention has been described with reference to specific exemplary embodiments thereof. It will, however, be evident to persons having the benefit of this disclosure that various modifications and changes may be made to these embodiments without departing from the broader spirit and scope of the invention. The specification and drawings are, accordingly, to be regarded in the illustrative rather than in a restrictive sense.

Claims

1. A computer readable storage medium having instructions stored thereon which cause a data processing system to configure a user's email client application, the method comprising:

receiving a user's input of an email address and a password for an email service to be accessed by the email client application; and
automatically configuring the user's email client application, based only on the email address, password and stored information pertaining to the email service, to communicate with an email server providing the email service.

2. A medium as in claim 1, wherein the stored information comprises an email service locator corresponding to a domain name of the email address.

3. The medium as in claim 2, wherein the email service locator is selected from the group consisting of: hostname, IP address, URI, and FQDN.

4. A medium as in claim 1, wherein the stored information further comprises and an email service protocol corresponding to a domain name of the email address.

5. A medium as in claim 1, the method further comprising:

receiving a user's input of the user's full name.

6. A medium as in claim 1, the method further comprising:

displaying to the user, after determining stored information corresponding to a domain name of the email address exists, an option for the user to select automatic email client application configuration.

7. A medium as in claim 6, the method further comprising:

determining, from the stored information, a commercial source identifier associated with the email service; and
displaying to the user the commercial source identifier associated with the email service to be automatically configured.

8. A medium as in claim 1, wherein the stored information is provided by a remote server accessed by the email client application.

9. A medium as in claim 8, wherein the remote server is a DNS server.

10. A medium as in claim 1, wherein the stored information is provided as a local service extension.

11. A medium as in claim 1, wherein automatically configuring the email client application further comprises:

determining, from the stored information, a hostname of the email service corresponding to the email address and wherein the email service hostname identified corresponds to at least one of an incoming email server and an outgoing email server.

12. A medium as in claim 1, the method further comprising:

determining, from the stored information, an email protocol corresponding to the email service locator.

13. A medium as in claim 12, wherein the email protocol is selected from the group consisting of IMAP, POP3 and SMTP.

14. A medium as in claim 12, further comprising:

determining, from the stored information, a URI corresponding to the email service, wherein the protocol is HTTP.

15. A medium as in claim 1, wherein automatically configuring the email client application further comprises:

generating a plurality of connection settings permutations with at least one setting selected from the group consisting of: email protocol and encryption;
attempting to connect to the email server with each of the plurality of connection permutations; and
identifying a valid connection permutation by receiving, from the email server, a response to the attempt to connect.

16. A medium as in claim 15, wherein the email protocol is selected from the group consisting of: IMAP, POP3 and SMTP and wherein the plurality of permutations are ranked to attempt an IMAP connection before a POP3 connection and to attempt encrypted connections over unencrypted.

17. A medium as in claim 1, the method further comprising:

authenticating the email account and account password on the email server upon receiving a response from the email server.

18. A medium as in claim 1, the method further comprising:

displaying to the user, while email on the server is being accessed by the email client application, an indication that at least one of an automatic configuration or an account authentication is occurring.

19. A medium as in claim 18, wherein the email on the server accessed is limited to that of an inbox of the email account.

20. A medium as in claim 1, the method further comprising:

automatically displaying to the user, upon authentication, email from the email server.

21. A computer implemented method of configuring a user's email client application, the method comprising:

receiving a user's input of an email address and a password for an email service to be accessed by the email client application; and
automatically configuring the user's email client application, based only on the email address, password and stored information pertaining to the email service, to communicate with an email server providing the email service.

22. A method as in claim 21, wherein automatically configuring the email client application further comprises:

determining, from the stored information, a service locator of the email service corresponding to the email address;
determining, from the stored information, an email service protocol corresponding to the email service locator;
attempting to connect to an email server using the email service locator and the email service protocol; and
authenticating the email account and account password on the email server upon receiving a response from the email server.

23. A method as in claim 21, the method further comprising:

displaying to the user, while email on the server is being accessed by the email client application, an indication that at least one of an automatic configuration or an account authentication is occurring.

24. A data processing system comprising:

a means for receiving a user's input of an email address and a password for an email service to be accessed by the email client application; and
a means for automatically configuring the user's email client application, based only on the email address, password and stored information pertaining to the email service, to communicate with an email server providing the email service.

25. The system of claim 24, further comprising:

a means for determining, from the stored information, a hostname or IP address of the email service corresponding to the email address;
a means for determining, from the stored information, an email service protocol corresponding to the email service hostname or IP address;
a means for attempting to connect to an email server using the email service hostname or IP address and the email service protocol; and
a means for authenticating the email account and account password on the email server upon receiving a response from the email server.
Patent History
Publication number: 20080307077
Type: Application
Filed: Oct 25, 2007
Publication Date: Dec 11, 2008
Inventors: Brendan Langoulant (San Francisco, CA), Ricci Edward Adams (Cupertino, CA), Scott James Forstall (Mountain View, CA)
Application Number: 11/924,562
Classifications
Current U.S. Class: Initializing (709/222)
International Classification: G06F 15/177 (20060101);