US20140074612A1 - System and Method for Targeting Information Items Based on Popularities of the Information Items - Google Patents

System and Method for Targeting Information Items Based on Popularities of the Information Items Download PDF

Info

Publication number
US20140074612A1
US20140074612A1 US14/076,894 US201314076894A US2014074612A1 US 20140074612 A1 US20140074612 A1 US 20140074612A1 US 201314076894 A US201314076894 A US 201314076894A US 2014074612 A1 US2014074612 A1 US 2014074612A1
Authority
US
United States
Prior art keywords
information
user
information items
conversation
items
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US14/076,894
Inventor
Uma Mahadevan
Jacob Samuels Burnim
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Priority to US14/076,894 priority Critical patent/US20140074612A1/en
Publication of US20140074612A1 publication Critical patent/US20140074612A1/en
Assigned to GOOGLE INC. reassignment GOOGLE INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: BURNIM, JACOB SAMUELS, MAHADEVAN, UMA
Assigned to GOOGLE LLC reassignment GOOGLE LLC CHANGE OF NAME (SEE DOCUMENT FOR DETAILS). Assignors: GOOGLE INC.
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0261Targeted advertisements based on user location

Definitions

  • the disclosed embodiments relate generally to providing information to computer users, and in particular, to provide information items to a computer user based on their popularity.
  • online advertising seeks to provide advertisements to those individuals most likely to respond to the advertisement in a desired way, for example, by purchasing a product or service.
  • One way advertisers target a user is to provide advertisements that are related to the content of a web page that the user is viewing.
  • This application concerns additional methods and systems for targeting online advertisements to individuals so as to improve the likelihood that the individuals receiving the online advertisements will be sufficiently interested in the advertisements to click through links to the advertisements or associated content.
  • a method of selecting information items in connection with an electronic message includes selecting a plurality of information items satisfying a predefined popularity condition, each of the information items having an associated keyword, and identifying one or more of the selected information items whose associated keyword is found in the electronic message.
  • a set of candidate items are selected periodically based on their respective popularity metrics.
  • the popularity metric of an information item may be its click-through rate during a predefined time period.
  • Each candidate information item has one or more keywords and the number of the keywords found in the electronic message determines the item's relevancy to a user accessing the message.
  • the method selects a subset of the information items using user geographical information associated with a user accessing the electronic message from a client and at least one of the selected information items is targeted to users at a location corresponding to the user geographical information.
  • An aspect of the present disclosure provides a method of selecting information items in connection with electronic messages, comprising, on a computing system having one or more processors that execute one or more programs stored in a memory of the computing system, obtaining a request for a conversation from a user, the conversation including a plurality of electronic message. Furthermore a response to request for the conversation is made. The response includes selecting an electronic message from the plurality of electronic messages in the conversation. Moreover, a plurality of information items for a group of users including the user is selected based on information identifying a communication channel through which the group of users communicate with the computing system. The plurality of information items is associated with a keyword included in the electronic message. The plurality of information items is and the conversation is formatted for provision to the user.
  • the selecting of the plurality of information items is further based on (i) user geographical information obtained from the request and (ii) a measure of popularity of the plurality of information items.
  • the user geographical information is derived from an IP address of the client device associated with the user.
  • the group of users comprises one of a plurality of distinct groups of users for which the computing system has access to popularity information for respective information items.
  • the user geographical information for the user is derived from an IP address of the client device associated with the user and at least one of the information items is an item specifically targeting users located in a region corresponding to the user geographical information.
  • geographical information for the user is derived from an IP address of the client device associated with the user and wherein at least one of the information items is selected if the information item targets users located in a region corresponding to the user geographical information.
  • the user geographical information for the user is derived from an IP address of the client device associated with the user and at least one of the information items is selected in accordance with click-through rate information for users located in a region corresponding to the user geographical information.
  • the information items include at least one advertisement.
  • the selecting the plurality of information items is based on, at least on part, a relevancy metric quantifying relevancy of the information items to the selected electronic message.
  • the selecting is based on, at least in part, a measure of popularity of the plurality of information items, where the computing system has access to popularity information for respective information items, and where the plurality of information items are selected from a set of candidate information items.
  • the measure of popularity of the information items corresponds to values of a popularity metric associated with the candidate information items.
  • the popularity metric for each of the candidate items is a cumulative click-through rate for the item during a predefined time period.
  • the popularity metric for each of the candidate items is based on a set of geography-specific click-through rates for the item during a predefined time period.
  • the information items are selected if one of the geography-specific click-through rates for the item, corresponding to user geographical information associated with a user accessing the selected electronic message from a client device, is above a predefined threshold.
  • Another aspect provides a computer system for serving information items to a user in connection with an electronic message comprising a memory, one or more processors, and at least one program, stored in the memory and executed by the one or more processors.
  • the at least one program further instructions for obtaining a request for a conversation from a user, the conversation including a plurality of electronic messages.
  • the at least one program also includes instructions for responding to the request for the conversation, the responding including (A) selecting an electronic message from the plurality of electronic messages in the conversation; (B) selecting a plurality of information items for a group of users including the user based on information identifying a communication channel, through which the group of users communicate with the computing system, wherein the plurality of information items is associated with a keyword included in the electronic message; and (C) formatting the plurality of information items and the conversation for provision to the user.
  • the selecting of the plurality of information items is further based on (i) user geographical information obtained from the request and (ii) a measure of popularity of the plurality of information items, where the user geographical information is derived from an IP address of the client device associated with the user, and where the group of users comprises one of a plurality of distinct groups of users for which the computing system has access to popularity information for respective information items.
  • the user geographical information for the user is derived from an IP address of the client device associated with the user, and at least one of the information items is an item specifically targeting users located in a region corresponding to the user geographical information.
  • the user geographical information for the user is derived from an IP address of the client device associated with the user, and at least one of the information items is selected if the information item targets users located in a region corresponding to the user geographical information.
  • user geographical information for the user is derived from an IP address of the client device associated with the user, and at least one of the information items is selected in accordance with click-through rate information for users located in a region corresponding to the user geographical information.
  • information items include at least one advertisement.
  • Another aspect provides a non-transitory computer readable storage medium storing one or more programs, the one or more programs for serving information items to a user in connection with an electronic message, the one or more programs comprising instructions, which when executed by a computer system, cause the computer system to obtain a request for a conversation from a user, the conversation including a plurality of electronic messages.
  • a method including (A) selecting an electronic message from the plurality of electronic messages in the conversation; (B) selecting a plurality of information items for a group of users including the user based on information identifying a communication channel, through which the group of users communicate with the computing system, where the plurality of information items is associated with a keyword included in the electronic message; and (C) formatting the plurality of information items and the conversation for provision to the user.
  • the selecting of the plurality of information items is further based on (i) user geographical information obtained from the request and (ii) a measure of popularity of the plurality of information items, wherein the user geographical information is derived from an IP address of the client device associated with the user, and wherein the group of users comprises one of a plurality of distinct groups of users for which the computing system has access to popularity information for respective information items.
  • user geographical information for the user is derived from an IP address of the client device associated with the user, and at least one of the information items is an item specifically targeting users located in a region corresponding to the user geographical information.
  • FIG. 1 is a block diagram of an exemplary environment that generates targeted information items based on their popularities in accordance with some embodiments of the present invention.
  • FIG. 2 is a flow diagram of a process of generating targeted information items in response to a message access request in accordance with some embodiments of the present invention.
  • FIG. 3 illustrates an exemplary process of identifying most popular advertisements and their associated keywords in accordance with some embodiments of the present invention.
  • FIG. 4 is a flow diagram of a process of identifying popular advertisements for an electronic message requested by a user in accordance with some embodiments of the present invention.
  • FIG. 5 is a block diagram of an exemplary client in accordance with some embodiments of the present invention.
  • FIG. 6 is a block diagram of an exemplary information server in accordance with some embodiments of the present invention.
  • FIG. 7 is a block diagram of a database for advertisements or other information items.
  • FIG. 1 is a block diagram of a system 100 for implementing some embodiments of the invention.
  • One or more clients 102 can be connected to a communication network 104 .
  • the communication network 104 can be connected to an information service 106 .
  • the information service 106 can include a conversation engine 110 , an updater engine 112 , a message index 114 , a query engine 116 , a message database 118 , one or more auxiliary services servers 120 , an SMTP gateway 122 , a targeted information processor 124 , and popular keywords information 126 .
  • the targeted information processor 124 can be connected to an advertisement server 128 and/or one or more information item servers 130 .
  • the client 102 can be any of a number of devices (e.g., a computer, an internet kiosk, a personal digital assistant, a cell phone, a gaming device, a desktop computer, or a laptop computer) and can include a client application 132 , a client assistant 134 , and/or client memory 136 .
  • the client application 132 can be a software application that permits a user to interact with the client 102 and/or network resources to perform one or more tasks.
  • the client application 132 can be a browser (e.g., Firefox) or other type of application that permits a user to search for, browse, and/or use resources (e.g., web pages and web services) on the client 102 and/or accessible via the communication network 104 .
  • the client assistant 134 can perform one or more tasks related to monitoring a user's activities with respect to the client application 132 and/or other applications, searching or browsing for resources (e.g., files) on the client 102 , and processing information received from or being sent to information service 106 .
  • the client assistant 134 can be part of the client application 132 , available as a plug-in to the client application 132 (provided, for example, from various on-line sources), or provided as a stand-alone program.
  • the client assistant can be a web-based messaging application such as the client executable portion of the Google Gmail product.
  • a client memory 136 can store system information and information about a user, among other things.
  • the communication network 104 can be any local area network (LAN) and/or wide area network (WAN), such as an intranet, an extranet, or the Internet. It is sufficient that the communication network 104 provides communication capability between the clients 102 and the information service 106 .
  • the communication network 104 uses the HyperText Transport Protocol (HTTP) to transport information using the Transmission Control Protocol/Internet Protocol (TCP/IP).
  • HTTP permits client computers to access various resources available via the communication network 104 .
  • the various embodiments of the invention are not limited to the use of any particular protocol.
  • resource refers to any piece of information or service that is accessible via a Uniform Resource Locator (URL) and can be, for example, a web page, a document, an email message, an Instant Messaging (IM) message, a Short Message Service (SMS) message, a transcribed voice message, a database, an image, or a computational object.
  • URL Uniform Resource Locator
  • IM Instant Messaging
  • SMS Short Message Service
  • the conversation engine 110 can respond to a variety of requests from the client assistant 134 related to messages and return conversation-based responses via its connection with the communication network 104 .
  • a conversation may include one or more relevant messages relating to a conversation topic.
  • Various criteria can be used to determine which messages are parts of each distinct conversation. For example, an analysis can be made of the contents of messages received and/or sent by a user. Messages whose contents are found to be related can be grouped together.
  • a thread identifier found in a message header can also be used to identify related messages.
  • a subject line in the message header can be used to identify related messages. The senders and recipients of the messages are participants in the conversation.
  • All messages directed to a user of the information service 106 can be grouped into a plurality of conversations and presented to the user in a conversation-based format, individually or jointly.
  • a conversation list view a user can see in a summary form a list of conversations in which the user participates.
  • a conversation view the user can see in an expanded form one or more of messages associated with a particular conversation.
  • the information service 106 can create a snippet of a conversation or a message.
  • a snippet provides a user with a preview of the contents of the conversation or message without the user having to open the conversation or the message.
  • the snippet can be generated from the most recent message in the conversation.
  • the snippet can also be extracted from the first message (i.e., the oldest message) in the conversation.
  • the snippet can also be extracted from all the messages in the conversation according to predefined heuristic rules, e.g., listing a set of keywords appearing most frequently in the conversation.
  • the information service 106 can create a snippet for each conversation in the list, or for each conversation is a displayed portion of the list, the snippet including a portion of the conversation that matches user-submitted query terms.
  • These snippets may be similar in one or more respects to snippets included in search results returned by a search engine, such as the Google search engine.
  • a snippet can be generated for one or more messages in the conversation.
  • the SMTP gateway 122 is also connected to the communication network 104 .
  • the SMTP gateway 122 can be directly involved in receiving and sending messages between the information service 106 and other email systems, messaging systems or information services.
  • the SMTP gateway 122 for example, transmits and receives messages using the simple mail transfer protocol (SMTP).
  • SMTP simple mail transfer protocol
  • the SMTP gateway 122 can receive a new message from the communication network 104 and send the message to conversation engine 110 for additional processing. Additionally, the SMTP gateway 122 can receive messages from the conversation engine 110 and then transmit (via the communication network 104 ) those messages to recipient addresses specified in the messages.
  • the one or more auxiliary services servers 120 can provide additional services to the conversation engine 110 .
  • the auxiliary services servers 120 include a spam detection module 121 for detecting and processing spam, an attachment management module 123 for managing the storage and retrieval of documents attached to messages, and a geographical information module 125 for extracting user geographical information from a login or message access request.
  • the information service 106 when the information service 106 receives a login request initiated by a user from a client 102 , it extracts an IP address of the client from the login request.
  • the IP address is typically a 32-bit digital number that uniquely identifies the client on the Internet.
  • the information service 106 includes an IP-Geo mapping database 127 .
  • the IP-Geo mapping database 127 includes many entries, each entry mapping one or more IP addresses to a specific geographical location. For example, the entry “171.64.*.* ⁇ Stanford, Calif. 94305” indicates that any IP address whose first eight bits correspond to the decimal value “171” and second eight bits correspond to the decimal value “64” refers to a computer located at Stanford, Calif. 94305.
  • the graphical information module 125 is responsible for converting the IP address of the client into the client user's geographical location. This geographical location is used subsequently by the advertisement server 128 and the information item server 130 for selecting one or more information items relevant to the user's geographical location.
  • the service provided by the geographical information module 125 and the IP-Geo mapping database 127 may be delegated to a geographical information server that is connected to the information service 106 .
  • the information service 106 Upon receiving a login or message access request, the information service 106 forwards the IP address included in the request to the geographical information server.
  • the geographical information server returns to the information service 106 the geographical location corresponding to the IP address.
  • the conversation engine 110 can be connected to the targeted information processor 124 .
  • the targeted information processor 124 can provide geo-targeted and/or content-targeted information for display to a user at client 102 .
  • the targeted information processor 124 can provide, for example, advertisements and/or other information items related to the user's messages being handled by the conversation engine 110 .
  • the messages include not only messages received by the user but also messages authored and sent by the user.
  • the advertisements may be only related to a user's geographical location, not to the message content at all. This scenario may be appropriate in some special circumstances, e.g., when the user is on a business trip and away from the location where the user usually logs into his or her account. Advertisements are herein defined to include information items, or links to information items, that offer or promote products, services, events, companies, organizations, ideas or the like.
  • the targeted information processor 124 can be connected to popular keywords information 126 .
  • the popular keywords information 126 includes a plurality of keywords associated with a set of advertisements deemed to be most popular by a group of users within a predefined time period.
  • the popular keywords information can be used to determine whether there are any popular advertisements whose associated keyword(s) are found in a message being processed by the conversation engine 110 .
  • popular advertisements may also have associated geographical locations, and a list of geographical locations associated with the popular advertisements may be compared with the user's current geographical location to determine whether there are any popular advertisements targeted at users at the same geographical location as the user.
  • the targeted information processor 124 may obtain popular advertisements and other popular information items from advertisement server 128 and information item server 130 , respectively.
  • FIG. 1 is exemplary.
  • the information service 106 contains a subset or superset of those elements illustrated in the figure.
  • FIG. 1 shows the information service 106 as a number of discrete elements, this figure is intended more as a functional description of the various features which may be present in the information service 106 than as a structural schematic of the various embodiments.
  • some elements shown separately could be combined and some elements could be further divided into sub-elements or parallel elements.
  • some separate elements in the figure could be implemented by a single server or module and some single elements could be implemented by one or more servers or modules.
  • the actual number of servers in information service 106 and how features are allocated among the servers will vary from one implementation to another, and may depend in part on the amount of traffic that the system must handle during peak usage periods as well as during average usage periods.
  • the message database 118 can be implemented using a plurality of servers if the information service 106 manages a large volume of messages associated with a large number of user accounts.
  • the client 102 can include client application 132 and client assistant 134 .
  • Client application 132 can provide a window to be displayed on a displaying device (e.g., a monitor) for rendering conversations and targeted information.
  • the conversations, targeted information and messages in the conversations can be encoded using HyperText Markup Language (HTML), XML, or any other appropriate markup language or encoding scheme, and then rendered by the client application 132 .
  • HTML HyperText Markup Language
  • XML XML
  • the information service 106 identifies conversations in the user's account in accordance with the user's request and transfers them as well as a set of display instructions back to the client 102 .
  • Client assistant 134 can, in response, generate one or more forms in accordance with the display instructions, where each form can include information of some of the conversations. The forms can then be submitted to and rendered by client application 132 . In another embodiment, client assistant 134 may alternatively exist and operate in the information service 106 .
  • the information service 106 and client assistant 134 work in concert to allow a user to view, compose, send and/or search messages in the user's message account and to present the search results in a highly intuitive fashion.
  • the information service 106 extracts information from a user's message account by processing messages received, sent and/or being composed by the user, and the client assistant 134 assists in rendering the information prepared by the information service 106 .
  • a different division of duties between the information service 106 and the client assistant 134 can be implemented. Because many of the tasks performed by the system can be performed by either the information service 106 or the client assistant 134 or by the two working together, these two components are sometimes herein referred to jointly as the “conversation system”.
  • the conversation system can provide at least two different views, including a conversation list view and a conversation view as mentioned briefly above.
  • a conversation list view a plurality of conversations can be displayed where each conversation can be displayed in a summary form.
  • each conversation can be represented by a number of conversation elements.
  • the conversation elements can include one or more of: a number indicating the number of messages in the conversation, a list of one or more of the identifiers or names of the senders of messages in the conversation, a conversation description (e.g., a subject line of the message), a date/time value of the conversation (e.g., a date/time value of the last received message in the conversation), and a snippet from one or more of the messages in the conversation.
  • each conversation can be represented as a single row in the conversation list view.
  • one or more messages from a conversation can be displayed.
  • Each message can be displayed in one of a number of various modes, for example an expanded mode, a compacted mode, or a compressed mode.
  • an expanded mode the body of the message can be displayed along with, for example, header information including names or other identifiers of the sender and the recipients of the message, a date/time value indicative of when the message is received or sent, routing information, and other properties of the message.
  • An expanded mode can be used, for example, for messages which are marked as “unread.”
  • a compacted mode the message body can be hidden and a snippet from the message is provided in its place. The snippet can be chosen to occupy less space than the body.
  • a snippet can be chosen to occupy only one line in a display window.
  • the compacted mode can be used for messages which have been read or marked as read.
  • the compacted mode allows messages in a conversation to be displayed within the same window more densely than if the expanded mode were used.
  • a message can be represented with a small bar.
  • the small bar can contain no message information.
  • the visual effect of such a mode can be that multiple compressed messages appear like the edges of cards in a deck of cards.
  • a user can toggle between the various display modes by selecting a message or using various controls in the display window.
  • additional, targeted information can be displayed in the display window.
  • additional, targeted information can be displayed in the display window.
  • one or more advertisements relevant to, or related to, one or more of the messages in the conversation can be displayed.
  • one or more other types of information can be displayed.
  • Such other information can include, but is not limited to news items or links to news items, map links, phone numbers, links to product information, stock prices or links to stock prices, links to weather forecasts, web page links, dictionary entries or links to dictionary entries, images or links to images, RSS feeds or links to RSS feeds, links to blog (web log) events, links to user polls, links to files or other content on the client 102 , and other types of information.
  • RSS feeds can be content distributed from various sources on a network (e.g., the Internet).
  • RDF Site Summary (RSS) (and sometimes, Real Simple Syndication) is an XML-based lightweight multi-purpose extensible metadata description and syndication format. RSS is typically used for distributing various types of content to a number of receivers simultaneously.
  • News items can be news items from one or more sources.
  • Blog events can be events generated from one or more web logs (blogs).
  • User polls can be polls that the user may participate in which may come from a variety of sources.
  • Stock prices can be stock prices of companies whose names or stock ticker symbols are mentioned in the conversation.
  • Weather forecasts can be weather forecasts of locations like cities or states whose names are directly or indirectly referred to by a message in the conversation.
  • FIG. 2 illustrates a process of generating targeted information items in response to a message access request in accordance with some embodiments of the present invention.
  • the user's geographical information is identified ( 202 ).
  • the user's geographical information may be generated and stored in the information service 106 when the user logs into his or her account at the information service 106 .
  • the information service 106 extracts from the message access request the IP address of the requesting client and identifies the user's geographical information using the IP address.
  • a conversation including the requested message(s) is identified ( 204 ).
  • the requested message(s) may include an identifier of a conversation associated with the message.
  • a conversation can include one or more related messages.
  • the identification at 204 can identify all of the messages in a conversation or selected messages in a conversation.
  • Various selection criteria can be used when identifying selected messages in a conversation. For example, messages can be identified based on whether they were authored and sent by the user. Alternatively, messages can be identified based on whether a message was authored by the user within a predefined time period (e.g., the messages authored within the last 24 hours are identified).
  • a conversation may be associated with a pool of messages of different types received or sent by the user, such as email messages, IM messages, transcribed voice messages, SMS messages and search query results. In this event, messages can be identified based on whether a message is of a particular type or types or a combination of two or more of the criteria mentioned above.
  • FIG. 2 For illustrative purposes, the following discussion assumes that the process of FIG. 2 is triggered by a user's act of clicking a conversation link in a conversation list view and is applied to one or more messages identified as members of the same conversation. But one skilled in the art will appreciate that the process of FIG. 2 could be triggered by other types of events as well.
  • the information service 106 Before the identified messages are transferred back to the requesting client, the information service 106 needs to determine if there are any popular advertisements targeted at the identified messages or targets at the user's current geographical location ( 206 ). Within the information service 106 , the targeted information processor 124 is typically responsible for determining whether there are any popular advertisements associated with a requested message by checking if any advertisement-related keyword is found in the message. Optionally, the targeted information processor 124 may also determine whether there are any popular advertisements associated with the user's geographical location (or alternately stated, that are targeted at users at the user's current geographical location).
  • the information service 106 may finish the process by bypassing the remaining steps 208 - 212 as indicated by line 207 of FIG. 2 .
  • the message or conversation identified at 204 may be displayed to the requesting user without being accompanied by any targeted information items.
  • the message or conversation identified at 204 may be displayed to the requesting user without being accompanied by any popular advertisements. Additional processes may be used to identify other targeted information to display to the requesting user along with the identified message or conversation.
  • the information service 106 performs operations 208 , 210 , 212 in order to obtain those targeted information items. Note that operation 206 may be delegated to the advertisement server 128 or the information item server 130 in some embodiments.
  • the information service 106 sends the user geographical information and the messages to the information servers ( 208 ).
  • the information servers e.g., the advertisement server 128 , search through a pool of candidate information items for those items that are most relevant to the user geographical information and the message content.
  • the information service 106 receives from the information servers a set of popular information items targeted at the user geographical information and/or the messages ( 210 ) and transfers these geo-targeted and/or content-targeted information items to the requesting client for display ( 212 ).
  • a more thorough description of the process of identifying relevant information items is provided below in connection with FIG. 4 .
  • the information service 106 may provide formatting information directing the display of the information obtained from the information servers.
  • the obtained information is preferably displayed in a manner consistent with the user's expectation. For example, if the obtained information is associated with a conversation or a message in the conversation requested by the user, it is simultaneously displayed next to the requested conversation or message in a corresponding conversation view. If the obtained information items are associated with a message just sent by the user and the user expects to return to the conversation list view, the information items may be displayed at the top of the conversation list view in order to attract the user's attention. It will be understood by one skilled in the art that the aforementioned schemes of rendering the obtained information items in a display device are exemplary. Other rendering schemes may be used in other embodiments. Typically, the information items are displayed at a location within an application or browser window that is prominent, but consistent with the normal experience that users have with a particular information service.
  • the task of identifying targeted information items is accomplished by, or primarily by the information service 106 .
  • the targeted information processor 124 that is responsible for conducting semantic analysis of the message contents.
  • the semantic analysis may include extracting concepts from the message contents, inferring from the concepts other relevant keywords, and grouping the concepts and keywords into categories.
  • the information servers 128 , 130 are only responsible for choosing advertisements matching the concepts, keywords and categories.
  • the information servers 128 , 130 play a more significant role in the process of identifying targeted information items.
  • this process is divided into two sub-processes: (1) periodically identifying a set of keywords associated with the most popular advertisements under certain circumstances; and (2) selecting those advertisements and other information items whose associated keywords appear in the message.
  • the one or more keywords associated with an advertisement may be the one or more keywords on which the provider of the advertisement has bid, as part of an auction process for determining placement of online advertisements. Keywords may be associated with other information items by automated content analysis or by human assignment of the keywords, or a combination of these techniques.
  • the relevancy of an on-line advertisement to a user viewing a web page or an email message depends on two factors: (1) how close the subject of the advertisement is to the web page or message content and (2) how likely the user is going to click the link to the advertisement when noticing its existence.
  • the first factor can be measured, e.g., by the frequencies that keywords associated with the advertisement are found in the web page or message content. When the number or percentage of words within a message that match keywords associated with an advertisement or information item reaches a predetermined threshold, the advertisement or information item is deemed relevant to that message.
  • the relevancy of the keywords to the message can be measured by the number of unique keywords present in the message.
  • the latter factor can be approximated by a popularity metric, such as the click-through rate of the advertisement during a predefined time period.
  • the click-through rate of an advertisement is defined as the number of times that users clicked on links to the advertisement divided by the number of times that the advertisement was displayed to different users during a predefined time period.
  • a shorthand version of this definition is “number of click-throughs divided by number of impressions,” where each “impression” is the display or presentation of an item to a user.
  • An advertisement having a high click-through rate (CTR) is more likely to be clicked than one having a low click-through rate provided that other conditions of the two advertisements are relatively equal.
  • the actual click-through rate of an advertisement is treated as a proxy for its predicted click-through rate for the purpose of determining its relevancy to a user.
  • this predicted click-through rate may be further modulated by the user's personal profile. For example, a user's age, gender, educational, income level, and known or stated interests may affect the relevancy of an advertisement to the user. Therefore, in order to select more relevant information items for a message, it is necessary to determine their respective predicted click-through rates.
  • FIG. 7 is a conceptual block diagram of a database 700 for storing advertisements, or other information items, and associated information.
  • the information in the database may be stored in multiple data structures, or even multiple computers, and need not be organized in the specific manner shown in FIG. 7 .
  • the database 700 may be stored and/or accessed by the information item server 130 and/or the advertisement server 128 of FIG. 1 .
  • the database 700 includes a set of information items 702 , which may include advertisements and/or other types of information items. For ease of explanation, both advertisements and other information items are herein called information items.
  • Each information item 702 includes content 704 , keywords 706 associated with the information item and click-through information 708 .
  • a subset of the information items include geo-targeting information 710 .
  • other fields or types of information may also be stored with or associated with one or more of the information items.
  • Content 704 may include text, graphics, links to URLs or other content storage locations.
  • the content 704 of one or more of the items 702 may optionally be preformatted for display, for example by including HTML tags. Keywords 706 are one or more keywords used to identify or select information items.
  • Bids are used in an auction or similar process for determining advertisement or information item selection and placement. Alternately, or in addition, bids may be used to determine debits or credits to be applied to one or more financial accounts when predefined events occur with respect to the associated advertisements or information items.
  • Geo-targeting information 710 when provided for an information item or advertisement, may be used to limit the users who receive the information item or advertisement to users whose current location is consistent with the geo-targeting information 710 for that information item or advertisement.
  • Geo-targeting information 710 for particular information items may specify geographic regions of different sizes, including large regions (e.g., Canada, or New York State), small regions (e.g., locations within 1000 yards of a particular address in New York City), and regions of any intermediate size, such as a county (e.g., Santa Clara County, Calif.), a metropolitan area (e.g., “the Bay area of Northern California”), a city (e.g., Palo Alto, Calif.), or any other well defined geographic region that is suitable for use in geo-targeting.
  • large regions e.g., Canada, or New York State
  • small regions e.g., locations within 1000 yards of a particular address in New York City
  • regions of any intermediate size such as a county (e.g., Santa Clara County
  • a user's current location may be determined by the current IP address of user, or may be determined using other positioning mechanisms (e.g., if the client 102 is a cell phone, the cell phone network for the client 102 may provide information about the user's current location). In some embodiments, information items or advertisements that do not have geo-targeting information associated with them are assumed to be targeted to all users.
  • Click-through rate (CTR) information 708 for an information item includes one more CTR values.
  • the CTR information 708 for an information item is a single value representing the click-through rate for the information items for a predefined period of time.
  • separate CTR values may be provide for a plurality of time periods (e.g., the last month, the last week, etc.), and/or for a plurality of geographic regions, and/or for a plurality of categories of users, and/or other groupings of the CTR information for the information item.
  • FIG. 3 illustrates an exemplary process of identifying most popular advertisements and their associated keywords in accordance with some embodiments of the present invention.
  • the advertisement server 128 periodically (e.g., daily or weekly) gathers information about popular advertisements ( 302 ).
  • the popularity of an advertisement may be measured by its click-through rate.
  • the gathered information may also include the demographic and geographical distribution of users who have accessed the advertisement during this time period, e.g., the number of clicks on the links to the advertisement from a city or specific region.
  • the gathered information may further include the communication channels through which the advertisement is served, which may include, but is not limited to websites, search engine, email/IM/SMS services, etc.
  • This information helps to rank the popularity of the advertisement among different groups of users. For instance, the gathered information may be used to compute different click-through rates for different categories of users.
  • the categories of users may be defined differently in different embodiments, using one or more factors such as location, time, communication channel, age and/or other personal characteristics.
  • only a subset of the popular advertisements may be selected as the candidates according to predefined criteria in order to save processing time and reduce the latency between a request and a response.
  • the advertisement server extracts their respective keywords ( 304 ). Each advertisement may has an associated bid on one or more keywords.
  • an advertisement is not considered relevant to a message if (A) none of its associated keywords are found in the message, or (B) the current location of the user is outside the targeted geographical region associated with the advertisement.
  • the advertisement when an advertisement include geo-targeting information, the advertisement is only considered relevant to a message if the client 102 receiving or sourcing the message is located within (or optionally nearby) the advertisement's targeted geographical region, and at least one of the keywords of the advertisement are found in the message.
  • the extracted keywords associated with the candidate popular advertisements are transferred to the information service ( 306 ).
  • the information service may use these keywords to determine whether a message contains any keywords in a proactive manner ( 206 of FIG. 2 ).
  • FIG. 4 depicts an exemplary process of identifying popular advertisements for a requested electronic message in accordance with some embodiments of the present invention.
  • this process is performed by an advertisement server or information item server.
  • this process corresponds to operation 210 of the process shown in FIG. 2 .
  • the advertisement server Upon receipt of the user geographical information and the messages ( 402 ), the advertisement server applies the user geographical information to the candidate popular advertisements to filter out geo-targeted advertisements whose targeted geographical region does not include the user's current location ( 404 ).
  • the advertisement server applies the user geographical information to the candidate popular advertisements to filter out geo-targeted advertisements whose targeted geographical region does not include the user's current location ( 404 ).
  • operation 404 may include filtering out advertisements whose CTR for the geographic region that includes the user's current location is below a predefined CTR threshold.
  • operation 404 if the user's current location is unknown, operation 404 is skipped. In some embodiments, geographic information is not used to select advertisements, in which case operation 404 is not part of the advertisement selection process. Other uses of the user geographical information can be found in the co-pending U.S. Patent Application entitled “System and Method for Targeting Advertisements or Other Information Using User Geographical Information,” which is incorporated by reference herein in its entirety.
  • the process After selecting a group of popular advertisements, the process identifies a set of keywords associated with the group of advertisements ( 406 ). Next, the process determines whether any of the keywords are found in the message ( 408 ). If a keyword has a match in the message ( 408 , Yes), an advertisement associated with the keyword are returned to the information service ( 410 ). If there is more than one advertisement associated with the same keyword, one or more of the advertisements (from the set of advertisements associated with the keyword found in the message) having the highest CTR are selected and returned to the information server.
  • the CTR used for selecting the most popular advertisements whose keyword(s) are found in the message is the most geographically specific CTR for each advertisement that is consistent with the user's current location. Thus, if an advertisement includes an overall CTR, a national CTR and a state CTR, all of which are applicable to the user's current location, the state CTR would be used.
  • a predefined selection process may be used to determine which advertisements associated with those keywords are returned to the information service. For example, a round robin selection process may be used, in which the highest CTR advertisement (among the not-yet selected advertisements) for each matching keyword is selected, until a predefined maximum number of advertisements have been selected. Alternately, a relevancy metric may be computed for each candidate advertisement, and then the advertisements with the best (e.g., highest) relevancy metric are selected for return to the information service.
  • the relevancy metric of an advertisement may be based on a number of factors, including one or more of the following factors: the number of keywords associated with the advertisement found in the message, the number of matching keywords in the message, the advertisement's click-through rate, the number of times the advertisement has previously been displayed to the user, whether the user has previously seen and clicked through the advertisement, and possibly other factors as well.
  • information corresponding to the relevancy metrics of the selected advertisements may be provided along with the selected advertisements, for use in determining the positioning or display order of the selected advertisements.
  • filtering based on geo-targeting may be performed after using keyword matching to identify candidate advertisements.
  • a set of candidate advertisements associated with the matching keywords is identified, and that set is then optionally filtered based on geo-targeting so as to produce a filtered set of candidate advertisements.
  • Selection of advertisements from the filtered set can be based on a popularity metric, as described above.
  • the operations of geo-target filtering and selection of advertisements based on a popularity metric may be combined into a single operation (i.e., performed together instead of performed in sequence).
  • FIGS. 3 and 4 are independent from each other.
  • the process of FIG. 3 is performed periodically so as to refresh the set of popular advertisements and their associated keywords.
  • the process of FIG. 4 is performed in response to requests for targeted information.
  • FIG. 5 is a block diagram illustrating a client 102 in accordance with one embodiment of the present invention.
  • the client 102 typically includes one or more processing units (CPUs) 902 , one or more network or other communications interfaces 504 , memory 506 , and one or more communication buses 508 for interconnecting these components.
  • the client 102 optionally may include a user interface 510 comprising a display device 512 and a keyboard 514 .
  • Memory 506 includes high-speed random access memory, such as DRAM, SRAM, DDR RAM or other random access solid state memory devices; and may include non-volatile memory, such as one or more magnetic disk storage devices, optical disk storage devices, flash memory devices, or other non-volatile solid state storage devices.
  • Memory 506 may optionally include one or more storage devices remotely located from the CPU(s) 502 .
  • memory 506 stores the following programs, modules and data structures, or a subset thereof:
  • FIG. 6 is a block diagram illustrating an information service 106 in accordance with one embodiment of the present invention.
  • the information service 106 typically includes one or more processing units (CPUs) 602 , one or more network or other communications interfaces 604 , memory 606 , and one or more communication buses 608 for interconnecting these components.
  • the information service 106 optionally may include a user interface 610 comprising a display device 612 and a keyboard 614 .
  • Memory 606 includes high-speed random access memory, such as DRAM, SRAM, DDR RAM or other random access solid state memory devices; and may include non-volatile memory, such as one or more magnetic disk storage devices, optical disk storage devices, flash memory devices, or other non-volatile solid state storage devices.
  • Memory 606 may optionally include one or more storage devices remotely located from the CPU(s) 602 .
  • memory 606 stores the following programs, modules and data structures, or a subset thereof:
  • the information service 106 includes the following elements, or a subset or superset of such elements: a conversation engine 110 for responding to a variety of requests from the client assistant 134 returning conversation-based responses; an updater engine 112 for updating a message database 118 ; a message index 114 containing index information for messages in the message database 118 ; a query engine 116 for performing various queries using the message index 114 and message database 118 ; an SMTP gateway 122 for sending and receiving messages; an auxiliary services server 120 for performing various auxiliary services; and an IP-Geo mapping database 127 for generating user geographical information.
  • the information service 106 can be connected to advertisement server 128 and/or information item server 130 via the communication interface 604 .
  • Advertisement server 128 can contain one or more advertisements 620 .
  • the advertisement server 128 can receive input and return advertisements that can be relevant to the input.
  • the information item server 130 can include one or more information items 1022 . Similar to the advertisement server 128 , the information server 130 can receive input and return informational items that can be relevant to the input.
  • FIGS. 5 and 6 may be stored in one or more of the previously mentioned memory devices, and corresponds to a set of instructions for performing a function described above.
  • the above identified modules or programs i.e., sets of instructions
  • memory 506 or 606 may store a subset of the modules and data structures identified above.
  • memory 506 or 606 may store additional modules and data structures not described above.
  • FIGS. 5 and 6 show respectively a client 102 and an information service 106
  • the figures are intended more as functional descriptions of the various features which may be present in a client and set of servers than as a structural schematic of the embodiments described herein.
  • items shown separately could be combined and some items could be separated.
  • some items shown separately in FIG. 6 could be implemented on single servers and single items could be implemented by one or more servers.
  • the actual number of servers used to implement an information service 106 and how features are allocated among them will vary from one implementation to another, and may depend in part on the amount of data traffic that the system must handle during peak usage periods as well as during average usage periods.
  • the service of converting an IP address into user geographical information can be delegated to a third-party server to which the information service 106 has a connection through the communication with the communication interface 604 .

Abstract

Systems, methods and non-transitory computer readable media are provided for selecting information items in connection with electronic messages. A request is obtained for a conversation from a user. The conversation including a plurality of electronic messages. A response to the request for the conversation is made. The request includes selecting an electronic message from the plurality of electronic messages in the conversation. Also, a plurality of information items is selected for a group of users including the user based on information identifying a communication channel, through which the group of users communicate with the computing system. The plurality of information items is associated with a keyword included in the electronic message. The plurality of information items and the conversation are then formatted for provision to the user.

Description

    RELATED APPLICATIONS
  • This application is related to U.S. patent application Ser. No. 10/914,035, filed Aug. 6, 2004, entitled “Displaying Conversations in a Conversation-Based Email System,” which is incorporated by reference herein in its entirety. This application is also related to U.S. patent application Ser. No. 11/111,166, filed Apr. 20, 2005, entitled “System and Method for Targeting Information Based on Message Content,” which is incorporated by reference herein in its entirety. This Applications claims priority to U.S. patent application Ser. No. 11/295,748, filed Dec. 6, 2005, entitled “System and Method for Targeting Information Items Based on Popularities of the Information Items,” which is hereby incorporated by reference herein in its entirety.
  • TECHNICAL FIELD
  • The disclosed embodiments relate generally to providing information to computer users, and in particular, to provide information items to a computer user based on their popularity.
  • BACKGROUND
  • As with traditional advertising, online advertising seeks to provide advertisements to those individuals most likely to respond to the advertisement in a desired way, for example, by purchasing a product or service. One way advertisers target a user is to provide advertisements that are related to the content of a web page that the user is viewing. This application concerns additional methods and systems for targeting online advertisements to individuals so as to improve the likelihood that the individuals receiving the online advertisements will be sufficiently interested in the advertisements to click through links to the advertisements or associated content.
  • SUMMARY OF DISCLOSED EMBODIMENTS
  • According to some embodiments, a method of selecting information items in connection with an electronic message is disclosed. The method includes selecting a plurality of information items satisfying a predefined popularity condition, each of the information items having an associated keyword, and identifying one or more of the selected information items whose associated keyword is found in the electronic message. In some embodiments, a set of candidate items are selected periodically based on their respective popularity metrics. The popularity metric of an information item may be its click-through rate during a predefined time period. Each candidate information item has one or more keywords and the number of the keywords found in the electronic message determines the item's relevancy to a user accessing the message. In some other embodiments, the method selects a subset of the information items using user geographical information associated with a user accessing the electronic message from a client and at least one of the selected information items is targeted to users at a location corresponding to the user geographical information.
  • An aspect of the present disclosure provides a method of selecting information items in connection with electronic messages, comprising, on a computing system having one or more processors that execute one or more programs stored in a memory of the computing system, obtaining a request for a conversation from a user, the conversation including a plurality of electronic message. Furthermore a response to request for the conversation is made. The response includes selecting an electronic message from the plurality of electronic messages in the conversation. Moreover, a plurality of information items for a group of users including the user is selected based on information identifying a communication channel through which the group of users communicate with the computing system. The plurality of information items is associated with a keyword included in the electronic message. The plurality of information items is and the conversation is formatted for provision to the user.
  • In some embodiments, the selecting of the plurality of information items is further based on (i) user geographical information obtained from the request and (ii) a measure of popularity of the plurality of information items. The user geographical information is derived from an IP address of the client device associated with the user. The group of users comprises one of a plurality of distinct groups of users for which the computing system has access to popularity information for respective information items.
  • In some embodiments, the user geographical information for the user is derived from an IP address of the client device associated with the user and at least one of the information items is an item specifically targeting users located in a region corresponding to the user geographical information.
  • In some embodiments, geographical information for the user is derived from an IP address of the client device associated with the user and wherein at least one of the information items is selected if the information item targets users located in a region corresponding to the user geographical information.
  • In some embodiments, the user geographical information for the user is derived from an IP address of the client device associated with the user and at least one of the information items is selected in accordance with click-through rate information for users located in a region corresponding to the user geographical information.
  • In some embodiments, the information items include at least one advertisement. In some embodiments, the selecting the plurality of information items is based on, at least on part, a relevancy metric quantifying relevancy of the information items to the selected electronic message. In some embodiments, the selecting is based on, at least in part, a measure of popularity of the plurality of information items, where the computing system has access to popularity information for respective information items, and where the plurality of information items are selected from a set of candidate information items. In such embodiments, the measure of popularity of the information items corresponds to values of a popularity metric associated with the candidate information items. In some embodiments, the popularity metric for each of the candidate items is a cumulative click-through rate for the item during a predefined time period. In some embodiments, the popularity metric for each of the candidate items is based on a set of geography-specific click-through rates for the item during a predefined time period. In some embodiments, the information items are selected if one of the geography-specific click-through rates for the item, corresponding to user geographical information associated with a user accessing the selected electronic message from a client device, is above a predefined threshold.
  • Another aspect provides a computer system for serving information items to a user in connection with an electronic message comprising a memory, one or more processors, and at least one program, stored in the memory and executed by the one or more processors. The at least one program further instructions for obtaining a request for a conversation from a user, the conversation including a plurality of electronic messages. The at least one program also includes instructions for responding to the request for the conversation, the responding including (A) selecting an electronic message from the plurality of electronic messages in the conversation; (B) selecting a plurality of information items for a group of users including the user based on information identifying a communication channel, through which the group of users communicate with the computing system, wherein the plurality of information items is associated with a keyword included in the electronic message; and (C) formatting the plurality of information items and the conversation for provision to the user. In some embodiments, the selecting of the plurality of information items is further based on (i) user geographical information obtained from the request and (ii) a measure of popularity of the plurality of information items, where the user geographical information is derived from an IP address of the client device associated with the user, and where the group of users comprises one of a plurality of distinct groups of users for which the computing system has access to popularity information for respective information items. In some embodiments, the user geographical information for the user is derived from an IP address of the client device associated with the user, and at least one of the information items is an item specifically targeting users located in a region corresponding to the user geographical information. In some embodiments, the user geographical information for the user is derived from an IP address of the client device associated with the user, and at least one of the information items is selected if the information item targets users located in a region corresponding to the user geographical information. In some embodiments, user geographical information for the user is derived from an IP address of the client device associated with the user, and at least one of the information items is selected in accordance with click-through rate information for users located in a region corresponding to the user geographical information. In some embodiments, information items include at least one advertisement.
  • Another aspect provides a non-transitory computer readable storage medium storing one or more programs, the one or more programs for serving information items to a user in connection with an electronic message, the one or more programs comprising instructions, which when executed by a computer system, cause the computer system to obtain a request for a conversation from a user, the conversation including a plurality of electronic messages. In response to the request for the conversation a method is performed, the method including (A) selecting an electronic message from the plurality of electronic messages in the conversation; (B) selecting a plurality of information items for a group of users including the user based on information identifying a communication channel, through which the group of users communicate with the computing system, where the plurality of information items is associated with a keyword included in the electronic message; and (C) formatting the plurality of information items and the conversation for provision to the user. In some embodiments, the selecting of the plurality of information items is further based on (i) user geographical information obtained from the request and (ii) a measure of popularity of the plurality of information items, wherein the user geographical information is derived from an IP address of the client device associated with the user, and wherein the group of users comprises one of a plurality of distinct groups of users for which the computing system has access to popularity information for respective information items. In some embodiments, user geographical information for the user is derived from an IP address of the client device associated with the user, and at least one of the information items is an item specifically targeting users located in a region corresponding to the user geographical information.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • For a better understanding of the nature and embodiments of the invention, reference should be made to the Description of Embodiments below, in conjunction with the following drawings in which like reference numerals refer to corresponding parts throughout the figures.
  • FIG. 1 is a block diagram of an exemplary environment that generates targeted information items based on their popularities in accordance with some embodiments of the present invention.
  • FIG. 2 is a flow diagram of a process of generating targeted information items in response to a message access request in accordance with some embodiments of the present invention.
  • FIG. 3 illustrates an exemplary process of identifying most popular advertisements and their associated keywords in accordance with some embodiments of the present invention.
  • FIG. 4 is a flow diagram of a process of identifying popular advertisements for an electronic message requested by a user in accordance with some embodiments of the present invention.
  • FIG. 5 is a block diagram of an exemplary client in accordance with some embodiments of the present invention.
  • FIG. 6 is a block diagram of an exemplary information server in accordance with some embodiments of the present invention.
  • FIG. 7 is a block diagram of a database for advertisements or other information items.
  • DESCRIPTION OF EMBODIMENTS
  • FIG. 1 is a block diagram of a system 100 for implementing some embodiments of the invention. One or more clients 102 can be connected to a communication network 104. The communication network 104 can be connected to an information service 106. The information service 106 can include a conversation engine 110, an updater engine 112, a message index 114, a query engine 116, a message database 118, one or more auxiliary services servers 120, an SMTP gateway 122, a targeted information processor 124, and popular keywords information 126. The targeted information processor 124 can be connected to an advertisement server 128 and/or one or more information item servers 130.
  • The client 102 can be any of a number of devices (e.g., a computer, an internet kiosk, a personal digital assistant, a cell phone, a gaming device, a desktop computer, or a laptop computer) and can include a client application 132, a client assistant 134, and/or client memory 136. The client application 132 can be a software application that permits a user to interact with the client 102 and/or network resources to perform one or more tasks. For example, the client application 132 can be a browser (e.g., Firefox) or other type of application that permits a user to search for, browse, and/or use resources (e.g., web pages and web services) on the client 102 and/or accessible via the communication network 104. The client assistant 134 can perform one or more tasks related to monitoring a user's activities with respect to the client application 132 and/or other applications, searching or browsing for resources (e.g., files) on the client 102, and processing information received from or being sent to information service 106. The client assistant 134 can be part of the client application 132, available as a plug-in to the client application 132 (provided, for example, from various on-line sources), or provided as a stand-alone program. The client assistant can be a web-based messaging application such as the client executable portion of the Google Gmail product. A client memory 136 can store system information and information about a user, among other things.
  • The communication network 104 can be any local area network (LAN) and/or wide area network (WAN), such as an intranet, an extranet, or the Internet. It is sufficient that the communication network 104 provides communication capability between the clients 102 and the information service 106. In some embodiments, the communication network 104 uses the HyperText Transport Protocol (HTTP) to transport information using the Transmission Control Protocol/Internet Protocol (TCP/IP). The HTTP permits client computers to access various resources available via the communication network 104. The various embodiments of the invention, however, are not limited to the use of any particular protocol. The term “resource” as used throughout this specification refers to any piece of information or service that is accessible via a Uniform Resource Locator (URL) and can be, for example, a web page, a document, an email message, an Instant Messaging (IM) message, a Short Message Service (SMS) message, a transcribed voice message, a database, an image, or a computational object.
  • The conversation engine 110 can respond to a variety of requests from the client assistant 134 related to messages and return conversation-based responses via its connection with the communication network 104. A conversation may include one or more relevant messages relating to a conversation topic. Various criteria can be used to determine which messages are parts of each distinct conversation. For example, an analysis can be made of the contents of messages received and/or sent by a user. Messages whose contents are found to be related can be grouped together. In another example, a thread identifier found in a message header can also be used to identify related messages. In a further example, a subject line in the message header can be used to identify related messages. The senders and recipients of the messages are participants in the conversation. All messages directed to a user of the information service 106 can be grouped into a plurality of conversations and presented to the user in a conversation-based format, individually or jointly. In a conversation list view, a user can see in a summary form a list of conversations in which the user participates. In a conversation view, the user can see in an expanded form one or more of messages associated with a particular conversation.
  • The information service 106 can create a snippet of a conversation or a message. A snippet provides a user with a preview of the contents of the conversation or message without the user having to open the conversation or the message. In a list of conversations, the snippet can be generated from the most recent message in the conversation. The snippet can also be extracted from the first message (i.e., the oldest message) in the conversation. The snippet can also be extracted from all the messages in the conversation according to predefined heuristic rules, e.g., listing a set of keywords appearing most frequently in the conversation. If the information service 106 is preparing a list of conversations in response to a search submitted by a user, the information service 106 can create a snippet for each conversation in the list, or for each conversation is a displayed portion of the list, the snippet including a portion of the conversation that matches user-submitted query terms. These snippets may be similar in one or more respects to snippets included in search results returned by a search engine, such as the Google search engine. In a conversation view, a snippet can be generated for one or more messages in the conversation.
  • The SMTP gateway 122 is also connected to the communication network 104. The SMTP gateway 122 can be directly involved in receiving and sending messages between the information service 106 and other email systems, messaging systems or information services. In some embodiments, the SMTP gateway 122, for example, transmits and receives messages using the simple mail transfer protocol (SMTP). The SMTP gateway 122 can receive a new message from the communication network 104 and send the message to conversation engine 110 for additional processing. Additionally, the SMTP gateway 122 can receive messages from the conversation engine 110 and then transmit (via the communication network 104) those messages to recipient addresses specified in the messages.
  • The one or more auxiliary services servers 120 can provide additional services to the conversation engine 110. In some embodiments, the auxiliary services servers 120 include a spam detection module 121 for detecting and processing spam, an attachment management module 123 for managing the storage and retrieval of documents attached to messages, and a geographical information module 125 for extracting user geographical information from a login or message access request.
  • For example, when the information service 106 receives a login request initiated by a user from a client 102, it extracts an IP address of the client from the login request. The IP address is typically a 32-bit digital number that uniquely identifies the client on the Internet. The information service 106 includes an IP-Geo mapping database 127. The IP-Geo mapping database 127 includes many entries, each entry mapping one or more IP addresses to a specific geographical location. For example, the entry “171.64.*.*→Stanford, Calif. 94305” indicates that any IP address whose first eight bits correspond to the decimal value “171” and second eight bits correspond to the decimal value “64” refers to a computer located at Stanford, Calif. 94305. The graphical information module 125 is responsible for converting the IP address of the client into the client user's geographical location. This geographical location is used subsequently by the advertisement server 128 and the information item server 130 for selecting one or more information items relevant to the user's geographical location. In some other embodiments, the service provided by the geographical information module 125 and the IP-Geo mapping database 127 may be delegated to a geographical information server that is connected to the information service 106. Upon receiving a login or message access request, the information service 106 forwards the IP address included in the request to the geographical information server. The geographical information server returns to the information service 106 the geographical location corresponding to the IP address.
  • As mentioned above, the conversation engine 110 can be connected to the targeted information processor 124. The targeted information processor 124 can provide geo-targeted and/or content-targeted information for display to a user at client 102. The targeted information processor 124 can provide, for example, advertisements and/or other information items related to the user's messages being handled by the conversation engine 110. In some embodiments, the messages include not only messages received by the user but also messages authored and sent by the user. In some other embodiments, the advertisements may be only related to a user's geographical location, not to the message content at all. This scenario may be appropriate in some special circumstances, e.g., when the user is on a business trip and away from the location where the user usually logs into his or her account. Advertisements are herein defined to include information items, or links to information items, that offer or promote products, services, events, companies, organizations, ideas or the like.
  • The targeted information processor 124 can be connected to popular keywords information 126. In some embodiments, the popular keywords information 126 includes a plurality of keywords associated with a set of advertisements deemed to be most popular by a group of users within a predefined time period. The popular keywords information can be used to determine whether there are any popular advertisements whose associated keyword(s) are found in a message being processed by the conversation engine 110. Similarly, popular advertisements may also have associated geographical locations, and a list of geographical locations associated with the popular advertisements may be compared with the user's current geographical location to determine whether there are any popular advertisements targeted at users at the same geographical location as the user. If no popular keyword is found in the message, and (optionally) no geographical location associated with popular advertisements matches the user's geographical location, there is no need for the targeted information processor 124 to launch request(s) for popular advertisements against the advertisement server 128 and/or the information item server 130. Otherwise, the targeted information processor 124 may obtain popular advertisements and other popular information items from advertisement server 128 and information item server 130, respectively.
  • FIG. 1 is exemplary. In some embodiments, the information service 106 contains a subset or superset of those elements illustrated in the figure. Although FIG. 1 shows the information service 106 as a number of discrete elements, this figure is intended more as a functional description of the various features which may be present in the information service 106 than as a structural schematic of the various embodiments. In practice, and as recognized by those of ordinary skill in the art, some elements shown separately could be combined and some elements could be further divided into sub-elements or parallel elements. For example, some separate elements in the figure could be implemented by a single server or module and some single elements could be implemented by one or more servers or modules. The actual number of servers in information service 106 and how features are allocated among the servers will vary from one implementation to another, and may depend in part on the amount of traffic that the system must handle during peak usage periods as well as during average usage periods. For example, the message database 118 can be implemented using a plurality of servers if the information service 106 manages a large volume of messages associated with a large number of user accounts.
  • As mentioned above, the client 102 can include client application 132 and client assistant 134. Client application 132 can provide a window to be displayed on a displaying device (e.g., a monitor) for rendering conversations and targeted information. The conversations, targeted information and messages in the conversations can be encoded using HyperText Markup Language (HTML), XML, or any other appropriate markup language or encoding scheme, and then rendered by the client application 132. When a user submits a request through client application 132 to the information service 106 to access messages stored in the user's account, the information service 106 identifies conversations in the user's account in accordance with the user's request and transfers them as well as a set of display instructions back to the client 102. Client assistant 134 can, in response, generate one or more forms in accordance with the display instructions, where each form can include information of some of the conversations. The forms can then be submitted to and rendered by client application 132. In another embodiment, client assistant 134 may alternatively exist and operate in the information service 106.
  • The information service 106 and client assistant 134 work in concert to allow a user to view, compose, send and/or search messages in the user's message account and to present the search results in a highly intuitive fashion. The information service 106 extracts information from a user's message account by processing messages received, sent and/or being composed by the user, and the client assistant 134 assists in rendering the information prepared by the information service 106. In other embodiments a different division of duties between the information service 106 and the client assistant 134 can be implemented. Because many of the tasks performed by the system can be performed by either the information service 106 or the client assistant 134 or by the two working together, these two components are sometimes herein referred to jointly as the “conversation system”.
  • The conversation system can provide at least two different views, including a conversation list view and a conversation view as mentioned briefly above. In a conversation list view, a plurality of conversations can be displayed where each conversation can be displayed in a summary form. For example, each conversation can be represented by a number of conversation elements. The conversation elements can include one or more of: a number indicating the number of messages in the conversation, a list of one or more of the identifiers or names of the senders of messages in the conversation, a conversation description (e.g., a subject line of the message), a date/time value of the conversation (e.g., a date/time value of the last received message in the conversation), and a snippet from one or more of the messages in the conversation. In one approach, each conversation can be represented as a single row in the conversation list view.
  • In a conversation view, one or more messages from a conversation can be displayed. Each message can be displayed in one of a number of various modes, for example an expanded mode, a compacted mode, or a compressed mode. In an expanded mode, the body of the message can be displayed along with, for example, header information including names or other identifiers of the sender and the recipients of the message, a date/time value indicative of when the message is received or sent, routing information, and other properties of the message. An expanded mode can be used, for example, for messages which are marked as “unread.” In a compacted mode, the message body can be hidden and a snippet from the message is provided in its place. The snippet can be chosen to occupy less space than the body. For example, a snippet can be chosen to occupy only one line in a display window. The compacted mode can be used for messages which have been read or marked as read. The compacted mode allows messages in a conversation to be displayed within the same window more densely than if the expanded mode were used. In a compressed mode, a message can be represented with a small bar. The small bar can contain no message information. The visual effect of such a mode can be that multiple compressed messages appear like the edges of cards in a deck of cards. A user can toggle between the various display modes by selecting a message or using various controls in the display window. It should be understood that the techniques described in this specification with reference to a conversation (as might be found in the Google Gmail product) can be equally used with any message system (e.g., Outlook or Thunderbird) where messages can be displayed in various views (and can include portions of messages) such as a message view or a thread view where related messages can be displayed.
  • In some embodiments, when a conversation is being displayed in the conversation view, additional, targeted information (sometimes herein called “informational items”) can be displayed in the display window. For example, one or more advertisements relevant to, or related to, one or more of the messages in the conversation can be displayed. In another example, one or more other types of information can be displayed. Such other information can include, but is not limited to news items or links to news items, map links, phone numbers, links to product information, stock prices or links to stock prices, links to weather forecasts, web page links, dictionary entries or links to dictionary entries, images or links to images, RSS feeds or links to RSS feeds, links to blog (web log) events, links to user polls, links to files or other content on the client 102, and other types of information.
  • RSS feeds can be content distributed from various sources on a network (e.g., the Internet). RDF Site Summary (RSS) (and sometimes, Real Simple Syndication) is an XML-based lightweight multi-purpose extensible metadata description and syndication format. RSS is typically used for distributing various types of content to a number of receivers simultaneously. News items can be news items from one or more sources. Blog events can be events generated from one or more web logs (blogs). User polls can be polls that the user may participate in which may come from a variety of sources. Stock prices can be stock prices of companies whose names or stock ticker symbols are mentioned in the conversation. Weather forecasts can be weather forecasts of locations like cities or states whose names are directly or indirectly referred to by a message in the conversation.
  • FIG. 2 illustrates a process of generating targeted information items in response to a message access request in accordance with some embodiments of the present invention. Initially, the user's geographical information is identified (202). The user's geographical information may be generated and stored in the information service 106 when the user logs into his or her account at the information service 106. In some embodiments, the information service 106 extracts from the message access request the IP address of the requesting client and identifies the user's geographical information using the IP address. Next, a conversation including the requested message(s) is identified (204). For example, the requested message(s) may include an identifier of a conversation associated with the message. As mentioned above, a conversation can include one or more related messages. The identification at 204 can identify all of the messages in a conversation or selected messages in a conversation. Various selection criteria can be used when identifying selected messages in a conversation. For example, messages can be identified based on whether they were authored and sent by the user. Alternatively, messages can be identified based on whether a message was authored by the user within a predefined time period (e.g., the messages authored within the last 24 hours are identified). In another example, a conversation may be associated with a pool of messages of different types received or sent by the user, such as email messages, IM messages, transcribed voice messages, SMS messages and search query results. In this event, messages can be identified based on whether a message is of a particular type or types or a combination of two or more of the criteria mentioned above. For illustrative purposes, the following discussion assumes that the process of FIG. 2 is triggered by a user's act of clicking a conversation link in a conversation list view and is applied to one or more messages identified as members of the same conversation. But one skilled in the art will appreciate that the process of FIG. 2 could be triggered by other types of events as well.
  • Before the identified messages are transferred back to the requesting client, the information service 106 needs to determine if there are any popular advertisements targeted at the identified messages or targets at the user's current geographical location (206). Within the information service 106, the targeted information processor 124 is typically responsible for determining whether there are any popular advertisements associated with a requested message by checking if any advertisement-related keyword is found in the message. Optionally, the targeted information processor 124 may also determine whether there are any popular advertisements associated with the user's geographical location (or alternately stated, that are targeted at users at the user's current geographical location).
  • If there is no matching keyword in the message, and (optionally) there are no popular advertisements targets at users at the user's geographical location, the information service 106 may finish the process by bypassing the remaining steps 208-212 as indicated by line 207 of FIG. 2. As a result, the message or conversation identified at 204 may be displayed to the requesting user without being accompanied by any targeted information items. Alternately, the message or conversation identified at 204 may be displayed to the requesting user without being accompanied by any popular advertisements. Additional processes may be used to identify other targeted information to display to the requesting user along with the identified message or conversation.
  • If there is any matching keyword in the message (206), the information service 106 performs operations 208, 210, 212 in order to obtain those targeted information items. Note that operation 206 may be delegated to the advertisement server 128 or the information item server 130 in some embodiments.
  • In order to obtain targeted information from the advertisement server 128 or the information item server 130, the information service 106 sends the user geographical information and the messages to the information servers (208). The information servers, e.g., the advertisement server 128, search through a pool of candidate information items for those items that are most relevant to the user geographical information and the message content. Subsequently, the information service 106 receives from the information servers a set of popular information items targeted at the user geographical information and/or the messages (210) and transfers these geo-targeted and/or content-targeted information items to the requesting client for display (212). A more thorough description of the process of identifying relevant information items is provided below in connection with FIG. 4.
  • In order to display the information items on the client 102, the information service 106 may provide formatting information directing the display of the information obtained from the information servers. The obtained information is preferably displayed in a manner consistent with the user's expectation. For example, if the obtained information is associated with a conversation or a message in the conversation requested by the user, it is simultaneously displayed next to the requested conversation or message in a corresponding conversation view. If the obtained information items are associated with a message just sent by the user and the user expects to return to the conversation list view, the information items may be displayed at the top of the conversation list view in order to attract the user's attention. It will be understood by one skilled in the art that the aforementioned schemes of rendering the obtained information items in a display device are exemplary. Other rendering schemes may be used in other embodiments. Typically, the information items are displayed at a location within an application or browser window that is prominent, but consistent with the normal experience that users have with a particular information service.
  • In some embodiments, the task of identifying targeted information items is accomplished by, or primarily by the information service 106. For example, it is the targeted information processor 124 that is responsible for conducting semantic analysis of the message contents. The semantic analysis may include extracting concepts from the message contents, inferring from the concepts other relevant keywords, and grouping the concepts and keywords into categories. In these embodiments, the information servers 128, 130 are only responsible for choosing advertisements matching the concepts, keywords and categories.
  • However, in other embodiments, the information servers 128, 130 play a more significant role in the process of identifying targeted information items. In some embodiments, this process is divided into two sub-processes: (1) periodically identifying a set of keywords associated with the most popular advertisements under certain circumstances; and (2) selecting those advertisements and other information items whose associated keywords appear in the message. The one or more keywords associated with an advertisement may be the one or more keywords on which the provider of the advertisement has bid, as part of an auction process for determining placement of online advertisements. Keywords may be associated with other information items by automated content analysis or by human assignment of the keywords, or a combination of these techniques. Prior to further discussion of these two sub-processes, it is helpful to address the topic of how to measure the relevancy of an advertisement to a particular user.
  • In general, the relevancy of an on-line advertisement to a user viewing a web page or an email message depends on two factors: (1) how close the subject of the advertisement is to the web page or message content and (2) how likely the user is going to click the link to the advertisement when noticing its existence. The first factor can be measured, e.g., by the frequencies that keywords associated with the advertisement are found in the web page or message content. When the number or percentage of words within a message that match keywords associated with an advertisement or information item reaches a predetermined threshold, the advertisement or information item is deemed relevant to that message. In some embodiments, the relevancy of the keywords to the message can be measured by the number of unique keywords present in the message. The latter factor can be approximated by a popularity metric, such as the click-through rate of the advertisement during a predefined time period. The click-through rate of an advertisement is defined as the number of times that users clicked on links to the advertisement divided by the number of times that the advertisement was displayed to different users during a predefined time period. A shorthand version of this definition is “number of click-throughs divided by number of impressions,” where each “impression” is the display or presentation of an item to a user. An advertisement having a high click-through rate (CTR) is more likely to be clicked than one having a low click-through rate provided that other conditions of the two advertisements are relatively equal. In other words, the actual click-through rate of an advertisement is treated as a proxy for its predicted click-through rate for the purpose of determining its relevancy to a user. In some embodiments, this predicted click-through rate may be further modulated by the user's personal profile. For example, a user's age, gender, educational, income level, and known or stated interests may affect the relevancy of an advertisement to the user. Therefore, in order to select more relevant information items for a message, it is necessary to determine their respective predicted click-through rates.
  • FIG. 7 is a conceptual block diagram of a database 700 for storing advertisements, or other information items, and associated information. In various embodiments, the information in the database may be stored in multiple data structures, or even multiple computers, and need not be organized in the specific manner shown in FIG. 7. For instance, the database 700, may be stored and/or accessed by the information item server 130 and/or the advertisement server 128 of FIG. 1.
  • The database 700 includes a set of information items 702, which may include advertisements and/or other types of information items. For ease of explanation, both advertisements and other information items are herein called information items. Each information item 702 includes content 704, keywords 706 associated with the information item and click-through information 708. Optionally, a subset of the information items include geo-targeting information 710. Optionally, other fields or types of information may also be stored with or associated with one or more of the information items. Content 704 may include text, graphics, links to URLs or other content storage locations. The content 704 of one or more of the items 702 may optionally be preformatted for display, for example by including HTML tags. Keywords 706 are one or more keywords used to identify or select information items. Keywords for advertisements, and perhaps other types of information items as well, may be associated with bids. Bids are used in an auction or similar process for determining advertisement or information item selection and placement. Alternately, or in addition, bids may be used to determine debits or credits to be applied to one or more financial accounts when predefined events occur with respect to the associated advertisements or information items.
  • Geo-targeting information 710, when provided for an information item or advertisement, may be used to limit the users who receive the information item or advertisement to users whose current location is consistent with the geo-targeting information 710 for that information item or advertisement. Geo-targeting information 710 for particular information items may specify geographic regions of different sizes, including large regions (e.g., Canada, or New York State), small regions (e.g., locations within 1000 yards of a particular address in New York City), and regions of any intermediate size, such as a county (e.g., Santa Clara County, Calif.), a metropolitan area (e.g., “the Bay area of Northern California”), a city (e.g., Palo Alto, Calif.), or any other well defined geographic region that is suitable for use in geo-targeting. As explained elsewhere in this document, a user's current location may be determined by the current IP address of user, or may be determined using other positioning mechanisms (e.g., if the client 102 is a cell phone, the cell phone network for the client 102 may provide information about the user's current location). In some embodiments, information items or advertisements that do not have geo-targeting information associated with them are assumed to be targeted to all users.
  • Click-through rate (CTR) information 708 for an information item includes one more CTR values. In the simplest implementations, the CTR information 708 for an information item is a single value representing the click-through rate for the information items for a predefined period of time. In other implementations, separate CTR values may be provide for a plurality of time periods (e.g., the last month, the last week, etc.), and/or for a plurality of geographic regions, and/or for a plurality of categories of users, and/or other groupings of the CTR information for the information item.
  • FIG. 3 illustrates an exemplary process of identifying most popular advertisements and their associated keywords in accordance with some embodiments of the present invention. In some embodiments, the advertisement server 128 periodically (e.g., daily or weekly) gathers information about popular advertisements (302). As mentioned above, the popularity of an advertisement may be measured by its click-through rate. The gathered information may also include the demographic and geographical distribution of users who have accessed the advertisement during this time period, e.g., the number of clicks on the links to the advertisement from a city or specific region. The gathered information may further include the communication channels through which the advertisement is served, which may include, but is not limited to websites, search engine, email/IM/SMS services, etc. This information, together with the click-through rate, helps to rank the popularity of the advertisement among different groups of users. For instance, the gathered information may be used to compute different click-through rates for different categories of users. The categories of users may be defined differently in different embodiments, using one or more factors such as location, time, communication channel, age and/or other personal characteristics. In some embodiments, only a subset of the popular advertisements may be selected as the candidates according to predefined criteria in order to save processing time and reduce the latency between a request and a response.
  • From the candidate popular advertisements, the advertisement server extracts their respective keywords (304). Each advertisement may has an associated bid on one or more keywords. In some embodiments, an advertisement is not considered relevant to a message if (A) none of its associated keywords are found in the message, or (B) the current location of the user is outside the targeted geographical region associated with the advertisement. In these embodiments, when an advertisement include geo-targeting information, the advertisement is only considered relevant to a message if the client 102 receiving or sourcing the message is located within (or optionally nearby) the advertisement's targeted geographical region, and at least one of the keywords of the advertisement are found in the message.
  • The extracted keywords associated with the candidate popular advertisements are transferred to the information service (306). As mentioned earlier, the information service may use these keywords to determine whether a message contains any keywords in a proactive manner (206 of FIG. 2).
  • FIG. 4 depicts an exemplary process of identifying popular advertisements for a requested electronic message in accordance with some embodiments of the present invention. In some embodiments, this process is performed by an advertisement server or information item server. In some embodiments, this process corresponds to operation 210 of the process shown in FIG. 2. Upon receipt of the user geographical information and the messages (402), the advertisement server applies the user geographical information to the candidate popular advertisements to filter out geo-targeted advertisements whose targeted geographical region does not include the user's current location (404). Alternately, if at least some of the advertisements include geography-specific CTR information, operation 404 may include filtering out advertisements whose CTR for the geographic region that includes the user's current location is below a predefined CTR threshold.
  • In some embodiments, if the user's current location is unknown, operation 404 is skipped. In some embodiments, geographic information is not used to select advertisements, in which case operation 404 is not part of the advertisement selection process. Other uses of the user geographical information can be found in the co-pending U.S. Patent Application entitled “System and Method for Targeting Advertisements or Other Information Using User Geographical Information,” which is incorporated by reference herein in its entirety.
  • After selecting a group of popular advertisements, the process identifies a set of keywords associated with the group of advertisements (406). Next, the process determines whether any of the keywords are found in the message (408). If a keyword has a match in the message (408, Yes), an advertisement associated with the keyword are returned to the information service (410). If there is more than one advertisement associated with the same keyword, one or more of the advertisements (from the set of advertisements associated with the keyword found in the message) having the highest CTR are selected and returned to the information server. In some embodiments, the CTR used for selecting the most popular advertisements whose keyword(s) are found in the message is the most geographically specific CTR for each advertisement that is consistent with the user's current location. Thus, if an advertisement includes an overall CTR, a national CTR and a state CTR, all of which are applicable to the user's current location, the state CTR would be used.
  • If multiple keywords are found in the message, a predefined selection process may be used to determine which advertisements associated with those keywords are returned to the information service. For example, a round robin selection process may be used, in which the highest CTR advertisement (among the not-yet selected advertisements) for each matching keyword is selected, until a predefined maximum number of advertisements have been selected. Alternately, a relevancy metric may be computed for each candidate advertisement, and then the advertisements with the best (e.g., highest) relevancy metric are selected for return to the information service. The relevancy metric of an advertisement may be based on a number of factors, including one or more of the following factors: the number of keywords associated with the advertisement found in the message, the number of matching keywords in the message, the advertisement's click-through rate, the number of times the advertisement has previously been displayed to the user, whether the user has previously seen and clicked through the advertisement, and possibly other factors as well. In some embodiments, information corresponding to the relevancy metrics of the selected advertisements may be provided along with the selected advertisements, for use in determining the positioning or display order of the selected advertisements.
  • The order of operations in the process of identifying popular advertisements may differ in some embodiments. For instance, in some embodiments, filtering based on geo-targeting may be performed after using keyword matching to identify candidate advertisements. Thus, after identifying matching keywords, a set of candidate advertisements associated with the matching keywords is identified, and that set is then optionally filtered based on geo-targeting so as to produce a filtered set of candidate advertisements. Selection of advertisements from the filtered set can be based on a popularity metric, as described above. Furthermore, in some embodiments, the operations of geo-target filtering and selection of advertisements based on a popularity metric may be combined into a single operation (i.e., performed together instead of performed in sequence).
  • The processes described above with reference to FIGS. 3 and 4 may be performed to select popular information items as well as, or instead of, popular advertisements.
  • Note that the processes of FIGS. 3 and 4 are independent from each other. The process of FIG. 3 is performed periodically so as to refresh the set of popular advertisements and their associated keywords. The process of FIG. 4 is performed in response to requests for targeted information.
  • FIG. 5 is a block diagram illustrating a client 102 in accordance with one embodiment of the present invention. The client 102 typically includes one or more processing units (CPUs) 902, one or more network or other communications interfaces 504, memory 506, and one or more communication buses 508 for interconnecting these components. The client 102 optionally may include a user interface 510 comprising a display device 512 and a keyboard 514. Memory 506 includes high-speed random access memory, such as DRAM, SRAM, DDR RAM or other random access solid state memory devices; and may include non-volatile memory, such as one or more magnetic disk storage devices, optical disk storage devices, flash memory devices, or other non-volatile solid state storage devices. Memory 506 may optionally include one or more storage devices remotely located from the CPU(s) 502. In some embodiments, memory 506 stores the following programs, modules and data structures, or a subset thereof:
      • an operating system 516 that includes procedures for handling various basic system services and for performing hardware dependent tasks;
      • a network communication module 518 that is used for connecting the client 102 to other computers via the one or more communication network interfaces 504 and one or more communication networks, such as the Internet, other wide area networks, local area networks, metropolitan area networks, and so on;
      • a client application 132 that can permit a user to interact with the client 102 as described above;
      • a client assistant 134 that can perform one or more tasks as described above; and
      • a client memory 136 that can optionally include various data structures used by the client application 132 and the client assistant 134.
  • FIG. 6 is a block diagram illustrating an information service 106 in accordance with one embodiment of the present invention. The information service 106 typically includes one or more processing units (CPUs) 602, one or more network or other communications interfaces 604, memory 606, and one or more communication buses 608 for interconnecting these components. The information service 106 optionally may include a user interface 610 comprising a display device 612 and a keyboard 614. Memory 606 includes high-speed random access memory, such as DRAM, SRAM, DDR RAM or other random access solid state memory devices; and may include non-volatile memory, such as one or more magnetic disk storage devices, optical disk storage devices, flash memory devices, or other non-volatile solid state storage devices. Memory 606 may optionally include one or more storage devices remotely located from the CPU(s) 602. In some embodiments, memory 606 stores the following programs, modules and data structures, or a subset thereof:
      • an operating system 616 that includes procedures for handling various basic system services and for performing hardware dependent tasks;
      • a network communication module 618 that is used for connecting the information service 106 to other computers via the one or more communication network interfaces 604 and one or more communication networks, such as the Internet, other wide area networks, local area networks, metropolitan area networks, and so on;
      • a targeted information processor 124 for obtaining targeted information for one or more identified messages as described above; and
      • popular keywords information 126 that can include data structures hosting keywords associated with popular information items, examples of which are described above.
  • In some embodiments, the information service 106 includes the following elements, or a subset or superset of such elements: a conversation engine 110 for responding to a variety of requests from the client assistant 134 returning conversation-based responses; an updater engine 112 for updating a message database 118; a message index 114 containing index information for messages in the message database 118; a query engine 116 for performing various queries using the message index 114 and message database 118; an SMTP gateway 122 for sending and receiving messages; an auxiliary services server 120 for performing various auxiliary services; and an IP-Geo mapping database 127 for generating user geographical information.
  • The information service 106 can be connected to advertisement server 128 and/or information item server 130 via the communication interface 604. Advertisement server 128 can contain one or more advertisements 620. The advertisement server 128 can receive input and return advertisements that can be relevant to the input. The information item server 130 can include one or more information items 1022. Similar to the advertisement server 128, the information server 130 can receive input and return informational items that can be relevant to the input.
  • Each of the above identified elements in FIGS. 5 and 6 may be stored in one or more of the previously mentioned memory devices, and corresponds to a set of instructions for performing a function described above. The above identified modules or programs (i.e., sets of instructions) need not be implemented as separate software programs, procedures or modules, and thus various subsets of these modules may be combined or otherwise re-arranged in various embodiments. In some embodiments, memory 506 or 606 may store a subset of the modules and data structures identified above. Furthermore, memory 506 or 606 may store additional modules and data structures not described above.
  • Although FIGS. 5 and 6 show respectively a client 102 and an information service 106, the figures are intended more as functional descriptions of the various features which may be present in a client and set of servers than as a structural schematic of the embodiments described herein. In practice, and as recognized by those of ordinary skill in the art, items shown separately could be combined and some items could be separated. For example, some items shown separately in FIG. 6 could be implemented on single servers and single items could be implemented by one or more servers. The actual number of servers used to implement an information service 106 and how features are allocated among them will vary from one implementation to another, and may depend in part on the amount of data traffic that the system must handle during peak usage periods as well as during average usage periods. For example, the service of converting an IP address into user geographical information can be delegated to a third-party server to which the information service 106 has a connection through the communication with the communication interface 604.
  • The foregoing description, for purpose of explanation, has been described with reference to specific embodiments. However, the illustrative discussions above are not intended to be exhaustive or to limit the invention to the precise forms disclosed. Many modifications and variations are possible in view of the above teachings. The embodiments were chosen and described in order to best explain the principles of the invention and its practical applications, to thereby enable others skilled in the art to best utilize the invention and various embodiments with various modifications as are suited to the particular use contemplated.

Claims (20)

What is claimed is:
1. A method of selecting information items in connection with electronic messages, comprising:
on a computing system having one or more processors that execute one or more programs stored in a memory of the computing system:
obtaining a request for a conversation from a user, the conversation including a plurality of electronic messages;
responding to the request for the conversation, the responding including:
(A) selecting an electronic message from the plurality of electronic messages in the conversation;
(B) selecting a plurality of information items for a group of users including the user based on information identifying a communication channel, through which the group of users communicate with the computing system, wherein the plurality of information items is associated with a keyword included in the electronic message; and
(C) formatting the plurality of information items and the conversation for provision to the user.
2. The method of claim 1, wherein the selecting of the plurality of information items is further based on (i) user geographical information obtained from the request and (ii) a measure of popularity of the plurality of information items, wherein the user geographical information is derived from an IP address of the client device associated with the user, and wherein the group of users comprises one of a plurality of distinct groups of users for which the computing system has access to popularity information for respective information items.
3. The method of claim 1, wherein user geographical information for the user is derived from an IP address of the client device associated with the user, and wherein at least one of the information items is an item specifically targeting users located in a region corresponding to the user geographical information.
4. The method of claim 1, wherein user geographical information for the user is derived from an IP address of the client device associated with the user, and wherein at least one of the information items is selected if the information item targets users located in a region corresponding to the user geographical information.
5. The method of claim 1, wherein user geographical information for the user is derived from an IP address of the client device associated with the user, and wherein at least one of the information items is selected in accordance with click-through rate information for users located in a region corresponding to the user geographical information.
6. The method of claim 1, wherein the information items include at least one advertisement.
7. The method of claim 1, wherein the selecting the plurality of information items is based on, at least on part, a relevancy metric quantifying relevancy of the information items to the selected electronic message.
8. The method of claim 1, wherein the selecting the plurality of information items is based on, at least in part, a measure of popularity of the plurality of information items, wherein the computing system has access to popularity information for respective information items, and wherein the plurality of information items are selected from a set of candidate information items, and the measure of popularity of the information items corresponds to values of a popularity metric associated with the candidate information items.
9. The method of claim 8, wherein the popularity metric for each of the candidate items is a cumulative click-through rate for the item during a predefined time period.
10. The method of claim 8, wherein the popularity metric for each of the candidate items is based on a set of geography-specific click-through rates for the item during a predefined time period.
11. The method of claim 10, wherein the information items are selected if one of the geography-specific click-through rates for the item, corresponding to user geographical information associated with a user accessing the selected electronic message from a client device, is above a predefined threshold.
12. A computer system for serving information items to a user in connection with an electronic message comprising:
a memory;
one or more processors; and
at least one program, stored in the memory and executed by the one or more processors, the at least one program further including instructions for:
obtaining a request for a conversation from a user, the conversation including a plurality of electronic messages;
responding to the request for the conversation, the responding including:
(A) selecting an electronic message from the plurality of electronic messages in the conversation;
(B) selecting a plurality of information items for a group of users including the user based on information identifying a communication channel, through which the group of users communicate with the computing system, wherein the plurality of information items is associated with a keyword included in the electronic message; and
(C) formatting the plurality of information items and the conversation for provision to the user.
13. The computer system of claim 12, wherein the selecting of the plurality of information items is further based on (i) user geographical information obtained from the request and (ii) a measure of popularity of the plurality of information items, wherein the user geographical information is derived from an IP address of the client device associated with the user, and wherein the group of users comprises one of a plurality of distinct groups of users for which the computing system has access to popularity information for respective information items.
14. The computer system of claim 12, wherein user geographical information for the user is derived from an IP address of the client device associated with the user, and wherein at least one of the information items is an item specifically targeting users located in a region corresponding to the user geographical information.
15. The computer system of claim 12, wherein user geographical information for the user is derived from an IP address of the client device associated with the user, and wherein at least one of the information items is selected if the information item targets users located in a region corresponding to the user geographical information.
16. The computer system of claim 12, wherein user geographical information for the user is derived from an IP address of the client device associated with the user, and wherein at least one of the information items is selected in accordance with click-through rate information for users located in a region corresponding to the user geographical information.
17. The computer system of claim 12, wherein the information items include at least one advertisement.
18. A non-transitory computer readable storage medium storing one or more programs, the one or more programs for serving information items to a user in connection with an electronic message, the one or more programs comprising instructions, which when executed by a computer system, cause the computer system to:
obtain a request for a conversation from a user, the conversation including a plurality of electronic messages;
respond to the request for the conversation by a method including:
(A) selecting an electronic message from the plurality of electronic messages in the conversation;
(B) selecting a plurality of information items for a group of users including the user based on information identifying a communication channel, through which the group of users communicate with the computing system, wherein the plurality of information items is associated with a keyword included in the electronic message; and
(C) formatting the plurality of information items and the conversation for provision to the user.
19. The non-transitory computer readable storage medium of claim 18, wherein the selecting of the plurality of information items is further based on (i) user geographical information obtained from the request and (ii) a measure of popularity of the plurality of information items, wherein the user geographical information is derived from an IP address of the client device associated with the user, and wherein the group of users comprises one of a plurality of distinct groups of users for which the computing system has access to popularity information for respective information items.
20. The non-transitory computer readable storage medium of claim 18, wherein user geographical information for the user is derived from an IP address of the client device associated with the user, and wherein at least one of the information items is an item specifically targeting users located in a region corresponding to the user geographical information.
US14/076,894 2005-12-06 2013-11-11 System and Method for Targeting Information Items Based on Popularities of the Information Items Abandoned US20140074612A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US14/076,894 US20140074612A1 (en) 2005-12-06 2013-11-11 System and Method for Targeting Information Items Based on Popularities of the Information Items

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/295,748 US8601004B1 (en) 2005-12-06 2005-12-06 System and method for targeting information items based on popularities of the information items
US14/076,894 US20140074612A1 (en) 2005-12-06 2013-11-11 System and Method for Targeting Information Items Based on Popularities of the Information Items

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US11/295,748 Continuation US8601004B1 (en) 2005-12-06 2005-12-06 System and method for targeting information items based on popularities of the information items

Publications (1)

Publication Number Publication Date
US20140074612A1 true US20140074612A1 (en) 2014-03-13

Family

ID=49640887

Family Applications (2)

Application Number Title Priority Date Filing Date
US11/295,748 Active 2026-10-05 US8601004B1 (en) 2005-12-06 2005-12-06 System and method for targeting information items based on popularities of the information items
US14/076,894 Abandoned US20140074612A1 (en) 2005-12-06 2013-11-11 System and Method for Targeting Information Items Based on Popularities of the Information Items

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US11/295,748 Active 2026-10-05 US8601004B1 (en) 2005-12-06 2005-12-06 System and method for targeting information items based on popularities of the information items

Country Status (1)

Country Link
US (2) US8601004B1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090312040A1 (en) * 2008-06-13 2009-12-17 Embarq Holdings Company, Llc System and method for inserting advertisements into SMS messages
US20130067364A1 (en) * 2011-09-08 2013-03-14 Microsoft Corporation Presenting search result items having varied prominence
US20130325625A1 (en) * 2012-06-04 2013-12-05 American Express Travel Related Services Company, Inc. Systems and Methods for Delivering Tailored Content Based Upon a Consumer Profile
US9245250B2 (en) 2013-03-14 2016-01-26 American Express Travel Related Services Company, Inc. Systems and methods for identifying and delivering tailored content based upon a service dialog
US20220035989A1 (en) * 2017-12-06 2022-02-03 Microsoft Technology Licensing, Llc Personalized presentation of messages on a computing device

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9456250B2 (en) * 2006-12-15 2016-09-27 At&T Intellectual Property I, L.P. Automatic rating optimization
KR101463608B1 (en) * 2008-02-12 2014-12-05 삼성전자 주식회사 System and method for providing advertisements in IPTV service
US8769149B2 (en) * 2008-08-08 2014-07-01 Disney Enterprises, Inc. System and method for real-time location-based advertisement insertion into online content
KR20100095924A (en) * 2009-02-23 2010-09-01 삼성전자주식회사 Advertizement keyword extracting apparatus and method using situation of video
US8504550B2 (en) * 2009-05-15 2013-08-06 Citizennet Inc. Social network message categorization systems and methods
US9400790B2 (en) * 2009-12-09 2016-07-26 At&T Intellectual Property I, L.P. Methods and systems for customized content services with unified messaging systems
US20120036197A1 (en) * 2010-08-06 2012-02-09 At&T Intellectual Property I, L.P. Messaging Genealogy Interface
US20120271844A1 (en) * 2011-04-20 2012-10-25 Microsoft Corporation Providng relevant information for a term in a user message
US20130287187A1 (en) * 2012-04-30 2013-10-31 International Business Machines Corporation Conveying context-sensitive information for a conversation
CN103684979B (en) * 2012-09-13 2017-09-08 阿里巴巴集团控股有限公司 The method and apparatus in geographical position in a kind of acquisition chat content
US20150278353A1 (en) * 2014-03-31 2015-10-01 Linkedln Corporation Methods and systems for surfacing content items based on impression discounting
CN105488599B (en) * 2015-12-29 2020-03-06 杭州数梦工场科技有限公司 Method and device for predicting article popularity
US20230334525A1 (en) * 2022-04-19 2023-10-19 Truist Bank Mobile device pop-up location-based real-time offer generation
US20240037574A1 (en) * 2022-07-27 2024-02-01 Content Square SAS Session-level click rate in zoning

Citations (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020042914A1 (en) * 2000-10-11 2002-04-11 United Video Properties, Inc. Systems and methods for providing targeted advertisements based on current activity
US20020046102A1 (en) * 2000-04-24 2002-04-18 Dohring Doug Carl Method and system for including an advertisement in messages delivered by a character or characters
US20020072966A1 (en) * 2000-08-31 2002-06-13 Eldering Charles A. System for providing targeted advertisements using advertiser-specific target groups
US20020082914A1 (en) * 2000-12-26 2002-06-27 Gil Beyda Hybrid network based advertising system and method
US20020087978A1 (en) * 2000-12-30 2002-07-04 Nicholson Robert D. System and method of selective advertising on a TV channel
US20030195801A1 (en) * 2000-10-12 2003-10-16 Tetsuo Takakura System and method for providing advertisement data with conversation data to users
US20030229537A1 (en) * 2000-05-03 2003-12-11 Dunning Ted E. Relationship discovery engine
US20040059712A1 (en) * 2002-09-24 2004-03-25 Dean Jeffrey A. Serving advertisements using information associated with e-mail
US6714975B1 (en) * 1997-03-31 2004-03-30 International Business Machines Corporation Method for targeted advertising on the web based on accumulated self-learning data, clustering users and semantic node graph techniques
US20050004990A1 (en) * 2003-07-01 2005-01-06 Microsoft Corporation Conversation grouping of electronic mail records
US20050015394A1 (en) * 2001-11-30 2005-01-20 Mckeeth Jim Method and system for updating a search engine
US20050021521A1 (en) * 2002-07-03 2005-01-27 Wycoff Robert E. Embedding Internet message board display links
US20050050027A1 (en) * 2003-09-03 2005-03-03 Leslie Yeh Determining and/or using location information in an ad system
US20050114781A1 (en) * 2003-11-25 2005-05-26 International Business Machines Corporation Multi-column user interface for managing on-line threaded conversations
US20050216454A1 (en) * 2004-03-15 2005-09-29 Yahoo! Inc. Inverse search systems and methods
US20050222985A1 (en) * 2004-03-31 2005-10-06 Paul Buchheit Email conversation management system
US20050234850A1 (en) * 2004-03-31 2005-10-20 Buchheit Paul T Displaying conversations in a conversation-based email sysem
US20060053204A1 (en) * 2004-09-09 2006-03-09 Microsoft Corporation Presenting and manipulating electronic mail conversations
US20060075044A1 (en) * 2004-09-30 2006-04-06 Fox Kevin D System and method for electronic contact list-based search and display
US20060075019A1 (en) * 2004-09-17 2006-04-06 About, Inc. Method and system for providing content to users based on frequency of interaction
US20060136298A1 (en) * 2004-12-16 2006-06-22 Conversagent, Inc. Methods and apparatus for contextual advertisements in an online conversation thread
US20060167747A1 (en) * 2005-01-25 2006-07-27 Microsoft Corporation Content-targeted advertising for interactive computer-based applications
US20060259473A1 (en) * 2005-05-13 2006-11-16 Microsoft Corporation System and method for utilizing the content of an online conversation to select advertising content and/or other relevant information for display
US20070005713A1 (en) * 2005-07-01 2007-01-04 Levasseur Thierry Secure electronic mail system
US20070005694A1 (en) * 2005-06-30 2007-01-04 Pando Networks, Inc. System and method for distributed multi-media production, sharing and low-cost mass publication
US8473350B1 (en) * 2005-03-31 2013-06-25 Nokia Corporation Apparatus, methods and systems for ad-hoc applications based on advertisement
US9002725B1 (en) * 2005-04-20 2015-04-07 Google Inc. System and method for targeting information based on message content

Family Cites Families (240)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3566153A (en) 1969-04-30 1971-02-23 Texas Instruments Inc Programmable sequential logic
JPS61105671A (en) * 1984-10-29 1986-05-23 Hitachi Ltd Natural language processing device
US5208748A (en) 1985-11-18 1993-05-04 Action Technologies, Inc. Method and apparatus for structuring and managing human communications by explicitly defining the types of communications permitted between participants
US5216603A (en) 1985-11-18 1993-06-01 Action Technologies, Inc. Method and apparatus for structuring and managing human communications by explicitly defining the types of communications permitted between participants
US5887133A (en) 1997-01-15 1999-03-23 Health Hero Network System and method for modifying documents sent over a communications network
JP3168756B2 (en) 1993-02-24 2001-05-21 ミノルタ株式会社 Email management method of email system
US5734837A (en) 1994-01-14 1998-03-31 Action Technologies, Inc. Method and apparatus for building business process applications in terms of its workflows
US5870549A (en) 1995-04-28 1999-02-09 Bobo, Ii; Charles R. Systems and methods for storing, delivering, and managing messages
US5761689A (en) 1994-09-01 1998-06-02 Microsoft Corporation Autocorrecting text typed into a word processing document
US5724521A (en) 1994-11-03 1998-03-03 Intel Corporation Method and apparatus for providing electronic advertisements to end users in a consumer best-fit pricing manner
US6571279B1 (en) 1997-12-05 2003-05-27 Pinpoint Incorporated Location enhanced information delivery system
US5963205A (en) * 1995-05-26 1999-10-05 Iconovex Corporation Automatic index creation for a word processor
US5740549A (en) 1995-06-12 1998-04-14 Pointcast, Inc. Information and advertising distribution system and method
US5724571A (en) 1995-07-07 1998-03-03 Sun Microsystems, Inc. Method and apparatus for generating query responses in a computer-based document retrieval system
US6026368A (en) 1995-07-17 2000-02-15 24/7 Media, Inc. On-line interactive system and method for providing content and advertising information to a targeted set of viewers
US5913040A (en) 1995-08-22 1999-06-15 Backweb Ltd. Method and apparatus for transmitting and displaying information between a remote network and a local computer
US5948058A (en) 1995-10-30 1999-09-07 Nec Corporation Method and apparatus for cataloging and displaying e-mail using a classification rule preparing means and providing cataloging a piece of e-mail into multiple categories or classification types based on e-mail object information
AU1566597A (en) 1995-12-27 1997-08-11 Gary B. Robinson Automated collaborative filtering in world wide web advertising
US20050182765A1 (en) * 1996-02-09 2005-08-18 Technology Innovations, Llc Techniques for controlling distribution of information from a secure domain
US20020038383A1 (en) 1999-12-23 2002-03-28 Craig Ullman Enhanced video programming system and method for incorporating and displaying retrieved integrated internet information segments
US5809242A (en) * 1996-04-19 1998-09-15 Juno Online Services, L.P. Electronic mail system for displaying advertisement at local computer received from remote system while the local computer is off-line the remote system
US5848397A (en) 1996-04-19 1998-12-08 Juno Online Services, L.P. Method and apparatus for scheduling the presentation of messages to computer users
US6148332A (en) 1996-04-24 2000-11-14 Earthlink, Inc. Mandatory message display and reporting system
US6396513B1 (en) 1996-05-14 2002-05-28 At&T Corp. Electronic message sorting and notification system
WO1997046962A1 (en) 1996-06-07 1997-12-11 At & T Corp. Finding an e-mail message to which another e-mail message is a response
US6085206A (en) 1996-06-20 2000-07-04 Microsoft Corporation Method and system for verifying accuracy of spelling and grammatical composition of a document
US5832502A (en) 1996-07-02 1998-11-03 Microsoft Corporation Conversation index builder
US5839088A (en) 1996-08-22 1998-11-17 Go2 Software, Inc. Geographic location referencing system and method
US5948061A (en) 1996-10-29 1999-09-07 Double Click, Inc. Method of delivery, targeting, and measuring advertising over networks
US5959621A (en) 1996-12-06 1999-09-28 Microsoft Corporation System and method for displaying data items in a ticker display pane on a client computer
US6078914A (en) 1996-12-09 2000-06-20 Open Text Corporation Natural language meta-search system and method
US6182122B1 (en) * 1997-03-26 2001-01-30 International Business Machines Corporation Precaching data at an intermediate server based on historical data requests by users of the intermediate server
US6144944A (en) 1997-04-24 2000-11-07 Imgis, Inc. Computer system for efficiently selecting and providing information
US6044376A (en) 1997-04-24 2000-03-28 Imgis, Inc. Content stream analysis
US6021427A (en) 1997-05-22 2000-02-01 International Business Machines Corporation Method and system for preventing routing maelstrom loops of automatically routed electronic mail
US5987454A (en) 1997-06-09 1999-11-16 Hobbs; Allen Method and apparatus for selectively augmenting retrieved text, numbers, maps, charts, still pictures and/or graphics, moving pictures and/or graphics and audio information from a network resource
US7039599B2 (en) 1997-06-16 2006-05-02 Doubleclick Inc. Method and apparatus for automatic placement of advertising
US6029164A (en) 1997-06-16 2000-02-22 Digital Equipment Corporation Method and apparatus for organizing and accessing electronic mail messages using labels and full text and label indexing
US6185551B1 (en) 1997-06-16 2001-02-06 Digital Equipment Corporation Web-based electronic mail service apparatus and method using full text and label indexing
JP3000972B2 (en) 1997-08-18 2000-01-17 日本電気株式会社 Information providing apparatus and machine-readable recording medium recording program
US6134532A (en) 1997-11-14 2000-10-17 Aptex Software, Inc. System and method for optimal adaptive matching of users to most relevant entity and information in real-time
US6505046B1 (en) 1997-11-19 2003-01-07 Nortel Networks Limited Method and apparatus for distributing location-based messages in a wireless communication network
US6594693B1 (en) 1998-02-10 2003-07-15 Nitin A. Borwankar Method and apparatus for a structured, synchronized conversation using electronic messages over a computer network
US6421675B1 (en) * 1998-03-16 2002-07-16 S. L. I. Systems, Inc. Search engine
US6330589B1 (en) 1998-05-26 2001-12-11 Microsoft Corporation System and method for using a client database to manage conversation threads generated from email or news messages
US6167382A (en) 1998-06-01 2000-12-26 F.A.C. Services Group, L.P. Design and production of print advertising and commercial display materials over the Internet
US6438564B1 (en) 1998-06-17 2002-08-20 Microsoft Corporation Method for associating a discussion with a document
US6182098B1 (en) 1998-07-22 2001-01-30 International Business Machines Corporation Next/current/last ticker graphical presentation method
US6115709A (en) 1998-09-18 2000-09-05 Tacit Knowledge Systems, Inc. Method and system for constructing a knowledge profile of a user having unrestricted and restricted access portions according to respective levels of confidence of content of the portions
US6522875B1 (en) 1998-11-17 2003-02-18 Eric Morgan Dowling Geographical web browser, methods, apparatus and systems
US6507351B1 (en) 1998-12-09 2003-01-14 Donald Brinton Bixler System for managing personal and group networked information
US6549957B1 (en) 1998-12-22 2003-04-15 International Business Machines Corporation Apparatus for preventing automatic generation of a chain reaction of messages if a prior extracted message is similar to current processed message
US6654735B1 (en) 1999-01-08 2003-11-25 International Business Machines Corporation Outbound information analysis for generating user interest profiles and improving user productivity
US6332127B1 (en) 1999-01-28 2001-12-18 International Business Machines Corporation Systems, methods and computer program products for providing time and location specific advertising via the internet
JP3942760B2 (en) 1999-02-03 2007-07-11 富士通株式会社 Information collection device
US6985882B1 (en) 1999-02-05 2006-01-10 Directrep, Llc Method and system for selling and purchasing media advertising over a distributed communication network
US6834276B1 (en) 1999-02-25 2004-12-21 Integrated Data Control, Inc. Database system and method for data acquisition and perusal
AU4182400A (en) 1999-03-30 2000-10-16 Diva Systems Corporation User access to secondary content associated with a primary content
US6732152B2 (en) 1999-04-09 2004-05-04 Amazingmail, Inc. Methods and apparatus for generation and distribution of surface mail objects
US6847969B1 (en) 1999-05-03 2005-01-25 Streetspace, Inc. Method and system for providing personalized online services and advertisements in public spaces
US6757740B1 (en) 1999-05-03 2004-06-29 Digital Envoy, Inc. Systems and methods for determining collecting and using geographic locations of internet users
US6493702B1 (en) 1999-05-05 2002-12-10 Xerox Corporation System and method for searching and recommending documents in a collection using share bookmarks
US6493703B1 (en) 1999-05-11 2002-12-10 Prophet Financial Systems System and method for implementing intelligent online community message board
US6269361B1 (en) 1999-05-28 2001-07-31 Goto.Com System and method for influencing a position on a search result list generated by a computer network search engine
JP2000347894A (en) 1999-06-09 2000-12-15 Fujitsu Ltd Source program check device and program recording medium therefor
US6785869B1 (en) 1999-06-17 2004-08-31 International Business Machines Corporation Method and apparatus for providing a central dictionary and glossary server
US20040153509A1 (en) 1999-06-30 2004-08-05 Alcorn Robert L. Internet-based education support system, method and medium with modular text-editing component for use in a web-based application
US6449657B2 (en) * 1999-08-06 2002-09-10 Namezero.Com, Inc. Internet hosting system
GB2353679A (en) 1999-08-25 2001-02-28 Ibm Prioritized display of messages
US6381465B1 (en) 1999-08-27 2002-04-30 Leap Wireless International, Inc. System and method for attaching an advertisement to an SMS message for wireless transmission
US6826596B1 (en) 1999-09-07 2004-11-30 Roy Satoshi Suzuki System for categorizing and displaying reply messages in computer facilitated discussions
US7089278B1 (en) 1999-09-07 2006-08-08 Fuji Xerox Co., Ltd. Anchored conversations: adhesive, in-context, virtual discussion forums
US6788769B1 (en) 1999-10-13 2004-09-07 Emediacy, Inc. Internet directory system and method using telephone number based addressing
US6847992B1 (en) * 1999-10-19 2005-01-25 Netzero, Inc. Data pass-through to sponsors
US6983311B1 (en) 1999-10-19 2006-01-03 Netzero, Inc. Access to internet search capabilities
US6640239B1 (en) 1999-11-10 2003-10-28 Garuda Network Corporation Apparatus and method for intelligent scalable switching network
JP3904781B2 (en) * 1999-11-17 2007-04-11 パイオニア株式会社 Program transmission / reception system and method
US6489968B1 (en) * 1999-11-18 2002-12-03 Amazon.Com, Inc. System and method for exposing popular categories of browse tree
FI109319B (en) 1999-12-03 2002-06-28 Nokia Corp Filtering of electronic information to be transmitted to a terminal
EP1247167A4 (en) 1999-12-07 2006-08-02 Actioneer Inc A method and apparatus for receiving information in response to a request from an email client
US6892196B1 (en) 1999-12-22 2005-05-10 Accenture Llp System, method and article of manufacture for a user programmable diary interface link
US8645211B2 (en) 2000-01-06 2014-02-04 Anthony R. Rothschild System and method for adding an advertisement to a personal communication
US6587835B1 (en) 2000-02-09 2003-07-01 G. Victor Treyz Shopping assistance with handheld computing device
US6401075B1 (en) 2000-02-14 2002-06-04 Global Network, Inc. Methods of placing, purchasing and monitoring internet advertising
WO2001061551A1 (en) 2000-02-18 2001-08-23 Multitude, Inc. System and method for creating audio forums from e-mail
US6651086B1 (en) 2000-02-22 2003-11-18 Yahoo! Inc. Systems and methods for matching participants to a conversation
AU2001228896A1 (en) * 2000-02-23 2001-09-03 Jong-Hyouk Park The method of advertisement using an online chatting
US6606644B1 (en) 2000-02-24 2003-08-12 International Business Machines Corporation System and technique for dynamic information gathering and targeted advertising in a web based model using a live information selection and analysis tool
WO2001065411A1 (en) 2000-02-29 2001-09-07 Thinairapps, Inc. Flexible wireless advertisement integration in wireless software applications
US7693866B1 (en) 2000-03-07 2010-04-06 Applied Discovery, Inc. Network-based system and method for accessing and processing legal documents
US7730113B1 (en) 2000-03-07 2010-06-01 Applied Discovery, Inc. Network-based system and method for accessing and processing emails and other electronic legal documents that may include duplicate information
US7136915B2 (en) 2000-03-14 2006-11-14 Rieger Iii Charles J System for communicating through maps
US6665715B1 (en) * 2000-04-03 2003-12-16 Infosplit Inc Method and systems for locating geographical locations of online users
US20010042100A1 (en) 2000-04-14 2001-11-15 David Guedalia Unified system and methodology for remote access to e-mail
US7912868B2 (en) * 2000-05-02 2011-03-22 Textwise Llc Advertisement placement method and system using semantic analysis
US7478414B1 (en) * 2000-05-08 2009-01-13 Microsoft Corporation Method and apparatus for alerting a television viewers to the programs other viewers are watching
JP2001318948A (en) 2000-05-09 2001-11-16 Hitachi Ltd Method and device for retrieving document and medium having processing program for the method stored thereon
US6771291B1 (en) 2000-06-07 2004-08-03 The Perfect Web Corporation Method for developing electronic documents employing multiple display regions
US6889361B1 (en) 2000-06-13 2005-05-03 International Business Machines Corporation Educational spell checker
US20010054066A1 (en) 2000-06-13 2001-12-20 Louis Spitzer Apparatus and method for transmitting information from signage to portable computing device, and system utilizing same
US6742042B1 (en) 2000-06-28 2004-05-25 Nortel Networks Limited Method and apparatus of presenting ticker information
US7487112B2 (en) 2000-06-29 2009-02-03 Barnes Jr Melvin L System, method, and computer program product for providing location based services and mobile e-commerce
US6999941B1 (en) * 2000-07-11 2006-02-14 Amazon.Com, Inc. Providing gift clustering functionality to assist a user in ordering multiple items for a recipient
US7028263B2 (en) * 2000-07-19 2006-04-11 Research In Motion Limited User interface and method for viewing short messages on a wireless device
US20020032771A1 (en) 2000-07-20 2002-03-14 Trond Gledje Event-based advertisements
US7584251B2 (en) 2000-08-28 2009-09-01 Brown Scott T E-mail messaging system and method for enhanced rich media delivery
US20020052925A1 (en) * 2000-08-29 2002-05-02 Yoohwan Kim Method and apparatus for information delivery on the internet
US7284008B2 (en) * 2000-08-30 2007-10-16 Kontera Technologies, Inc. Dynamic document context mark-up technique implemented over a computer network
WO2002019717A2 (en) * 2000-08-31 2002-03-07 Myrio Corporation Real-time audience monitoring, content rating, and content enhancing
US7599851B2 (en) * 2000-09-05 2009-10-06 Renee Frengut Method for providing customized user interface and targeted marketing forum
US7043690B1 (en) 2000-09-11 2006-05-09 International Business Machines Corporation Method, system, and program for checking contact information
US7567916B1 (en) * 2000-09-12 2009-07-28 Capital One Financial Corporation System and method for performing Web based in-view monitoring
CA2392494A1 (en) 2000-09-25 2002-04-04 United Parcel Service Of America, Inc. Systems and associated methods for notification of package delivery services
US20030093315A1 (en) 2000-09-26 2003-05-15 Kenji Sato System and method for using e-mail as advertisement medium
US6683627B1 (en) 2000-09-28 2004-01-27 International Business Machines Corporation Scroll box controls
US7117208B2 (en) * 2000-09-28 2006-10-03 Oracle Corporation Enterprise web mining system and method
US6725228B1 (en) 2000-10-31 2004-04-20 David Morley Clark System for managing and organizing stored electronic messages
US7035903B1 (en) 2000-11-22 2006-04-25 Xerox Corporation Systems and methods for the discovery and presentation of electronic messages that are related to an electronic message
US20020073156A1 (en) 2000-12-08 2002-06-13 Xerox Corporation Method and system for mail folder displays
US6993553B2 (en) 2000-12-19 2006-01-31 Sony Corporation Data providing system, data providing apparatus and method, data acquisition system and method, and program storage medium
US6907418B2 (en) * 2000-12-21 2005-06-14 Metabiz Co., Ltd. Advertisement servicing system using e-mail arrival notifying program and method therefor
US20030009385A1 (en) 2000-12-26 2003-01-09 Tucciarone Joel D. Electronic messaging system and method thereof
US20020087631A1 (en) * 2001-01-03 2002-07-04 Vikrant Sharma Email-based advertising system
US20020094868A1 (en) * 2001-01-16 2002-07-18 Alma Tuck Methods for interactive internet advertising, apparatuses and systems including same
CA2434552A1 (en) 2001-01-18 2002-07-25 C3Gateways Services Inc. Network-assisted communication method and system therefor
US7502994B2 (en) * 2001-02-05 2009-03-10 Omniture, Inc. Web page link-tracking system
CA2437726A1 (en) 2001-02-15 2002-08-22 Suffix Mail Inc. E-mail messaging system
US7062572B1 (en) * 2001-03-19 2006-06-13 Microsoft Corporation Method and system to determine the geographic location of a network user
US6745197B2 (en) 2001-03-19 2004-06-01 Preston Gates Ellis Llp System and method for efficiently processing messages stored in multiple message stores
US6820081B1 (en) 2001-03-19 2004-11-16 Attenex Corporation System and method for evaluating a structured message store for message redundancy
CN1304967C (en) 2001-03-22 2007-03-14 郑明真 Methods and systems for electronic mail, internet target and direct marketing, and electronic mail banner
US6973481B2 (en) 2001-03-23 2005-12-06 Emailias Llc System and method for creating and managing forwarding email address
US7797374B2 (en) 2001-04-17 2010-09-14 Cbs Interactive Inc. System and method for providing digital messaging services
US20020178225A1 (en) 2001-05-24 2002-11-28 M&G Enterprises Llc System and method for providing on-line extensions of off-line places and experiences
US7827055B1 (en) * 2001-06-07 2010-11-02 Amazon.Com, Inc. Identifying and providing targeted content to users having common interests
US8538803B2 (en) * 2001-06-14 2013-09-17 Frank C. Nicholas Method and system for providing network based target advertising and encapsulation
US20020194229A1 (en) 2001-06-15 2002-12-19 Decime Jerry B. Network-based spell checker
US7143054B2 (en) 2001-07-02 2006-11-28 The Procter & Gamble Company Assessment of communication strengths of individuals from electronic messages
US20040068435A1 (en) * 2001-07-09 2004-04-08 Scot Braunzell Method of automated Ad campaign management
US20030020749A1 (en) * 2001-07-10 2003-01-30 Suhayya Abu-Hakima Concept-based message/document viewer for electronic communications and internet searching
JP4040849B2 (en) 2001-07-16 2008-01-30 株式会社東芝 Knowledge accumulation support system and message transfer method in the same system
US7185057B2 (en) 2001-07-26 2007-02-27 International Business Machines Corporation Individually specifying message output attributes in a messaging system
GB0120134D0 (en) * 2001-08-17 2001-10-10 Nokia Corp Improvements in or relating to communication networks and methods of distributing information around the network
US7013263B1 (en) * 2001-10-25 2006-03-14 Mindfabric, Inc. Online interaction processing
US7328242B1 (en) 2001-11-09 2008-02-05 Mccarthy Software, Inc. Using multiple simultaneous threads of communication
US20030101065A1 (en) 2001-11-27 2003-05-29 International Business Machines Corporation Method and apparatus for maintaining conversation threads in electronic mail
US20030177190A1 (en) 2001-11-27 2003-09-18 International Business Machines Corporation Method and apparatus for interaction with electronic mail from multiple sources
US7359936B2 (en) 2001-11-27 2008-04-15 International Business Machines Corporation Method and apparatus for electronic mail interaction with grouped message types
US20030163537A1 (en) 2001-11-27 2003-08-28 International Business Machines Corporation Method and apparatus for handling conversation threads and message groupings as a single entity
US20030110227A1 (en) 2001-12-06 2003-06-12 O'hagan Timothy Patrick Real time streaming media communication system
EP1472633A2 (en) * 2002-01-08 2004-11-03 Sap Ag Enhanced email management system
JP2003223437A (en) 2002-01-29 2003-08-08 Internatl Business Mach Corp <Ibm> Method of displaying candidate for correct word, method of checking spelling, computer device, and program
EP1481346B1 (en) 2002-02-04 2012-10-10 Cataphora, Inc. A method and apparatus to visually present discussions for data mining purposes
US7143135B2 (en) 2002-02-08 2006-11-28 Microsoft Corporation Automatic participant evaluation in computer mediated persistent conversations
JP4193398B2 (en) 2002-02-18 2008-12-10 日本電気株式会社 E-mail transfer system, e-mail transfer server, and e-mail transfer method
US7031977B2 (en) 2002-02-28 2006-04-18 Plumtree Software, Inc. Efficiently storing indented threads in a threaded discussion application
AU2003213621A1 (en) 2002-03-01 2003-09-16 Tralix, L.L.C. Method and system of sending and tracking electronic mail messages
US7136875B2 (en) 2002-09-24 2006-11-14 Google, Inc. Serving advertisements based on content
US7599852B2 (en) * 2002-04-05 2009-10-06 Sponster Llc Method and apparatus for adding advertising tag lines to electronic messages
US7120622B2 (en) 2002-06-10 2006-10-10 Xerox Corporation Authoring tools, including content-driven treetables, for fluid text
US20060184617A1 (en) 2005-02-11 2006-08-17 Nicholas Frank C Method and system for the creating, managing, and delivery of feed formatted content
US7139850B2 (en) 2002-06-21 2006-11-21 Fujitsu Limited System for processing programmable buttons using system interrupts
US8145716B2 (en) * 2002-08-07 2012-03-27 Kryptiq Corporation Method and apparatus for assigning cost metrics to electronic messages
US8234165B2 (en) * 2002-08-28 2012-07-31 Funn Holdings LLC Digital tuner regulator platform (DTR)
US20040044735A1 (en) 2002-08-30 2004-03-04 International Business Machines Corporation Method and system for organizing an email thread
AU2003265847A1 (en) 2002-09-03 2004-03-29 X1 Technologies, Llc Apparatus and methods for locating data
GB0220664D0 (en) * 2002-09-05 2002-10-16 Nec Europe Ltd Advertisement services on mobile terminals
US7933957B2 (en) 2002-09-17 2011-04-26 At&T Intellectual Property Ii, L.P. Tracking email and instant messaging (IM) thread history
US8122084B2 (en) 2002-10-29 2012-02-21 Sap Ag Collaborative conversation channels
US7584208B2 (en) * 2002-11-20 2009-09-01 Radar Networks, Inc. Methods and systems for managing offers and requests in a network
US20040260710A1 (en) 2003-02-28 2004-12-23 Marston Justin P. Messaging system
US20050091320A1 (en) 2003-10-09 2005-04-28 Kirsch Steven T. Method and system for categorizing and processing e-mails
US20040181580A1 (en) 2003-03-11 2004-09-16 Etienne Baranshamaje Method, computer useable medium, and system for portable email messaging
US7509378B2 (en) 2003-03-11 2009-03-24 Bea Systems, Inc. System and method for message ordering in a message oriented network
US7376714B1 (en) * 2003-04-02 2008-05-20 Gerken David A System and method for selectively acquiring and targeting online advertising based on user IP address
US7890603B2 (en) 2003-04-03 2011-02-15 International Business Machines Corporation Apparatus, system and method of performing mail message searches across multiple mail servers
US7213210B2 (en) 2003-04-03 2007-05-01 International Business Machines Corporation Method, apparatus and computer program product for managing e-mail messages
US7421690B2 (en) * 2003-06-23 2008-09-02 Apple Inc. Threaded presentation of electronic mail
US7162473B2 (en) 2003-06-26 2007-01-09 Microsoft Corporation Method and system for usage analyzer that determines user accessed sources, indexes data subsets, and associated metadata, processing implicit queries based on potential interest to users
US7974391B2 (en) 2003-07-14 2011-07-05 Orative Corporation Conversation-based user interface
US20050033657A1 (en) * 2003-07-25 2005-02-10 Keepmedia, Inc., A Delaware Corporation Personalized content management and presentation systems
JP2005056361A (en) * 2003-08-07 2005-03-03 Sony Corp Information processor and method, program, and storage medium
US20050038861A1 (en) 2003-08-14 2005-02-17 Scott Lynn Method and system for dynamically generating electronic communications
US20050060643A1 (en) 2003-08-25 2005-03-17 Miavia, Inc. Document similarity detection and classification system
US7454417B2 (en) * 2003-09-12 2008-11-18 Google Inc. Methods and systems for improving a search ranking using population information
US7627829B2 (en) 2003-09-19 2009-12-01 Yahoo! Inc. Command center and interface for web based business merchandising and service
US7484175B2 (en) 2003-09-30 2009-01-27 International Business Machines Corporation Method and apparatus for increasing personability of instant messaging with user images
US7203684B2 (en) * 2003-10-07 2007-04-10 Google, Inc Serving content-targeted ADS in e-mail, such as e-mail newsletters
US7433920B2 (en) 2003-10-10 2008-10-07 Microsoft Corporation Contact sidebar tile
US20050144241A1 (en) 2003-10-17 2005-06-30 Stata Raymond P. Systems and methods for a search-based email client
US20050086598A1 (en) 2003-10-21 2005-04-21 Marshall John L.Iii Document digest system and methodology
US7194516B2 (en) 2003-10-23 2007-03-20 Microsoft Corporation Accessing different types of electronic messages through a common messaging interface
US8762206B2 (en) * 2003-11-26 2014-06-24 Buy.Com, Inc. Method and system for word of mouth advertising via a communications network
US7693834B2 (en) * 2003-12-04 2010-04-06 Snap Technologies, Inc. Search engine that dynamically generates search listings
US20050131715A1 (en) 2003-12-11 2005-06-16 Trethewey James R. Method and apparatus for providing location information
US20050130685A1 (en) 2003-12-12 2005-06-16 Mark Jenkin Method and apparatus for inserting information into an unused portion of a text message
US20050137939A1 (en) 2003-12-19 2005-06-23 Palo Alto Research Center Incorporated Server-based keyword advertisement management
US7412437B2 (en) 2003-12-29 2008-08-12 International Business Machines Corporation System and method for searching and retrieving related messages
CN100495392C (en) * 2003-12-29 2009-06-03 西安迪戈科技有限责任公司 Intelligent search method
US8805933B2 (en) 2003-12-29 2014-08-12 Google Inc. System and method for building interest profiles from related messages
US20050198173A1 (en) 2004-01-02 2005-09-08 Evans Alexander W. System and method for controlling receipt of electronic messages
US7383307B2 (en) 2004-01-07 2008-06-03 International Business Machines Corporation Instant messaging windowing for topic threads
US7904510B2 (en) 2004-02-23 2011-03-08 Microsoft Corporation Systems and methods for managing discussion threads based on ratings
US20050187823A1 (en) 2004-02-23 2005-08-25 Howes Jeffrey V. Method and system for geographically-targeted internet advertising
US7725443B2 (en) 2004-02-26 2010-05-25 Thomson Licensing Discussion association for e-mail
US7953800B2 (en) 2004-03-08 2011-05-31 Netsuite, Inc. Integrating a web-based business application with existing client-side electronic mail systems
US20050222900A1 (en) * 2004-03-30 2005-10-06 Prashant Fuloria Selectively delivering advertisements based at least in part on trademark issues
US7912904B2 (en) * 2004-03-31 2011-03-22 Google Inc. Email system with conversation-centric user interface
US7565534B2 (en) 2004-04-01 2009-07-21 Microsoft Corporation Network side channel for a message board
US20070255791A1 (en) 2004-04-21 2007-11-01 Koninklijke Philips Electronics, N.V. System and Method for Managing Threadsd in a Network Chat Environment
US20060031304A1 (en) 2004-04-27 2006-02-09 Amit Bagga Method and apparatus for classification of relative position of one or more text messages in an email thread
US7979501B1 (en) * 2004-08-06 2011-07-12 Google Inc. Enhanced message display
US20060020510A1 (en) * 2004-07-20 2006-01-26 Vest Herb D Method for improved targeting of online advertisements
US20060026046A1 (en) * 2004-07-29 2006-02-02 Nir Yaron Method for affording preferential status to selected suppliers each in a respective service industry category
US20060026593A1 (en) 2004-07-30 2006-02-02 Microsoft Corporation Categorizing, voting and rating community threads
US20060064346A1 (en) 2004-08-31 2006-03-23 Qualcomm Incorporated Location based service (LBS) system and method for targeted advertising
US20060085434A1 (en) * 2004-09-30 2006-04-20 Microsoft Corporation System and method for deriving and visualizing business intelligence data
US8126895B2 (en) * 2004-10-07 2012-02-28 Computer Associates Think, Inc. Method, apparatus, and computer program product for indexing, synchronizing and searching digital data
TW200620911A (en) 2004-12-08 2006-06-16 Bo-Tai Ho Dividing method and receiving method for normal mails and commercial mails in e-mail
US20060129455A1 (en) * 2004-12-15 2006-06-15 Kashan Shah Method of advertising to users of text messaging
US20060149677A1 (en) 2005-01-06 2006-07-06 Microsoft Corporation Contextual ad processing on local machine
US7450954B2 (en) 2005-02-07 2008-11-11 Lamoda, Inc. System and method for location-based interactive content
US7917389B2 (en) 2005-04-15 2011-03-29 The Go Daddy Group, Inc. Relevant email ads for domain name advertiser
US20060248209A1 (en) 2005-04-27 2006-11-02 Leo Chiu Network system for facilitating audio and video advertising to end users through audio and video podcasts
US7903099B2 (en) 2005-06-20 2011-03-08 Google Inc. Allocating advertising space in a network of displays
JP2008545200A (en) * 2005-06-28 2008-12-11 チョイスストリーム インコーポレイテッド Method and apparatus for a statistical system for targeting advertisements
US9286388B2 (en) * 2005-08-04 2016-03-15 Time Warner Cable Enterprises Llc Method and apparatus for context-specific content delivery
US20070050372A1 (en) * 2005-08-31 2007-03-01 Convergent Media Systems Systems and methods for creating, managing and publishing advertisements
US8185591B1 (en) * 2005-09-30 2012-05-22 Google Inc. Systems and methods for viewing email attachments as thumbnails
US20070088801A1 (en) 2005-10-17 2007-04-19 Zohar Levkovitz Device, system and method of delivering targeted advertisements using wireless application protocol
US8677020B2 (en) 2005-10-17 2014-03-18 Amobee Inc. Device, system and method of wireless delivery of targeted advertisements
US20070088852A1 (en) 2005-10-17 2007-04-19 Zohar Levkovitz Device, system and method of presentation of advertisements on a wireless device
US7730141B2 (en) 2005-12-16 2010-06-01 Microsoft Corporation Graphical interface for defining mutually exclusive destinations
US20070143428A1 (en) 2005-12-21 2007-06-21 Shruti Kumar Method and system for displaying indications of messages from important persons and from new persons at a high display priority in a gathered threads view of an electronic mail ("email") user interface
US20070157105A1 (en) 2006-01-04 2007-07-05 Stephen Owens Network user database for a sidebar
WO2008014182A2 (en) * 2006-07-24 2008-01-31 Chacha Search, Inc. Method, system, and computer readable storage for podcasting and video training in an information search system
WO2008049092A2 (en) * 2006-10-18 2008-04-24 Google Inc. Generic online ranking system and method suitable for syndication
WO2009055712A1 (en) 2007-10-26 2009-04-30 Accoona Corp Apparatuses, methods and systems for a forum ferreting system
US7643352B2 (en) 2008-06-03 2010-01-05 Elite Semiconductor Memory Technology Inc. Method for erasing flash memory
US20100280903A1 (en) 2009-04-30 2010-11-04 Microsoft Corporation Domain classification and content delivery

Patent Citations (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6714975B1 (en) * 1997-03-31 2004-03-30 International Business Machines Corporation Method for targeted advertising on the web based on accumulated self-learning data, clustering users and semantic node graph techniques
US20020046102A1 (en) * 2000-04-24 2002-04-18 Dohring Doug Carl Method and system for including an advertisement in messages delivered by a character or characters
US20030229537A1 (en) * 2000-05-03 2003-12-11 Dunning Ted E. Relationship discovery engine
US20020072966A1 (en) * 2000-08-31 2002-06-13 Eldering Charles A. System for providing targeted advertisements using advertiser-specific target groups
US20020042914A1 (en) * 2000-10-11 2002-04-11 United Video Properties, Inc. Systems and methods for providing targeted advertisements based on current activity
US20030195801A1 (en) * 2000-10-12 2003-10-16 Tetsuo Takakura System and method for providing advertisement data with conversation data to users
US20020082914A1 (en) * 2000-12-26 2002-06-27 Gil Beyda Hybrid network based advertising system and method
US20020087978A1 (en) * 2000-12-30 2002-07-04 Nicholson Robert D. System and method of selective advertising on a TV channel
US20050015394A1 (en) * 2001-11-30 2005-01-20 Mckeeth Jim Method and system for updating a search engine
US20050021521A1 (en) * 2002-07-03 2005-01-27 Wycoff Robert E. Embedding Internet message board display links
US20040059712A1 (en) * 2002-09-24 2004-03-25 Dean Jeffrey A. Serving advertisements using information associated with e-mail
US20050004990A1 (en) * 2003-07-01 2005-01-06 Microsoft Corporation Conversation grouping of electronic mail records
US20050050027A1 (en) * 2003-09-03 2005-03-03 Leslie Yeh Determining and/or using location information in an ad system
US20050114781A1 (en) * 2003-11-25 2005-05-26 International Business Machines Corporation Multi-column user interface for managing on-line threaded conversations
US20050216454A1 (en) * 2004-03-15 2005-09-29 Yahoo! Inc. Inverse search systems and methods
US20050222985A1 (en) * 2004-03-31 2005-10-06 Paul Buchheit Email conversation management system
US20050234850A1 (en) * 2004-03-31 2005-10-20 Buchheit Paul T Displaying conversations in a conversation-based email sysem
US20060053204A1 (en) * 2004-09-09 2006-03-09 Microsoft Corporation Presenting and manipulating electronic mail conversations
US20060075019A1 (en) * 2004-09-17 2006-04-06 About, Inc. Method and system for providing content to users based on frequency of interaction
US20060075044A1 (en) * 2004-09-30 2006-04-06 Fox Kevin D System and method for electronic contact list-based search and display
US20060136298A1 (en) * 2004-12-16 2006-06-22 Conversagent, Inc. Methods and apparatus for contextual advertisements in an online conversation thread
US20060167747A1 (en) * 2005-01-25 2006-07-27 Microsoft Corporation Content-targeted advertising for interactive computer-based applications
US8473350B1 (en) * 2005-03-31 2013-06-25 Nokia Corporation Apparatus, methods and systems for ad-hoc applications based on advertisement
US9002725B1 (en) * 2005-04-20 2015-04-07 Google Inc. System and method for targeting information based on message content
US20060259473A1 (en) * 2005-05-13 2006-11-16 Microsoft Corporation System and method for utilizing the content of an online conversation to select advertising content and/or other relevant information for display
US20070005694A1 (en) * 2005-06-30 2007-01-04 Pando Networks, Inc. System and method for distributed multi-media production, sharing and low-cost mass publication
US20070005713A1 (en) * 2005-07-01 2007-01-04 Levasseur Thierry Secure electronic mail system

Cited By (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090312040A1 (en) * 2008-06-13 2009-12-17 Embarq Holdings Company, Llc System and method for inserting advertisements into SMS messages
US9335883B2 (en) * 2011-09-08 2016-05-10 Microsoft Technology Licensing, Llc Presenting search result items having varied prominence
US20130067364A1 (en) * 2011-09-08 2013-03-14 Microsoft Corporation Presenting search result items having varied prominence
US20130325625A1 (en) * 2012-06-04 2013-12-05 American Express Travel Related Services Company, Inc. Systems and Methods for Delivering Tailored Content Based Upon a Consumer Profile
US9940630B2 (en) 2012-06-04 2018-04-10 American Express Travel Related Services Company, Inc. Systems and methods for delivering tailored content based upon a consumer profile
US9928514B2 (en) 2012-06-04 2018-03-27 American Express Travel Related Services Company, Inc. Systems and methods for delivering tailored content based upon a consumer profile
US9760895B2 (en) 2012-06-04 2017-09-12 American Express Travel Related Services Company, Inc. Systems and methods for delivering tailored content based upon a consumer profile
US9754269B2 (en) 2012-06-04 2017-09-05 American Express Travel Related Services Company, Inc. Systems and methods for delivering tailored content based upon a consumer profile
US9514468B2 (en) * 2012-06-04 2016-12-06 American Express Travel Related Services Company, Inc. Systems and methods for delivering tailored content based upon a consumer profile
US9489677B2 (en) 2012-06-04 2016-11-08 American Express Travel Related Services Company, Inc. Systems and methods for delivering tailored content based upon a consumer profile
US9355378B2 (en) 2013-03-14 2016-05-31 American Express Travel Related Services Company, Inc. Systems and methods for identifying and delivering tailored content based upon a service dialog
US9292818B2 (en) 2013-03-14 2016-03-22 American Express Travel Related Services Company, Inc. Systems and methods for identifying and delivering tailored content based upon a service dialog
US9292817B2 (en) 2013-03-14 2016-03-22 American Express Travel Related Services Company, Inc. Systems and methods for identifying and delivering tailored content based upon a service dialog
US9349137B2 (en) 2013-03-14 2016-05-24 American Express Travel Related Services Company, Inc. Systems and methods for identifying and delivering tailored content based upon a service dialog
US9292820B2 (en) 2013-03-14 2016-03-22 American Express Travel Related Services Company, Inc. Systems and methods for identifying and delivering tailored content based upon a service dialog
US9355411B2 (en) 2013-03-14 2016-05-31 American Express Travel Related Services Company, Inc. Systems and methods for identifying and delivering tailored content based upon a service dialog
US9292816B2 (en) 2013-03-14 2016-03-22 American Express Travel Related Services Company, Inc. Systems and methods for identifying and delivering tailored content based upon a service dialog
US9501787B2 (en) 2013-03-14 2016-11-22 American Express Travel Related Services Company, Inc. Delivering options for tailored content
US9501788B2 (en) 2013-03-14 2016-11-22 American Express Travel Related Services Company, Inc. Identifying and delivering tailored content with gift options
US9324103B2 (en) 2013-03-14 2016-04-26 American Express Travel Related Services Company, Inc. Systems and methods for identifying and delivering tailored content based upon a service dialog
US9721274B2 (en) 2013-03-14 2017-08-01 American Express Travel Related Services Company, Inc. Modifying tailored content based upon a service dialog
US9734516B2 (en) 2013-03-14 2017-08-15 American Express Travel Related Services Company, Inc. Systems and methods for identifying and delivering tailored content based upon a service dialog
US9292819B2 (en) 2013-03-14 2016-03-22 American Express Travel Related Services Company, Inc. Systems and methods for identifying and delivering tailored content based upon a service dialog
US9286633B2 (en) 2013-03-14 2016-03-15 American Express Travel Related Services Company, Inc. Systems and methods for identifying and delivering tailored content based upon a service dialog
US9846894B2 (en) 2013-03-14 2017-12-19 American Express Travel Related Services Company, Inc. Identifying and delivering tailored content based a reminder
US9256848B2 (en) 2013-03-14 2016-02-09 American Express Travel Related Services Company, Inc. Systems and methods for identifying and delivering tailored content based upon a service dialog
US9245250B2 (en) 2013-03-14 2016-01-26 American Express Travel Related Services Company, Inc. Systems and methods for identifying and delivering tailored content based upon a service dialog
US10643244B2 (en) 2013-03-14 2020-05-05 American Express Travel Related Services Company, Inc. Tailored content with tailored options related to reminders
US20220035989A1 (en) * 2017-12-06 2022-02-03 Microsoft Technology Licensing, Llc Personalized presentation of messages on a computing device

Also Published As

Publication number Publication date
US8601004B1 (en) 2013-12-03

Similar Documents

Publication Publication Date Title
US8601004B1 (en) System and method for targeting information items based on popularities of the information items
US7949714B1 (en) System and method for targeting advertisements or other information using user geographical information
US11682051B1 (en) System and method for targeting information based on message content in a reply
US9710555B2 (en) User profile stitching
KR100812116B1 (en) Serving advertisements based on content
US9490991B2 (en) System and method for impromptu shared communication spaces
US8468143B1 (en) System and method for directing questions to consultants through profile matching
AU2013230980B2 (en) Providing content to a user across multiple devices
US10068258B2 (en) Sponsored stories and news stories within a newsfeed of a social networking system
US8447643B2 (en) System and method for collecting and distributing reviews and ratings
US9129312B1 (en) Bidding on pending, query term-based advertising opportunities
US20050222903A1 (en) Rendering content-targeted ads with e-mail
US9002725B1 (en) System and method for targeting information based on message content
US20080005108A1 (en) Message mining to enhance ranking of documents for retrieval
US20110015992A1 (en) Estimating statistics for online advertising campaigns
US20110246920A1 (en) Method and apparatus for contextual based search engine and enterprise knowledge management
US20220019619A1 (en) Computerized system and method for display of modified machine-generated messages
EP1324214A1 (en) Method of retrieving, collecting and distributing information among distributed computers
US20050076130A1 (en) Targeted use of search results
US20140136321A1 (en) System for publishing content in marketing communications across digital media in online advertising
US20150358270A1 (en) System and method for targeting information based on a list of message content
US20160028659A1 (en) System and Method for Targeting Advertisements or Other Information Based on Recently Sent Message or Messages
US20140136320A1 (en) Method for publishing content in marketing communications across digital media in online advertising
US20140180836A1 (en) Contextual content targeting

Legal Events

Date Code Title Description
AS Assignment

Owner name: GOOGLE INC., CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:MAHADEVAN, UMA;BURNIM, JACOB SAMUELS;REEL/FRAME:033927/0932

Effective date: 20051205

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION

AS Assignment

Owner name: GOOGLE LLC, CALIFORNIA

Free format text: CHANGE OF NAME;ASSIGNOR:GOOGLE INC.;REEL/FRAME:044144/0001

Effective date: 20170929