WO2001069860A2 - System and method for providing information based on user histories - Google Patents

System and method for providing information based on user histories Download PDF

Info

Publication number
WO2001069860A2
WO2001069860A2 PCT/US2000/041058 US0041058W WO0169860A2 WO 2001069860 A2 WO2001069860 A2 WO 2001069860A2 US 0041058 W US0041058 W US 0041058W WO 0169860 A2 WO0169860 A2 WO 0169860A2
Authority
WO
WIPO (PCT)
Prior art keywords
user
information
history
classifications
server controller
Prior art date
Application number
PCT/US2000/041058
Other languages
French (fr)
Other versions
WO2001069860A3 (en
Inventor
Anthony C. Fascenda
Original Assignee
Aether Systems, Inc.
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 Aether Systems, Inc. filed Critical Aether Systems, Inc.
Priority to AU2001245028A priority Critical patent/AU2001245028A1/en
Publication of WO2001069860A2 publication Critical patent/WO2001069860A2/en
Publication of WO2001069860A3 publication Critical patent/WO2001069860A3/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/306User profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/04Protocols specially adapted for terminals or networks with limited capabilities; specially adapted for terminal portability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/142Managing session states for stateless protocols; Signalling session states; State transitions; Keeping-state mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/52Network services specially adapted for the location of the user terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/18Processing of user or subscriber data, e.g. subscribed services, user preferences or user profiles; Transfer of user or subscriber data

Definitions

  • the present invention relates generally to communications, and more particularly to a system and method for providing information based on explicit and implicit information derived from user traffic patterns.
  • a server can learn a lot of unique information from the request. For example, a server can typically determine an identity of a client, an approximate geographic location from which a request was sent (e.g. , if the client is a wireless communications device) and the explicit information requested.
  • a server generally uses only the explicit request to provide a response to a user. As a result, a server often provides an inappropriate response to a request for information. If the response is not inappropriate, the response is often more general than a user wants.
  • servers that can provide information to a user without the user explicitly requesting the information at the time.
  • servers exist that can provide information to a user if a user sets a specific "alert". These alerts are monitored continuously by the server, enabling the server to notify a user when an alert is triggered. However, if an appropriate alert has not been set (e.g. , enabled) by a user, the server will fail to provide important information to the user.
  • the present invention is directed toward a system and method for providing focused information to a user in response to a non-focused request.
  • a server takes advantage of the unique information provided by requests in order to provide a more focused response to a request from a client device of a user.
  • the method of the present invention includes the steps of receiving a request from a client device and identifying a user based on the request.
  • the method also include the steps of recalling a history of the user, determining a response based on the request and the history of the user, and sending the response to the client device of the user.
  • the history of the user can include information related to times when previous requests were made by the user and information related to locations from which previous requests were made by the user.
  • the response can be determined based on at least the request, the information related to the times when the previous requests were made by the user, and the information related to the locations from which the previous requests were made by the user.
  • the method can also includes the steps of collecting the information related to the times when the previous requests were made by the user and collecting the information relating to the locations from which the previous requests were made by the user.
  • the information related to the times when the previous requests were made by the user and the information relating to the locations from which the previous requests were made by the user can then be stored in the history of the user.
  • the history of the user includes implicit information derived from explicit requests previously made by the user.
  • the response can be determined based on at least the request (i.e., the current request) and the implicit information in the history.
  • the method of the present invention can also include the steps of deriving the implicit information based on the explicit requests previously made by said user and storing the implicit information in the history of the user.
  • the history of the user includes explicit requests previously made by the user and implicit information derived from the explicit requests.
  • the response can be determined based on at least the request (i.e. , the current request), the explicit requests in the history of the user and the implicit information in the history of the user.
  • the method of the present invention can also include the steps of storing the explicit requests in the history, deriving the implicit information based on the explicit requests, and storing the implicit information in the history of the user.
  • the history of the user includes explicit requests previously made by the user, and the response is determined based on at least the request (i.e., the current request) and the explicit requests previously made by the user that are stored in the history.
  • the present invention is also directed to a method and system for sending unsolicited information to a user.
  • An important advantage of the present invention is that it does not require a user to activate specific alerts to receive information.
  • this method includes the step of receiving information from an information source, wherein the received information is associated with a set of classifications that includes one or more classifications. This method also includes the step of comparing the set of classifications to at least one user history, wherein each user history is associated with a user.
  • the unsolicited information, related to the received information is then sent to a client device of each user having a user history that matches at least one classification of the set of classifications.
  • the unsolicited information can be, for example, the received information, a portion of the received information, a summary of the received information, a title of the received information, or a key word(s) related to the received information.
  • the received information is provided by an external information source.
  • the external information source can provide the set of classifications along with the received information.
  • Another embodiment includes the step of producing a set of classifications based on the received information.
  • the received information is provided by a local information source.
  • each user history includes implicit information derived from explicit requests previously made a corresponding user.
  • the method of the present invention can also include the step of comparing the set of classifications to the implicit information stored in each user history.
  • each user history that includes implicit information that corresponds to at least one classification in the set of classifications is identified.
  • the unsolicited information can then be sent to the user(s) (more specifically, the client device(s) of the user(s)) that are associated with the identified user histories.
  • each user history that includes implicit information that corresponds to at least one classification in the set of classifications and that exceeds a threshold is identified.
  • the unsolicited information can then be sent to the user(s) associated with the identified user histories.
  • the method of the present invention can include the step of comparing the set of classifications to the explicit requests and the implicit information stored in each user history.
  • FIGS. 1 A and IB illustrate exemplary communications systems in which the present invention is useful
  • FIG. 2 illustrates an exemplary two-way communications device for use with the present invention
  • FIG. 3 illustrates a table that maps cell sites with geographic information
  • FIGS. 4A, 4B, 5A and 5B illustrate exemplary history records that are used in the present invention
  • FIGS. 6 A and 6B illustrate portions of request messages for use with the present invention
  • FIG. 7 illustrates a table that maps cell sites with unique identifiers of client devices
  • FIG. 8 illustrates an alternative table that maps cell sites with unique identifiers of client devices
  • FIG. 9 is a flowchart depicting the high level operation of an embodiment of the present invention.
  • FIG. 10 is a flowchart depicting the high level operation of another embodiment of the present invention.
  • FIG. 11 is an exemplary computer system, which can be used to perform the operations of the present invention. Detailed Description of the Preferred Embodiments
  • the present invention relates to a system and method that supports the providing of focused information (also referred to as directed information) to a client device (e.g., a two-way paging device, a wireless phone, a personal data assistant, or a desk top computer) in response to receiving a request from the client device.
  • a client device e.g., a two-way paging device, a wireless phone, a personal data assistant, or a desk top computer
  • the present invention also relates to a system and method that supports the providing of unsolicited focused information to a client device.
  • the present invention can be used in a two-way wireless communications system. Additionally, the present invention can be used in various other types of communications system.
  • the present invention can be used with the Internet.
  • a client device can be, for example, a wireless device that wirelessly accesses the Internet (e.g., a PalmPilot® or a wireless phone) or a personal computer that is wired to the Internet.
  • Communications system 100 includes a plurality of cell sites 102 each having a coverage area that is typically about 5 to 10 miles in diameter. A coverage area of one cell site often overlaps a portion of a coverage area of another cell site, which are illustrated for exemplary purposes by the hexagonal regions.
  • Each cell site 102 includes an antenna 104 for transmitting and receiving messages to and from two-way wireless client devices 108 (e.g. , a two-way pager, a wireless phone, a hand held computing device) that are located within a geographic coverage area of the cell site 102. Alternatively, separate antennas may be used for sending and receiving messages, as would be apparent to a person skilled in the relevant art.
  • Each cell 102 is coupled to communications network 110, which can be. for example, an
  • Communications network 110 can include, but is not limited to, land based links such as fiber optics or terrestrial microwave, and/or satellite based links, as would also be apparent to a person skilled in the relevant art.
  • Each cell site 102 communicates with a message system center (MSC)
  • each cell cite 102 and MSC 120 that includes a subscriber database (also referred to as a user database) that maintains records of all subscribers (also referred to as users) on the system, a unique identity sequence for the subscriber's client device, and an indication of the cell site from which the client device last sent a message (such as an acknowledgment message or a request message).
  • a subscriber database also referred to as a user database
  • a unique identity sequence for the subscriber's client device
  • an indication of the cell site from which the client device last sent a message such as an acknowledgment message or a request message.
  • communications between each cell cite 102 and MSC 120 is accomplished through communications network 110.
  • each cell site 102 can have a dedicated link to MSC 120.
  • Communications network 110 can be coupled to a public switched telephone network (PSTN) 112 so that a message can be sent to and from client device 108 via PSTN 112.
  • PSTN public switched telephone network
  • a message can also be sent from one client device 108 to another client device 108 using communications system 100.
  • communications system 100 is the Bell South Wireless Data network (also known as the RAM Mobile Data network) or the
  • ARDIS network which are both well known two-way nationwide wireless packet data networks.
  • a client device (e.g., two-way wireless communications device) 108 typically identifies itself to MSC 120 by sending a registration or identification signal.
  • Such signals include a data field including at least one unique identifier, such as a Mobile Identification Number (MIN) and/or Electronic Serial Number (ESN).
  • MIN Mobile Identification Number
  • ESN Electronic Serial Number
  • a MIN which can be reprogrammed, is analogous to a telephone number.
  • An ESN is hard-coded and fixed such that it is difficult, if not impossible to change.
  • Some devices include both a MIN and an ESN.
  • the client device used in an embodiment of the present invention discussed in more detail below, only includes one unique identifier, known as a Mobile Access Number (MAN), which is similar to an ESN in that it is hard-coded and fixed.
  • MAN Mobile Access Number
  • the identification signal sent by client device 108 can include one or more of the above discussed unique identifiers, or any other similar unique identifier. Such identification information can be periodically transmitted by client device 108 and/or included with other types of messages sent by client device 108. Such unique identifiers are also sent with each request sent by a client device 108.
  • An optional function of MSC 120 is to determine whether the unique identifier of a client device is valid.
  • a received unique identifier such as a unique identity sequence comprising a string of digitally represented alphanumeric characters, can be compared to a maintained database of unique identifiers (i.e., MINs, ESNs, MANs) to detect fraud.
  • MSC 120 can keep track of the approximate whereabouts of each client device 108 by keeping track of which cell site 102 a message, sent by a client device 108, originated. When MSC 120 is thus informed of the approximate whereabouts of each individual client device 108, it can later limit the number of cell sites 102 from which it transmits a message addressed to a particular client device 108. MSC 120 can even limit the transmission of a message to only one cell site 120 having a coverage area within which the particular client device 108 is believed to be located. The coverage area of a limited number of cell cites 102
  • the targeted area can be the area covered by a single cell site or a slightly larger area that is also covered by a few adjacent cell sites.
  • This limited or "targetted" transmission is much more efficient than broadcast-type transmission where a message is transmitted from every cell site, regardless of a location of a client device 108 to which the message is addressed.
  • Servers 1 14 are supported by communications system 100. That is, communications system 100 provides for message delivery between a server 114 and one or more client devices 108.
  • Servers 1 14 can communicate directly with client devices 108 or indirectly with client devices 108 via communications network 110. Alternatively, servers 1 14 can communicate with communications network 1 10 through PSTN 1 12. In one embodiment, a server 114 provides information to a client device 108 upon receiving a request from the client device 108. Additionally, servers 114 can initiate the sending of information (e.g.. unsolicited information) to a client device 108. This can be done periodically or upon a triggering event. Additional details about the types of services and the information provided by services providers 1 14 are discussed below. The present invention is also useful in data networks such a local area network (LAN), a home area network (HAN) and a wide area network (WAN).
  • LAN local area network
  • HAN home area network
  • WAN wide area network
  • the present invention is useful in the largest present day WAN, referred to as the Internet.
  • the Internet is a world-wide set of interconnected computer networks that can be used to access a growing amount and variety of information electronically.
  • One method of accessing information on the Internet is known as the World Wide Web (www, or the "web").
  • the web is a distributed, hypermedia system, and functions as a client-server based information presentation system.
  • Information that is intended to be accessible over the web is generally stored in the form of "pages" on servers (e.g., general purpose computers).
  • FIG. IB is a network block diagram showing a plurality of clients 108 and servers 114 connected to the Internet 118.
  • a client sends a request to a server the request specifies, among other things, a destination address (e.g. , a URL) and a source address that can be used to identify a user.
  • a destination address e.g. , a URL
  • a source address e.g. , a source address that can be used to identify a user.
  • a part of the URL known as the Domain Name is passed to a domain server (DNS) to be translated to a network address.
  • DNS domain server
  • the network address specifies the Internet protocol (IP) address of the intended server.
  • IP Internet protocol
  • the client request is passed to the server having the network address.
  • the present invention can then be used by that server to provide a focused response to the request.
  • the focused response is a focused web page.
  • Servers 1 14 maintain or otherwise have access to local or remote databases that store and/or provide various types of data.
  • remote databases 130 are maintained by data sources 132.
  • FIG. 1A also shows a local database 1 16 that is maintained by server 1 14.
  • Servers 1 14 can communicate with data sources 132 through dedicated links or through communications network 1 10, for example.
  • the type and number of databases, and the form of communication of data between the servers 1 14 and the databases, is implementation specific.
  • the invention covers the ability of a server system to provide information to client devices via a wireless communications system, which typically has a plurality of cell sites that are coupled to a communications network.
  • the invention also covers the ability of a server system to provide information to client devices via a wired communications system, or via a communications system consisting of a combination of wired and wireless links.
  • the communications systems of FIG. 1A and IB can be coupled.
  • the functions performed by the server system can comprise software running on one or more general purpose computers or on telecommunications- specific hardware.
  • the combination of the software and hardware to accomplish the functions of the present invention can be conceptualized as a union of server controllers that each perform a discrete task, such as: receiving a request over the communications network from a client device; identifying a user based on the request; recalling a history of the user; determining a response based on the request and said history of the user; sending the response to the client device of the user, or the like.
  • One, two, or more of these discrete tasks can be performed by a single server controller. That is, the tasks performed by a first server controller and a second server controller can be performed by a single server controller and still be within the spirit and scope of the present invention.
  • the discrete tasks can be performed by any number of server controllers.
  • server controllers A further description of exemplary software and hardware controllers is provided below.
  • Client device 108 includes an antenna 202, a transmitter 204, a receiver 206, a microprocessor 208, a display 210 and a keypad 212.
  • Transmitter 204 is controlled by microprocessor 208 and transmits messages using antenna 202. Messages received from a transmitter of the communications system 100 are received through antenna 202 or a separate antenna (not shown).
  • Display 210 can be a liquid crystal display and is used for displaying, to a user (also referred to as subscriber) of client device 108, information received via communications system 100. Display 210 can also display lists and/or menus from which a subscriber can make selections and perform various functions. Other methods of presenting the received information, such as aurally through a speaker or through another type of display, are not precluded.
  • Keypad 212 can include as few as one button, but may also include an entire alphanumeric keypad, touchpad, or can be integrated with a display as a touchscreen display display.
  • Client device 108 also includes a memory 214 that can store software and/or data.
  • Microprocessor 208 can write to and read from memory 214.
  • client device 108 is an Inter@ctiveTM Pager 950 manufactured by Research In Motion (RIM), Limited, of Waterloo, Ontario, Canada.
  • the RIM Inter@ctive pager (RIM pager) is a commercially available device that provides for two-way wireless communications.
  • the RIM pager includes a 31 -key keypad, a roller wheel that is similar to a mouse, and a screen display with 8 lines of text by approximately 28 characters per line.
  • client device 108 is a PalmTM computing device, manufacture by 3Com Corporation, of Santa Clara, California.
  • Client device 108 can also be a wireless communication device such as, but not limited to, a wireless telephone, a data transceiver, and a paging receiver.
  • Client device 108 can be fixed, portable, or mobile, such as a mobile telephone.
  • the use of other two- way communications devices is within the spirit and scope of the present invention.
  • client device 108 can be a personal computer that, for example, communicates with servers 1 14 via a network such as the
  • Client device 108 can also be a personal computing device that wirelessly accesses the Internet. Those of ordinary skill in the art will envision other implementations of client device 108 and appreciate that they are encompassed by the present invention.
  • FIGS. 4A and 4B illustrates two exemplary user history records 402a and 402b, each of which is associated with a different user.
  • History records 402a and 402b can be stored, for example, in server 114 or in a database accessible to server 114.
  • MAN Mobile Access Number
  • the user associated with MAN shall be referred to as the first user and the user associated with MAN 2 shall be referred to as the second user.
  • history records 402a, 402b can be identified by unique identifiers other than MANs (e.g., ESNs, MINs).
  • Each history record 402a, 402b is also identified by a day of the week 406a, 406b (i.e., Monday) and a date 408a, 408b (i.e., January 22, 2000).
  • each history record 402a, 402b can be associated with additional and/or alternative information (e.g. , month, subscriber status, etc.).
  • the left most columns 410a and 410b, of history records 402a and 402b, include explicit requests made by the users (associated with MAN, and MAN 2 ) on a particular day (i.e., January 22, 2000).
  • each of the explicit requests are stock quotes.
  • the first user requested the stock prices of: Apple Computer Inc. (symbol AAPL) seven times; Microsoft Corp. (symbol MSFT) twice; Intel Corp. (symbol INTO once; International Business Machines Corp. (symbol IBM) once; and Comair Holding Inc. (symbol COMR) once.
  • Apple Computer Inc. symbol AAPL
  • Microsoft Corp. symbol MSFT
  • Intel Corp. symbol INTO once
  • International Business Machines Corp. symbol IBM
  • Comair Holding Inc. synch.
  • the second user requested the stock prices of: Yahoo Inc. (symbol YHOO) five times; CNET Inc. (symbol CNET) twice; CMGI Inc. (symbol CMGI) once; Apple Computer Inc. (once); and Southwest Airlines (symbol LUV) once.
  • the times that the server received the requests (which is essentially equivalent to the times that the requests were sent from a client device 108 of a user) have been recorded in columns 412a and 412b.
  • This location information can be collected in a variety of ways.
  • the provider of communications system 100 e.g., Bell South
  • MSC 120 can maintain a database at MSC 120 that maps unique identifiers of client devices 108 with cell sites.
  • MSC 120 can keep track of the whereabouts of each client device 108 by keeping track of which cell site 102 a message, sent by a client device 108, originated.
  • this cell site information can be added to a request message before MSC 120 forwards the message to server 114.
  • client device 108 receives a base station identifier indicative of client device location, and then sends the base station identifier to server 1 14 in a message. This approach advantageously bypasses network application difficulties related to collecting location information.
  • server 1 14 can solicit such cell site information from MSC 120 via communications network 110.
  • Server 1 14 can then determine the geographic region, from which a request is sent, by mapping the cell site information with more useful location information, such as city (or town) and state information and/or zip code information.
  • More useful location information such as city (or town) and state information and/or zip code information.
  • MSC 120 can correlate the cell site information with more useful location information and forward the location information to server 1 14 when solicited by server 1 14.
  • server 1 14 can determine location information associated with a user by using characteristics of communications signals transmitted to and/or from the user's client device 108, known positions of base stations, and the like.
  • FIGS.6A and 6B illustrate exemplary request messages that are generated by client device 108.
  • request message 600 includes portions 602 and
  • Portion 602 specifies a unique identifier (for example, a MAN or ESN) of client device 108.
  • Portion 604 specifies the explicit request of a user of client device 108.
  • the request message 600 also includes portion 606 that specifies a location (e.g., cell site) from which request message 600 was sent.
  • the cell site information can be added to the request by the provider of communications system 100.
  • the cell site information can be provided by MSC 120 before the request is forwarded to server 1 14.
  • request message 600 can include a server address (not shown) of server 114. In one embodiment, this server address is coded into an application running on client device 108. In this manner, when a user sends a request message 600 the server address is automatically included as part of the request message.
  • Cell site information can be maintained in a database of the provider of communications system 100 (such as BellSouth).
  • This database maintained at MSC 120 for example, can map unique identifiers of client devices 108 with cell sites 102.
  • MSC 120 can keep track of the whereabouts of each client device 108 by keeping track of which cell site 102 a message, sent by a client device 108, originated. Examples of tables that can be stored in such a database are shown in FIGS. 7 and 8.
  • FIG. 7 shows table 700 that includes MAN column 702 and cell site column 704.
  • FIG. 8 shows table 800 that includes cell site column 802 and MAN column 804.
  • row 806 of table 800 indicates that client devices having MAN, and MAN 5 are within the coverage area of cell site 1.
  • This cell site information can be added to a request message 600 before MSC forwards the message to server 114.
  • server 114 can determine which cell site's coverage area client device 108 is within by requesting such cell site information from MSC 120 via communications network 110.
  • a client device 108 can provide server 1 14 with its location.
  • a user's client device 108 can use any available method for determining its location, such as, but not limited to a Global Positioning Satellite (GPS) receiver, which is well known in the art. Using the GPS receiver, a user's client device 108 can determine and forward its location to server 1 14.
  • Client device 108 can determine its location using any other system or method such as a conventional LORAN-C system.
  • the client device 108 can the forward location information embedded within a request, or as a separate signal.
  • Client device 108 and/or server 114 can alternatively determine the location of client device 108 using other known techniques.
  • the features of the present invention apply regardless of how server 1 14 collects/determines the location information associated with users.
  • columns 416a and 416b include implicit information that can be derived from the explicit requests in columns 410a and 410b, respectively. More specifically, the implicit information in each row of columns 416a and 416b relates to the general industry corresponding to the explicitly requested stock quotes of the row. As can be seen from column
  • Table 416a eleven of the twelve stocks quotes requested by the first user are computer related stocks; and one stock is related to transportation.
  • column 416b nine of the ten stock quotes requested by the second user are computer related stocks: and one stock is related to transportation.
  • Columns 418a and 418b include even more detailed implicit information that can be derived from the explicit requests in columns 410a and 410b. respectively.
  • nine of the eleven computer related stock quotes requested by the first user correspond to companies that predominantly concentrate in hardware; two of the eleven computer related stock quotes requested by the first user correspond to companies that predominantly concentrate in software; and the one transportation stock (i.e., COMR) is an airline related stock.
  • column 418b eight of the nine computer stocks requested by the second user requested by the second user are Internet stocks; one of the nine computer stocks is a hardware stock; and the one transportation stock (i. e.. LUV) is an airline related stock.
  • Columns 420a and 420b include implicit information associated with the stock exchanges on which the stocks in column 410a and 410b, respectively, are traded. As can be seen, all the stocks, except IBM, are traded on the NASDAQ (NASD). IBM is traded on the New York Stock Exchange (NYSE).
  • Server 114 determines (e.g.. derives or collects) the implicit information to include in history records 402a and 402b using internal database(s) 1 16 and/or external database(s) 130. For example, such a database can store implicit information related to each stock symbol. Alternatively or additionally, server 114 can query database(s) 130 to acquire the implicit information related to explicit requests. Server 1 14 can derive additional information from the explicit and implicit information in history records 402a. 402b.
  • server 114 can derive that the first user (i.e., the user associated with MAN,) lives in Baltimore, Maryland, and commutes to work in work in Bethesda, Maryland.
  • the first user i.e., the user associated with MAN, lives in Baltimore, Maryland, and commutes to work in work in Bethesda, Maryland.
  • server 114 can derive that the second user (i.e., the user associated with MAN 2 ) lives in Fairfax, Virgina, and commutes to work in Washington D.C.. More specifically, server 1 14 can correlate time related information with location related information to derive an assumption of where particular users live and work. This can be accomplished, for example, based on the assumption that a majority of requests sent prior to a predetermined morning time (e.g., 8:30 a.m.) and after a predetermined evening time (e.g. 3:1 p.m.) are sent from or near a user's dwelling, and that a majority of requests sent between these two times (e.g., between 8:30 a.m.
  • a predetermined morning time e.g., 8:30 a.m.
  • a predetermined evening time e.g. 3:1 p.m.
  • FIGS. 5A and 5B illustrate two further exemplary user history records 502a and 502b. each of which is associated with a different user.
  • the user associated with MAN 3 shall be referred to as the third user and the user associated with MAN 4 shall be referred to as the fourth user.
  • the user associated with MAN 3 shall be referred to as the third user and the user associated with MAN 4 shall be referred to as the fourth user.
  • the fourth user In addition to being identified by a day of the week 506a,
  • each history record 502a, 502b is also associated with a subscriber status 509a, 509b.
  • the left most columns 510a and 510b. of history records 502a and 502b include explicit requests made by the users (associated with MAN 3 and MAN 4 ) on a particular day (i.e., January 22, 2000).
  • the explicit requests relate to sports scores, stock quotes, current weather, weather forecast, and traffic advisories.
  • the third user explicitly requested: the New York Yankees score three times; the Baltimore Orioles Score once, the New York Mets score once, the stock prices of Apple Computer Inc. (symbol AAPL) once: the current weather once, the weather forecast twice, and traffic once.
  • the fourth user explicitly requested the stock prices of Yahoo Inc. (symbol YHOO) twice; the stock price of Apple Computer Inc. (symbol APPL) once; the New York Mets score three times; and traffic once.
  • the times that the server received the requests (which is essentially equivalent to the times that the requests were sent from client device 108 of a user) have been recorded in columns 512a and 512b.
  • the locations from which the requests were made are recorded.
  • Server 1 14 determines (e.g., derives or collects) the implicit information to include in history records 502a and 502b using internal database(s) 1 16 and/or external database(s) 130. Server 1 14 can then derive additional information from the explicit and implicit information in history records 502a. 502b. For example, based on the time information in column 512a and the location information in column 514a, server 114 can derive that the third user (i.e., the user associated with MAN ) lives in Brooklyn, New York, and commutes to work in work in Queens, New York.
  • the third user i.e., the user associated with MAN
  • server 1 14 can derive that the fourth user (i. e. , the user associated with MAN 4 ) lives in Queens, New York, and commutes to work in Jersey City, New Jersey.
  • the fourth user i. e. , the user associated with MAN 4
  • Server 114 can not always determine the location from which a request was sent from a client device 108. For example, if the client device 108 was a desk top computer that sent a request to a server 114 via the Internet 1 18, then server 1 14 is most likely unable to determine the geographic location from which the request was sent (unless the user included this information with requests or in response to inquiries from server 1 14). Thus, if the server 1 14 is unable to determine the geographic location from which requests are sent, the history records associated with the users will not include location information (e.g.. columns 414a, 414b, 514a. 514b). Accordingly, in such an embodiment, server 1 14 can not derive certain information (e.g.. dwelling location information and working location information) from history records. However, server 114 can still derive the implicit information that is not location dependent (e.g.. columns
  • server 108 can identify client device 108 (and thus the user of client device 108 ) using what are called “cookies".
  • a "cookie” is an Internet mechanism that allows server 114 to place information within client device 108 when server 114 sends a message to client device 108.
  • the cookie is automatically passed from client 108 to server 114, enabling server 1 14 to identify client device 108 (and thus the user of client device 108).
  • server 1 14 can identify a user based on registration data and/or a unique user name/password that the user must enter each time communications is initiated with server 1 14.
  • server 1 14 can provide potentially smarter (e.g., more directed or focused) responses to requests made by users. For example, assume that the first user sends (using his client device 108), at 2:30 p.m. on a Friday, a request for movie times. Server 1 14 can predict that the first user probably wants movie times for movie theaters in the proximity of the first user ' s dwelling (e.g . Baltimore, Maryland), and can respond by sending Baltimore movie times to the first user's client device. An important aspect of this response is that server 114 determines a focused response without requiring that the first user send a focused request (e.g. , a request for movie times for Baltimore, Maryland).
  • a focused request e.g. , a request for movie times for Baltimore, Maryland
  • server 1 14 can send other focused responses, such as a response asking "Do you want movies times for Baltimore?" .
  • the user can the respond with a "Y” or a "N”. If the user responds with a "Y”, server 114 can then proceed to sent the user Baltimore movie times. If the user responds with a "N”, server 1 14 can send another focused response, such as a response asking "Do you want movie times for Bethesda?", or server 114 can eventually send a non-focused response asking "Please enter the location for which you would like movie times.”
  • the terms focused and directed are used interchangeably herein.
  • server 1 14 can predict that the first user probably wants the weather forecast for the proximity of the second user's dwelling (e.g.. Fairfax, VA). rather than for proximity of the second user's work area. Accordingly, server 1 14 can respond by sending the weather forecast for Fairfax to the first user's client device.
  • 114 can provide focused traffic information to a user in response to a non-focused request for traffic information from a user.
  • server 1 14 can determine a response to a request based on the request and the history of the user, including where the request (/ ' . e. , the current request) was sent from. For a specific example, if the second user made a request for the weather forecast from Morgantown, West Virginia, at 2 :00 p.m. on a Thursday, server 1 14 can respond by sending the second user the weather forecast for the proximity of Morgantown. Fairfax, and/or Washington and possibly all points in-between. Alternatively, server 1 14 can send a focused response asking "Do you want the weather forecast for: a) Morgantown, WV; b)
  • server 114 can then proceed to sent the second user the Morgantown forecast, and so on for a "b” or a "c” response. If the user responds with a "d”. server 1 14 can send a non-focused response asking "Please enter the location for which you would like the weather forecast.”
  • Server 114 can derive further additional information from the explicit and implicit information in history records. For example, based on the industry information in columns 416a, 416b, the sub-industry information in columns 418a, 418b, and/or the stock exchange information in columns 420a, 420b, server
  • server 114 can derive additional information relating to the interests of the first user and the second user. For example, server 114 can determine that: the first user is very interested in computer stocks; the first user is very interested in computer hardware stocks; the first user has some interest in computer software stocks; the first user is predominantly interested in stocks traded on the NASDAQ stock exchange; the first user has some interest in stocks traded on the New York Stock Exchange; the first user has some interest in transportation stocks; and the first user has some interests in airline transportation stocks.
  • server 114 can determine that: the second user is very interested in computer stocks; the second user has some interest in computer hardware stocks; the second user is very interested in Internet stocks; the second user is predominantly interested in stocks that are traded on the NASDAQ stock exchange; the first user has some interest in transportation stocks; and the first user has some interest in airline transportation stocks.
  • Server 1 14 can also derive further additional information from the explicit and implicit information in history records 502a, 502b. For example, based on the implicit information in columns 516a, 518a and 520a, and in columns 516b. 518b and 520b, server 1 14 can derive additional information relating to the interests of the third user and the fourth user.
  • server 114 can determine that: the third user is very interested in New York sports teams; the third user is very interested in baseball scores; the third user is very interested in baseball's American League East Division; the third user is very interested in weather; the third user is somewhat interested in hockey; etc.
  • server 1 14 can determine that: the fourth user is interested in computer stocks; the fourth user is interested in Internet stocks; the fourth user is somewhat interested in traffic; etc.
  • server can focus the response based on history 502a. For example, server 114 can send only the Yankee's score.
  • server 114 can send the Yankee's score, followed by the Mets' score and the Orioles' Score.
  • server 1 14 can send all the scores for the A.L. East Division, along with the standings in the Division.
  • FIGS. 9 is high level flow diagrams of a method of the present invention.
  • server 1 14 receives a request from a client device (e.g., two-way pager or a cell phone), as shown at a step 902.
  • the user associated with the request is then identified in step 904.
  • server 114 identifies a client devise based on a unique identification code (e.g. , MIN, ESN or MAN) that is included in the request message and then correlates the identified client devise with a user.
  • Server 1 14 recalls a history (i. e. , history record) of the identified user, in step 906.
  • Server 114 determines a response based one the request and the history (e.g.
  • server 114 determines the response based on the implicit information (e.g., previous requests made by the user) and/or the implicit information (e. g. , implicit information derived from previous requests made by the user).
  • server 1 14 sends a response to the client device of the user.
  • server 1 14 can send unsolicited focused information to a user (more specifically, to client device 108 of a user) based on the explicit and/or implicit information stored in history records 402a, 402b, 502a and 502b. For example, server 1 14 can monitor headline news and forward specific headline news that, based on explicit information stored in history records 402, may be of interest to a user. If server
  • server 1 14 learns that Yahoo, Inc. stock is going to split, then server 1 14 can forward such information to the second user and the fourth user. If server 1 14 learns that Apple Inc., has named a new CEO, then server 114 can send such information to the first, second, third and fourth users. In another example, server 1 14 can monitor headline news and forward headline news that, based on implicit information (and possibly the explicit information) stored in history records 402, may be of interest to a user. For example, if server 1 14 learns that a new Internet legislation has being passed, server 1 14 can send such information to the second user and the fourth user. According to one embodiment of the present invention, an interest threshold can be used to limit the amount of unsolicited focused information that is provided to users.
  • This interest threshold can be set by server 1 14 or by a user.
  • an interest threshold is exceeded if a user has made more than a specific number of request (e.g., five requests), within a specific amount of time (e.g.. within the past seven days), that relate (explicitly or implicitly) to the unsolicited focused information.
  • server 1 14 learned that Apple Inc., named a new CEO, server 1 14 would have forwarded the news to the first user (because on January 22, 2000 alone, the first user made a request for Apple Inc. stock quotes seven times).
  • Server 1 14 may, or may not, have forwarded the news to the second user (which only requested an Apple Inc. stock quote once on January 22, 2000), depending on how many additional times the second user requested Apple Inc. stock during the relevant time period (e.g., seven days).
  • server 114 may, or may not, have forwarded the news to the third and fourth users.
  • Server 1 14 can also determine whether to send specific information to a user based on the user's subscriber status 509a, 509b. There may be different levels of status, such as: high, medium, and low. If this were the case, server 1 14 can limit the sending of certain unsolicited focused information to those users that paid for "high" status, for example. Other examples of status levels include: sports, stocks, world news, and exchange rates. If this were the case, server 114 can limit the sending of certain unsolicited focused information to those users that paid for the relevant status. For example, assume that only the third user (associated with history record 502a) paid for "sports" status.
  • server 114 will only send such unsolicited focused information (e.g., the final Mets score) to the third user. In this embodiment, server 1 14 will not send this unsolicited focused information to the fourth user (associated with history record 502b) even though the fourth user has shown repeated interest in Mets scores.
  • Status levels can also relate to employers, management levels, and the like. These are just some example of the types of status levels that are possible, according to the present invention.
  • Server 1 14 need not send the entire received information (e.g., the full text of a new story) to a client device 108. That is, the unsolicited information can include all or part of the received information. Alternatively, the unsolicited information can include, for example, a summary of the received information, a title of the received information, and/or key words related to the received information. Server 114 can then send the entire received information if the user requests it be sent.
  • server 1 14 can monitor weather advisories that are issued by a weather service, such as the National Weather Service, and forward such weather information (e.g. , a winter weather advisory) to specific users based on implicit information derived from or stored in history records 402. For a specific example, if server 1 14 learns of a winter weather advisory for Baltimore, MD, server 114 can forward such unsolicited focused information to the first user (associated with history 402a). In another example, server 114 can monitor traffic advisories and forward such information to specific users based on implicit information derived from or stored in history records 402. For a specific example, if server 114 learns that there was an automobile accident on a bridge connecting Virginia with Washington, D.C., then server 1 14 can forward such unsolicited focused information to the second user (associated with history 402b).
  • a weather service such as the National Weather Service
  • Server 114 can send unsolicited focused information to a user (more specifically, client device 108 of a user) based on the explicit and/or implicit information stored in history records 502a and 502b. For example, server 114 can monitor sports scores and forward specific scores, based on explicit information stored in history records 502. that may be of interest to a user. If server 114 learns that the Yankees scored a run and took the lead in a game, then server 114 can forward such information to the third user. If server 114 learns of the final score in the Mets game, then server 114 can send such information to the third user and the fourth user.
  • server 114 can monitor sports news and forward news that, based on implicit information stored in history records 502a and 502b, may be of interest to a user. For example, if server 114 learns that a manager in baseball's American League East division has been fired, server 114 can send such information to the third user.
  • an interest threshold can be used to limit the amount of unsolicited focused information that is provided to users. This interest threshold can be set by server 114 or by a user.
  • FIGS. 10 is a high level flow diagram that illustrates a method of the present invention. Turning now for FIG. 10, the method according to an embodiment of the invention begins when server 1 14 receives information from an information source, in step 1002.
  • the information source can be, for example. an internal database that is maintained by the server associated with server 1 14.
  • the information can be provided by an external information source.
  • These external information sources 132 maintain real-time databases 130 that contain information relating to finance, sports, weather, airline schedules, and the like. Examples of information sources 132 include Reuters, which is a well known leading financial and news provider, and GovPX, which provides
  • a data source that maintains foreign exchange information is Garvin Information Systems, LLC, of New York. NY, who provides real-time data feeds for spot foreign exchange rates, spot cross rates, currency forward rates, and the like.
  • the received information is associated with a set of classifications.
  • classifications are similar to the implicit information discussed above, except rather then being derived from a request (as is implicit information), classifications are derived from received information. Alternatively, the received information arrives with classifications. Examples of classifications are: computer stocks, hardware stocks, Internet stocks, software stocks, the NASDAQ stock exchange, New York sports teams, Baltimore sports teams, baseball scores, hockey scores, A.L. East baseball division, hockey's Eastern conference, football scores, local (e.g., Washington, D.C.) traffic, local (e.g., Washington D.C.) weather forecast, metal futures, foreign exchange rates, etc. Thus, notice that the example of classifications are similar (or identical) to the examples of implicit information discussed above.
  • Server 114 can derive the classifications from the received information.
  • the external information source 132 can provide the classifications to server 1 14 along with any information sent to server 114.
  • a financial news information source 132 e.g.. Reuters
  • server 114 provides server 114 with news about a court settlement between two computer hardware providers (e.g.. Apple, Inc. and IBM)
  • the information provider may provide the following classifications along with the news: computer stocks, hardware stocks, and NASDAQ stock exchange.
  • server 1 14 can derive some or all of the classifications from the received information.
  • server 1 14 compares the set of classifications (associated with the received information) to user histories (e.g. , 402a.402b. 502a and 502b). In an exemplary embodiment, server 1 14 compares the set of classifications to the implicit information in each user's history. In another exemplary embodiment, server 114 compares the set of classifications to the explicit and implicit information in each user's history.
  • server 114 sends unsolicited information, related to the received information, to a client device of each user that has a user history that matches at least one of the classifications in the subset of classifications. For example, if server 114 receives the final score of the NY Mets game, and the classifications include NY Teams, baseball scores, and N.L. East baseball division, then server 114 may send unsolicited information (related to the final score of the NY Mets game) to the third user (associated with history 502a) and the forth user (associated with history 502b).
  • the unsolicited information can include all or part of the received information.
  • the unsolicited information can include, for example, a summary of the received information, a title of the received information, and/or key words related to the received information.
  • server 114 only sends the unsolicited information to those users that have a history that exceeds an interest threshold, which is discussed in more detail above.
  • server 114 can send a summary of the information that is of most interest to a user (e.g., final stock prices, final scores, and the like).
  • server 114 can constantly query user histories to determine if a threshold has been reached. Server 1 14 can then search for information related to the subject matter that caused the threshold be reached.
  • Server 1 14 can then send unsolicited information, related to this subject, to the client device of the relevant user.
  • Server 1 14 can perform specific features of the present invention using server controllers, which in effect comprise a computer system.
  • server controllers which in effect comprise a computer system.
  • communication-specific hardware can be used to implement the present invention, the following description of a general purpose computer system is provided for completeness.
  • the present invention is preferably implemented in software.
  • the invention may be implemented using hardware or a combination of hardware and software. Consequently, the invention may be implemented in a computer system or other processing system.
  • An example of such a computer system 1100 is shown in FIG. 1 1.
  • client and server applications each execute on distinct computer systems 1 100.
  • the computer system 1 100 includes one or more processors, such as processor 1 104.
  • the processor 1104 is connected to a communication infrastructure 1106 (for example, a bus or network).
  • Various software implementations are described in terms of this exemplary computer system. After reading this description, it will become apparent to a person skilled in the relevant art how to implement the invention using other computer systems and/or computer architectures.
  • Computer system 1100 also includes a main memory 1108, preferably random access memory (RAM), and may also include a secondary memory 11 10.
  • the secondary memory 1110 may include, for example, a hard disk drive 1112 and/or a removable storage drive 11 14, representing a floppy disk drive, a magnetic tape drive, an optical disk drive, etc.
  • the removable storage drive 11 14 reads from and/or writes to a removable storage unit 11 18 in a well known manner.
  • Removable storage unit 1 118 represents a floppy disk, magnetic tape, optical disk, etc. which is read by and written to by removable storage drive 1 1 14.
  • the removable storage unit 1118 includes a computer usable storage medium having stored therein computer software and/or data.
  • secondary memory 1110 may include other similar means for allowing computer programs or other instructions to be loaded into computer system 1 100.
  • Such means may include, for example, a removable storage unit 1122 and an interface 1 120.
  • Examples of such means may include a program cartridge and cartridge interface (such as that found in video game devices), a removable memory chip (such as an EPROM, or PROM) and associated socket, and other removable storage units 1 122 and interfaces 1120 which allow software and data to be transferred from the removable storage unit 1122 to computer system 1100.
  • Computer system 1 100 may also include a communications interface 1 124.
  • Communications interface 1124 allows software and data to be transferred between computer system 1100 and external devices. Examples of communications interface 1124 may include a modem, a network interface (such as an Ethernet card), a communications port, a PCMCIA slot and card. etc.
  • Signals 1128 which may be electronic, electromagnetic, optical or other signals capable of being received by communications interface 1124. These signals 1128 are provided to communications interface 1 124 via a communications path 1 126. Communications path 1126 carries signals 1128 and may be implemented using wire or cable, fiber optics, a phone line, a cellular phone link, an RF link and other communications channels.
  • computer program medium and “computer usable medium” are used to generally refer to media such as removable storage drive 1114, a hard disk installed in hard disk drive 1112, and signals 1128. These computer program products are means for providing software to computer system 1100.
  • Computer programs are stored in main memory 1108 and/or secondary memory 11 10. Computer programs may also be received via communications interface 1 124. Such computer programs, when executed, enable the computer system 1 100 to implement the present invention as discussed herein. In particular, the computer programs, when executed, enable the processor 1 104 to implement the process of the present invention. Accordingly, such computer programs represent controllers of the computer system 1100. Where the invention is implemented using software, the software may be stored in a computer program product and loaded into computer system 1100 using removable storage drive 1114, hard drive 1112 or communications interface 1 124.
  • features of the invention are implemented primarily in hardware using, for example, hardware components such as application specific integrated circuits (ASICs).
  • ASICs application specific integrated circuits
  • features of the invention can be implemented using a combination of both hardware and software.

Abstract

A method and system for providing focused information to a user in response to a non-focused request. According to one embodiment, the method includes the steps of receiving a request from a client device (902) and identifying a user based on the request (901). The method also includes the steps of recalling a history of the user (906), determining a response based on the request and the history of the user (908), and sending the response to the client device of the user (910). Also, a method and system for sending unsolicited information to a user. According to one embodiment, this method includes receiving information from an information source, wherein the received information is associated with a set of classifications (1002) that includes one or more classifications. This method also includes comparing the set of classifications to at least one user history (1004), wherein each user history is associated with a user. The unsolicited information, related to the received information, is then sent to a client device of each user having a user history that matches at least one classification of the set of classifications (1006).

Description

System and Method for Providing Focused Information Based on Implicit and Explicit Information Derived from
User Histories
Background of the Invention
Field of the Invention
The present invention relates generally to communications, and more particularly to a system and method for providing information based on explicit and implicit information derived from user traffic patterns.
Related Art
When a client requests information from a server, the server can learn a lot of unique information from the request. For example, a server can typically determine an identity of a client, an approximate geographic location from which a request was sent (e.g. , if the client is a wireless communications device) and the explicit information requested. However, a server generally uses only the explicit request to provide a response to a user. As a result, a server often provides an inappropriate response to a request for information. If the response is not inappropriate, the response is often more general than a user wants.
There also exist servers that can provide information to a user without the user explicitly requesting the information at the time. For example, servers exist that can provide information to a user if a user sets a specific "alert". These alerts are monitored continuously by the server, enabling the server to notify a user when an alert is triggered. However, if an appropriate alert has not been set (e.g. , enabled) by a user, the server will fail to provide important information to the user. Summary of the Invention
The present invention is directed toward a system and method for providing focused information to a user in response to a non-focused request.
According to a feature of the present invention, a server takes advantage of the unique information provided by requests in order to provide a more focused response to a request from a client device of a user.
According to one embodiment, the method of the present invention includes the steps of receiving a request from a client device and identifying a user based on the request. The method also include the steps of recalling a history of the user, determining a response based on the request and the history of the user, and sending the response to the client device of the user. The history of the user can include information related to times when previous requests were made by the user and information related to locations from which previous requests were made by the user. In this embodiment, the response can be determined based on at least the request, the information related to the times when the previous requests were made by the user, and the information related to the locations from which the previous requests were made by the user.
The method can also includes the steps of collecting the information related to the times when the previous requests were made by the user and collecting the information relating to the locations from which the previous requests were made by the user. The information related to the times when the previous requests were made by the user and the information relating to the locations from which the previous requests were made by the user can then be stored in the history of the user. According an embodiment of the present invention, the history of the user includes implicit information derived from explicit requests previously made by the user. In this embodiment, the response can be determined based on at least the request (i.e., the current request) and the implicit information in the history. The method of the present invention can also include the steps of deriving the implicit information based on the explicit requests previously made by said user and storing the implicit information in the history of the user.
According another embodiment, the history of the user includes explicit requests previously made by the user and implicit information derived from the explicit requests. In this embodiment, the response can be determined based on at least the request (i.e. , the current request), the explicit requests in the history of the user and the implicit information in the history of the user. The method of the present invention can also include the steps of storing the explicit requests in the history, deriving the implicit information based on the explicit requests, and storing the implicit information in the history of the user.
According to one embodiment, the history of the user includes explicit requests previously made by the user, and the response is determined based on at least the request (i.e., the current request) and the explicit requests previously made by the user that are stored in the history. The present invention is also directed to a method and system for sending unsolicited information to a user. An important advantage of the present invention is that it does not require a user to activate specific alerts to receive information. According to one embodiment, this method includes the step of receiving information from an information source, wherein the received information is associated with a set of classifications that includes one or more classifications. This method also includes the step of comparing the set of classifications to at least one user history, wherein each user history is associated with a user. In another step, the unsolicited information, related to the received information, is then sent to a client device of each user having a user history that matches at least one classification of the set of classifications. The unsolicited information can be, for example, the received information, a portion of the received information, a summary of the received information, a title of the received information, or a key word(s) related to the received information. In an embodiment of the present invention, the received information is provided by an external information source. In such an embodiment, the external information source can provide the set of classifications along with the received information. Another embodiment includes the step of producing a set of classifications based on the received information. In another embodiment, the received information is provided by a local information source.
According to an embodiment of the present invention, each user history includes implicit information derived from explicit requests previously made a corresponding user. In this embodiment, the method of the present invention can also include the step of comparing the set of classifications to the implicit information stored in each user history.
In an embodiment of the present invention, each user history that includes implicit information that corresponds to at least one classification in the set of classifications is identified. The unsolicited information can then be sent to the user(s) (more specifically, the client device(s) of the user(s)) that are associated with the identified user histories.
In an embodiment of the present invention, each user history that includes implicit information that corresponds to at least one classification in the set of classifications and that exceeds a threshold is identified. The unsolicited information can then be sent to the user(s) associated with the identified user histories.
In an embodiment where each user history includes explicit requests previously made by the associated user and implicit information derived from the explicit requests, the method of the present invention can include the step of comparing the set of classifications to the explicit requests and the implicit information stored in each user history.
Additional features and advantages of the present invention, as well as the structure and operation of various embodiments of the present invention, are described in detail below with reference to the accompanying drawings. Brief Description of the Figures
The features, objects, and advantages of the present invention will become more apparent from the detailed description set fourth below when taken in conjunction with the drawings in which like reference characters identify corresponding elements throughout and wherein:
FIGS. 1 A and IB illustrate exemplary communications systems in which the present invention is useful;
FIG. 2 illustrates an exemplary two-way communications device for use with the present invention; FIG. 3 illustrates a table that maps cell sites with geographic information;
FIGS. 4A, 4B, 5A and 5B illustrate exemplary history records that are used in the present invention;
FIGS. 6 A and 6B illustrate portions of request messages for use with the present invention; FIG. 7 illustrates a table that maps cell sites with unique identifiers of client devices;
FIG. 8 illustrates an alternative table that maps cell sites with unique identifiers of client devices;
FIG. 9 is a flowchart depicting the high level operation of an embodiment of the present invention;
FIG. 10 is a flowchart depicting the high level operation of another embodiment of the present invention; and
FIG. 11 is an exemplary computer system, which can be used to perform the operations of the present invention. Detailed Description of the Preferred Embodiments
I. Introduction
The present invention relates to a system and method that supports the providing of focused information (also referred to as directed information) to a client device (e.g., a two-way paging device, a wireless phone, a personal data assistant, or a desk top computer) in response to receiving a request from the client device. The present invention also relates to a system and method that supports the providing of unsolicited focused information to a client device.
The present invention can be used in a two-way wireless communications system. Additionally, the present invention can be used in various other types of communications system. For example, the present invention can be used with the Internet. In an embodiment where the present invention is used with the Internet, a client device can be, for example, a wireless device that wirelessly accesses the Internet (e.g., a PalmPilot® or a wireless phone) or a personal computer that is wired to the Internet.
Preferred embodiments of the present invention are discussed in detail below. While specific steps, configurations and arrangements are discussed, it should be understood that this is done for illustrative purposes only.
II. Exemplary Communications Systems
An exemplary wireless communication system 100 in which the present invention is useful is illustrated in FIG. 1A. Communications system 100 includes a plurality of cell sites 102 each having a coverage area that is typically about 5 to 10 miles in diameter. A coverage area of one cell site often overlaps a portion of a coverage area of another cell site, which are illustrated for exemplary purposes by the hexagonal regions. Each cell site 102 includes an antenna 104 for transmitting and receiving messages to and from two-way wireless client devices 108 (e.g. , a two-way pager, a wireless phone, a hand held computing device) that are located within a geographic coverage area of the cell site 102. Alternatively, separate antennas may be used for sending and receiving messages, as would be apparent to a person skilled in the relevant art. Each cell 102 is coupled to communications network 110, which can be. for example, an
X.25 packet switched network. Communications network 110 can include, but is not limited to, land based links such as fiber optics or terrestrial microwave, and/or satellite based links, as would also be apparent to a person skilled in the relevant art. Each cell site 102 communicates with a message system center (MSC)
120 that includes a subscriber database (also referred to as a user database) that maintains records of all subscribers (also referred to as users) on the system, a unique identity sequence for the subscriber's client device, and an indication of the cell site from which the client device last sent a message (such as an acknowledgment message or a request message). Preferably, communications between each cell cite 102 and MSC 120 is accomplished through communications network 110. Alternatively, each cell site 102 can have a dedicated link to MSC 120.
Communications network 110 can be coupled to a public switched telephone network (PSTN) 112 so that a message can be sent to and from client device 108 via PSTN 112.
A message can also be sent from one client device 108 to another client device 108 using communications system 100.
In one embodiment, communications system 100 is the Bell South Wireless Data network (also known as the RAM Mobile Data network) or the
ARDIS network, which are both well known two-way nationwide wireless packet data networks.
A client device (e.g., two-way wireless communications device) 108 typically identifies itself to MSC 120 by sending a registration or identification signal. Such signals include a data field including at least one unique identifier, such as a Mobile Identification Number (MIN) and/or Electronic Serial Number (ESN). A MIN, which can be reprogrammed, is analogous to a telephone number. An ESN is hard-coded and fixed such that it is difficult, if not impossible to change. Some devices include both a MIN and an ESN. The client device used in an embodiment of the present invention, discussed in more detail below, only includes one unique identifier, known as a Mobile Access Number (MAN), which is similar to an ESN in that it is hard-coded and fixed. The identification signal sent by client device 108 can include one or more of the above discussed unique identifiers, or any other similar unique identifier. Such identification information can be periodically transmitted by client device 108 and/or included with other types of messages sent by client device 108. Such unique identifiers are also sent with each request sent by a client device 108.
An optional function of MSC 120 is to determine whether the unique identifier of a client device is valid. A received unique identifier, such as a unique identity sequence comprising a string of digitally represented alphanumeric characters, can be compared to a maintained database of unique identifiers (i.e., MINs, ESNs, MANs) to detect fraud.
MSC 120 can keep track of the approximate whereabouts of each client device 108 by keeping track of which cell site 102 a message, sent by a client device 108, originated. When MSC 120 is thus informed of the approximate whereabouts of each individual client device 108, it can later limit the number of cell sites 102 from which it transmits a message addressed to a particular client device 108. MSC 120 can even limit the transmission of a message to only one cell site 120 having a coverage area within which the particular client device 108 is believed to be located. The coverage area of a limited number of cell cites 102
(possibly only a single cell site or a last know site and its adjacent sites) shall be referred to as a targeted coverage area. Thus, the targeted area can be the area covered by a single cell site or a slightly larger area that is also covered by a few adjacent cell sites. This limited or "targetted" transmission is much more efficient than broadcast-type transmission where a message is transmitted from every cell site, regardless of a location of a client device 108 to which the message is addressed.
Servers 1 14 (typically controlled by a service provider) are supported by communications system 100. That is, communications system 100 provides for message delivery between a server 114 and one or more client devices 108.
Servers 1 14 can communicate directly with client devices 108 or indirectly with client devices 108 via communications network 110. Alternatively, servers 1 14 can communicate with communications network 1 10 through PSTN 1 12. In one embodiment, a server 114 provides information to a client device 108 upon receiving a request from the client device 108. Additionally, servers 114 can initiate the sending of information (e.g.. unsolicited information) to a client device 108. This can be done periodically or upon a triggering event. Additional details about the types of services and the information provided by services providers 1 14 are discussed below. The present invention is also useful in data networks such a local area network (LAN), a home area network (HAN) and a wide area network (WAN). For example, the present invention is useful in the largest present day WAN, referred to as the Internet. The Internet is a world-wide set of interconnected computer networks that can be used to access a growing amount and variety of information electronically. One method of accessing information on the Internet is known as the World Wide Web (www, or the "web"). The web is a distributed, hypermedia system, and functions as a client-server based information presentation system. Information that is intended to be accessible over the web is generally stored in the form of "pages" on servers (e.g., general purpose computers). Users can access a web site using general-purpose computers, wireless hand held computing devices, Internet capable wireless phones (such as a Wireless Application Protocol (WAP) Internet enabled phone), and the like, referred to as clients, by specifying the uniform resource locator (URL) of the site. FIG. IB is a network block diagram showing a plurality of clients 108 and servers 114 connected to the Internet 118. When a client sends a request to a server the request specifies, among other things, a destination address (e.g. , a URL) and a source address that can be used to identify a user. A part of the URL known as the Domain Name is passed to a domain server (DNS) to be translated to a network address. The network address specifies the Internet protocol (IP) address of the intended server. The client request is passed to the server having the network address. The present invention can then be used by that server to provide a focused response to the request. In one embodiment, the focused response is a focused web page.
Servers 1 14 maintain or otherwise have access to local or remote databases that store and/or provide various types of data. For example, referring to FIG. 1A, remote databases 130 are maintained by data sources 132. FIG. 1A also shows a local database 1 16 that is maintained by server 1 14. Servers 1 14 can communicate with data sources 132 through dedicated links or through communications network 1 10, for example. The type and number of databases, and the form of communication of data between the servers 1 14 and the databases, is implementation specific.
The invention covers the ability of a server system to provide information to client devices via a wireless communications system, which typically has a plurality of cell sites that are coupled to a communications network. The invention also covers the ability of a server system to provide information to client devices via a wired communications system, or via a communications system consisting of a combination of wired and wireless links. For example the communications systems of FIG. 1A and IB can be coupled.
The functions performed by the server system can comprise software running on one or more general purpose computers or on telecommunications- specific hardware. Alternatively, the combination of the software and hardware to accomplish the functions of the present invention can be conceptualized as a union of server controllers that each perform a discrete task, such as: receiving a request over the communications network from a client device; identifying a user based on the request; recalling a history of the user; determining a response based on the request and said history of the user; sending the response to the client device of the user, or the like. One, two, or more of these discrete tasks can be performed by a single server controller. That is, the tasks performed by a first server controller and a second server controller can be performed by a single server controller and still be within the spirit and scope of the present invention.
Alternatively, the discrete tasks can be performed by any number of server controllers. A further description of exemplary software and hardware controllers is provided below.
III. Exemplary Client Devices
An exemplary two-way wireless communications client device 108 is illustrated in FIG. 2. Client device 108 includes an antenna 202, a transmitter 204, a receiver 206, a microprocessor 208, a display 210 and a keypad 212. Transmitter 204 is controlled by microprocessor 208 and transmits messages using antenna 202. Messages received from a transmitter of the communications system 100 are received through antenna 202 or a separate antenna (not shown).
The received messages are routed from antenna 202 to receiver 206 and processed by microprocessor 208, for example. Display 210 can be a liquid crystal display and is used for displaying, to a user (also referred to as subscriber) of client device 108, information received via communications system 100. Display 210 can also display lists and/or menus from which a subscriber can make selections and perform various functions. Other methods of presenting the received information, such as aurally through a speaker or through another type of display, are not precluded. Keypad 212 can include as few as one button, but may also include an entire alphanumeric keypad, touchpad, or can be integrated with a display as a touchscreen display display. Client device 108 also includes a memory 214 that can store software and/or data. Microprocessor 208 can write to and read from memory 214. In one embodiment, client device 108 is an Inter@ctive™ Pager 950 manufactured by Research In Motion (RIM), Limited, of Waterloo, Ontario, Canada. The RIM Inter@ctive pager (RIM pager) is a commercially available device that provides for two-way wireless communications. The RIM pager includes a 31 -key keypad, a roller wheel that is similar to a mouse, and a screen display with 8 lines of text by approximately 28 characters per line. In another embodiment, client device 108 is a Palm™ computing device, manufacture by 3Com Corporation, of Santa Clara, California. Client device 108 can also be a wireless communication device such as, but not limited to, a wireless telephone, a data transceiver, and a paging receiver. Client device 108 can be fixed, portable, or mobile, such as a mobile telephone. Of course the use of other two- way communications devices is within the spirit and scope of the present invention.
For some embodiments, client device 108 can be a personal computer that, for example, communicates with servers 1 14 via a network such as the
Internet 118. Client device 108 can also be a personal computing device that wirelessly accesses the Internet. Those of ordinary skill in the art will envision other implementations of client device 108 and appreciate that they are encompassed by the present invention.
IV. Preferred Embodiment of the Invention
A. History Records
FIGS. 4A and 4B illustrates two exemplary user history records 402a and 402b, each of which is associated with a different user. History records 402a and 402b can be stored, for example, in server 114 or in a database accessible to server 114. A Mobile Access Number (MAN) 404a, 404b associated with each history record 402a, 402b. For the purpose of this discussion, the user associated with MAN, shall be referred to as the first user and the user associated with MAN2 shall be referred to as the second user. Of course, history records 402a, 402b can be identified by unique identifiers other than MANs (e.g., ESNs, MINs). Each history record 402a, 402b is also identified by a day of the week 406a, 406b (i.e., Monday) and a date 408a, 408b (i.e., January 22, 2000). Of course, each history record 402a, 402b can be associated with additional and/or alternative information (e.g. , month, subscriber status, etc.).
The left most columns 410a and 410b, of history records 402a and 402b, include explicit requests made by the users (associated with MAN, and MAN2) on a particular day (i.e., January 22, 2000). In these examples, each of the explicit requests are stock quotes.
As shown in column 410a, the first user requested the stock prices of: Apple Computer Inc. (symbol AAPL) seven times; Microsoft Corp. (symbol MSFT) twice; Intel Corp. (symbol INTO once; International Business Machines Corp. (symbol IBM) once; and Comair Holding Inc. (symbol COMR) once. These requests are referred to as "explicit requests" because they were expressly made by the first user.
As shown in column 410b, the second user requested the stock prices of: Yahoo Inc. (symbol YHOO) five times; CNET Inc. (symbol CNET) twice; CMGI Inc. (symbol CMGI) once; Apple Computer Inc. (once); and Southwest Airlines (symbol LUV) once.
In addition to the explicit requests, the times that the server received the requests (which is essentially equivalent to the times that the requests were sent from a client device 108 of a user) have been recorded in columns 412a and 412b.
In the third columns 414a and 414b, the locations from which the requests were made are recorded. This location information can be collected in a variety of ways. For example, the provider of communications system 100 (e.g., Bell South) can maintain a database at MSC 120 that maps unique identifiers of client devices 108 with cell sites. MSC 120 can keep track of the whereabouts of each client device 108 by keeping track of which cell site 102 a message, sent by a client device 108, originated. As described below, this cell site information can be added to a request message before MSC 120 forwards the message to server 114. In another example, client device 108 receives a base station identifier indicative of client device location, and then sends the base station identifier to server 1 14 in a message. This approach advantageously bypasses network application difficulties related to collecting location information.
Alternatively, after receiving a request, server 1 14 can solicit such cell site information from MSC 120 via communications network 110. Server 1 14 can then determine the geographic region, from which a request is sent, by mapping the cell site information with more useful location information, such as city (or town) and state information and/or zip code information. An example of a table
300 that includes a cell site column 302 and a city/state column 304 and a zip code column 306 is shown in FIG. 3. Alternatively, MSC 120 can correlate the cell site information with more useful location information and forward the location information to server 1 14 when solicited by server 1 14. In a more complex system, server 1 14 can determine location information associated with a user by using characteristics of communications signals transmitted to and/or from the user's client device 108, known positions of base stations, and the like.
It is noted that the term "position" and "location" are used interchangeably herein.
FIGS.6A and 6B illustrate exemplary request messages that are generated by client device 108. In FIG. 6 A, request message 600 includes portions 602 and
604. Portion 602 specifies a unique identifier (for example, a MAN or ESN) of client device 108. Portion 604 specifies the explicit request of a user of client device 108. In another embodiment, shown in FIG. 6B, the request message 600 also includes portion 606 that specifies a location (e.g., cell site) from which request message 600 was sent. The cell site information can be added to the request by the provider of communications system 100. For example, the cell site information can be provided by MSC 120 before the request is forwarded to server 1 14. Additionally, request message 600 can include a server address (not shown) of server 114. In one embodiment, this server address is coded into an application running on client device 108. In this manner, when a user sends a request message 600 the server address is automatically included as part of the request message.
Cell site information can be maintained in a database of the provider of communications system 100 (such as BellSouth). This database, maintained at MSC 120 for example, can map unique identifiers of client devices 108 with cell sites 102. MSC 120 can keep track of the whereabouts of each client device 108 by keeping track of which cell site 102 a message, sent by a client device 108, originated. Examples of tables that can be stored in such a database are shown in FIGS. 7 and 8. FIG. 7 shows table 700 that includes MAN column 702 and cell site column 704. Alternatively, FIG. 8 shows table 800 that includes cell site column 802 and MAN column 804. For example, row 806 of table 800 indicates that client devices having MAN, and MAN 5 are within the coverage area of cell site 1. This cell site information can be added to a request message 600 before MSC forwards the message to server 114. Alternatively, server 114 can determine which cell site's coverage area client device 108 is within by requesting such cell site information from MSC 120 via communications network 110.
Alternatively, a client device 108 can provide server 1 14 with its location. A user's client device 108 can use any available method for determining its location, such as, but not limited to a Global Positioning Satellite (GPS) receiver, which is well known in the art. Using the GPS receiver, a user's client device 108 can determine and forward its location to server 1 14. Client device 108 can determine its location using any other system or method such as a conventional LORAN-C system. The client device 108 can the forward location information embedded within a request, or as a separate signal. Client device 108 and/or server 114 can alternatively determine the location of client device 108 using other known techniques. The features of the present invention apply regardless of how server 1 14 collects/determines the location information associated with users. Turning again to FIGS. 4A and 4B, columns 416a and 416b include implicit information that can be derived from the explicit requests in columns 410a and 410b, respectively. More specifically, the implicit information in each row of columns 416a and 416b relates to the general industry corresponding to the explicitly requested stock quotes of the row. As can be seen from column
416a: eleven of the twelve stocks quotes requested by the first user are computer related stocks; and one stock is related to transportation. As can be seen from column 416b: nine of the ten stock quotes requested by the second user are computer related stocks: and one stock is related to transportation. Columns 418a and 418b include even more detailed implicit information that can be derived from the explicit requests in columns 410a and 410b. respectively. As can be seen from column 418a: nine of the eleven computer related stock quotes requested by the first user correspond to companies that predominantly concentrate in hardware; two of the eleven computer related stock quotes requested by the first user correspond to companies that predominantly concentrate in software; and the one transportation stock (i.e., COMR) is an airline related stock. As can be seen from column 418b: eight of the nine computer stocks requested by the second user requested by the second user are Internet stocks; one of the nine computer stocks is a hardware stock; and the one transportation stock (i. e.. LUV) is an airline related stock.
Columns 420a and 420b include implicit information associated with the stock exchanges on which the stocks in column 410a and 410b, respectively, are traded. As can be seen, all the stocks, except IBM, are traded on the NASDAQ (NASD). IBM is traded on the New York Stock Exchange (NYSE). Server 114 determines (e.g.. derives or collects) the implicit information to include in history records 402a and 402b using internal database(s) 1 16 and/or external database(s) 130. For example, such a database can store implicit information related to each stock symbol. Alternatively or additionally, server 114 can query database(s) 130 to acquire the implicit information related to explicit requests. Server 1 14 can derive additional information from the explicit and implicit information in history records 402a. 402b. For example, based on the time information in column 412a and the location information in column 414a, server 114 can derive that the first user (i.e., the user associated with MAN,) lives in Baltimore, Maryland, and commutes to work in work in Bethesda, Maryland.
Based on the time information in column 412b and the location information in column 414b, server 114 can derive that the second user (i.e., the user associated with MAN2) lives in Fairfax, Virgina, and commutes to work in Washington D.C.. More specifically, server 1 14 can correlate time related information with location related information to derive an assumption of where particular users live and work. This can be accomplished, for example, based on the assumption that a majority of requests sent prior to a predetermined morning time (e.g., 8:30 a.m.) and after a predetermined evening time (e.g. 6:30 p.m.) are sent from or near a user's dwelling, and that a majority of requests sent between these two times (e.g., between 8:30 a.m. and 6:30 p.m.) are sent from or near a user's work place. The above described additional derived information can be referred to as derived dwelling location information and derived working location information. This is just one example of how server 114 can derive additional information from the explicit and/or implicit information stored in a history record. Stock quotes are just one example of the requests that may be made by a user, via client device 108. FIGS. 5A and 5B illustrate two further exemplary user history records 502a and 502b. each of which is associated with a different user. For the purpose of this discussion, the user associated with MAN3 shall be referred to as the third user and the user associated with MAN4 shall be referred to as the fourth user. In addition to being identified by a day of the week 506a,
506b (i.e., Monday) and a date 508a, 508b (i.e., January 22, 2000), each history record 502a, 502b is also associated with a subscriber status 509a, 509b.
The left most columns 510a and 510b. of history records 502a and 502b, include explicit requests made by the users (associated with MAN3 and MAN4) on a particular day (i.e., January 22, 2000). In the examples of FIG. 4, the explicit requests relate to sports scores, stock quotes, current weather, weather forecast, and traffic advisories.
As shown in column 510a, the third user explicitly requested: the New York Yankees score three times; the Baltimore Orioles Score once, the New York Mets score once, the stock prices of Apple Computer Inc. (symbol AAPL) once: the current weather once, the weather forecast twice, and traffic once.
As shown in column 51 Ob, the fourth user explicitly requested the stock prices of Yahoo Inc. (symbol YHOO) twice; the stock price of Apple Computer Inc. (symbol APPL) once; the New York Mets score three times; and traffic once. In addition to the explicit requests, the times that the server received the requests (which is essentially equivalent to the times that the requests were sent from client device 108 of a user) have been recorded in columns 512a and 512b. In the third columns 514a and 514b, the locations from which the requests were made are recorded. Columns 516a, 518a and 520a of history record 502a and columns 516b,
518b and 520b of history record 502b include different levels of implicit information that can be derived from the explicit requests in columns 510a and 510b, respectively. Server 1 14 determines (e.g., derives or collects) the implicit information to include in history records 502a and 502b using internal database(s) 1 16 and/or external database(s) 130. Server 1 14 can then derive additional information from the explicit and implicit information in history records 502a. 502b. For example, based on the time information in column 512a and the location information in column 514a, server 114 can derive that the third user (i.e., the user associated with MAN ) lives in Brooklyn, New York, and commutes to work in work in Queens, New York. Based on the time information in column 512b and the location information in column 514b, server 1 14 can derive that the fourth user (i. e. , the user associated with MAN4) lives in Queens, New York, and commutes to work in Jersey City, New Jersey.
Server 114 can not always determine the location from which a request was sent from a client device 108. For example, if the client device 108 was a desk top computer that sent a request to a server 114 via the Internet 1 18, then server 1 14 is most likely unable to determine the geographic location from which the request was sent (unless the user included this information with requests or in response to inquiries from server 1 14). Thus, if the server 1 14 is unable to determine the geographic location from which requests are sent, the history records associated with the users will not include location information (e.g.. columns 414a, 414b, 514a. 514b). Accordingly, in such an embodiment, server 1 14 can not derive certain information (e.g.. dwelling location information and working location information) from history records. However, server 114 can still derive the implicit information that is not location dependent (e.g.. columns
416a-420a, 416b-420b, etc. ). If client device 108 is for example a personal computer that communicates with server 1 14 via the Internet 1 18, then server 108 can identify client device 108 (and thus the user of client device 108 ) using what are called "cookies". A "cookie" is an Internet mechanism that allows server 114 to place information within client device 108 when server 114 sends a message to client device 108. When future client requests are made to server 114, the cookie is automatically passed from client 108 to server 114, enabling server 1 14 to identify client device 108 (and thus the user of client device 108). Alternatively or additionally, server 1 14 can identify a user based on registration data and/or a unique user name/password that the user must enter each time communications is initiated with server 1 14.
B. Focused Responses to Requests
Using the derived additional information (e.g., dwelling location information and working location information), server 1 14 can provide potentially smarter (e.g., more directed or focused) responses to requests made by users. For example, assume that the first user sends (using his client device 108), at 2:30 p.m. on a Friday, a request for movie times. Server 1 14 can predict that the first user probably wants movie times for movie theaters in the proximity of the first user's dwelling (e.g . Baltimore, Maryland), and can respond by sending Baltimore movie times to the first user's client device. An important aspect of this response is that server 114 determines a focused response without requiring that the first user send a focused request (e.g. , a request for movie times for Baltimore, Maryland). Alternatively, server 1 14 can send other focused responses, such as a response asking "Do you want movies times for Baltimore?" . The user can the respond with a "Y" or a "N". If the user responds with a "Y", server 114 can then proceed to sent the user Baltimore movie times. If the user responds with a "N", server 1 14 can send another focused response, such as a response asking "Do you want movie times for Bethesda?", or server 114 can eventually send a non-focused response asking "Please enter the location for which you would like movie times." The terms focused and directed are used interchangeably herein.
For another example, assume that the second user sends (using his client device 108), at 7:30 a.m. on a Saturday, from Fairfax. VA, a request for the weather forecast. Because the request was made on a Saturday, server 1 14 can predict that the first user probably wants the weather forecast for the proximity of the second user's dwelling (e.g.. Fairfax, VA). rather than for proximity of the second user's work area. Accordingly, server 1 14 can respond by sending the weather forecast for Fairfax to the first user's client device. If this example is modified such that the request was made on a Monday (rather than a Saturday), server 1 14 can predict that the first user alternatively, or additionally, wants the weather forecast for proximity of the second user's work area (e.g., Washington, D.C.). Accordingly, server 1 14 can respond by sending the weather forecast for Washington and/or Fairfax and possibly all points in-between. Similarly, server
114 can provide focused traffic information to a user in response to a non-focused request for traffic information from a user.
In another example, server 1 14 can determine a response to a request based on the request and the history of the user, including where the request (/'. e. , the current request) was sent from. For a specific example, if the second user made a request for the weather forecast from Morgantown, West Virginia, at 2 :00 p.m. on a Thursday, server 1 14 can respond by sending the second user the weather forecast for the proximity of Morgantown. Fairfax, and/or Washington and possibly all points in-between. Alternatively, server 1 14 can send a focused response asking "Do you want the weather forecast for: a) Morgantown, WV; b)
Fairfax. VA; c) Washington, D.C.; or d) Other". The user can then respond with an "a", "b", "c" or "d". If the user responds with an "a", server 114 can then proceed to sent the second user the Morgantown forecast, and so on for a "b" or a "c" response. If the user responds with a "d". server 1 14 can send a non-focused response asking "Please enter the location for which you would like the weather forecast."
Server 114 can derive further additional information from the explicit and implicit information in history records. For example, based on the industry information in columns 416a, 416b, the sub-industry information in columns 418a, 418b, and/or the stock exchange information in columns 420a, 420b, server
114 can derive additional information relating to the interests of the first user and the second user. For example, server 114 can determine that: the first user is very interested in computer stocks; the first user is very interested in computer hardware stocks; the first user has some interest in computer software stocks; the first user is predominantly interested in stocks traded on the NASDAQ stock exchange; the first user has some interest in stocks traded on the New York Stock Exchange; the first user has some interest in transportation stocks; and the first user has some interests in airline transportation stocks. Similarly, server 114 can determine that: the second user is very interested in computer stocks; the second user has some interest in computer hardware stocks; the second user is very interested in Internet stocks; the second user is predominantly interested in stocks that are traded on the NASDAQ stock exchange; the first user has some interest in transportation stocks; and the first user has some interest in airline transportation stocks. Server 1 14 can also derive further additional information from the explicit and implicit information in history records 502a, 502b. For example, based on the implicit information in columns 516a, 518a and 520a, and in columns 516b. 518b and 520b, server 1 14 can derive additional information relating to the interests of the third user and the fourth user. For example, server 114 can determine that: the third user is very interested in New York sports teams; the third user is very interested in baseball scores; the third user is very interested in baseball's American League East Division; the third user is very interested in weather; the third user is somewhat interested in hockey; etc. Similarly, server 1 14 can determine that: the fourth user is interested in computer stocks; the fourth user is interested in Internet stocks; the fourth user is somewhat interested in traffic; etc.
Accordingly, in another example, if the third user (associated with history 502a) simply requests "baseball scores", server can focus the response based on history 502a. For example, server 114 can send only the Yankee's score.
Alternatively, server 114 can send the Yankee's score, followed by the Mets' score and the Orioles' Score. Alternatively or additionally, server 1 14 can send all the scores for the A.L. East Division, along with the standings in the Division. Of course many other variations are possible. FIGS. 9 is high level flow diagrams of a method of the present invention.
Turning now for FIG. 9, the method of an embodiment of the invention begins when server 1 14 receives a request from a client device (e.g., two-way pager or a cell phone), as shown at a step 902. The user associated with the request is then identified in step 904. For example, server 114 identifies a client devise based on a unique identification code (e.g. , MIN, ESN or MAN) that is included in the request message and then correlates the identified client devise with a user. Server 1 14 then recalls a history (i. e. , history record) of the identified user, in step 906. Server 114 then determines a response based one the request and the history (e.g. , 402a, 402b, 502a or 502b) of the identified user, in step 908. For example, server 114 determines the response based on the implicit information (e.g., previous requests made by the user) and/or the implicit information (e. g. , implicit information derived from previous requests made by the user). Finally, in step 910, server 1 14 sends a response to the client device of the user.
C. Sending of Unsolicited Focused Information
In another embodiment of the present invention, server 1 14 can send unsolicited focused information to a user (more specifically, to client device 108 of a user) based on the explicit and/or implicit information stored in history records 402a, 402b, 502a and 502b. For example, server 1 14 can monitor headline news and forward specific headline news that, based on explicit information stored in history records 402, may be of interest to a user. If server
114 learns that Yahoo, Inc. stock is going to split, then server 1 14 can forward such information to the second user and the fourth user. If server 1 14 learns that Apple Inc., has named a new CEO, then server 114 can send such information to the first, second, third and fourth users. In another example, server 1 14 can monitor headline news and forward headline news that, based on implicit information (and possibly the explicit information) stored in history records 402, may be of interest to a user. For example, if server 1 14 learns that a new Internet legislation has being passed, server 1 14 can send such information to the second user and the fourth user. According to one embodiment of the present invention, an interest threshold can be used to limit the amount of unsolicited focused information that is provided to users. This interest threshold can be set by server 1 14 or by a user. In one example, an interest threshold is exceeded if a user has made more than a specific number of request (e.g., five requests), within a specific amount of time (e.g.. within the past seven days), that relate (explicitly or implicitly) to the unsolicited focused information. Thus, on January 23, 2000, if server 1 14 learned that Apple Inc., named a new CEO, server 1 14 would have forwarded the news to the first user (because on January 22, 2000 alone, the first user made a request for Apple Inc. stock quotes seven times). Server 1 14 may, or may not, have forwarded the news to the second user (which only requested an Apple Inc. stock quote once on January 22, 2000), depending on how many additional times the second user requested Apple Inc. stock during the relevant time period (e.g., seven days). Similarly, server 114 may, or may not, have forwarded the news to the third and fourth users.
Server 1 14 can also determine whether to send specific information to a user based on the user's subscriber status 509a, 509b. There may be different levels of status, such as: high, medium, and low. If this were the case, server 1 14 can limit the sending of certain unsolicited focused information to those users that paid for "high" status, for example. Other examples of status levels include: sports, stocks, world news, and exchange rates. If this were the case, server 114 can limit the sending of certain unsolicited focused information to those users that paid for the relevant status. For example, assume that only the third user (associated with history record 502a) paid for "sports" status. If server 1 14 receives the final score of the Mets game, according to one embodiment, server 114 will only send such unsolicited focused information (e.g., the final Mets score) to the third user. In this embodiment, server 1 14 will not send this unsolicited focused information to the fourth user (associated with history record 502b) even though the fourth user has shown repeated interest in Mets scores.
This will give user's incentive to subscribe to value added services. Status levels can also relate to employers, management levels, and the like. These are just some example of the types of status levels that are possible, according to the present invention. Server 1 14 need not send the entire received information (e.g., the full text of a new story) to a client device 108. That is, the unsolicited information can include all or part of the received information. Alternatively, the unsolicited information can include, for example, a summary of the received information, a title of the received information, and/or key words related to the received information. Server 114 can then send the entire received information if the user requests it be sent.
In another example, server 1 14 can monitor weather advisories that are issued by a weather service, such as the National Weather Service, and forward such weather information (e.g. , a winter weather advisory) to specific users based on implicit information derived from or stored in history records 402. For a specific example, if server 1 14 learns of a winter weather advisory for Baltimore, MD, server 114 can forward such unsolicited focused information to the first user (associated with history 402a). In another example, server 114 can monitor traffic advisories and forward such information to specific users based on implicit information derived from or stored in history records 402. For a specific example, if server 114 learns that there was an automobile accident on a bridge connecting Virginia with Washington, D.C., then server 1 14 can forward such unsolicited focused information to the second user (associated with history 402b).
Server 114 can send unsolicited focused information to a user (more specifically, client device 108 of a user) based on the explicit and/or implicit information stored in history records 502a and 502b. For example, server 114 can monitor sports scores and forward specific scores, based on explicit information stored in history records 502. that may be of interest to a user. If server 114 learns that the Yankees scored a run and took the lead in a game, then server 114 can forward such information to the third user. If server 114 learns of the final score in the Mets game, then server 114 can send such information to the third user and the fourth user. In another example, server 114 can monitor sports news and forward news that, based on implicit information stored in history records 502a and 502b, may be of interest to a user. For example, if server 114 learns that a manager in baseball's American League East division has been fired, server 114 can send such information to the third user. Again, an interest threshold can be used to limit the amount of unsolicited focused information that is provided to users. This interest threshold can be set by server 114 or by a user. FIGS. 10 is a high level flow diagram that illustrates a method of the present invention. Turning now for FIG. 10, the method according to an embodiment of the invention begins when server 1 14 receives information from an information source, in step 1002. The information source can be, for example. an internal database that is maintained by the server associated with server 1 14.
Alternatively, the information can be provided by an external information source. These external information sources 132 maintain real-time databases 130 that contain information relating to finance, sports, weather, airline schedules, and the like. Examples of information sources 132 include Reuters, which is a well known leading financial and news provider, and GovPX, which provides
Treasury market pricing. A data source that maintains foreign exchange information is Garvin Information Systems, LLC, of New York. NY, who provides real-time data feeds for spot foreign exchange rates, spot cross rates, currency forward rates, and the like. The received information is associated with a set of classifications.
Classifications are similar to the implicit information discussed above, except rather then being derived from a request (as is implicit information), classifications are derived from received information. Alternatively, the received information arrives with classifications. Examples of classifications are: computer stocks, hardware stocks, Internet stocks, software stocks, the NASDAQ stock exchange, New York sports teams, Baltimore sports teams, baseball scores, hockey scores, A.L. East baseball division, hockey's Eastern conference, football scores, local (e.g., Washington, D.C.) traffic, local (e.g., Washington D.C.) weather forecast, metal futures, foreign exchange rates, etc. Thus, notice that the example of classifications are similar (or identical) to the examples of implicit information discussed above.
Server 114 can derive the classifications from the received information. Alternatively or additionally, if the received information was provided by an external information source 132, then the external information source 132 can provide the classifications to server 1 14 along with any information sent to server 114. For example, if a financial news information source 132 (e.g.. Reuters) provides server 114 with news about a court settlement between two computer hardware providers (e.g.. Apple, Inc. and IBM), then the information provider may provide the following classifications along with the news: computer stocks, hardware stocks, and NASDAQ stock exchange. Alternatively or additionally, server 1 14 can derive some or all of the classifications from the received information.
Next, in step 1004. server 1 14 compares the set of classifications (associated with the received information) to user histories (e.g. , 402a.402b. 502a and 502b). In an exemplary embodiment, server 1 14 compares the set of classifications to the implicit information in each user's history. In another exemplary embodiment, server 114 compares the set of classifications to the explicit and implicit information in each user's history.
Finally, in step 1006, server 114 sends unsolicited information, related to the received information, to a client device of each user that has a user history that matches at least one of the classifications in the subset of classifications. For example, if server 114 receives the final score of the NY Mets game, and the classifications include NY Teams, baseball scores, and N.L. East baseball division, then server 114 may send unsolicited information (related to the final score of the NY Mets game) to the third user (associated with history 502a) and the forth user (associated with history 502b). The unsolicited information can include all or part of the received information. Alternatively, the unsolicited information can include, for example, a summary of the received information, a title of the received information, and/or key words related to the received information. In one embodiment, server 114 only sends the unsolicited information to those users that have a history that exceeds an interest threshold, which is discussed in more detail above.
In another embodiment, at a predetermined time (set by server 1 14 or a user), server 114 can send a summary of the information that is of most interest to a user (e.g., final stock prices, final scores, and the like). In still another embodiment, server 114 can constantly query user histories to determine if a threshold has been reached. Server 1 14 can then search for information related to the subject matter that caused the threshold be reached.
Server 1 14 can then send unsolicited information, related to this subject, to the client device of the relevant user.
D. Hardware and Software Implementations
Server 1 14 can perform specific features of the present invention using server controllers, which in effect comprise a computer system. Although communication-specific hardware can be used to implement the present invention, the following description of a general purpose computer system is provided for completeness.
The present invention is preferably implemented in software. Alternatively, the invention may be implemented using hardware or a combination of hardware and software. Consequently, the invention may be implemented in a computer system or other processing system. An example of such a computer system 1100 is shown in FIG. 1 1. In the present invention, for example, client and server applications each execute on distinct computer systems 1 100. The computer system 1 100 includes one or more processors, such as processor 1 104. The processor 1104 is connected to a communication infrastructure 1106 (for example, a bus or network). Various software implementations are described in terms of this exemplary computer system. After reading this description, it will become apparent to a person skilled in the relevant art how to implement the invention using other computer systems and/or computer architectures. Computer system 1100 also includes a main memory 1108, preferably random access memory (RAM), and may also include a secondary memory 11 10. The secondary memory 1110 may include, for example, a hard disk drive 1112 and/or a removable storage drive 11 14, representing a floppy disk drive, a magnetic tape drive, an optical disk drive, etc. The removable storage drive 11 14 reads from and/or writes to a removable storage unit 11 18 in a well known manner. Removable storage unit 1 118, represents a floppy disk, magnetic tape, optical disk, etc. which is read by and written to by removable storage drive 1 1 14. As will be appreciated, the removable storage unit 1118 includes a computer usable storage medium having stored therein computer software and/or data.
In alternative implementations, secondary memory 1110 may include other similar means for allowing computer programs or other instructions to be loaded into computer system 1 100. Such means may include, for example, a removable storage unit 1122 and an interface 1 120. Examples of such means may include a program cartridge and cartridge interface (such as that found in video game devices), a removable memory chip (such as an EPROM, or PROM) and associated socket, and other removable storage units 1 122 and interfaces 1120 which allow software and data to be transferred from the removable storage unit 1122 to computer system 1100.
Computer system 1 100 may also include a communications interface 1 124. Communications interface 1124 allows software and data to be transferred between computer system 1100 and external devices. Examples of communications interface 1124 may include a modem, a network interface (such as an Ethernet card), a communications port, a PCMCIA slot and card. etc.
Software and data transferred via communications interface 1124 are in the form of signals 1128 which may be electronic, electromagnetic, optical or other signals capable of being received by communications interface 1124. These signals 1128 are provided to communications interface 1 124 via a communications path 1 126. Communications path 1126 carries signals 1128 and may be implemented using wire or cable, fiber optics, a phone line, a cellular phone link, an RF link and other communications channels.
In this document, the terms "computer program medium" and "computer usable medium" are used to generally refer to media such as removable storage drive 1114, a hard disk installed in hard disk drive 1112, and signals 1128. These computer program products are means for providing software to computer system 1100.
Computer programs (also called computer control logic) are stored in main memory 1108 and/or secondary memory 11 10. Computer programs may also be received via communications interface 1 124. Such computer programs, when executed, enable the computer system 1 100 to implement the present invention as discussed herein. In particular, the computer programs, when executed, enable the processor 1 104 to implement the process of the present invention. Accordingly, such computer programs represent controllers of the computer system 1100. Where the invention is implemented using software, the software may be stored in a computer program product and loaded into computer system 1100 using removable storage drive 1114, hard drive 1112 or communications interface 1 124.
In another embodiment, features of the invention are implemented primarily in hardware using, for example, hardware components such as application specific integrated circuits (ASICs). Implementation of the hardware state machine so as to perform the functions described herein will be apparent to persons skilled in the relevant art(s).
In yet another embodiment, features of the invention can be implemented using a combination of both hardware and software.
V. Conclusion
While various embodiments of the present invention have been described above, it should be understood that they have been presented by way of example. and not limitation. It will be apparent to persons skilled in the relevant art that various changes in form and detail can be made therein without departing from the spirit and scope of the invention.
The present invention has been described above with the aid of functional building blocks illustrating the performance of specified functions and relationships thereof. The boundaries of these functional building blocks have been arbitrarily defined herein for the convenience of the description. Alternate boundaries can be defined so long as the specified functions and relationships thereof are appropriately performed. Any such alternate boundaries are thus within the scope and spirit of the claimed invention. One skilled in the art will recognize that these functional building blocks can be implemented by discrete components, application specific integrated circuits, processors executing appropriate software and the like or any combination thereof. Thus, the breadth and scope of the present invention should not be limited by any of the above- described exemplary embodiments, but should be defined only in accordance with the following claims and their equivalents.
All cited patent documents and publications in the above description are incorporated herein by reference.

Claims

What Is Claimed Is:
1. A method of providing focused information to a user in response to a non- focused request, comprising the steps of: a. receiving a request from a client device; b. identifying a user based on said request; c. recalling a history of said user; d. determining a response based on said request and said history of said user; and e. sending said response to said client device of said user.
2. The method of claim 1 , wherein said history of said user includes information related to times when previous requests were made by said user and information related to locations from which previous requests were made by said user, and wherein step d. comprises determining said response based on at least:
(i) said request; (ii) the information related to the times when the previous requests were made by said user; and (iii) the information related to the locations from which the previous requests were made by said user.
3. The method of claim 2, further comprising the steps of: (1 ) collecting the information related to the times when the previous requests were made by said user;
(2) collecting the information relating to the locations from which the previous requests were made by said user; and
(3) storing, in said history of said user, the information related to the times when the previous requests were made by said user and the information relating to the locations from which the previous requests were made by said user, wherein steps (l)-(3) occur at some time prior to step d.
4. The method of claim 1 , wherein said history of said user includes implicit information derived from explicit requests previously made by said user, and wherein step d. comprises determining said response based on at least:
(i) said request; and (ii) the implicit information in said history.
5. The method of claim 4, further comprising the steps of:
(1) deriving the implicit information based on the explicit requests previously made by said user; and
(2) storing the implicit information in said history of said user, wherein steps (1) and (2) occur at some time prior to step d.
6. The method of claim 1 , wherein said history of said user includes explicit requests previously made by said user and implicit information derived from the explicit requests, and wherein step (d) comprises determining said response based on at least: (i) said request;
(ii) the explicit requests in said history of said user; and (iii) the implicit information in said history of said user.
7. The method of claim 6, further comprising the steps of: (1) storing the explicit requests in said history; (2) deriving the implicit information based on the explicit requests; and
(3) storing the implicit information in said history of said user, wherein steps (l)-(3) occur at some time prior to step d.
8. The method of claim 1 , wherein said history of said user includes explicit requests previously made by said user, and wherein step d. comprises determining said response based on at least: (i) said request; and
(ii) the explicit requests previously made by said user that are stored in said history.
9. A system for providing focused information to a user in response to a non- focused request, comprising: a first server controller adapted to receive a request from a client device: a second server controller adapted to identify a user based on said request: a third server controller adapted to recall a history of said user; a fourth server controller adapted to determine a response based on said request and said history of said user; and a fifth server controller adapted to send said response to said client device of said user.
10. The system of claim 9, wherein said history of said user includes information related to times when previous requests were made by said user and information related to locations from which previous requests were made by said user, and wherein said fourth server controller determines said response based on at least:
(i) said request;
(ii) the information related to the times when the previous requests were made by said user; and
(iii) the information related to the locations from which the previous requests were made by said user.
11. The system of claim 10, further comprising: a sixth server controller adapted to collect the information related to the times when the previous requests were made by said user; a seventh server controller adapted to collect the information relating to the locations from which the previous requests were made by said user; and an eighth server controller adapted to store, in said history of said user, the information related to the times when the previous requests were made by said user and the information relating to the locations from which the previous requests were made by said user.
12. The system of claim 9, wherein said history of said user includes implicit information derived from explicit requests previously made by said user, and wherein said fourth server controller determines said response based on at least: (i) said request; and (ii) the implicit information in said history.
13. The system of claim 12, further comprising: a sixth server controller adapted to derive implicit information based on the explicit requests previously made by said user; and a seventh server controller adapted to store the implicit information in said history of said user.
14. The system of claim 9, wherein said history of said user includes explicit requests previously made by said user and implicit information derived from said explicit requests, and wherein said fourth server controller determines said response based on at least:
(i) said request; (ii) the explicit requests in said history of said user; and
(ii) the implicit information in said history of said user.
15. The system of claim 14, further comprising: a sixth server controller adapted to store the explicit requests in said history; a seventh server controller adapted to derive the implicit information based on the explicit requests; and a eighth server controller adapted to store the implicit information in said history of said user.
16. The system of claim 9, wherein said history of said user includes explicit requests previously made by said user, and wherein said fourth server controller determines said response based on at least:
(i) said request; and
(ii) the explicit requests previously made by said user that are stored in said history.
17. A method of sending unsolicited information to a user, comprising the steps of: a. receiving information from an information source, wherein said received information is associated with a set of classifications that includes one or more classifications; b. comparing said set of classifications to at least one user history, wherein each said user history is associated with a user; and c. sending unsolicited information, related to said received information, to a client device of a user having a user history that matches at least one classification of said set of classifications.
18. The method of claim 17, wherein said received information is provided by an external information source.
19. The method of claim 17, wherein said external information source provides said set of classifications along with said received information.
20. The method of claim 17, further comprising the following step between steps a. and b.: producing a set of classifications based on said received information.
21. The method of claim 17, wherein each said user history includes implicit information derived from explicit requests previously made a corresponding user, and wherein step b. comprises comparing said set of classifications to said implicit information stored in each user history.
22. The method of claim 21, wherein step b. further comprises identifying each user history that includes implicit information that corresponds to said at least one classification in said set of classifications.
23. The method of claim 21, wherein step b. further comprises identifying each user history that includes implicit information that corresponds to said at least one classification in said set of classifications and that exceeds a threshold.
24. The method of claim 17, wherein each user history includes explicit requests previously made by the associated user and implicit information derived from the explicit requests, and wherein step c. comprises comparing said set of classifications to the explicit requests and the implicit information stored in each user history.
25. The method of claim 24, wherein step c. further comprises identifying user histories that include at least one explicit request or implicit information that correspond to said at least one classification in said set of classifications.
26. The method of claim 24, wherein step c. further comprises identifying user histories that include at least one explicit request or implicit information that correspond to said at least one classification in said set of classifications and that exceeds a threshold.
27. The method of claim 17. wherein step a. comprises monitoring an internal database or an external database, and wherein said information source comprises one of said internal database and said external database.
28. The method of claim 17, wherein step b. comprises correlating said received information with a list of classifications to produce said set of classifications.
29. The method of claim 17. wherein said unsolicited information comprises at least one of the following: said received information; a portion of said received information; a summary of said received information; a title of said received information; and at least one key word related to said received information.
30. In a wireless communications system, a method of providing information to users of uniquely identifiable two-way communications devices, comprising the steps of: a. receiving information from an information source; b. determining classifications associated with said information; c. comparing said classifications to a first history associated with a first user; and d. sending said information to a communications device corresponding to said first user if said classifications and said first history correlate to meet a predetermined threshold, without said user requesting said information.
31. A system for sending unsolicited information to a user, comprising: a first server controller adapted to receive information from an information source, wherein said received information is associated with a set of classifications that includes one or more classifications; a second server controller adapted to compare said set of classifications to at least one user history, wherein each said user history is associated with a user; and a third server controller adapted to send unsolicited information, related to said received information, to a client device of each user having a user history that matches at least one classification of said set of classifications.
32. The system of claim 31 , wherein said received information is provided by an external information source.
33. The system of claim 31. wherein said external information source provides said set of classifications along with said received information.
34. The system of claim 31. further comprising a fourth server controller adapted to produce said set of classifications based on said received information
35. The system of claim 31, wherein each user history includes implicit information derived from explicit requests previously made by a corresponding user, and wherein said second server controller is adapted to compare said set of classifications to said implicit information stored in each user history.
36. The system of claim 35, wherein said second server controller identifies user histories that includes implicit information that corresponds to said at least one classification in said set of classifications.
37. The system of claim 36, wherein said second server controller identifies user histories that includes implicit information that corresponds to said at least one classification in said set of classifications and that exceeds a threshold.
38. The system of claim 31 , wherein one or more user histories include explicit requests previously made by the associated user and implicit information derived from the explicit requests, and wherein said third server controller compares said set of classifications to the explicit requests and the implicit information stored in the one or more user histories.
39. The system of claim 38, wherein said third server controller identifies a user history that includes at least one explicit request or implicit information that corresponds to said at least one classification in said set of classifications.
40. The system of claim 38, wherein said third server controller identifies a user history that includes at least one explicit request or implicit information that corresponds to said at least one classification in said set of classifications and that exceeds a threshold.
41. The system of claim 31 , wherein said first server controller monitors an internal database or an external database, and wherein said information source comprises one of said internal database and said external database.
42. The system of claim 31, wherein said second server controller correlates said received information with a list of classifications to produce said set of classifications.
43. The system of claim 31 , wherein said unsolicited information comprises at least one of the following: said received information; a portion of said received information; a summary of said received information; a title of said received information; and at least one key word related to said received information.
44. In a wireless communications system, a system for providing information to users of uniquely identifiable two-way communications devices, comprising: a first server controller adapted to receive information from an information source; a second server controller adapted to determine classifications associated with said information; a third server controller adapted to compare said classifications to a first history associated with a first user; and a fourth server controller adapted to send said information to a communications device corresponding to said first user if said classifications and said first history correlate beyond a predetermined threshold, without said user requesting said information.
PCT/US2000/041058 2000-03-10 2000-10-04 System and method for providing information based on user histories WO2001069860A2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU2001245028A AU2001245028A1 (en) 2000-03-10 2000-10-04 System and method for providing information based on user histories

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US52316900A 2000-03-10 2000-03-10
US09/523,169 2000-03-10

Publications (2)

Publication Number Publication Date
WO2001069860A2 true WO2001069860A2 (en) 2001-09-20
WO2001069860A3 WO2001069860A3 (en) 2002-09-06

Family

ID=24083935

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2000/041058 WO2001069860A2 (en) 2000-03-10 2000-10-04 System and method for providing information based on user histories

Country Status (2)

Country Link
AU (1) AU2001245028A1 (en)
WO (1) WO2001069860A2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8014768B2 (en) 2003-04-30 2011-09-06 Disney Enterprises, Inc. Mobile phone multimedia controller
WO2012090080A1 (en) * 2010-12-30 2012-07-05 Nokia Corporation Method and apparatus for generating information related to a significant location
US9864764B2 (en) 2014-08-29 2018-01-09 Accenture Global Solutions Limited Evolving data archives

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5848396A (en) * 1996-04-26 1998-12-08 Freedom Of Information, Inc. Method and apparatus for determining behavioral profile of a computer user
WO1999017227A1 (en) * 1997-09-29 1999-04-08 International Business Machines Corporation Method and system for prefetching information

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5848396A (en) * 1996-04-26 1998-12-08 Freedom Of Information, Inc. Method and apparatus for determining behavioral profile of a computer user
WO1999017227A1 (en) * 1997-09-29 1999-04-08 International Business Machines Corporation Method and system for prefetching information

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8014768B2 (en) 2003-04-30 2011-09-06 Disney Enterprises, Inc. Mobile phone multimedia controller
US9170123B2 (en) 2010-08-06 2015-10-27 Nokia Technologies Oy Method and apparatus for generating information
WO2012090080A1 (en) * 2010-12-30 2012-07-05 Nokia Corporation Method and apparatus for generating information related to a significant location
US9864764B2 (en) 2014-08-29 2018-01-09 Accenture Global Solutions Limited Evolving data archives
US10769121B2 (en) 2014-08-29 2020-09-08 Accenture Global Solutions Limited Evolving data archives

Also Published As

Publication number Publication date
AU2001245028A1 (en) 2001-09-24
WO2001069860A3 (en) 2002-09-06

Similar Documents

Publication Publication Date Title
US20030046291A1 (en) System, method and apparatus for utilizing transaction databases in a client - server environment
US7196639B2 (en) Location-based content delivery
CN102782715B (en) Application is aimed at advertisement
US7765228B2 (en) Method and system for data collection for alert delivery
US6560604B1 (en) System, method, and apparatus for automatically and dynamically updating options, features, and/or services available to a client device
US7136915B2 (en) System for communicating through maps
US6169897B1 (en) Mobile communications system and mobile terminal therefor with capabilities to access local information resources
US6681108B1 (en) Network and method for identifying entities sharing a common network location
US7580995B2 (en) Systems and methods for locating mobile computer users in a wireless network
WO2000030381A1 (en) Method and system for providing formatted information via a two-way communications system
US20040038665A1 (en) Mobile telephone, and advertisement distributing method and distributing system for its use
US20080194272A1 (en) Neighborhood Level Information Delivery
US20030023451A1 (en) Method and apparatus for identifying privacy levels
US20050278415A1 (en) Highly reliable and scalable architecture for data centers
JP2005522763A (en) System and method for delivering environmentally adaptive services for mobile devices
Thompson et al. Exploiting telecommunications to deliver real time transport information
JP2004511872A (en) Trading system
WO2001069860A2 (en) System and method for providing information based on user histories
JP2004320140A (en) Information exchange system
US7756525B1 (en) Continuous dynamic mobile querying
WO2001069444A2 (en) System, method, and apparatus for providing value added services to specific users
Jung et al. Broadcasting and caching policies for location-dependent queries in urban areas
JP2003303148A (en) Information delivery method, information delivery system, and system control program
Park et al. Broadcasting and prefetching schemes for location dependent information services
WO2001069882A2 (en) System and method for providing information that is responsive to a freeform request

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP