Identifying Users Sharing Common Characteristics
This application is a continuation of U.S. application Ser. No. 12/815,847 filed on Jun. 15, 2010, which is a continuation of U.S. application Ser. No. 11/238,130, filed on Sep. 29, 2005, now issued as U.S. Pat. No. 7,765,265, which claims the benefit of U.S. Provisional Application Ser. No. 60/679,652, titled “Processing Information Describing Electronic Messaging Users,” and filed May 11, 2005, and U.S. Provisional Application Ser. No. 60/710,670, titled “Identifying Users Sharing Common Characteristics,” and filed Aug. 24, 2005. This application is related to U.S. Patent Applications being filed concurrently on Sep. 29, 2005, and titled “Searching Electronic Content in Instant-Messaging Applications,” and titled “Personalized Location Information for Mobile Devices.” The entire contents of all of the above applications are hereby incorporated by reference in their entirety. This application relates to the identification of users of an instant-messaging system that share common characteristics. In instant-messaging applications, users may communicate with each other by exchanging instant messages. An individual user may have a buddy list that includes the names of other users, known as “buddies,” with whom the user may communicate regularly. The user may send instant messages to any of the buddies, as well as other users not included in the buddy list, that are logged on to their respective computing stations. Any one of these buddies may store electronic content that can be shared with other users. For example, a buddy may store an “away” message that can be provided as an auto-response to other users to indicate that the buddy is presently away from his or her computing station or is otherwise unavailable to send and receive instant messages. Away messages can serve several purposes. Many people use them to let others, such as their buddies, know exactly where they are. Others use away messages to 25 provide creative expression, such as by publishing the lyrics of the song they just wrote or a funny quote they just heard in a movie. Recent studies have shown that individuals of certain age groups (such as college-aged adults) not only invest a fair amount of time creating multiple away messages per day, but they also spend a great deal of time reading the away messages of their buddies. A very common use of away messages is to post your current location or activity so that buddies can easily keep track of where you are and be informed enough to join in your activity if they are up to it. Users often trust this service as a place to keep their personal information, such as contact information, so their friends can get in touch with them at any time. They use it to share information such as links to pictures, web logs (blogs), funny articles, declarations of love to a boyfriend/girlfriend, a countdown until the day they graduate, and other things of value. It is a quick way to provide a glimpse into the user's life and, in most cases, it also may provide a way to get more information about the user if a buddy wants to spend the time to do so. In one general aspect, displaying electronic information in an instant-messaging application includes accessing a first electronic message that provides information describing a first user that has an identifier included in a set of identifiers of users of an instant messaging application. A second electronic message that provides information describing a second user that has an identifier included in the set of identifiers of users of an instant messaging application is accessed. Content contained within the first and second electronic messages is analyzed to determine that at least a portion of the content is common to both the first and second electronic messages. Based upon the content analysis, an indication of whether the first and second electronic messages include common content is provided to the user. Implementations may include one or more of the following features. For example, indicating that the first and second electronic messages included common content may include audibly indicating that the first and second electronic messages include common content. Audibly indicating that the first and second messages include common content may include playing a recorded message indicating that the first and second messages include common content, or leaving a voice message to this effect on a voicemail system used by the user. Indicating that the first and second electronic messages include common content may include visually indicating that the first and second electronic messages include common content. Visually indicating that the first and second electronic messages include common content may include highlighting the identifiers of the first and second users within the set of identifiers, or displaying a graphical icon in proximity to the identifiers of the first and second users within the set of identifiers. Visually indicating that the first and second electronic messages include common content also may include adding identifiers of the first and second users to a group identifying users with electronic messages that include the common content. The group may be added to the set of identifiers, for example, when more than a threshold number of identifiers of users are to be included in the group. Indicating that the first and second electronic messages include common content may include displaying a graphical user interface that includes indications of the first and second users as users with electronic messages that include common content. At least a portion of the first and second electronic messages may be provided to the user. The first and second users both may be available to send and receive electronic messages, or at least one of the first user and the second user may not be available to send and receive electronic messages. The first and second electronic messages may indicate locations of the first and second users, respectively. Analyzing content contained within the first and second electronic messages may include analyzing the content to determine whether the content indicates that the first and second users are attending a common event. Analyzing content contained within the first and second electronic messages also may include analyzing the content to determine whether the content indicates that the first and second users are participating in a common activity, share a common characteristic, are at a common location, or are within a threshold distance from one another. Accessing the first electronic message may include accessing the first electronic message from a store of electronic messages that provide information describing the first user. Other electronic messages for other users may be accessed. Content included in the other electronic messages may be analyzed to determine whether one or more of the other electronic messages include the common content. An indication that the one or more of the other messages include the common content may be provided to the user. A change in the first electronic message may be detected before accessing the first electronic message. The set of users may be a list of users for which presence information is monitored, or a set of users sharing a common characteristic. In another general aspect, displaying electronic information in an instant-messaging application includes detecting that a first user that has an identifier included in a set of users of an instant messaging application is in physical proximity to a geographic location. A detection that a second user that has an identifier included in the set of users of the instant messaging application is in physical proximity to the geographic location is made. Without receiving a request, an indication that the first and second users are each in physical proximity to the geographic location is provided. Implementations may include one or more of the following features. For example, detecting that the first user is in physical proximity to the geographic location may include detecting that the first user is within a threshold distance from the geographic location at a time when the detection is made. Detecting that the second user is in physical proximity to the geographic location may include detecting that the second user is within a threshold distance from the geographic location at a time when the detection is made. Detecting that the first user is in physical proximity to the geographic location may include detecting that the first user is in physical proximity to the geographic location based on GPS signals indicating a position of the first user, or based on information included in an electronic message describing the first user. A detection that the first user is not in physical proximity to the geographic location may be made. The indication that the first and second users are each in physical proximity to the geographic location may be updated based on the detection that the first user is not in physical proximity to the geographic location. A detection that the user is in physical proximity to the geographic location may be made. Indicating that the first and second users are each in physical proximity to the geographic location may include indicating that the first and second users are each in physical proximity to the user. Detecting that the user is in physical proximity to the geographic location may include doing so based on GPS signals indicating a position of the user, or based on information included in an electronic message describing the user. Detecting that the user is in physical proximity to the geographic location may include receiving an indication that the user is in physical proximity to the geographic location from the user. The geographic location may represent at least one from a group including a building, a street, an intersection, a business, and a residence. The set of users may be a list of users for which presence information is monitored, or a set of users sharing a common characteristic. The details of one or more implementations are set forth in the accompanying drawings and the description below. Other features, objects, and advantages will be apparent from the description and drawings, and from the claims. Users that share common characteristics are identified based on electronic content that is stored in association with the users. The electronic content of a user may be an electronic message indicating the availability of the user to send and receive electronic messages, or information describing the user. The users may be said to match when at least a portion of the electronic content of each of the users matches. For example, the electronic content may identify locations of the users, and the users may be identified when their locations match. The users may be included in a contact list, and an indication of the common characteristics may be presented on an interface in which the contact list is presented. Alternatively, the users may be included in another group of users that do not form a contact list, in which case the indication of the common characteristics may be presented on a standalone interface. For example, identifiers of the users with matching electronic content may be displayed in the participant list in a special group, or with nearby indications of the matching content. During operation, the client device 108 Upon receipt of this request from the client device 108 In one implementation, the client device 108 The client devices 108 The away message repositories 112 The user of the client device 108 In one implementation, the away message repositories 112 In some implementations, the IM application 110 In some implementations, the users of the client devices 108 Referring to The participant list interface 200 includes a text box 205 that contains the participant list for the given user, who is identified by an identifier “MyUser,” as indicated in the title bar 203 of the participant list interface 200. The participant list in the participant list interface 200 includes multiple identifiers 210 Each of the identifiers 210 The identifiers within the participant list shown by participant list interface 200 are organized into multiple groups 215 The participant list interface 200 also includes controls 220 that enable the given user to communicate with the other selected users corresponding to the identifiers 210 The participant list interface 200 also includes controls 225 that enable the given user to access other information not directly related to sending and receiving instant messages. For example, the given user may use the controls to access e-mail messages or other special features of the instant messaging system. The given user also may use the controls 225 to modify preferences for the participant list interface 200. Referring to The message list 305 includes a label for each of the away messages. When one of the labels is selected from the message list 305, a corresponding away message is displayed in the message text box 310. In addition, selecting a label from the message list 305 identifies a corresponding away message for distribution to other users desiring information describing the user. Selecting the remove button 325 after one of the away messages has been selected from the list 305 causes a corresponding away message to be removed from the set of away messages. Consequently, the selected label is removed from the list 305. Referring also to The away message specification interface 400 includes a label text box 405, a message text box 410, and text controls 412 with which the away message may be specified. A checkbox 422 causes the away message to be posted to a web log (blog) of the user when selected. A checkbox 415 causes the away message to be saved for later use when selected. Selecting a button 425 indicates that specification of the away message is complete, and selecting a button 430 dismisses the interface 400 without using the away message. A label for the away message may be specified in the label text box 405. If the away message is added to the set of away messages, the label specified in the label text box 405 is listed in the message list 305. The text of the away message may be specified in the text box 410. The text controls 412 may be used to change the appearance of the text included in the text box. For example, the size, foreground color, background color, and typeface of the text may be modified with the controls 412. In addition, special characters and features, such as emoticons and hyperlinks may be inserted into the text with the controls 412. Selecting the checkbox 415 causes the away message to be posted to a blog of the user. In one implementation, an indication of the time at which the away message was specified with the interface 400 also may be posted to the blog. Posting away messages to the blog of the user as the away messages are specified provides a history of previously specified away messages. Because each away message includes information describing the user, the blog includes historical information describing the user at various points in time. Access to the blog, or to particular away messages included in the blog, may be limited by privacy preferences set by the user. For example, the user may indicate that the blog is accessible to all users, to no users, or only to users included in the user's participant list. Selecting the checkbox 420 causes the away message to be added to the set of away messages displayed in the interface 300. Specifically, the label specified in the label text box 405 is listed in the message list 305, and the text of the away message specified in the text box 410 may be displayed in the message text box 310 when the label is selected from the list 305. Selecting the button 425 indicates that specification of the away message is complete. As a result, the away message may be provided to users desiring information describing the user. In one implementation, selecting the button 425 selects the away message for distribution to the users and also adds the away message to the set of away messages reflected by the interface 300. In another implementation, selecting the button 425 simply adds the away message to the set of away messages. In such an implementation, the user may use the interface 300 to select the away message for distribution, as described above. Selecting the button 430 discards the away message that has been specified with the interface 400. For example, if a new message is being created, then the entire message is discarded when the button 430 is selected. If an existing away message is being edited, then changes made to the existing away message are discarded when the button 430 is selected. Selecting either of the buttons 425 and 430 causes the interface 400 to be dismissed. Referring to Referring to The instant messaging interface 600 includes a message history box 605 that lists the instant messages sent between the sender and the recipient. The message history box 605 also may be referred to as a message transcript box 605. Each message is presented with an indication of an identifier by which the sender or the recipient is identified as the sender of the message. Each message listed in the message history box 605 also includes the text of the instant message sent by the sender or the recipient. For example, the message history box 605 includes a message 610 sent by a user with a screen name “MyUser” and a message 615 sent by a user with a screen name “Buddy1.” In one implementation, each message listed in the message history box 605 includes a time stamp of when the message was sent. The users that sent the messages 610 and 615 are the recipient and the sender, respectively. In some implementations, the message history box may include automatically sent messages that were not specified manually by the sender of the recipient. For example, the automatically sent messages may inform the recipient that the sender has not used the instant messaging interface 600 for more than a threshold amount of time. In typical implementations, the message history box 605 includes only those instant messages sent between the sender and the recipient after the interface 600 was displayed initially. In other implementations, the instant messages reflected in the message history box 605 may be saved when the interface 600 is dismissed, for example, such that the message history box 605 may be repopulated with those instant messages when the interface 600 is displayed again at a later time. The instant messaging interface 600 also includes a message specification box 620 in which the sender may specify a message to be sent to the recipient. The sender may enter text to be sent to the recipient in the message specification box 620. The instant message interface 600 includes a set of format controls 625 that may be used to format the text entered in the message specification box 620. More particularly, the controls in the set of format controls 625 enable the user to change the size, foreground color, background color, style, and effects of the text entered in the message specification box 620. The set of format controls 625 also includes controls for inserting objects that are not plain text, such as hyperlinks and emoticons, into the message specification box 620. After a message has been specified in the message specification box 620, the message may be sent by selecting a send button 625 included in a second control set 630. After the send button 635 has been selected, the text that has been entered in the message specification box 620 is sent to the recipient, and the message specification box 620 is cleared. The message is added to the message history box 605. The message also is displayed in a message history box 605 of an instance of the instant messaging interface 600 being viewed by the recipient. Also included in the second control set 630 are controls for warning instant message senders, blocking instant messages from particular senders, or adding the sender to a participant list used by the sender. The recipient with the identifier “Buddy1” may be unavailable to send and receive instant messages at a time when the sender with the identifier “MyUser” sent the message 610. As a result, the recipient may have chosen a descriptive message to be sent automatically to other users, such as the sender, that send instant messages to the recipient. The message 615 may represent such a descriptive message, which is why the message 615 is identified as an “AutoResponse from Buddy1.” The message 615 may be processed or simply presented to the sender with the instant messaging interface 600. The sender may continue to send instant messages to the recipient, if so desired. Referring to Identifiers 705 In some implementations, a user of the interfaces 500, 600, and 700 may be enabled to submit comments on the away messages and profiles displayed in the interfaces 500, 600, and 700. The comments may be made available to other users that view the displayed away messages and profiles. For example, the comments may be included as part of the away messages and profiles, which will result in their automatic distribution to the other users. Referring to The client device accesses a first electronic message describing a first user from a set of users (805). The client device also accesses a second electronic message describing a second user from the set of users (810). The first and second electronic messages may include current and previous away messages of the first and second users, profiles of the first and second users, comments on the away messages or the profiles, a blog of previous away messages of the first and second users, or indications of the locations of the first and second users. In addition, the electronic content may include other information related to the first and second users, such as information included in user information feeds for the first and second users, histories of messages exchanged with the first and second users, and other information of interest to the first and second users. If the first or second electronic message includes a hyperlink, information located at the hyperlink may be accessed and included as part of the electronic message. Consequently, the electronic messages may indicate events, activities, characteristics, and locations of the first and second users. The client device may access the first and second electronic messages from away message repositories corresponding to client systems used by the first and second users. For example, if the first user uses the client system 108 In one implementation, the set of users may be a participant list used by the user for whom the process 800 is being executed. In such an implementation, the first user or the second user may be the user of the participant list rather than a user included in the participant list. In another implementation, the set of users may be a set of users that share a common characteristic, such as a set of users that attended a particular college or that work for a particular employer. Alternatively or additionally, the first and second users may be selected based on their use of an electronic messaging application, such as an instant messaging application. For example, the first and second users may be selected based on times since they were last available to send and receive electronic messages, times at which they last sent electronic messages, frequencies with which they send electronic messages, amounts of time for which they have been sending electronic messages, formats of the electronic messages that they send, content of electronic messages that they send, measurements of their popularity, or other indicators of a manner in which the first and second users exchange instant messages. The first and second users may be selected manually by the user, or automatically by the client device, for example, while processing the entire set of users. The first user or the second user may be selected in response to a change in a corresponding electronic message. The first or second user may be selected in such a case to enable determination of whether the change in the first or second electronic message results in the first and second electronic messages having common content. The client device analyzes content included in the first and second electronic messages (815). For example, the client device may extract text included in the electronic messages. If the accessed electronic messages include content that is not textual, then the client device may generate a textual description of the non-textual content. For example, if the accessed electronic messages include audio data, the client device may convert spoken words from the audio data to text. As another example, if the accessed electronic messages include video data or an image, the client device may generate a description of what is depicted in the video data or the image. In addition, the client device may access metadata associated with the electronic message or the components thereof. If the electronic messages are away messages, then the client device also may analyze the titles of the away messages. The client device may analyze the content included in the first and second electronic messages to identify events, activities, characteristics, and locations of the first and second users. The client device determines whether at least a portion of content is common to both the first and second electronic messages (820). For example, the client device determines whether a portion of the text included in first electronic message matches a portion of the text included in the second electronic message. The client device may use standard search techniques when determining whether the first and second electronic messages include common content. Two portions of text may be said to match if the two portions exactly match, or if the two portions have similar meanings. For example, the portions “at the bar on Lake Street” and “going to the Lake Street Pub” may be said to match because the two portions have similar meanings. The client device also may determine that a portion of content is common to both the first and second electronic messages if the first and second electronic messages both include a particular portion of non-textual content, such as an image. The client device also may determine whether the first and second electronic messages indicate a common event that both the first and second users are attending, an activity in which the both the first and second users are participating, or a common characteristic shared by the first and second users. The client device also may determine whether the first and second electronic messages indicate a common location of both the first and second users, for example, because the first and second users are within a threshold distance from one another. In other implementations, other metrics may be used to determine whether the first and second electronic messages include common content. The client device then provides an indication of whether the first and second messages include common content (825). In one implementation, the client device provides a visual indication of the common content. For example, if the set of users forms a participant list, the visual indication may be presented on a participant list interface in which the participant list is presented to the user, such as the interface 200 of In another implementation, the client device may provide an audible indication of the common content. For example, the client device may audibly read the identifiers of the first and second users or the common content to the user. The client device also may present a pre-recorded message to the user. Alternatively or additionally, the client device may leave a voicemail for the user in which the identifiers of the first and second users or the common content are read. In addition, the client device may provide an indication of the first and second messages. For example, the client device may provide an indication of the common content of the first and second messages. In some implementations, the client device may provide an indication of the common content in response to a request for the common content from the user. In other implementations, the indications of the first and second users that are presented when the first and second users maintain the common content may be selected to reveal the first and second messages. The described implementation of the process 800 identifies content shared between a set of two users. Other implementations of the process 800 may be used to identify content shared among user sets of other sizes. For example, another implementation of the process 800 may be used to identify whether a portion of content included in electronic messages associated with three users is common to all three electronic messages, and to provide an indication of the common content. Furthermore, the process 800 may be executed multiple times for multiple different sets of users, or for multiple different subsets of the set of users. Indications of common content for each of the multiple different sets may be provided simultaneously. For example, in implementations where the set of users is a participant list, indications of common content may be provided on the participant list interface as different groups, icons, or colors of highlighting. The process 800 may be executed automatically or in response to a user request. For example, the process 800 may be executed periodically on a recurring basis. Each time that the process 800 is executed, the user may be asked to confirm whether an indication of users that maintain common content should be presented. Furthermore, a user may be enabled to indicate that the process 800 should not be executed automatically or without a user request. Each execution of the process 800 may update an indication of users that maintain common content that was provided in response to a previous execution of the process 800. For example, an execution of the process 800 may result in users being added to or removed from a group in the participant list that was created in response to a previous execution of the process 800. If a group becomes empty, then the group may be removed from the participant list automatically. More generally, indications of users that maintain common content may be presented until the user indicates that they no longer should be presented, for a predetermined amount of time, or while other criteria for presentation remain satisfied. Referring to For example, in the implementation illustrated in In the implementation illustrated in Referring to In the implementations illustrated in Referring to Referring to The IM server detects that a first user included in a participant list of a user is in physical proximity to a geographic location (1005). The IM server also detects that a second user included in the participant list of the user is in physical proximity to the geographic location (1010). The geographic location may be a building, a street, an intersection, a business, a residence, or another location. The first and second users both may be in physical proximity to the geographic location if the first and second users are both within a threshold distance of the geographic location or of one another. The IM server may detect the geographic locations of the first and second users as the geographic locations of mobile devices used by the first and second users. The mobile devices may include Global Positioning System (GPS) receivers that may be used to detect the geographic locations of the mobile devices. Alternatively or additionally, the mobile devices may determine their geographic locations through triangulation based on distances to at least three systems with which the mobile devices communicate, such as cellular telephone towers. In one implementation, the mobile devices may provide the geographic locations to the IM server directly. In another implementation, the mobile devices may include indications of the geographic locations in electronic messages including information describing the first and second users, and the IM server may access the geographic location from the electronic messages. In some implementations, the first and second users may be enabled to modify or augment the automatically identified geographic locations, for example, with a name. Alternatively or additionally, the first and second users may manually specify the geographic locations. For example, the first and second users may include indications of the geographic locations in the electronic messages, and the IM server may access the electronic messages to detect the geographic locations. The IM server may access the electronic messages from away message repositories corresponding to client systems used by the first and second users. For example, if the first user uses the client system 108 The first and second users may be selected manually by the user of the participant list. Alternatively or additionally, the first and second users may be selected automatically by the client device, for example, while processing the entire participant list. In one implementation, the first user or the second user is the user of the participant list rather than a user included in the participant list. The first and second users may or may not be available to send and receive electronic messages. The first user or the second user may be selected in response to a change in a corresponding electronic message. In such a case, the first or second user may be selected to enable determination of whether the change in the first or second electronic message results in the first and second electronic messages having common content. Without first receiving a request from the user of the participant list, the IM server provides an indication that the first and second users are each in physical proximity to the geographic location (1015). In one implementation, the client device provides a visual indication of the common location on a participant list interface in which the participant list is presented to the user, such as the interface 200 of The IM server may continue to detect the geographic locations of the first and second users, as described above. The IM server may automatically update the indication that the first and second users are each in physical proximity to the geographic location based on the locations of the first and second users (1020). For example, the IM server may detect that one or both of the first and second users has moved away from the geographic location. In such a case, the IM server may remove or stop providing the indication that the first and second users are each in physical proximity to the geographic location. The described implementation of the process 1000 identifies a location shared among a set of two users. Other implementations of the process 1000 may be used to identify a location shared among sets of users of other sizes. For example, another implementation of the process 1000 may be used to identify whether three users are in a common location, and to provide an indication of the common location. Furthermore, the process 1000 may be executed multiple times for multiple different sets of users included in the participant list. Indications of a common location for each of the multiple different sets may be provided simultaneously. For example, indications of each of the common locations may be provided on the participant list interface as different groups, icons, or colors of highlighting. Referring to An additional group has been created in the participant list 205 for each of the three sets of users. For example, a group 215 Referring to The GPS application 1205 is configured to determine a location of the client system 108 The map server 1215 provides addresses or other representations of locations identified by the GPS application 1205. For example, the GPS application 1205 may provide the map server 1215 with the latitude and longitude coordinates identifying the location of the client system 108 The directory server 1220 also provides information about the location of the client system 108 The common name repository 1225 stores alternative representations of the locations of the client system 108 The processor 1305 is capable of processing instructions for execution within the computing device 1300. In one implementation, the processor 1305 is a single-threaded processor. In another implementation, the processor 1305 is a multi-threaded processor. The processor 1305 is capable of processing instructions stored in the memory 1310 or on the storage device 1325 to display graphical information for a GUI on an external input/output device that is coupled to the input/output controller 1315. The memory 1310 stores information within the computing device 1300. In one implementation, the memory 1310 is a computer-readable medium. In one implementation, the memory 1310 is a volatile memory unit. In another implementation, the memory 1310 is a non-volatile memory unit. The input/output controller 1315 manages input/output operations for the computing device 1300. In one implementation, the input/output controller 1315 is coupled to an external input/output device, such as a keyboard, a pointing device, or a display unit that is capable of displaying various GUIs, such as the GUIs shown in the previous figures, to a user. The GPS receiver 1320 is similar to the GPS application 1205 of The computing device 1300 uses the network adapter 1325 to communicate with other network devices. If, for example, the client device 108 The storage device 1330 is capable of providing mass storage for the computing device 1300. In one implementation, the storage device 1330 is a computer-readable medium. In various different implementations, the storage device 1330 may be a floppy disk device, a hard disk device, an optical disk device, or a tape device. In one implementation, a computer program product is tangibly embodied in an information carrier. The computer program product contains instructions that, when executed, perform one or more methods, such as those described above. The information carrier is a computer- or machine-readable medium, such as the memory 1310, the storage device 1330, or a propagated signal. A number of implementations have been described. Nevertheless, it will be understood that various modifications may be made. Accordingly, other implementations are within the scope of the following claims. Displaying electronic information in an instant-messaging application includes accessing a first electronic message providing information describing a first user that has an identifier included in a set of identifiers of users of an instant messaging application. A second electronic message providing information describing a second user that has an identifier included in the set of identifiers of users of an instant messaging application is accessed. Content contained within the first and second messages is analyzed to determine that at least a portion of content is common to the first and second electronic messages. Based upon the content analysis, an indication that the first and second messages include common content is provided to the user. Alternatively or additionally, an indication that two users are in physical proximity to a geographic location may be provided in response to detecting that the two users are within a threshold distance from the geographic location. 1. A method of displaying electronic information in an instant-messaging application, the method comprising:
accessing a first electronic message that provides information describing a first user that has an identifier included in a set of identifiers of users of an instant messaging application; accessing a second electronic message that provides information describing a second user that has an identifier included in the set of identifiers of users of an instant messaging application; analyzing content contained within the first and second electronic messages to determine that at least a portion of the content is common to both the first and second electronic messages; and based upon the content analysis, indicating to a user whether the first and second electronic messages include common content. 2-42. (canceled)CROSS-REFERENCE TO RELATED APPLICATIONS
TECHNICAL FIELD
BACKGROUND
SUMMARY
DESCRIPTION OF DRAWINGS
DETAILED DESCRIPTION
















