The following description is presented to enable any person skilled in the art to make and use the invention, and is provided in the context of a particular application and its requirements. Various modifications to the disclosed embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be applied to other embodiments and applications without departing from the spirit and scope of the present invention. Thus, the present invention is not limited to the embodiments shown, but is to be accorded the widest scope consistent with the principles and features disclosed herein.
The data structures and code described in this detailed description are typically stored on a computer-readable storage medium, which may be any device or medium that can store code and/or data for use by a computer system. This includes, but is not limited to, magnetic and optical storage devices such as disk drives, magnetic tape, CDs (compact discs) and DVDs (digital versatile discs or digital video discs), or any device capable of storing data usable by a computer system.
One embodiment of the present invention determines the importance of email messages by applying a set of rules that are shared within a social network. For example, a social network can include, but is not limited to, persons who belong to: a given company, a given family, a given group of friends, or a given group of people with similar interests.
Sender 120 on client 108 sends email 118 destined for user 122 through network 104. Email server 102 receives email 118 for user 122. Email server 102 then uses rules 116 to determine the importance of email 118, and assigns an importance score to email message 118. At a later time, user 122 on client 10 retrieves email 118 along with the associated importance score from email server 102 through network 106. Note that although the present disclosure discusses one user (or sender) per client, multiple users (or senders) can use a given client to retrieve email messages.
Email server 102 can generally include any computational node including a mechanism for servicing requests from a client for computational and/or data storage resources.
Networks 104 and 106 can generally include any type of wired or wireless communication channel capable of coupling together computing nodes. This includes, but is not limited to, a local area network, a wide area network, or a combination of networks. In one embodiment of the present invention, networks 104 and 106 include the Internet. Note that networks 104 and 106 can be the same network or they can be different networks. Additionally, networks 104 and 106 can be different sub-networks within a larger network.
Clients 108-112 can generally include any node on a network that comprises a mechanism for communicating across the network. Email server 102 can be located at a shared gateway for the social network.
The importance of the email message can be determined by an email server application at a shared gateway. Further, the importance of the email message can be determined by an email client application executing on a client system operated by the user.
In one embodiment of the present invention, email server 102 stores email 118 along with emails 114 until user 122 retrieves emails destined for user 122. Note that emails 114 can include email messages destined for other users.
Email server 102 can use an Internet Message Access Protocol (IMAP) to deliver emails destined for clients 110 and 112. Alternatively, email server 102 can use a Post Office Protocol (POP) to deliver emails destined for clients 110 and 112.
In one embodiment of the present invention, user 122 is part of a social network. In this embodiment, the rules used to determine the importance of an email message are specific to a given social network.
The rules used to determine the importance of an email message can include, but are not limited to: filters based on email addresses, filters based on Internet Protocol (IP) addresses, ranking techniques based on the frequency that members of the social network have replied to a sender, and ranking techniques based on the frequency that the members of the social network have clicked on links within email messages sent by the sender. The filters can be “blacklists,” which indicate unwanted email addresses or IP addresses, or they can be “whitelists,” which indicate valid email addresses or IP addresses.
In one embodiment of the present invention, the frequency of communication between members of a social network and sender 120 is used to determine the importance of email messages sent by sender 120 relative to email messages sent by other senders. Specifically, a higher frequency of communication between members of the social network and a sender can be associated with a higher importance score.
Note that by looking at the frequency of communication between members of a social network and senders, emails sent by senders who have previously never communicated with a given user can be classified according to the rules set by members of the social network. This is in contrast to prior art techniques which determine the importance of an email message based on only the communication frequency between the sender and the recipient. However, as explained before, this can cause prior art approaches to make serious mistakes in determining the importance of an email message.
Embodiments of the present invention do not suffer from these drawbacks because they determine the importance of an email message using the communication history between the sender and the members of the social network. Hence, even if a recipient has never received an email from a sender, if the sender is well known and highly regarded by other members of the social group, the recipient will correctly assign a high importance to an email from the sender. In addition to using the frequency of communication, embodiments can share rules and/or filters among the members of the social network.
In one embodiment of the present invention, the importance of an email message is determined by an organizational hierarchy of the social network. For example, if an employee's manager has been communicating with a vendor on a project, and at a later time directs the vendor to discuss the project with the employee, the system determines that an email message sent from the vendor to the employee is important based on the organizational hierarchy of the company.
In one embodiment of the present invention, the importance score of an email message determined by the organizational hierarchy of the social network is ranked relative to the organizational hierarchy. For example, if the president of a company directs a first vendor to discuss a project with an employee, the email message sent from the first vendor to the employee has a higher importance score than a second vendor who was directed to speak with the employee by the direct manager of the employee.
In one embodiment of the present invention, a social network determines the relative ranking of the importance score based on the organizational hierarchy. For example, a social network can decide that email messages from senders who have interacted with a direct manager of the employee are ranked higher than email messages from senders who have interacted with higher-level managers. Similarly, the social network can decide that email messages from senders who have interacted with higher-level managers are ranked higher than email messages from senders who have interacted with a direct manager of the employee.
In one embodiment of the present invention, the rules are shared within a social network. If user 122 performs user action 124 for email 1118, user action 124 is sent to email server 102 to be recorded in rules 116. For example, user action 124 is the action of replying to email 118. Hence, email server 102 notes that user 122 in the social network has replied to sender 120 and the frequency of interaction with sender 120 is incremented for the social network for which user 122 belongs.
One embodiment of the present invention moves email messages from specified senders to specified folders based on rules 116. For example, if members of a social network have determined that a sender is a sender of junk email, email messages from the sender are moved to a junk email folder. Similarly, if members of a social network have determined that a sender is a sender of automated order responses, email messages from the sender are moved to an orders folder. Likewise, if members of a social network have placed a sender of a blacklist, email messages from the sender are moved to a junk email folder. Alternatively, if members of a social network have placed a sender on a whitelist, email messages from the sender are marked as valid email messages.
In one embodiment of the present invention, email server 102 is at a shared gateway for clients 110-112. In another embodiment of the present invention, email server 102 is on a wide-area network (WAN) coupled to clients 110-112.
User 122 can have multiple email accounts and the importance of email messages for user 122 can be determined for all email accounts based on the rules established by each social network. In one embodiment, user 122 has multiple email accounts and the importance of email messages for user 122 is determined for each email account separately based on rules for each social network.
Emails destined for user 122 can be stored on different email servers until retrieved by user 122. For example, each unique email account for user 122 is stored on a different email server.
In one embodiment of the present invention, rules are gathered at clients 110-112 within the social network. In another embodiment of the present invention, rules are gathered at email server 102.
Note that in
Note that in
User 122 then retrieves emails directed to user 122 and performs actions on the emails. For example, user 122 performs user action 124. In one embodiment of the present invention, user action 124 marks email 118 as spam. As a result, sender 120 is placed on a blacklist. In one embodiment of the present invention, after user 122 performs user action 124, email server 102 receives notification of user action 124 from client 110. Email server 102 then sends an update of rules 116 to clients 110-112. In another embodiment of the present invention, client 110 broadcasts user action 124 to clients within the social network, including client 112, as well as broadcasting user action 124 to email server 102. Hence, clients that are not online at the time when client 110 broadcasts user action 124 can still receive updates from email server 102 when they come online.
Note that in
The process begins when the system receives an email message destined for a user within a social network (step 202). Next, the system determines a frequency of interaction with a sender of the email message by members of the social network (step 204), and assigns an importance score to the email message based on the determined frequency of interaction with the sender (step 206). In one embodiment of the present invention, while determining the frequency of interaction with the sender, the system analyzes a frequency with which members of the social network have responded to the sender. In another embodiment of the present invention, while determining the frequency of interaction with the sender, the system analyzes a frequency with which members of the social network have clicked on links contained in messages sent by the sender.
The system then uses the importance score for the email message to perform an action involving the email message (step 208). In one embodiment of the present invention, the system uses the importance score for email messages to sort the email messages for the user relative to one another.
The process begins when the system determines whether members of the social network have applied a specified rule to the sender of the email message (step 302 and 304). If so, the system applies the specified rule to the email message sent to the user from the sender (step 306).
In
In one embodiment of the present invention, a folder in folders 404 contains one or more scripts 408 which are applied to email messages in the folder.
The process begins when Microsoft Exchange Server receives an email message (step 502). Next, Microsoft Exchange Server applies internal rules to the email message (step 504). In one embodiment of the present invention, the internal rules include, but are not limited to: Out-of-office Assistant, Distribution Lists, and Assistant routing.
Microsoft Exchange Server then applies external rules to the email message (step 506). In one embodiment of the present invention, the external rules include, but are not limited to: user-defined rules and rules determined by social networks as described above. Microsoft Exchange Server then delivers the email (step 508).
In one embodiment of the present invention, the process described in
The foregoing descriptions of embodiments of the present invention have been presented only for purposes of illustration and description. They are not intended to be exhaustive or to limit the present invention to the forms disclosed. Accordingly, many modifications and variations will be apparent to practitioners skilled in the art. Additionally, the above disclosure is not intended to limit the present invention. The scope of the present invention is defined by the appended claims.