WO2000079396A1 - System and method for processing and presenting internet usage information to facilitate user communications - Google Patents

System and method for processing and presenting internet usage information to facilitate user communications Download PDF

Info

Publication number
WO2000079396A1
WO2000079396A1 PCT/IB2000/000816 IB0000816W WO0079396A1 WO 2000079396 A1 WO2000079396 A1 WO 2000079396A1 IB 0000816 W IB0000816 W IB 0000816W WO 0079396 A1 WO0079396 A1 WO 0079396A1
Authority
WO
WIPO (PCT)
Prior art keywords
user
users
web
usage
chat session
Prior art date
Application number
PCT/IB2000/000816
Other languages
French (fr)
Inventor
Gaby Matsliach
Avner Ronen
Ronen Ventura
Benny Rousso
Shai Buber
Original Assignee
Odigo, 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
Priority claimed from US09/338,482 external-priority patent/US6606657B1/en
Priority claimed from US09/477,511 external-priority patent/US6879994B1/en
Application filed by Odigo, Inc. filed Critical Odigo, Inc.
Priority to AU52401/00A priority Critical patent/AU5240100A/en
Priority to JP2001505293A priority patent/JP2003502776A/en
Publication of WO2000079396A1 publication Critical patent/WO2000079396A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3495Performance evaluation by tracing or monitoring for systems
    • 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
    • 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/50Network services
    • H04L67/535Tracking the activity of the user
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/875Monitoring of systems including the internet
    • 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]

Definitions

  • This invention is related to a system and method for providing information about the usage of Internet web sites and pages and facilitating communications between visitors of the same.
  • the Internet is increasingly becoming a commercially driven environment with web sites of increasing complexity, both in breadth and depth.
  • Information about the number and type of users who are accessing a given web site or page is important both to the individual users themselves, and to third parties for determining the viability of various web page designs and layouts, the computing power and bandwidth required to support the web site, etc. Such information is also useful for applications such as Internet site catalogs.
  • Various techniques have been employed to determine who is using a particular
  • a first problem with conventional systems is that user information collected in the normal manner does not distinguish between one user accessing a given page many times or many users each accessing the same page once.
  • a second problem is that conventional counting techniques provide no indication of how long users spend looking at a given page before leaving. Thus, techniques of the prior art provide only a limited amount of information with limited accuracy.
  • a third problem with conventional techniques then arises since they do not provide an adequate mechanism for gathering and presenting this data to the users or third parties.
  • access counters can determine when a user accesses a given page, they provide no information about how long the user's attention is directed to the page or when the user "leaves" by accessing a different web page or site.
  • access counters do not collect information about the type of user, and therefore cannot report this information.
  • due to proxy servers and other possible caching techniques user accesses to web pages may be served locally without a user actually accessing the desired web site. Such hits will, thus, not be recorded by the web server.
  • a fourth problem related to conventional information gathering techniques is that an Internet user cannot easily determine in real time what web sites and pages are popular with other users with similar backgrounds and interests.
  • a fifth problem is that a user can not determine which other users are simultaneously viewing the same web page or site.
  • a sixth problem is that, while a user may be able to view a directory or "map" indicating other web sites and/or pages which are linked or otherwise related to the one they are currently viewing, conventional systems do not permit the user to know how many users are currently at the neighboring pages, to filter the map to show sites with, e.g., a minimum number of active users, with users having particular characteristics, etc., or to determine which links are most popular with users having particular characteristics.
  • a seventh problem is that there is presently no mechanism to permit a user to determine "relevant" sites or pages according to the characteristics of the users of those sites or pages, as opposed to its contents.
  • An eighth problem with conventional applications is that they also do not permit a user to enter into a real-time chat with other users who are viewing the same page. While some real-time chat capabilities are present, they require the user IDs to be known in advance and are concerned only with whether a user is connected to the Internet, not what page or site they are presently accessing.
  • the ICQ program is an Internet chat program in which subscribing members are assigned a user ID. When a member logs onto the Internet, their ID is transmitted to the ICQ system. Individual users can compile "buddy lists" of other ICQ users and are informed when one of those IDs has logged on or off. However, this feature is limited only to IDs which are known in advance. ICQ users are also able to communicate with each other via, e.g., chat sessions. However, apart from lists of users in various "chat rooms", no information is provided about the activities of the users in general, only whether they are logged in to the Internet.
  • Alexa Another Internet application which purports to provide information about on-line users is the ALEXA application, available from ALEXA INTERNET.
  • the Alexa service works in conjunction with a user's web browser and displays a separate window on the user's computer screen which contains information about the web site currently being viewed and suggests related sites.
  • the Alexa system also tracks a user's usage patterns and uses this information to determine which sites will be of most interest to the individual user, as well as compiling statistical information about the number of Alexa users who have visited a particular web site.
  • Alexa provides some information about web sites, the presented tracking information is merely another variant of the conventional "hit" counter. No information is presented about the numbers or types of other users who may be viewing the same web site or page at the same time, nor are mechanisms provided for one user to communicate with other users who are in the same location.
  • a user's Internet software is augmented, e.g., by means of a stand alone application, to obtain information about the user and also to obtain information about each web page the user accesses.
  • the terms home page, web site, web server and web page may be interchangeable and may refer to any information or communication which may be independently addressed and accessed by a user over a communication network such as the Internet or world-wide web, but may also apply to other systems such as a BBS system, a local-area network, a wide-area network, an intranet system, and the like.
  • Other communication systems such as cable television systems, satellite television systems, other communications systems developed for use with television sets such as WEBTV, cellular, digital, fiber-optic or standard telephone systems, palm computing device and on-line gaming networks may all be used with the present invention.
  • a user can be asked or required to provide certain biographical information, such as age and gender, during a registration process.
  • biographical information such as age and gender
  • the amount of active time a user spends at each page is also determined.
  • the new page information and the determined duration of time spent at the previous site are transfened to a central server.
  • Some or all of the additional biographical information can also be provided to the central server.
  • a user may have several open browsers. A page change in any one of them may result in a transaction or notification to the server.
  • the central server may compile the provided information in real time memory structures, such as dynamic memory-based hash tables, databases and possibly also in disk-based log files. Non-real-time processes may further be used, especially for long-term data and statistics collection and the like.
  • the information is processed to determine the cunent "hot" Internet sites or pages at or near real-time, the popular sites on a historical basis, i.e., over the past N days or hours, various usage trends, etc. This information can be presented to users in the form of, e.g., a histogram displayed on the user's screen, and integrated with link maps, directory information, and other navigation tools.
  • An individual user can query the central system to determine whether other users are cunently viewing the same page and/or site, and if so, be provided with how many such users exist and their profiles.
  • the query can be general or limited to users meeting certain characteristics according to customized or predefined queries.
  • a user can determine the general profile of others accessing the same web site and also identify web pages which are popular with others having a specified profile, including the user's own profile.
  • These queries can also be logged by the central server.
  • a user can identify related or linked sites according to the number and profile of the present users. Preferably, when a user enters a new web page or site, they are automatically provided information about other users accessing the same web page or site.
  • a user may constantly monitor the usage of any web site designated as a "homepage" by the user, regardless of whether the user is visiting that web site.
  • the central server constantly monitors usage data for that web site and, when the user is online, provides such usage data for display to the user, preferably in a separate monitor window.
  • the usage information may be presented in a graphical format, including one or more icons representing each item of usage data.
  • the usage data may be presented to the user in a text format wherein usage data concerning the number of users (both visible and invisible) and the number of virtual notes posted to the web site are represented, for example, numerically.
  • a user can communicate with one or more other users accessing the same site at the same time, even if the ID of those users is not known in advance.
  • a user can initiate a real-time public, semi-public or private chat session with other site visitors.
  • Prospective chat targets can be identified by querying the central server.
  • the user is required to enter additional information, such as areas of interest, profession, etc. This information can be used to build user profiles, identify compatible or selected chat targets, and, during chat initiation, can be presented to the contacted parties to provide information about the initiating party.
  • chat session When a private chat session is initiated, the existence of the chat session is invisible to all but the chat session requestor and those users invited to participate in the private chat. Users and chat sessions initiated by users may further be selectively visible or semi-public. That is, the user or chat session may be visible only to other users with predetermined user profiles that conespond in some way to either the user or the participants in the chat session. The chat session may be continued even when one of the participants in the chat session leaves the respective content provider to which the chat room is dedicated.
  • the present invention provides the mechanism or process for identifying users to each other.
  • the users may then wish to communicate using any of a number of known communication procedures or protocols.
  • a user can leave one or more "notes" for a particular web page, as if the page contained a virtual bulletin board. Additionally, the user may post an icon associated with the site which conesponds to the user.
  • the application software When another user visits the page, the application software will notify the other user that a note and or an icon exists for that site. The other user will then be able to communicate with the user leaving the note or icon in any manner, such as through e-mail or by initiating a chat session.
  • the note may be preserved for a predetermined amount of time or, in order to preserve memory, the note may be erased by the system server after the user who posted the note logs off the web site or the system.
  • a user can search for other users, regardless of what site they are in, by executing a dynamic search according to specified demographic search parameters. Only users that match the specified search criteria will be identified. The user can then communicate with these users.
  • the usage information can be further processed on the basis of user biographical information to generate usage profiles for a given site or page.
  • the usage profiles include the number of users who have visited a given site and/or page, when they visited, the active duration of the visit, the profiles of the visiting users, sites which a user visited immediately prior to a cunent web page being visited, sites which a user visits immediately after the cunent web site being visited, and the like. This information is made available to third parties, such as advertisers, users, and site owners and operators both directly and via a query system.
  • the system provides for "people based navigation. "
  • the system can generate and present to a user a list of pages which are related to the one a user is presently viewing.
  • the system may further provide a history of users with whom conespondence has been initiated.
  • the site usage information can also be compiled to determine popular "surf patterns originating from a particular page. The patterns can be used to identify the most popular next destination(s) for users, further focused according to demographic information.
  • One embodiment of the virtual community of users contemplated by the present invention may be divided up into several sub-communities. Each user may be further identified by the sub- community to which he belongs.
  • the community or any sub-communities may be sponsored by one or more parties who, for example, pay for the sponsorship in exchange for presenting its members with any information, such as advertising, community-related information, sub- community related information, system messages, software updates or the like. Revenues generated from such activities may be shared by an operator of the system and the sponsors of the sub-communities in any manner.
  • Fig. 1 is a diagram of the network operating environment of the invention
  • Fig. 2a is a flowchart of the operation of the client-side software of the invention
  • Fig. 2b is a block diagram of the exemplary components of the client-side software of the invention
  • Fig. 2c is a flowchart of an exemplary user registration process of the invention.
  • Fig. 2d is a flowchart of an exemplary client application process of the invention.
  • Fig. 3 is a block diagram of exemplary software components of a server used to implement the invention.
  • Fig.4 is a screen display showing a user query input screen and resulting real-time site usage statistics display
  • Fig. 5 is a screen display illustrating a graphical input for a site/page usage query
  • Fig. 6a is a flowchart of an exemplary position update transaction process of the invention.
  • Fig. 6b is a flowchart of an exemplary process for reporting popular pages to a user in accordance with the invention.
  • Fig. 6c is a flowchart of an exemplary process for locating chat partners in accordance with the invention
  • Fig. 6d is a flowchart of an exemplary process for updating user parameters in accordance with the invention.
  • FIG. 1 there is shown a diagram of the operating environment of the present invention.
  • a central server or processor 10 having a data store 11 is connected to a network 16, such as the Internet. Although shown as a single unit, the central server may also be a collection of servers linked together.
  • a plurality of data servers 12 are connected to the network 16 and house web sites, each comprising one or more individual pages. Each page within a web site has a unique Universal Resource Locator ("URL").
  • URL Universal Resource Locator
  • Also connected to the network 16 are a plurality of user computers 14 operated by users who may exchange data with servers 10, 12. Users of computers 14 access particular web pages by means of appropriate web browsing software, such as NETSCAPE NAVIGATOR or MICROSOFT INTERNET EXPLORER.
  • a directory or catalog of selected URLs is prepared by server 10 based on the subject(s) covered, and includes information on the page and associated web site such as title, characteristics, summary, etc.
  • Detailed usage information such as the types of users who visited the page and how long they remained there, is typically only generated for cataloged pages.
  • a minimum amount of information such as the number and duration of visits, is recorded. If sufficiently high usage is detected, an indication can be provided that the un-cataloged page should be added to the catalog. In this manner, system resources are allocated to those pages which are considered to be the most important. Alternatively, all pages may be catalogued, regardless of usage.
  • users can subscribe to a catalog notification list according to various subjects. When a new site is added to the catalog, users subscribed to that subject are notified.
  • the usage information is processed to generate certain predefined categories of information.
  • the central server preferably maintains a real-time running total of how many users are presently at each URL. This information is used to provide page and site usage information to a user in response to a notice that they have accessed a given URL.
  • a list of "hot" sites can be generated based on popularity and indexed according to common demographic parameters, such as a user's age, gender, and occupation. Various hot site lists can be generated according to topical category, such as business, sports, gaming, etc.
  • Real- time hot site information is sent to users in response to queries.
  • the query can be topic specific or global. For a global "all the net" query, all pages that contain registered users, including those not in the catalog, are scanned to determine the "hottest" pages.
  • the following user data items are maintained at the central server: - User demographics : age range (and optionally, the exact age of the user), gender, nickname, user location (state), spoken languages, occupation, zodiac sign, family status, a mood of the user, a co-branded community to which the user belongs and an e-mail address of the user.
  • the web page visits made by the user in a certain time period, e.g., the last predetermined number of days (the URL and the active visit duration).
  • the list of users defined as the user buddy list.
  • user data items may be kept on the user's computer: - User demographics: age range (optionally, the exact date of birth), gender, nickname, user location (state), spoken languages, occupation, zodiac sign, family status, a cunent mood of the user, a co-branded community to which the user belongs and e-mail.
  • the user's interest fields (categories) that the user would like to share with others.
  • the user's favorite query parameters (especially the favorite interest fields).
  • These favorite queries are defined by the user and can be displayed as special shortcut buttons in the client application.
  • the statistical information and usage analysis is made available to owners and operators of web-sites. Queries can also be sent to the central server if the operators wish to extract more specific information from the gathered usage information. For example, a site operator may be interested in determining the number of 20-30 year old female users who visited a particular set of web pages within a web site over the last month during business hours.
  • the system permits real-time tracking of visitors to web sites and pages, including a notify feature which sends a message to a user, such as a site operator or owner, when other users, perhaps meeting a specified demographic profile, enter the specified page.
  • all of the collected usage information is maintained in full using an appropriate data logging method. This advantageously allows a rich variety of data queries to be processed to provide commercially valuable and reliable site usage information.
  • users themselves can issue queries about other on-line users to the central server.
  • Certain queries are predefined and are stored either locally on the user's computer or on the central server.
  • the predefined queries can be customized by the users and new queries can also be generated.
  • a first type of query the user enters particular demographic information which is processed to determine which web pages have been (or are cunently) popular with users having similar profiles.
  • An example of a graphical input for this type of query and the resulting information is illustrated in Fig. 4.
  • a user interface includes one or more demographic filter selectors for attributes such as age and gender, as well as other filters, such as a topical limitation, e.g., sports, news, weather, the geographical location of the web site, the origin of the users considered in the search, and the historic time span within which data should be considered.
  • the top search results are presented in a graphical format, preferably in the form of a vertical histogram having a bar size proportional to the site's popularity (or other indicator) and the site name adjacent the appropriate bars.
  • the histogram may be alternated between a vertical and horizontal position by actuating a software button.
  • the user can request information about other users who are cunently accessing the same page the user is on, or perhaps a related page, and who have profiles which match certain parameters.
  • An example of a graphical input for this second type of query is illustrated in Fig. 5.
  • the query input includes fields for entering one or more biographical search criteria and a topic of interest.
  • the central server will process it and return information about other users who meet the entered profile. The querying user will then be able to request more information about the located users and perform additional functions, such as initiating a chat session.
  • users are allowed to perform unrestricted searches.
  • the user is discouraged from performing a search using parameters which they have not provided for their own user profile. For example, if a user performs a search based on a non-mandatory parameter and the user has not provided such information about him- or herself, a message may be sent to the user indicating that the system suggests that the user not search for other users based on parameters not submitted for the user's own profile. But, as a user provides more information about themselves, they are able to search more precisely without such warning messages and, accordingly, receive information which is more useful. Thus, users are encouraged to provide complete information without mandating that demographic information be entered during the registration process.
  • no registration question other than the user's age and gender is mandatory.
  • the real-time demographic usage information can be compiled and presented to users in a wide variety of different ways.
  • a user can issue a query to locate other web sites or pages that are popular with users having the same demographic profile. Essentially, a user is able to determine what is popular with other users "like me" in real time.
  • the collected information can also be integrated with hierarchical navigation "maps".
  • maps generally indicate pages which are linked to the one the user is on, pages linked by the linked pages, etc.
  • a navigation map includes indications about how many users are presently at the neighboring pages.
  • the user can customize and/or filter the map so that it shows different levels of depth, e.g., so that it shows only those pages with active users or users having certain characteristics, only particular information about certain pages, etc.
  • the system provides for "people based navigation.”
  • the system can generate a list of pages which are related to the one a user is presently viewing.
  • the system considers the demographic profile of various users to determine which sites the present user is most likely to be interested in. For example, in response to such a query, the system can identify other sites which have been or are presently popular with users having similar profiles to the querying user.
  • the site usage information can also be compiled to determine popular "surf patterns originating from a particular page. The patterns can be used to identify the most popular next destination(s) for users, further focused according to demographic information.
  • the surf patterns can also be used to generate information about related sites and their relative popularity according to user type.
  • users can initiate chat sessions with other users who are viewing the same page or another page in the same site, even if the ID of the other users is not known in advance. This is possible because the presently disclosed system maintains real-time usage information about the web sites and users.
  • a chat session can be initiated.
  • the user Before requesting a chat session, the user may view the profile of the target users. As with querying, preferably, a user is discouraged from being provided with more information about the target users then they have entered themselves.
  • the user may also designate that a requested chat session be public, semi-public or private. If the chat session is public, then the session will be visible to other users visiting the web site, and such users may join the chat. If the chat session is private, then the session will not be visible to users other than the one who requested initiation of the chat or those users that were invited by the requestor. If the chat session is semi-public, then only users with predetermined user profiles that conespond in some way to the participants in the chat session may view or participate in the semi-public chat session.
  • the targeted user when a user attempts to initiate a chat session with another user, the targeted user is provided with the profile of the initiating user and, based on the provided information, can reject the proffered chat session (explicitly or by simply ignoring the request), accept the chat, or request more information about the initiating user.
  • a user provides a local nick-name and/or a graphical image, such as a picture of a face, which will be associated with their profile.
  • a default nick-name and graphical image will be assigned by the system if the user so chooses.
  • a local nick-name and graphical image may be associated with each user during the dialog.
  • a user may enter lines of text for display to other members of the chat session, may "surf to other web sites while remaining in the chat session and may also send private messages which are visible only to a designated user or users within the chat session, regardless of whether the chat session is private, semi-public or public.
  • a user can elect to be "invisible" to other users by selecting an appropriate system option.
  • data about invisible users will still be gathered and processed by the central server for analysis and review by site owners to gauge popularity of the web site, the information, except for the number of invisible users of a web site, will not be provided to other users. This is to ensure that the page usage information and query results provided to users are not misinterpreted.
  • the number of invisible users who are present at a page is preferably indicated as part of the page usage information.
  • usage tracking functionality and various other functions are provided by augmenting the browser system with an additional stand-alone user application.
  • Fig.2A is flowchart illustrating the basic operation of the client-side user software.
  • Step 20 When the software is first installed or operated, the user participates in a registration process.
  • demographic information is entered.
  • the user information entered during registration is sufficient to generate a demographic profile which can be viewed by others while also preserving the user's privacy and anonymity.
  • Such information includes one or more attributes, such as the user's age, gender, geographical origin, fields of interest, occupation, family status, nickname, e-mail address, etc.
  • the user is required to provide an age-range, gender, and origin while the other attributes of the profile are optional.
  • a more detailed description of a prefened registration process 20 is discussed further below in conjunction with Fig. 2C.
  • the profile information entered by the user is both stored locally and on the central system 10. Support for multiple user profiles on a single computer system can also be provided.
  • the program then interacts with the browser software to determine when the user accesses a new URL.
  • the program also determines when a browser becomes active, such as restoring the browser after it has been minimized or closed.
  • a new URL is accessed by the user or a browser has been activated or re-activated (step 22)
  • the new URL as well as certain user information is transmitted to the central server.
  • the additional information can include a browser number (or other unique indication of the user's browser that is being tracked), the active time spent on the previous URL, whether this is the first visit of this user in the URL on the calendar day, and whether the access to the page was made by selecting site information provided by the present application program, or through another means (i.e., a link in the viewed page).
  • this information is logged by the central server and used to determine how many users are accessing a given web page at a particular time.
  • the URL and user data is transmitted as a message using User Datagram Protocol ("UDP").
  • UDP User Datagram Protocol
  • UDP does not require a separate Internet socket connection and operates independently of any earlier exchanges between source and destination computers.
  • the UDP process requires a relatively small software driver, is efficient, and requires very little additional overhead.
  • the central server In response to receiving the URL and user information, the central server returns a response containing information about the particular URL page the user has accessed, such as the number of other users which are currently viewing the URL, etc., by using a UDP message. Various other types of information can be returned in accordance with bandwidth considerations, user preferences, etc., such as the number of users which are not in an "invisible" status, the number of invisible users in the page, the number of notes left in the page, the number of users in the site which are not invisible, and the number of invisible users of the site.
  • the received information is displayed to the user, preferably in a graphical format (step 28), by the client software, preferably without interaction with the browser.
  • one or more timers such as a URL timer and an
  • the URL timer runs for as long as the user is accessing the particular URL.
  • the Active Page timer is used to determine how much of this access time the page is active, as opposed to being minimized or placed in the background while another page is viewed in a separate browser window or the user switches to another program, and thus runs only when the particular URL page is active.
  • One method of determining whether a URL is active on the user's computer is to determine whether the user is pointing to the page with an input device, such as a mouse, or by querying the operating system and trapping the "focus gained” and "focus lost” events.
  • an input device such as a mouse
  • the timers do not need to be discretely running clocks, but can also be implemented by recording appropriate start and end time-stamps and then calculating the time difference.
  • step 30 the system continuously monitors whether an active status of the web page cunently being viewed changes (e.g. whether the user switches to a new URL or opens a new browser window and views a different page).
  • an active status of the web page cunently being viewed changes (e.g. whether the user switches to a new URL or opens a new browser window and views a different page).
  • the process continues directly to step 34, discussed below.
  • the process first completes step 32 wherein the system toggles the active page timer by, for example, turning off the timer for the previously viewed page and beginning a timing of the access to the newly accessed web page.
  • the active page time may simply be turned off if the user closes all open browsers.
  • the system determines whether a new URL has been accessed (step 34). If so, the process returns to step 24 above, and if not (e.g. when the user simply switches to a new page within the same web site), the process returns to step 30 to continue monitoring changes in the active status of the web page being viewed by the user.
  • the client side timing eliminates many of the problems associated with monitoring site usage to determine the actual time a user spends at a given web site or page. In particular, because the access time is measured at the user's system, the accuracy of the measurement is unaffected by the use of proxy servers which intercept user queries to popular web sites and redirect them to local copies, thus preventing the queries from reaching the original site and being recorded.
  • client side monitoring can compensate for time when an Internet browser is opened to a web site but the user is doing something else, such as working in a separate program or using a different browser window.
  • URL and timing information from a large number of users is constantly being transmitted to the central server. This information is logged and analyzed to generate usage statistics across the universe of system users. Real-time information is maintained in memory, e.g., in hash tables. Statistical analysis of the data is performed offline. The real-time and statistical usage information can be utilized in a variety of ways. The statistical information generated can include information about the number and type of users cunently accessing a particular page, as well as the number and types of users accessing the page over various time periods.
  • the information is preferably stored in a manner which permits access to usage information in the aggregate and broken down by user profile, as well as over various historical time periods, ranging from near-instantaneous to periods of days, months, and longer.
  • the information may be maintained on either a page basis or site basis.
  • FIG. 2B therein is depicted the internal software components preferably stored by a user computer 14 in a data store 18.
  • a user computer 14 For purposes of simplicity, the remaining internal hardware components of user computer 14 are not shown. However, components such as a processor, random-access and read-only memory, a display, input ports, output ports and a plurality of known input and output devices will be readily understood to be present by those of ordinary skill in the art.
  • Internal software components of user computer 14 include a standard Internet browser 40 and client-side software components 41.
  • Internet browser 40 may be any standard Internet browser software package, such as INTERNET EXPLORER, or equivalent browser software used for viewing web sites and web pages on the Internet.
  • Client-side software components 41 include a browser tracking process module 42, an Internet connection detection module 44 and a main process module 46, each operative to enable computer 14 to perform substantially all the client-side functions of the instant invention as described herein.
  • Browser tracking module 42 operates to store data within data store 18.
  • Browser tracking module 42 allow computer 14 to track various browsers 40 or multiple windows of the same browser 40 running on computer 14.
  • Browser tracking module 42 monitors (i) the minimizing and restoring of a browser window, (ii) an opening and closing of a browser application 40, (iii) a user input of a new active URL in the browser 40 and/or (iv) a measure of a total time associated with each of these events.
  • This information is reported to server 10 at predetermined intervals through communication with main process module 46, which in turn, transmits such information over network 16.
  • Internet connection detection module 44 is operative to detect the launch of either
  • Internet browser 40 or new windows of browser 40.
  • Internet connection detection module 44 activates main process module 46.
  • Main process module 46 contains several sub-modules operative to allow computer 14 to perform the functions of the instant invention.
  • Main process module 46 preferably contains central server communication sub-module 48, graphical user interface sub- module 52, peer-to-peer communication sub-module 56, browser interface sub-module 50, "radar" graphical user interface sub-module 54 and communication manager sub-module 58.
  • Server communication sub-module 48 manages data interchanged between sub-modules 50, 52 and 54 of user computer 14 and server 10 which is transmitted over network 16.
  • Browser interface sub-module 50 coordinates data between main process module 46 and browser tracking module 42.
  • Graphical user interface sub-module 52 presents a series of displays and updates for such displays with which a user may interact (commonly referred to as a graphical user interface (GUI)). Sub-module 52 further coordinates the transfer of data received from server 10 to be displayed to a user on computer 14. Sub-module 52 further coordinates the transfer of data received from the user through the GUI to be transmitted to server 10.
  • GUI graphical user interface
  • Radar graphical user interface module 54 generates a graphical, e.g., circular screen on which, when a user moves from one URL address to another, the new URL name is displayed.
  • a graphical e.g., circular screen
  • an animation of a turning radar beam is shown within the circular display.
  • one or more dots are displayed in the circular screen, with each dot representing one or more users who are accessing the particular web site associated with the URL address.
  • Peer-to-peer communication sub-module 56 controls the transfer of data between main process module 46 and a computer 12, such as a web host, in operative connection with user computer 14.
  • Configuration manager sub-module 58 maintains user configurations such as user profile information and user preferences.
  • a prefened user registration process 20 by which a user may register him- or herself with an operator of server 10 for purposes of using the instant invention.
  • a user is presented with an opening screen containing registration information (step 60).
  • the software displays a standard terms and conditions-of-use screen for acknowledgment by the user (step 62).
  • a user information screen is presented (step 64).
  • the user may enter basic information such as their age, gender, geographic location, and optionally, a nickname, a file containing the user's image and the user's e-mail address (step 66).
  • the user is then prompted to input several fields of interest relating to the user's profession, hobbies, social clubs the user belongs to and the like (step 68). Additional personal information may optionally be entered by the user such as languages spoken, zodiac sign, occupation and marital status (step 70). This information is then transmitted from user computer 14 through network 16 to server 10 for storage (step 72).
  • the user Upon completion of the registration process, the user is allowed to access the functions of the software presented in the instant invention.
  • Process 71 begins when a user computer 14 logs in to server 10 upon detection of the user accessing the Internet (step 72).
  • server 10 transmits information, such as a status of the user's buddy list, messages, advertisements and the like, to user computer 14 for display to the user (step 74).
  • Client-side software then waits for a new event, such as a communication event from the server, a user generated event or a browser event (step 76).
  • a communication event such as a communication event from the server, a user generated event or a browser event (step 76).
  • process 71 proceeds to step 78 wherein the user computer 14 determines the type of communication event.
  • step 78a If the communication event is a request from a second user to chat or communicate with the user, an indication of such is transmitted to user computer 14 and the user is notified by, for example, a display sign or tone (step 78a). After such notification, process 71 returns to step 76 and waits for a new event.
  • step 78b If the communication event is a new set of status information for the user's buddy list, such information is updated and displayed on user computer 14 (step 78b). After this, process 71 returns to step 76 and waits for a new event.
  • step 78c If the communication event is a new message or advertisement, it is displayed on and stored in user computer 14 (step 78c). After this, process 71 returns to step 76 and waits for a new event.
  • process 71 Upon detection of a new user event, process 71 continues from step 76 to step 80 wherein user computer 14 determines what type of user event has occurred. If the user has asked to change his/her user profile, process 71 continues to step 80a. The updated information is input and then transmitted to server 10 (step 80a- 1). Then the information is stored both locally on user computer 14 and in a user database of server 10 (step 80a-2), after which process 71 returns to step 76. If the user has submitted a query to find suitable chat partners, process 71 continues to step 80b. The request is transmitted to server 10 (step 80b- 1). Server 10 then determines results for the query (step 80b-2) and the results are displayed to the user (step 80b-2), after which process 71 returns to step 76.
  • step 80c If the user has submitted a request to communicate with a second user, process 71 continues to step 80c. The request is transmitted to server 10 (step 80c- 1). Then the chat session is established (step 80c-2), after which process 71 returns to step 76. It should be noted that the chat session, as well as other means of communication (e.g. file transfer and URL transfer) is preferably established directly between the two users without involvement of the web server which the two users are visiting. If the user has submitted a query for a list of hot pages relating to a particular subject, process 71 continues to step 80d. The query is transmitted to server 10 (step 80d-l). Server 10 then determines the results for this query (discussed further below in conjunction with Fig.
  • step 6b transmits the results to user computer 14 which displays them to the user (step 80d- 2), after which process 71 returns to step 76.
  • step 80e If the user has submitted a request for popularity statistics, process 71 continues to step 80e. The request is transmitted to server 10 (step 80e-l ). The results are then determined, transmitted to user computer 14 and displayed to the user (step 80e-2), after which process 71 returns to step 76.
  • process 71 Upon detection of a browser event, process 71 continues from step 76 to step 82. If the active browser is changed, process 71 proceed to step 82a. A timer measuring the amount of time that the old browser was active is stopped and a new timer is initiated for the new browser (step 82a- 1). A radar of possible jump sites from the page viewed in the new browser is displayed to the user in the new browser window (step 82a-2). A determination is then made regarding whether usage information displayed for the URL displayed in the new browser is too old (step 82a-3). If not, process 71 returns to step 76. If so, a request for updated page statistics is sent to the server (step 82a-4).
  • Process 71 then continues to step 82b-5 where updated statistics are received from server 10 and displayed to the user. After this, process 71 returns to step 76. If the browser event detected is a new browser being opened, process 71 continues to step 82b. An identifier of the new browser is transmitted to server 10 to be added to the browser list stored therein (step 82b-l). A radar of possible jump sites from the page viewed in the new browser is displayed to the user in the new browser window (step 82b-2). A timer measuring the amount of time that the old browser was active is stopped and a new timer is activated for measuring the amount of time for which the new browser is active (step 82b-3). The position of the browser (e.g.
  • step 82b- 4 Process 71 then continues to step 82b-5 where updated statistics are received from server 10 and displayed to the user. After this, process 71 returns to step 76.
  • step 82c A radar of possible jump sites from the new page being viewed (step 82b-2).
  • a timer measuring the amount of time that the old URL was active is stopped and a new timer is activated for measuring the amount of time for which the new page is actively being viewed (step 82b-3).
  • the new URL being displayed is transmitted to server 10 (step 82b- 4).
  • Process 71 then continues to step 82b-5 where updated page statistics are received from server 10 and displayed to the user. After this, process 71 returns to step 76.
  • Server 10 may be one or more servers, such as the SUN ENTERPRISE 3500 server, in communication with each other and accessible over a network 16, such as the Internet.
  • Server 10 may be one or more servers, such as the SUN ENTERPRISE 3500 server, in communication with each other and accessible over a network 16, such as the Internet.
  • Server 10 may be one or more servers, such as the SUN ENTERPRISE 3500 server, in communication with each other and accessible over a network 16, such as the Internet.
  • a network 16 such as the Internet.
  • Data store 11 is operative to store database 11a containing user information, page directories, a candidate table for new pages to be added to the directory, and the like.
  • Data store 11 is further operative to store data files l ib containing a summary of user visits, a page summary for pages in the directory, and the like.
  • Server 10 is preferably an interconnected series of servers for performing specific functions related to the instant invention.
  • server 10 may include an on-line server 10a for handling information to be sent and received over the network 16, an offline server 10b for receiving, processing and storing information handled by on-line server 10a, and a statistics query server 10c for handling queries received from users.
  • server 10 may include an on-line server 10a for handling information to be sent and received over the network 16, an offline server 10b for receiving, processing and storing information handled by on-line server 10a, and a statistics query server 10c for handling queries received from users.
  • Other equivalent configurations of servers may be used.
  • Online server 10a includes a plurality of software modules lOal through 10a7.
  • communication module 10a! allows server 10a to coordinate information to be transmitted or received over network 16.
  • Intra-server communication module 10a2 allows online server 10a to coordinate data transfened between itself and the remaining servers.
  • Memory hash maps 10a3 store information used in accordance with the present invention such as basic profile information submitted by each user (10a3-l), dynamic user information such as cunent URL position (10a3-2), query caches and indices (10a3-3), visitors for each page in the directory
  • Server 10a further contains chat query handlers 10a4 for processing user chat queries, hot pages query handlers 10a5 for processing user hot pages queries, position update handlers 10a6 for updating each user's position on the Internet, and user information handlers 10a7 for processing new user information submitted by a user.
  • chat query handlers 10a4 for processing user chat queries
  • hot pages query handlers 10a5 for processing user hot pages queries
  • position update handlers 10a6 for updating each user's position on the Internet
  • user information handlers 10a7 for processing new user information submitted by a user.
  • Offline server 10b preferably includes a plurality of software modules lObl through 10b3 for processing offline functions.
  • Communication module lObl allows offline server 10b to coordinate data transfened between itself and the remaining servers.
  • User position update module 10b2 coordinates historical user position data for storage in data store 11.
  • Such data may include aggregate data for pages in the directory 10b3 which may be buffered in page aggregation buffer 10b5 prior to storage in data store 11.
  • the data may further include candidate pages that may be catalogued in the directory 10b6 and user visit information which may be stored in user visit buffer 10b7 prior to storage in data store 11.
  • Data processing module 10b5 retrieves, processes and returns data in data store 11 in accordance with the present invention.
  • Statistics query server 10c contains a plurality of software modules 10cl-10c4 for processing statistics queries received from users. Communication module lOcl allows server 10c to coordinate queries and results to be transmitted or received over network 16. Statistics query module 10c2 processes any received statistics queries. Frequent queries cache 10c3 stores popular queries and results which may be transmitted to a user in response to any query which is similar to a stored query and in which the results are not too old. Statistics database 10c4 contains further processed statistics which may be accessed by a user.
  • One feature of the present invention includes the ability to track and maintain realtime statistics regarding visitors to web sites on the Internet. Accordingly, and refening to Fig. 6a, therein is depicted an on-line position update transaction process 84 performed by on-line server 10a. Process 84 tracks a user's cunent position on the Internet and deletes information relating to the user' s previous position.
  • Process 84 begins at step 84- 1 , where after a change in user position has been detected, server 10a decrements the visitors count of the previous page (step 84- la), deletes the user from the visitors list for the previous page (step 84- lb) and sends a log message to off-line server 1 Ob including a total time the user was logged on at the previous page (step 84- lc).
  • server 10a updates the stored user location to reflect the new page being visited (step 84-2a), determines whether the new page is in the directory (step 84-2b), increments the visitors counter for the new page and/or site (step 84-2c) and adds the user to the visitors list for that page (step 84-2d).
  • a new message is then prepared and sent to user computer 14 for display via GUI manager 52 (step 84-3).
  • Server 10 will compile information for the message, including an indication of the number of visitors at the new page and the new page's site (step 84-3a).
  • server 10 will determine whether any of the users assigned to the cunent user's "buddy list" have changed their status (e.g. become active or inactive) (step 84-3b).
  • the compiled information is then transmitted to user computer 14 (step 84-3c).
  • a further feature of the present invention allows a user to submit queries for finding sites based on subject matter.
  • the query may include additional requirements such as a popularity level, whether users of the same demographics have visited this site, etc.
  • Fig. 6b therein is depicted an exemplary process 86 for responding to a user query regarding popular web sites.
  • Process 86 begins when a query is received from user computer 14.
  • Server 10 upon receipt of the query, determines whether the query profile is already located in the query cache 10a3-3 (step 86-1). If a substantially similar query is found, server 10 determines whether the results for the stored query were calculated within a predetermined amount of time
  • server 10 searches the directory for pages meeting the query profile. When results for the query have been generated, the results and the time of the search are stored in query cache 10a3-3. These results are then transmitted to user computer 14 (step 86- 1 b).
  • step 86-2 server 10 will scan non-directory pages visitors' hash map 10a3 -5 to locate the most popular non-catalogued pages that conespond to the subject of the query.
  • the software of the present invention is contemplated to include a feature whereby a user may chat with other users meeting a particular set of requirements, or with other users visiting the same web page. Refening now to Fig.
  • server 10 receives from user computer 14 a set of prefened parameters for other users to chat with, including fields of interest, age, gender, profession, and the like.
  • server 10 selects a predetermined number of other users, in order of the number of criteria matching the criteria sent by user computer 14, and transmits the results to user computer 14.
  • User information may be updated at predetermined time intervals or after a predetermined number of log-ins by the user.
  • Fig. 6d depicts a process 89 for updating stored user parameters.
  • server 10 performs a validity check for a user, for example, by checking whether the user is cunently logged in (step 90). If so, server 10 remotely accesses the user's details stored in user computer 14 (step 92) and updates the stored profile for the user in the user information hash maps 10a3- 1 (step 94).
  • server 10 performs a validity check for a user, for example, by checking whether the user is cunently logged in (step 90). If so, server 10 remotely accesses the user's details stored in user computer 14 (step 92) and updates the stored profile for the user in the user information hash maps 10a3- 1 (step 94).
  • server 10 performs a validity check for a user, for example, by checking whether the user is cunently logged in (step 90). If so, server 10 remotely accesses the user's details stored in user computer 14 (step 92) and updates the stored profile for the user in the user information hash maps 10a3- 1 (step 94).
  • Step 96 determines whether the updated user information includes additional buddy list members. If not, the process 89 continues to step 98 below. If so, process 89 continues to step 97 where server 10 determines the status of the additional users listed in the new buddy list and transmits the information to user computer 14, after which process 89 continues to step 98. At step 98, server 10 transmits a notification to user computer 14 that the updated user parameters were successfully received and stored. After step 98, process 89 resets so that it may update information for further users.
  • the UDP protocol and the processes described above are further useful to allow a user, while online, to monitor usage of a web site designated by the user as a homepage, even when the user is not visiting the homepage.
  • a user may designate a particular web site as the user's home page. This designation is preferably made via the client-side software and stored by central server 10. After a designation has been made, the user may further select a preference as to whether the homepage monitor runs automatically with the client-side software or must be initiated manually by the user. In either case, when the homepage monitor is active, usage information such as the number of users (both visible and invisible) visiting the homepage and the number of virtual notes posted to the homepage may be presented to the user by the central server. Such usage information is preferably stored in a database, in the manner described in the foregoing processes.
  • the homepage monitor appears as a separate window on the user's computer.
  • the usage data regarding the homepage is displayed in this window either graphically or textually. It may be presented graphically by, for example, displaying one icon which indicates a first numerical range of users visiting the site and a second icon conesponding to a second range of users. Alternatively, the data may be presented in textual format, for example, "There are cunently 24 users visiting this web site.”
  • the virtual community of users contemplated by one embodiment of the present invention has been presented above as a single community of users, the community may be divided up into several sub-communities, also refened to as co-branded or sponsored communities. Each user may be further identified by the sub-community to which he belongs.
  • the system as a whole or any sub-community may be sponsored by one or more parties who pay for the sponsorship in exchange for presenting its members with information, such as advertising information or the like. Revenues generated from such activities may be shared by operators of the system and other sponsors in any known manner.

Abstract

A system and method is disclosed for gathering and disseminating detailed information regarding web site visitation. A server system (10) is connected to the Internet and receives, processes and supplies detailed information from subscribed users from one or more co-branded communities. In response to user queries, the server system (10) provides detailed information regarding the sites that have been visited, the duration and times of such visits, the most popular web sites, the most popular jump sites from a particular web page, etc. Such information is gathered and transmitted to subscribers who have downloaded a client-side reporting and communicating software application that is compatible with the server system (10). In addition, since users submit profile information about themselves, much demographic information is known about the users. Demographic information as to the popularity of visited web sites may then be easily determined, stored and updated by the server system.

Description

SYSTEM AND METHOD FOR PROCESSING AND PRESENTING
INTERNET USAGE INFORMATION TO FACILITATE USER
COMMUNICATIONS
Cross-Reference to Related Applications This application is a continuation-in-part of co-pending United States patent application Serial No. 09/422,387 entitled "SYSTEM AND METHOD FOR PROCESSING AND PRESENTING INTERNET USAGE INFORMATION TO FACILITATE USER COMMUNICATIONS" filed on October 21, 1999 in the name of Zilberstein et al which application is a continuation-in-part of co-pending United States patent application Serial No. 09/338,482 entitled "SYSTEM AND METHOD FOR PROCESSING AND PRESENTING
INTERNET USAGE INFORMATION" filed on June 22, 1999 in the name of Zilberstein et al, which is incorporated herein by reference.
Field of the Invention
This invention is related to a system and method for providing information about the usage of Internet web sites and pages and facilitating communications between visitors of the same.
Background of the Invention
The Internet is increasingly becoming a commercially driven environment with web sites of increasing complexity, both in breadth and depth. Information about the number and type of users who are accessing a given web site or page is important both to the individual users themselves, and to third parties for determining the viability of various web page designs and layouts, the computing power and bandwidth required to support the web site, etc. Such information is also useful for applications such as Internet site catalogs. Various techniques have been employed to determine who is using a particular
Internet site or page. Many conventional systems, such as counters that are incremented whenever a particular web site or page is accessed, provide basic frequency of usage information. However, such systems fail to address a number of shortcomings. A first problem with conventional systems is that user information collected in the normal manner does not distinguish between one user accessing a given page many times or many users each accessing the same page once. A second problem is that conventional counting techniques provide no indication of how long users spend looking at a given page before leaving. Thus, techniques of the prior art provide only a limited amount of information with limited accuracy.
Additional information which is valuable, both to the web site operator and to Internet users, is the number and type (i.e. demographics) of users who have viewed or who are currently viewing a web site or page. A third problem with conventional techniques then arises since they do not provide an adequate mechanism for gathering and presenting this data to the users or third parties. In particular, while access counters can determine when a user accesses a given page, they provide no information about how long the user's attention is directed to the page or when the user "leaves" by accessing a different web page or site. Also, access counters do not collect information about the type of user, and therefore cannot report this information. Furthermore, due to proxy servers and other possible caching techniques, user accesses to web pages may be served locally without a user actually accessing the desired web site. Such hits will, thus, not be recorded by the web server.
Because of the limitations in the accuracy and scope of collected information, a fourth problem related to conventional information gathering techniques is that an Internet user cannot easily determine in real time what web sites and pages are popular with other users with similar backgrounds and interests. A fifth problem is that a user can not determine which other users are simultaneously viewing the same web page or site. A sixth problem is that, while a user may be able to view a directory or "map" indicating other web sites and/or pages which are linked or otherwise related to the one they are currently viewing, conventional systems do not permit the user to know how many users are currently at the neighboring pages, to filter the map to show sites with, e.g., a minimum number of active users, with users having particular characteristics, etc., or to determine which links are most popular with users having particular characteristics.
Moreover, while information about frequency of site or page visits is used to compile lists of popular sites, the catalogs are limited to grouping sites by content. A seventh problem, then, is that there is presently no mechanism to permit a user to determine "relevant" sites or pages according to the characteristics of the users of those sites or pages, as opposed to its contents. An eighth problem with conventional applications is that they also do not permit a user to enter into a real-time chat with other users who are viewing the same page. While some real-time chat capabilities are present, they require the user IDs to be known in advance and are concerned only with whether a user is connected to the Internet, not what page or site they are presently accessing.
For example, the ICQ program, from ICQ, Inc., is an Internet chat program in which subscribing members are assigned a user ID. When a member logs onto the Internet, their ID is transmitted to the ICQ system. Individual users can compile "buddy lists" of other ICQ users and are informed when one of those IDs has logged on or off. However, this feature is limited only to IDs which are known in advance. ICQ users are also able to communicate with each other via, e.g., chat sessions. However, apart from lists of users in various "chat rooms", no information is provided about the activities of the users in general, only whether they are logged in to the Internet.
Another Internet application which purports to provide information about on-line users is the ALEXA application, available from ALEXA INTERNET. The Alexa service works in conjunction with a user's web browser and displays a separate window on the user's computer screen which contains information about the web site currently being viewed and suggests related sites. The Alexa system also tracks a user's usage patterns and uses this information to determine which sites will be of most interest to the individual user, as well as compiling statistical information about the number of Alexa users who have visited a particular web site. However, none of the aforementioned problems are adequately addressed by that system. While Alexa provides some information about web sites, the presented tracking information is merely another variant of the conventional "hit" counter. No information is presented about the numbers or types of other users who may be viewing the same web site or page at the same time, nor are mechanisms provided for one user to communicate with other users who are in the same location.
Thus, there are multiple problems and shortcomings in the prior art as noted above.
Summary of the Invention These and other deficiencies in conventional systems are addressed by the system and method of the instant invention in which a user's Internet software is augmented, e.g., by means of a stand alone application, to obtain information about the user and also to obtain information about each web page the user accesses. It is to be understood that as used herein the terms home page, web site, web server and web page may be interchangeable and may refer to any information or communication which may be independently addressed and accessed by a user over a communication network such as the Internet or world-wide web, but may also apply to other systems such as a BBS system, a local-area network, a wide-area network, an intranet system, and the like. Other communication systems such as cable television systems, satellite television systems, other communications systems developed for use with television sets such as WEBTV, cellular, digital, fiber-optic or standard telephone systems, palm computing device and on-line gaming networks may all be used with the present invention.
In the system of the present invention, a user can be asked or required to provide certain biographical information, such as age and gender, during a registration process. The amount of active time a user spends at each page is also determined. When the user jumps to another web page, the new page information and the determined duration of time spent at the previous site are transfened to a central server. Some or all of the additional biographical information can also be provided to the central server. It should be noted that a user may have several open browsers. A page change in any one of them may result in a transaction or notification to the server.
The central server may compile the provided information in real time memory structures, such as dynamic memory-based hash tables, databases and possibly also in disk-based log files. Non-real-time processes may further be used, especially for long-term data and statistics collection and the like. The information is processed to determine the cunent "hot" Internet sites or pages at or near real-time, the popular sites on a historical basis, i.e., over the past N days or hours, various usage trends, etc. This information can be presented to users in the form of, e.g., a histogram displayed on the user's screen, and integrated with link maps, directory information, and other navigation tools.
An individual user can query the central system to determine whether other users are cunently viewing the same page and/or site, and if so, be provided with how many such users exist and their profiles. The query can be general or limited to users meeting certain characteristics according to customized or predefined queries. In this manner, a user can determine the general profile of others accessing the same web site and also identify web pages which are popular with others having a specified profile, including the user's own profile. These queries can also be logged by the central server. In a similar manner, a user can identify related or linked sites according to the number and profile of the present users. Preferably, when a user enters a new web page or site, they are automatically provided information about other users accessing the same web page or site. In addition, a user may constantly monitor the usage of any web site designated as a "homepage" by the user, regardless of whether the user is visiting that web site. Once a homepage is designated, the central server constantly monitors usage data for that web site and, when the user is online, provides such usage data for display to the user, preferably in a separate monitor window. The usage information may be presented in a graphical format, including one or more icons representing each item of usage data. (For example, one icon may be presented if the web site has no visitors, a second icon may be presented if there are less than 50 visitors, etc.) Alternatively, the usage data may be presented to the user in a text format wherein usage data concerning the number of users (both visible and invisible) and the number of virtual notes posted to the web site are represented, for example, numerically.
According to a further aspect of the invention, a user can communicate with one or more other users accessing the same site at the same time, even if the ID of those users is not known in advance. In one technique, a user can initiate a real-time public, semi-public or private chat session with other site visitors. Prospective chat targets can be identified by querying the central server. Preferably, before a query is processed, the user is required to enter additional information, such as areas of interest, profession, etc. This information can be used to build user profiles, identify compatible or selected chat targets, and, during chat initiation, can be presented to the contacted parties to provide information about the initiating party. When a public chat session is initiated, the existence of the chat session is visible to any users who are visiting the same web site. When a private chat session is initiated, the existence of the chat session is invisible to all but the chat session requestor and those users invited to participate in the private chat. Users and chat sessions initiated by users may further be selectively visible or semi-public. That is, the user or chat session may be visible only to other users with predetermined user profiles that conespond in some way to either the user or the participants in the chat session. The chat session may be continued even when one of the participants in the chat session leaves the respective content provider to which the chat room is dedicated.
Essentially, the present invention provides the mechanism or process for identifying users to each other. The users may then wish to communicate using any of a number of known communication procedures or protocols. According to the present invention, a user can leave one or more "notes" for a particular web page, as if the page contained a virtual bulletin board. Additionally, the user may post an icon associated with the site which conesponds to the user. When another user visits the page, the application software will notify the other user that a note and or an icon exists for that site. The other user will then be able to communicate with the user leaving the note or icon in any manner, such as through e-mail or by initiating a chat session. The note may be preserved for a predetermined amount of time or, in order to preserve memory, the note may be erased by the system server after the user who posted the note logs off the web site or the system. Alternatively, a user can search for other users, regardless of what site they are in, by executing a dynamic search according to specified demographic search parameters. Only users that match the specified search criteria will be identified. The user can then communicate with these users.
The usage information can be further processed on the basis of user biographical information to generate usage profiles for a given site or page. The usage profiles include the number of users who have visited a given site and/or page, when they visited, the active duration of the visit, the profiles of the visiting users, sites which a user visited immediately prior to a cunent web page being visited, sites which a user visits immediately after the cunent web site being visited, and the like. This information is made available to third parties, such as advertisers, users, and site owners and operators both directly and via a query system.
According to another aspect of the invention, the system provides for "people based navigation. " As an extension of the link map, the system can generate and present to a user a list of pages which are related to the one a user is presently viewing. The system may further provide a history of users with whom conespondence has been initiated. The site usage information can also be compiled to determine popular "surf patterns originating from a particular page. The patterns can be used to identify the most popular next destination(s) for users, further focused according to demographic information.
One embodiment of the virtual community of users contemplated by the present invention may be divided up into several sub-communities. Each user may be further identified by the sub- community to which he belongs. The community or any sub-communities may be sponsored by one or more parties who, for example, pay for the sponsorship in exchange for presenting its members with any information, such as advertising, community-related information, sub- community related information, system messages, software updates or the like. Revenues generated from such activities may be shared by an operator of the system and the sponsors of the sub-communities in any manner.
Brief Description of the Drawings
The foregoing and other features of the present invention will be more readily apparent from the following detailed description and drawings of illustrative embodiments of the invention in which:
Fig. 1 is a diagram of the network operating environment of the invention;
Fig. 2a is a flowchart of the operation of the client-side software of the invention; Fig. 2b is a block diagram of the exemplary components of the client-side software of the invention;
Fig. 2c is a flowchart of an exemplary user registration process of the invention;
Fig. 2d is a flowchart of an exemplary client application process of the invention;
Fig. 3 is a block diagram of exemplary software components of a server used to implement the invention;
Fig.4 is a screen display showing a user query input screen and resulting real-time site usage statistics display;
Fig. 5 is a screen display illustrating a graphical input for a site/page usage query;
Fig. 6a is a flowchart of an exemplary position update transaction process of the invention;
Fig. 6b is a flowchart of an exemplary process for reporting popular pages to a user in accordance with the invention;
Fig. 6c is a flowchart of an exemplary process for locating chat partners in accordance with the invention; and Fig. 6d is a flowchart of an exemplary process for updating user parameters in accordance with the invention.
Detailed Description of the Prefened Embodiments: Turning to Fig. 1 , there is shown a diagram of the operating environment of the present invention. A central server or processor 10 having a data store 11 is connected to a network 16, such as the Internet. Although shown as a single unit, the central server may also be a collection of servers linked together. A plurality of data servers 12 are connected to the network 16 and house web sites, each comprising one or more individual pages. Each page within a web site has a unique Universal Resource Locator ("URL"). Also connected to the network 16 are a plurality of user computers 14 operated by users who may exchange data with servers 10, 12. Users of computers 14 access particular web pages by means of appropriate web browsing software, such as NETSCAPE NAVIGATOR or MICROSOFT INTERNET EXPLORER.
In the prefened embodiment, a directory or catalog of selected URLs is prepared by server 10 based on the subject(s) covered, and includes information on the page and associated web site such as title, characteristics, summary, etc. Detailed usage information, such as the types of users who visited the page and how long they remained there, is typically only generated for cataloged pages. For non-cataloged pages, a minimum amount of information, such as the number and duration of visits, is recorded. If sufficiently high usage is detected, an indication can be provided that the un-cataloged page should be added to the catalog. In this manner, system resources are allocated to those pages which are considered to be the most important. Alternatively, all pages may be catalogued, regardless of usage. In addition, users can subscribe to a catalog notification list according to various subjects. When a new site is added to the catalog, users subscribed to that subject are notified.
The usage information is processed to generate certain predefined categories of information. For example, the central server preferably maintains a real-time running total of how many users are presently at each URL. This information is used to provide page and site usage information to a user in response to a notice that they have accessed a given URL. In addition, a list of "hot" sites can be generated based on popularity and indexed according to common demographic parameters, such as a user's age, gender, and occupation. Various hot site lists can be generated according to topical category, such as business, sports, gaming, etc. Real- time hot site information is sent to users in response to queries. The query can be topic specific or global. For a global "all the net" query, all pages that contain registered users, including those not in the catalog, are scanned to determine the "hottest" pages.
In the prefened embodiment, the following user data items are maintained at the central server: - User demographics : age range (and optionally, the exact age of the user), gender, nickname, user location (state), spoken languages, occupation, zodiac sign, family status, a mood of the user, a co-branded community to which the user belongs and an e-mail address of the user.
- The user interest fields (categories) that he would like to share with others.
- The user's favorite query parameters (especially the favorite interest fields). These favorite queries are defined by the user and displayed as special shortcut buttons in the client application.
- The web page visits made by the user in a certain time period, e.g., the last predetermined number of days (the URL and the active visit duration). - The list of users defined as the user buddy list.
- Real time information regarding the cunent (real time) position of the user in each of its open browsers.
In addition, the following user data items may be kept on the user's computer: - User demographics: age range (optionally, the exact date of birth), gender, nickname, user location (state), spoken languages, occupation, zodiac sign, family status, a cunent mood of the user, a co-branded community to which the user belongs and e-mail.
- The user's interest fields (categories) that the user would like to share with others. - The user's favorite query parameters (especially the favorite interest fields).
These favorite queries are defined by the user and can be displayed as special shortcut buttons in the client application.
- The list of users (and their chat information) defined as the user buddy list.
- List of e-mails of other users with whom the user wants to communicate via e- mail.
- Log of users with whom the user recently communicated (either by sending a message or by direct chat). They can then be added to the user buddy list or the list of friends' e-mails.
According to the invention, the statistical information and usage analysis is made available to owners and operators of web-sites. Queries can also be sent to the central server if the operators wish to extract more specific information from the gathered usage information. For example, a site operator may be interested in determining the number of 20-30 year old female users who visited a particular set of web pages within a web site over the last month during business hours. In addition, the system permits real-time tracking of visitors to web sites and pages, including a notify feature which sends a message to a user, such as a site operator or owner, when other users, perhaps meeting a specified demographic profile, enter the specified page.
Preferably, all of the collected usage information is maintained in full using an appropriate data logging method. This advantageously allows a rich variety of data queries to be processed to provide commercially valuable and reliable site usage information.
According to a further aspect of the invention, users themselves can issue queries about other on-line users to the central server. Certain queries are predefined and are stored either locally on the user's computer or on the central server. The predefined queries can be customized by the users and new queries can also be generated.
In a first type of query, the user enters particular demographic information which is processed to determine which web pages have been (or are cunently) popular with users having similar profiles. An example of a graphical input for this type of query and the resulting information is illustrated in Fig. 4.
As shown in Fig. 4, a user interface includes one or more demographic filter selectors for attributes such as age and gender, as well as other filters, such as a topical limitation, e.g., sports, news, weather, the geographical location of the web site, the origin of the users considered in the search, and the historic time span within which data should be considered. The top search results are presented in a graphical format, preferably in the form of a vertical histogram having a bar size proportional to the site's popularity (or other indicator) and the site name adjacent the appropriate bars. Optionally, the histogram may be alternated between a vertical and horizontal position by actuating a software button.
In the second type of search, the user can request information about other users who are cunently accessing the same page the user is on, or perhaps a related page, and who have profiles which match certain parameters. An example of a graphical input for this second type of query is illustrated in Fig. 5.
As shown in Fig. 5, the query input includes fields for entering one or more biographical search criteria and a topic of interest. When the query is submitted, the central server will process it and return information about other users who meet the entered profile. The querying user will then be able to request more information about the located users and perform additional functions, such as initiating a chat session.
In one embodiment, users are allowed to perform unrestricted searches. In the prefened embodiment, however, the user is discouraged from performing a search using parameters which they have not provided for their own user profile. For example, if a user performs a search based on a non-mandatory parameter and the user has not provided such information about him- or herself, a message may be sent to the user indicating that the system suggests that the user not search for other users based on parameters not submitted for the user's own profile. But, as a user provides more information about themselves, they are able to search more precisely without such warning messages and, accordingly, receive information which is more useful. Thus, users are encouraged to provide complete information without mandating that demographic information be entered during the registration process. Preferably, no registration question other than the user's age and gender is mandatory. The real-time demographic usage information can be compiled and presented to users in a wide variety of different ways. In addition to providing a user with information about other people who are viewing the same web site or page, a user can issue a query to locate other web sites or pages that are popular with users having the same demographic profile. Essentially, a user is able to determine what is popular with other users "like me" in real time.
The collected information can also be integrated with hierarchical navigation "maps". Such maps generally indicate pages which are linked to the one the user is on, pages linked by the linked pages, etc. According to the invention, such a navigation map includes indications about how many users are presently at the neighboring pages. Preferably, the user can customize and/or filter the map so that it shows different levels of depth, e.g., so that it shows only those pages with active users or users having certain characteristics, only particular information about certain pages, etc.
According to another aspect of the invention, the system provides for "people based navigation." As an extension of the link map, the system can generate a list of pages which are related to the one a user is presently viewing. Unlike conventional subject-based sorting, the system according to the present invention considers the demographic profile of various users to determine which sites the present user is most likely to be interested in. For example, in response to such a query, the system can identify other sites which have been or are presently popular with users having similar profiles to the querying user. The site usage information can also be compiled to determine popular "surf patterns originating from a particular page. The patterns can be used to identify the most popular next destination(s) for users, further focused according to demographic information. The surf patterns can also be used to generate information about related sites and their relative popularity according to user type. According to yet a further aspect of the invention, users can initiate chat sessions with other users who are viewing the same page or another page in the same site, even if the ID of the other users is not known in advance. This is possible because the presently disclosed system maintains real-time usage information about the web sites and users.
Once a user has identified one or more target users they wish to chat with, e.g., as a result of executing an appropriate query, a chat session can be initiated. Before requesting a chat session, the user may view the profile of the target users. As with querying, preferably, a user is discouraged from being provided with more information about the target users then they have entered themselves. The user may also designate that a requested chat session be public, semi-public or private. If the chat session is public, then the session will be visible to other users visiting the web site, and such users may join the chat. If the chat session is private, then the session will not be visible to users other than the one who requested initiation of the chat or those users that were invited by the requestor. If the chat session is semi-public, then only users with predetermined user profiles that conespond in some way to the participants in the chat session may view or participate in the semi-public chat session.
In the prefened embodiment, when a user attempts to initiate a chat session with another user, the targeted user is provided with the profile of the initiating user and, based on the provided information, can reject the proffered chat session (explicitly or by simply ignoring the request), accept the chat, or request more information about the initiating user.
A variety of different chat or instant-messaging technologies can be used, as will be apparent to one of skill in the art. In one embodiment, a user provides a local nick-name and/or a graphical image, such as a picture of a face, which will be associated with their profile. Optionally, a default nick-name and graphical image will be assigned by the system if the user so chooses. When a chat is initiated, a local nick-name and graphical image may be associated with each user during the dialog.
Furthermore, while participating in a chat session, a user may enter lines of text for display to other members of the chat session, may "surf to other web sites while remaining in the chat session and may also send private messages which are visible only to a designated user or users within the chat session, regardless of whether the chat session is private, semi-public or public.
According to yet a further aspect of the invention, a user can elect to be "invisible" to other users by selecting an appropriate system option. Although data about invisible users will still be gathered and processed by the central server for analysis and review by site owners to gauge popularity of the web site, the information, except for the number of invisible users of a web site, will not be provided to other users. This is to ensure that the page usage information and query results provided to users are not misinterpreted. The number of invisible users who are present at a page is preferably indicated as part of the page usage information. According to the invention, usage tracking functionality and various other functions are provided by augmenting the browser system with an additional stand-alone user application. Fig.2A is flowchart illustrating the basic operation of the client-side user software. When the software is first installed or operated, the user participates in a registration process. (Step 20). During this process, demographic information is entered. Preferably, the user information entered during registration is sufficient to generate a demographic profile which can be viewed by others while also preserving the user's privacy and anonymity. Such information includes one or more attributes, such as the user's age, gender, geographical origin, fields of interest, occupation, family status, nickname, e-mail address, etc. Preferably, the user is required to provide an age-range, gender, and origin while the other attributes of the profile are optional. A more detailed description of a prefened registration process 20 is discussed further below in conjunction with Fig. 2C. The profile information entered by the user is both stored locally and on the central system 10. Support for multiple user profiles on a single computer system can also be provided.
The program then interacts with the browser software to determine when the user accesses a new URL. The program also determines when a browser becomes active, such as restoring the browser after it has been minimized or closed. When a new URL is accessed by the user or a browser has been activated or re-activated (step 22), the new URL as well as certain user information is transmitted to the central server. (Step 24). The additional information can include a browser number (or other unique indication of the user's browser that is being tracked), the active time spent on the previous URL, whether this is the first visit of this user in the URL on the calendar day, and whether the access to the page was made by selecting site information provided by the present application program, or through another means (i.e., a link in the viewed page). As discussed in more detail below, this information is logged by the central server and used to determine how many users are accessing a given web page at a particular time.
Preferably, the URL and user data is transmitted as a message using User Datagram Protocol ("UDP"). UDP does not require a separate Internet socket connection and operates independently of any earlier exchanges between source and destination computers. As a result, the UDP process requires a relatively small software driver, is efficient, and requires very little additional overhead.
In response to receiving the URL and user information, the central server returns a response containing information about the particular URL page the user has accessed, such as the number of other users which are currently viewing the URL, etc., by using a UDP message. Various other types of information can be returned in accordance with bandwidth considerations, user preferences, etc., such as the number of users which are not in an "invisible" status, the number of invisible users in the page, the number of notes left in the page, the number of users in the site which are not invisible, and the number of invisible users of the site. The received information is displayed to the user, preferably in a graphical format (step 28), by the client software, preferably without interaction with the browser. When a new URL is accessed, one or more timers, such as a URL timer and an
Active Page timer, are also started (step 26). The URL timer runs for as long as the user is accessing the particular URL. The Active Page timer is used to determine how much of this access time the page is active, as opposed to being minimized or placed in the background while another page is viewed in a separate browser window or the user switches to another program, and thus runs only when the particular URL page is active.
One method of determining whether a URL is active on the user's computer is to determine whether the user is pointing to the page with an input device, such as a mouse, or by querying the operating system and trapping the "focus gained" and "focus lost" events. Various other techniques can be used, as is known to one of skill in the art. In addition, the timers do not need to be discretely running clocks, but can also be implemented by recording appropriate start and end time-stamps and then calculating the time difference.
At step 30, the system continuously monitors whether an active status of the web page cunently being viewed changes (e.g. whether the user switches to a new URL or opens a new browser window and views a different page). When the active status of a cunent page does not change, but the user opens a new browser window, the process continues directly to step 34, discussed below. However, when the active status of the cunent web page changes, the process first completes step 32 wherein the system toggles the active page timer by, for example, turning off the timer for the previously viewed page and beginning a timing of the access to the newly accessed web page. In the alternative, at step 32, the active page time may simply be turned off if the user closes all open browsers.
After step 32, the system determines whether a new URL has been accessed (step 34). If so, the process returns to step 24 above, and if not (e.g. when the user simply switches to a new page within the same web site), the process returns to step 30 to continue monitoring changes in the active status of the web page being viewed by the user. Advantageously, the client side timing eliminates many of the problems associated with monitoring site usage to determine the actual time a user spends at a given web site or page. In particular, because the access time is measured at the user's system, the accuracy of the measurement is unaffected by the use of proxy servers which intercept user queries to popular web sites and redirect them to local copies, thus preventing the queries from reaching the original site and being recorded. In addition, client side monitoring can compensate for time when an Internet browser is opened to a web site but the user is doing something else, such as working in a separate program or using a different browser window. According to the invention, URL and timing information from a large number of users is constantly being transmitted to the central server. This information is logged and analyzed to generate usage statistics across the universe of system users. Real-time information is maintained in memory, e.g., in hash tables. Statistical analysis of the data is performed offline. The real-time and statistical usage information can be utilized in a variety of ways. The statistical information generated can include information about the number and type of users cunently accessing a particular page, as well as the number and types of users accessing the page over various time periods. The information is preferably stored in a manner which permits access to usage information in the aggregate and broken down by user profile, as well as over various historical time periods, ranging from near-instantaneous to periods of days, months, and longer. The information may be maintained on either a page basis or site basis.
These processes and features are discussed in further detail below.
Turning now to Fig. 2B, therein is depicted the internal software components preferably stored by a user computer 14 in a data store 18. For purposes of simplicity, the remaining internal hardware components of user computer 14 are not shown. However, components such as a processor, random-access and read-only memory, a display, input ports, output ports and a plurality of known input and output devices will be readily understood to be present by those of ordinary skill in the art.
Internal software components of user computer 14 include a standard Internet browser 40 and client-side software components 41. Internet browser 40 may be any standard Internet browser software package, such as INTERNET EXPLORER, or equivalent browser software used for viewing web sites and web pages on the Internet. Client-side software components 41 include a browser tracking process module 42, an Internet connection detection module 44 and a main process module 46, each operative to enable computer 14 to perform substantially all the client-side functions of the instant invention as described herein. Browser tracking module 42 operates to store data within data store 18. Module
42 allow computer 14 to track various browsers 40 or multiple windows of the same browser 40 running on computer 14. Browser tracking module 42, in particular, monitors (i) the minimizing and restoring of a browser window, (ii) an opening and closing of a browser application 40, (iii) a user input of a new active URL in the browser 40 and/or (iv) a measure of a total time associated with each of these events. This information is reported to server 10 at predetermined intervals through communication with main process module 46, which in turn, transmits such information over network 16. Internet connection detection module 44 is operative to detect the launch of either
Internet browser 40 or new windows of browser 40. Upon detection of a launch, Internet connection detection module 44 activates main process module 46.
Main process module 46 contains several sub-modules operative to allow computer 14 to perform the functions of the instant invention. Main process module 46 preferably contains central server communication sub-module 48, graphical user interface sub- module 52, peer-to-peer communication sub-module 56, browser interface sub-module 50, "radar" graphical user interface sub-module 54 and communication manager sub-module 58. Server communication sub-module 48 manages data interchanged between sub-modules 50, 52 and 54 of user computer 14 and server 10 which is transmitted over network 16. Browser interface sub-module 50 coordinates data between main process module 46 and browser tracking module 42. Graphical user interface sub-module 52 presents a series of displays and updates for such displays with which a user may interact (commonly referred to as a graphical user interface (GUI)). Sub-module 52 further coordinates the transfer of data received from server 10 to be displayed to a user on computer 14. Sub-module 52 further coordinates the transfer of data received from the user through the GUI to be transmitted to server 10.
Radar graphical user interface module 54 generates a graphical, e.g., circular screen on which, when a user moves from one URL address to another, the new URL name is displayed. In addition, an animation of a turning radar beam is shown within the circular display. Also, one or more dots (preferably in the appearance of stars) are displayed in the circular screen, with each dot representing one or more users who are accessing the particular web site associated with the URL address.
Peer-to-peer communication sub-module 56 controls the transfer of data between main process module 46 and a computer 12, such as a web host, in operative connection with user computer 14. Configuration manager sub-module 58 maintains user configurations such as user profile information and user preferences.
Refening now to Fig. 2C, therein is depicted a prefened user registration process 20 by which a user may register him- or herself with an operator of server 10 for purposes of using the instant invention. After installing the software of the instant invention on computer 14, a user is presented with an opening screen containing registration information (step 60). Next, the software displays a standard terms and conditions-of-use screen for acknowledgment by the user (step 62). After the terms and conditions of use have been acknowledged by the user, a user information screen is presented (step 64). On this screen, the user may enter basic information such as their age, gender, geographic location, and optionally, a nickname, a file containing the user's image and the user's e-mail address (step 66). The user is then prompted to input several fields of interest relating to the user's profession, hobbies, social clubs the user belongs to and the like (step 68). Additional personal information may optionally be entered by the user such as languages spoken, zodiac sign, occupation and marital status (step 70). This information is then transmitted from user computer 14 through network 16 to server 10 for storage (step 72).
Upon completion of the registration process, the user is allowed to access the functions of the software presented in the instant invention.
Turning now to Fig.2D, therein is depicted an exemplary flow chart of the process 71 performed by the client-side software of the instant invention. Process 71 begins when a user computer 14 logs in to server 10 upon detection of the user accessing the Internet (step 72).
Next, server 10 transmits information, such as a status of the user's buddy list, messages, advertisements and the like, to user computer 14 for display to the user (step 74). Client-side software then waits for a new event, such as a communication event from the server, a user generated event or a browser event (step 76). Upon detection of a communication event, process 71 proceeds to step 78 wherein the user computer 14 determines the type of communication event.
If the communication event is a request from a second user to chat or communicate with the user, an indication of such is transmitted to user computer 14 and the user is notified by, for example, a display sign or tone (step 78a). After such notification, process 71 returns to step 76 and waits for a new event.
If the communication event is a new set of status information for the user's buddy list, such information is updated and displayed on user computer 14 (step 78b). After this, process 71 returns to step 76 and waits for a new event.
If the communication event is a new message or advertisement, it is displayed on and stored in user computer 14 (step 78c). After this, process 71 returns to step 76 and waits for a new event.
Upon detection of a new user event, process 71 continues from step 76 to step 80 wherein user computer 14 determines what type of user event has occurred. If the user has asked to change his/her user profile, process 71 continues to step 80a. The updated information is input and then transmitted to server 10 (step 80a- 1). Then the information is stored both locally on user computer 14 and in a user database of server 10 (step 80a-2), after which process 71 returns to step 76. If the user has submitted a query to find suitable chat partners, process 71 continues to step 80b. The request is transmitted to server 10 (step 80b- 1). Server 10 then determines results for the query (step 80b-2) and the results are displayed to the user (step 80b-2), after which process 71 returns to step 76.
If the user has submitted a request to communicate with a second user, process 71 continues to step 80c. The request is transmitted to server 10 (step 80c- 1). Then the chat session is established (step 80c-2), after which process 71 returns to step 76. It should be noted that the chat session, as well as other means of communication (e.g. file transfer and URL transfer) is preferably established directly between the two users without involvement of the web server which the two users are visiting. If the user has submitted a query for a list of hot pages relating to a particular subject, process 71 continues to step 80d. The query is transmitted to server 10 (step 80d-l). Server 10 then determines the results for this query (discussed further below in conjunction with Fig. 6b) and transmits the results to user computer 14 which displays them to the user (step 80d- 2), after which process 71 returns to step 76. If the user has submitted a request for popularity statistics, process 71 continues to step 80e. The request is transmitted to server 10 (step 80e-l ). The results are then determined, transmitted to user computer 14 and displayed to the user (step 80e-2), after which process 71 returns to step 76.
Upon detection of a browser event, process 71 continues from step 76 to step 82. If the active browser is changed, process 71 proceed to step 82a. A timer measuring the amount of time that the old browser was active is stopped and a new timer is initiated for the new browser (step 82a- 1). A radar of possible jump sites from the page viewed in the new browser is displayed to the user in the new browser window (step 82a-2). A determination is then made regarding whether usage information displayed for the URL displayed in the new browser is too old (step 82a-3). If not, process 71 returns to step 76. If so, a request for updated page statistics is sent to the server (step 82a-4). Process 71 then continues to step 82b-5 where updated statistics are received from server 10 and displayed to the user. After this, process 71 returns to step 76. If the browser event detected is a new browser being opened, process 71 continues to step 82b. An identifier of the new browser is transmitted to server 10 to be added to the browser list stored therein (step 82b-l). A radar of possible jump sites from the page viewed in the new browser is displayed to the user in the new browser window (step 82b-2). A timer measuring the amount of time that the old browser was active is stopped and a new timer is activated for measuring the amount of time for which the new browser is active (step 82b-3). The position of the browser (e.g. the URL being displayed) is transmitted to server 10 (step 82b- 4). Process 71 then continues to step 82b-5 where updated statistics are received from server 10 and displayed to the user. After this, process 71 returns to step 76. If the browser event is a change of URL being displayed in the browser then process 71 continues to step 82c. A radar of possible jump sites from the new page being viewed (step 82b-2). A timer measuring the amount of time that the old URL was active is stopped and a new timer is activated for measuring the amount of time for which the new page is actively being viewed (step 82b-3). The new URL being displayed is transmitted to server 10 (step 82b- 4). Process 71 then continues to step 82b-5 where updated page statistics are received from server 10 and displayed to the user. After this, process 71 returns to step 76.
Turning now to Fig. 3, software components of server 10 which carry out the functions of the instant invention are depicted in a block diagram format. Server 10, as described previously may be one or more servers, such as the SUN ENTERPRISE 3500 server, in communication with each other and accessible over a network 16, such as the Internet. Server
10 is further in communication with a data store 11 which may be one or more high capacity data storage devices such as the SUN A-3500. Data store 11 is operative to store database 11a containing user information, page directories, a candidate table for new pages to be added to the directory, and the like. Data store 11 is further operative to store data files l ib containing a summary of user visits, a page summary for pages in the directory, and the like.
Server 10 is preferably an interconnected series of servers for performing specific functions related to the instant invention. For example, server 10 may include an on-line server 10a for handling information to be sent and received over the network 16, an offline server 10b for receiving, processing and storing information handled by on-line server 10a, and a statistics query server 10c for handling queries received from users. Other equivalent configurations of servers may be used.
Online server 10a includes a plurality of software modules lOal through 10a7. For example, communication module 10a! allows server 10a to coordinate information to be transmitted or received over network 16. Intra-server communication module 10a2 allows online server 10a to coordinate data transfened between itself and the remaining servers. Memory hash maps 10a3 store information used in accordance with the present invention such as basic profile information submitted by each user (10a3-l), dynamic user information such as cunent URL position (10a3-2), query caches and indices (10a3-3), visitors for each page in the directory
(10a3-4), visitors of non-catalogued pages (10a3-5) and site counters (10a3-6) for each tracked web site. Server 10a further contains chat query handlers 10a4 for processing user chat queries, hot pages query handlers 10a5 for processing user hot pages queries, position update handlers 10a6 for updating each user's position on the Internet, and user information handlers 10a7 for processing new user information submitted by a user.
Offline server 10b preferably includes a plurality of software modules lObl through 10b3 for processing offline functions. Communication module lObl allows offline server 10b to coordinate data transfened between itself and the remaining servers. User position update module 10b2 coordinates historical user position data for storage in data store 11. Such data may include aggregate data for pages in the directory 10b3 which may be buffered in page aggregation buffer 10b5 prior to storage in data store 11. The data may further include candidate pages that may be catalogued in the directory 10b6 and user visit information which may be stored in user visit buffer 10b7 prior to storage in data store 11. Data processing module 10b5 retrieves, processes and returns data in data store 11 in accordance with the present invention. Statistics query server 10c contains a plurality of software modules 10cl-10c4 for processing statistics queries received from users. Communication module lOcl allows server 10c to coordinate queries and results to be transmitted or received over network 16. Statistics query module 10c2 processes any received statistics queries. Frequent queries cache 10c3 stores popular queries and results which may be transmitted to a user in response to any query which is similar to a stored query and in which the results are not too old. Statistics database 10c4 contains further processed statistics which may be accessed by a user.
One feature of the present invention includes the ability to track and maintain realtime statistics regarding visitors to web sites on the Internet. Accordingly, and refening to Fig. 6a, therein is depicted an on-line position update transaction process 84 performed by on-line server 10a. Process 84 tracks a user's cunent position on the Internet and deletes information relating to the user' s previous position. Process 84 begins at step 84- 1 , where after a change in user position has been detected, server 10a decrements the visitors count of the previous page (step 84- la), deletes the user from the visitors list for the previous page (step 84- lb) and sends a log message to off-line server 1 Ob including a total time the user was logged on at the previous page (step 84- lc).
Next, at step 84-2, server 10a updates the stored user location to reflect the new page being visited (step 84-2a), determines whether the new page is in the directory (step 84-2b), increments the visitors counter for the new page and/or site (step 84-2c) and adds the user to the visitors list for that page (step 84-2d).
A new message is then prepared and sent to user computer 14 for display via GUI manager 52 (step 84-3). Server 10 will compile information for the message, including an indication of the number of visitors at the new page and the new page's site (step 84-3a). In addition, server 10 will determine whether any of the users assigned to the cunent user's "buddy list" have changed their status (e.g. become active or inactive) (step 84-3b). The compiled information is then transmitted to user computer 14 (step 84-3c).
A further feature of the present invention allows a user to submit queries for finding sites based on subject matter. The query may include additional requirements such as a popularity level, whether users of the same demographics have visited this site, etc. Referring now to Fig. 6b, therein is depicted an exemplary process 86 for responding to a user query regarding popular web sites. Process 86 begins when a query is received from user computer 14. Server 10, upon receipt of the query, determines whether the query profile is already located in the query cache 10a3-3 (step 86-1). If a substantially similar query is found, server 10 determines whether the results for the stored query were calculated within a predetermined amount of time
(e.g., the results are not too old) and if so, sends the same results to user computer 14 (step 86- 1 a). If both these conditions are not met, however, server 10 then searches the directory for pages meeting the query profile. When results for the query have been generated, the results and the time of the search are stored in query cache 10a3-3. These results are then transmitted to user computer 14 (step 86- 1 b).
Should the query include a specific request for only those pages not listed in the directory, process 86 continues to step 86-2 where server 10 will scan non-directory pages visitors' hash map 10a3 -5 to locate the most popular non-catalogued pages that conespond to the subject of the query. The software of the present invention is contemplated to include a feature whereby a user may chat with other users meeting a particular set of requirements, or with other users visiting the same web page. Refening now to Fig. 6c, therein is disclosed an exemplary process 88 for responding to a request from user computer 14 to locate suitable "chat partners." At step 88a, server 10 receives from user computer 14 a set of prefened parameters for other users to chat with, including fields of interest, age, gender, profession, and the like. Then, at step 88b, server 10 selects a predetermined number of other users, in order of the number of criteria matching the criteria sent by user computer 14, and transmits the results to user computer 14. User information may be updated at predetermined time intervals or after a predetermined number of log-ins by the user. Accordingly, Fig. 6d depicts a process 89 for updating stored user parameters. The process begins when server 10 performs a validity check for a user, for example, by checking whether the user is cunently logged in (step 90). If so, server 10 remotely accesses the user's details stored in user computer 14 (step 92) and updates the stored profile for the user in the user information hash maps 10a3- 1 (step 94). Next, server
10 determines whether the updated user information includes additional buddy list members (Step 96). If not, the process 89 continues to step 98 below. If so, process 89 continues to step 97 where server 10 determines the status of the additional users listed in the new buddy list and transmits the information to user computer 14, after which process 89 continues to step 98. At step 98, server 10 transmits a notification to user computer 14 that the updated user parameters were successfully received and stored. After step 98, process 89 resets so that it may update information for further users.
The UDP protocol and the processes described above are further useful to allow a user, while online, to monitor usage of a web site designated by the user as a homepage, even when the user is not visiting the homepage. According to this aspect of the invention, a user may designate a particular web site as the user's home page. This designation is preferably made via the client-side software and stored by central server 10. After a designation has been made, the user may further select a preference as to whether the homepage monitor runs automatically with the client-side software or must be initiated manually by the user. In either case, when the homepage monitor is active, usage information such as the number of users (both visible and invisible) visiting the homepage and the number of virtual notes posted to the homepage may be presented to the user by the central server. Such usage information is preferably stored in a database, in the manner described in the foregoing processes.
Preferably also, the homepage monitor appears as a separate window on the user's computer. The usage data regarding the homepage is displayed in this window either graphically or textually. It may be presented graphically by, for example, displaying one icon which indicates a first numerical range of users visiting the site and a second icon conesponding to a second range of users. Alternatively, the data may be presented in textual format, for example, "There are cunently 24 users visiting this web site."
Although the virtual community of users contemplated by one embodiment of the present invention has been presented above as a single community of users, the community may be divided up into several sub-communities, also refened to as co-branded or sponsored communities. Each user may be further identified by the sub-community to which he belongs.
The system as a whole or any sub-community may be sponsored by one or more parties who pay for the sponsorship in exchange for presenting its members with information, such as advertising information or the like. Revenues generated from such activities may be shared by operators of the system and other sponsors in any known manner. While the invention has been particularly shown and described with reference to prefened embodiments thereof, it will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention.

Claims

WE CLAIM:
1. A method for monitoring Internet usage by a user at a terminal, comprising the steps of: detecting an access by the user to a new web site having a URL; determining a first time interval between the detected access to the new web site and a detected access to a previous web site; and sending said first time interval and said URL to a predefined Internet address.
2. The method of claim 1, further comprising the step of: determining a second time interval which indicates a period of time during which the user actively accessed said previous web site; said step of sending further including the step of transmitting said second time interval to said predefined Internet address.
3. The method of claim 2, further comprising the steps of: receiving user registration information; and storing said user registration information at said terminal; said step of sending further including the step of transmitting at least some of said user registration information to said predefined Internet address.
4. The method of claim 3, further comprising the steps of: compiling the user registration information in a central server; and storing the user registration information in real time memory in said central server.
5. The method of claim 4, wherein: said real-time memory is one of dynamic memory-based hash tables and disk-based log files.
6. The method of claim 4, further comprising the steps of : processing the user registration information to determine current "hot" Internet sites; and processing the user registration information to determine historically popular sites.
7. The method of claim 6, further comprising the step of: presenting the processed user registration information to said user; said step of presenting further including the step of displaying a histogram on a user display screen, and integrating said processed user registration information with one of link maps, directory information and other navigation tools.
8. The method of claim 4, further comprising the steps of: querying the central server to determine whether other users are cunently viewing at least one of a same web page and web site; and providing a number and profile of the other users, if the other users are cunently viewing at least one of the same web page and web site.
9. The method of claim 4, further comprising the step of: upon said user entering at least one of the new web page and web site, automatically providing to said user information regarding other users which access at least one of a same web page and web site as the user.
10. The method of claim 9, further comprising the step of: said user communicating with at least one other user accessing at least one of the same web page and web site.
11. The method of claim 9, further comprising the step of: said user initiating a real-time chat with other site visitors.
12. The method of claim 8, further comprising the step of: querying the central server to identify prospective chat targets.
13. The method of claim 8, further comprising the steps of: requiring the user to enter additional information; and querying the central server to identify prospective chat targets.
14. The method of claim 13, further comprising the steps of: utilizing the additional information to build user profiles and identify one of compatible and selected chat targets; and during chat initiation, presenting the additional information to contacted users to provide information regarding an initiating user.
15. The method of claim 14, wherein the additional information is at least one of areas of interest and profession.
16. The method of claim 1 , further comprising the step of: leaving at least one note in a web page.
17. The method of claim 16, further comprising the steps of: providing a notification to the user that at least one note exists on the web page when another user visits the web page; and communicating with a note owner.
18. The method of claim 4, further comprising the steps of: initiating a search for others users by executing a dynamic search based on demographic search parameters; identifying only users which match the demographic search parameters; and communicating with the other users which match the demographic search parameters.
19. The method of claim 18, further comprising the step of: processing demographic search parameters of matching users to generate usage profiles of the web site and web page based on biographical information of the matching users.
20. The method of claim 19, further comprising the step of: providing the usage profiles to third parties.
21. The method of claim 20, wherein the third parties are one of advertisers, users and site owners and operators.
22. The method of claim 20, wherein the usage profiles include a number, a time, an active duration and profiles of users who have visited at least one of the web site and web page.
23. The method of claim 8, further comprising the step of: generating a list of web pages which are related to the web page which the user is presently viewing; and presenting the list of related web pages to the user.
24. The method of claim 4, further comprising the step of: compiling popular "surf patterns which originate from a particular web page.
25. The method of claim 24, further comprising the step of: utilizing the popular "surf patterns to identify next web page destinations which are most popular.
26. The method of claim 25, wherein the next web page destinations which are most popular are focused according to demographic information.
27. A method for determining Internet usage information from a plurality of Internet users, comprising the steps of: receiving Internet usage messages containing usage data indicating a new URL and timing information indicating a duration of access to a prior URL from said plurality of users, receipt of said message indicating that a particular user has accessed said new URL; logging said usage data in a database; analyzing said logged usage data to generate said Internet usage statistics.
28. The method of claim 27, further comprising the step of: providing a user software program to augment each said user's Internet browser, said software configured to continuously: detect an access by the user to a new web site; determine a first time interval between the detected access to the new web site and a detected access to a previous web site, said previous web site having a URL; and sending usage messages including said first time interval and said URL to said central server.
29. The method of claim 28, wherein: each said user has a user profile and a unique ID; said usage data further including the ID associated with the particular user; and said analyzing step comprises the step of identifying web pages which are popular with users having a profile matching particular characteristics.
30. The method of claim 29, wherein said analyzing step is performed in response to a user request including said particular characteristics.
31. The method of claim 27, further comprising the steps of: querying the database to determine whether the plurality of users are cunently viewing at least one of a same web page and web site; and providing a number and profile of the plurality of users, if the plurality of users are cunently viewing at least one of the same web page and web site.
32. The method of claim 27, further comprising the step of : upon each user entering at least one of the new web page and web site, automatically providing to said user information regarding other users which access at least one of a same web page and web site as the user.
33. The method of claim 32, further comprising the step of: each user communicating with at least one other user which is accessing at least one of the same web page and web site.
34. The method of claim 32, further comprising the step of: initiating a real-time chat with at least one other site visitor.
35. A method for determining popular web sites in real time comprising the steps of: providing a plurality of visitor counters, each said usage counters associated with a particular URL; receiving Internet usage messages containing usage data indicating a new URL from a plurality of Internet users, receipt of said usage message indicating that a particular user is no longer accessing a prior URL; upon receipt of a usage message, incrementing the visitor counter associated with said new URL and decrementing the visitor counter associated with said prior URL; and selecting the visitor counters having the largest values in said plurality of usage counters; and generating a list of the URLs associated with said selected visitor counters.
36. The method of claim 35, further comprising the steps of: upon receipt of said usage message from said particular user, generating a reply message indicating the value of the visitor counter associated with said new URL; and sending the reply message to said particular user.
37. The method of claim 35, further comprising the steps of: upon receipt of a usage message from said particular user, generating a navigation map indicating destination URLs linked by a web page located at said new URL; adding to the navigation map the value of the visitor counter associated with each linked destination URL; and providing said map to said particular user.
38. A method for facilitating communication between users concunently accessing the same web site, comprising the steps of: providing a plurality of visitor lists, each said visitor list associated with a particular URL; receiving Internet usage messages containing usage data including a new URL and the ID associated with said particular user from a plurality of Internet users having a user profile and a unique ID, receipt of said usage message indicating that a particular user is no longer accessing a prior URL; upon receipt of a usage message from a particular user, adding the user ID in said message to the visitor list associated with said new URL and deleting the user ID in said message from the visitor list associated with said prior URL; receiving a request from said particular user to initiate communication with another user concunently accessing said new URL and having a profile meeting specified characteristics; filtering the contents of the visitor list associated with said new URL to extract matching user IDs associated with users having a profile matching said specified characteristics; presenting a list of said matching user IDs to said particular user; receiving from said particular user a selection of a target user from said list; and initiating a chat session between said particular user and said target user.
39. The method of claim 38, further comprising the steps of: informing said target user that said particular user is initiating a communication; and permitting said target user to select from at least one of accepting the communication, rejecting the communication, and requesting information about the particular user.
40. A method for facilitating people-based navigation of Internet web sites, comprising the steps of: receiving Internet usage messages from a plurality of Internet users having a user profile, each said message from a particular user containing usage data which includes a particular web site accessed by said particular user and the profile associated with said particular user; logging said usage data in a database; receiving a request from a requesting user for the identification of web pages related to a specific web page; retrieving the profile of the requesting user; analyzing said logged usage data to identify additional web sites popular with other users having profiles similar to the profile of the requesting user; and returning a list of said identified additional web sites to said requesting user.
41. The method of claim 40, wherein the specific web page is a page being accessed by the requesting user.
42. A method for determining surf patterns of Internet users, comprising the steps of: receiving Internet usage messages from a plurality of Internet users having a unique ID, each said message from a particular user containing usage data indicating a new web site accessed by the particular user and the ID associated with said particular user, receipt of said usage message indicating that the particular user is no longer accessing a prior web site; logging said usage data in a database; and analyzing the usage data for a particular prior web site to identify all new web sites accessed from said particular prior web site.
43. The method of claim 42, further comprising the steps of: identifying the new web sites most frequently accessed from said particular prior web site in response to a user request; and providing a list of identified new web sites to said user.
44. The method of claim 42, wherein: each said user has a user profile; and said analyzing step comprises the step of analyzing the usage data for a particular prior web site to identify all new web sites accessed from said particular prior web site by users having a profile matching specified characteristics.
45. The method of claim 42, wherein: each said user has a user profile; and said analyzing step further comprises the step of sorting the identified new web sites in accordance with their relative popularity according to specific user profiles.
46. A method for facilitating a chat session between a first user and a second user, both visiting a first web server, the method comprising: receiving, from the first user, a first user ID conesponding to the first user and an address of the first web server; receiving, from the second user, a second user ID conesponding to the second user and the address of the first web server; providing, to the first user, at least an indication of the second user ID; receiving, from the first user, a request to open one of a public chat session, a semi-public chat session and a private chat session with the second user; transmitting, to the second user, an indication that the first user has requested one of the public chat session, the semi-public chat session and the private chat session; and receiving, from the second user, an acceptance to enter the chat session designated by the first user.
47. The method of claim 46, wherein the chat session is a public chat session and wherein the chat session is visible to other users.
48. The method of claim 46, wherein the chat session is a private chat session and wherein the chat session is not visible to other users.
49. The method of claim 46, wherein the chat session is a semi-public chat session and wherein the chat session is visible only to users having a predetermined user profile.
50. The method of claim 46, wherein the providing step further comprises: receiving, from the first user, a query for information regarding other users visiting the first web site; and searching a user database to determine which users are visiting the first web site.
51. The method of claim 50, wherein the query includes a request for other users having predetermined personal data.
52. A method for providing usage information of a first web site designated by a user, the method comprising: receiving, from the user, a designation of the first web site as a homepage; monitoring usage of the homepage by a plurality of users; and transmitting data representative of the usage to the user when the user is visiting a second web page.
53. The method of claim 52, further comprising: displaying to the user the usage information in a graphical format.
54. The method of claim 52, further comprising: displaying to the user the usage information in a text format.
55. The method of claim 52, wherein the usage information is displayed automatically to the user.
56. The method of claim 52, wherein the usage information is displayed only upon a command generated by the user.
57. A computer-readable medium encoded with processing instructions for implementing a method for facilitating a chat session between a first user and second user, both visiting a first web server, the method comprising: receiving, from the first user, a first user ID conesponding to the first user and an address of the first web server; receiving, from the second user, a second user ID corresponding to the second user and the address of the first web server; providing, to the first user, at least an indication of the second user ID; receiving, from the first user, a request to open one of a public chat session, a semi- public chat session and a private chat session with the second user; transmitting, to the second user, an indication that the first user has requested one of the public chat session, the semi -public chat session and the private chat session; and receiving, from the second user, an acceptance to enter the chat session designated by the first user.
58. An apparatus for facilitating a chat session between a first user and second user, both visiting a first web server, comprising: a processor; and a memory storing processing instructions for controlling the processor, the processor operative with the processing instructions to: receive, from the first user, a first user ID conesponding to the first user and an address of the first web server; receive, from the second user, a second user ID conesponding to the second user and the address of the first web server; provide, to the first user, at least an indication of the second user ID; receive, from the first user, a request to open one of a public chat session, a semi- public chat session and a private chat session with the second user; transmit, to the second user, an indication that the first user has requested one of the public chat session, the semi-public chat session and a private chat session; and receive, from the second user, an acceptance to enter the chat session designated by the first user.
59. A computer-readable medium encoded with processing instructions for implementing a method for providing usage information of a first web site designated by a user, the method comprising: receiving, from the user, a designation of the first web page as a homepage; monitoring usage of the homepage by a plurality of users; and transmitting data representative of the usage to the user when the user is visiting a second web page.
60. An apparatus for providing usage information of a first web site designated by a user, comprising: a processor; and a memory storing processing instructions for controlling the processor, the processor operative with the processing instructions to: receive, from the user, a designation of the first web page as a homepage; monitor usage of the homepage by a plurality of users; and transmit data representative of the usage to the user when the user is visiting a second web page.
61. A method for facilitating a communication between a first user and second user, both visiting a first web server, the method, comprising: receiving, from the first user, a first user ID conesponding to the first user and an address of the first web server; receiving, from the second user, a second user ID conesponding to the second user and the address of the first web server; providing, to the first user, at least an indication of the second user ID; and receiving, from the first user, a request to communicate with the second user.
62. The method of claim 61, further comprising: transmitting, to the second user, an indication that the first user has requested a communication; and receiving, from the second user, an acceptance to receive a communication from the first user.
63. A computer readable medium encoded with processing instructions for performing a method for facilitating a communication between a first user and second user, both visiting a first web server, the method comprising: receiving, from the first user, a first user ID conesponding to the first user and an address of the first web server; receiving, from the second user, a second user ID conesponding to the second user and the address of the first web server; providing, to the first user, at least an indication of the second user ID; and receiving, from the first user, a request to communicate with the second user.
64. An apparatus for facilitating a communication between a first user and second user, both visiting a first web server, the apparatus comprising: a processor; and a memory storing processing instructions for controlling the processor, the processor operative with the processing instructions to: receive, from the first user, a first user ID conesponding to the first user and an address of the first web server; receive, from the second user, a second user ID conesponding to the second user and the address of the first web server; provide, to the first user, at least an indication of the second user ID; receive, from the first user, a request to communicate with the second user; and provide to the second user an address for communicating with the second user.
65. A method for facilitating a chat session between a first user and a second user visiting a first web site, comprising: receiving, from the first user, a first user ID conesponding to the first user, a co-branded community to which the user belongs and an address of a first web site being visited by the first user; receiving, from the second user, a second user ID conesponding to the second user, a second co-branded community to which the second user belongs and the address of the first web server; providing, to the first user, at least an indication of the second user ID and the second co- branded community; receiving, from the first user, a request to open one of a public chat session, a semi-public chat session and a private chat session with the second user; transmitting, to the second user, an indication that the first user has requested one of the public chat session, the semi-public chat session and the private chat session; and receiving, from the second user, an acceptance to enter the chat session designated by the first user.
66. The method of claim 65, wherein the chat session may be continued when at least one of the first user and the second user disconnects from the first web site.
67. The method of claim 65, wherein the providing step further comprises: receiving, from the first user, a query for information regarding other users in a co- branded community visiting the first web site; and searching a user database to determine which users in the co-branded community are visiting the first web site.
68. The method of claim 67, wherein the query includes a request for other users having predetermined personal data including mood data.
PCT/IB2000/000816 1999-06-22 2000-06-20 System and method for processing and presenting internet usage information to facilitate user communications WO2000079396A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
AU52401/00A AU5240100A (en) 1999-06-22 2000-06-20 System and method for processing and presenting internet usage information to facilitate user communications
JP2001505293A JP2003502776A (en) 1999-06-22 2000-06-20 System and method for processing and presenting Internet usage information to facilitate user communication

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US09/338,482 1999-06-22
US09/338,482 US6606657B1 (en) 1999-06-22 1999-06-22 System and method for processing and presenting internet usage information
US42238799A 1999-10-21 1999-10-21
US09/422,387 1999-10-21
US09/477,511 2000-01-04
US09/477,511 US6879994B1 (en) 1999-06-22 2000-01-04 System and method for processing and presenting internet usage information to facilitate user communications

Publications (1)

Publication Number Publication Date
WO2000079396A1 true WO2000079396A1 (en) 2000-12-28

Family

ID=27407275

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IB2000/000816 WO2000079396A1 (en) 1999-06-22 2000-06-20 System and method for processing and presenting internet usage information to facilitate user communications

Country Status (3)

Country Link
JP (1) JP2003502776A (en)
AU (1) AU5240100A (en)
WO (1) WO2000079396A1 (en)

Cited By (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001024092A1 (en) * 1999-09-30 2001-04-05 Wildseed, Ltd. Method and apparatus for on-line chatting
GB2368747A (en) * 2000-10-31 2002-05-08 Daniel Victor Pavin Determining the popularity of a user of a network
GB2376326A (en) * 2001-06-04 2002-12-11 Hewlett Packard Co Peer-to-peer network search popularity statistical information collection
WO2003094436A2 (en) * 2002-05-03 2003-11-13 Eyebees B.V. Methods and apparatus for monitoring a plurality of individuals
US7103609B2 (en) * 2002-10-31 2006-09-05 International Business Machines Corporation System and method for analyzing usage patterns in information aggregates
EP2107761A1 (en) * 2008-03-31 2009-10-07 Sony Corporation Method to determine a subgroup of users
US8706826B2 (en) 2004-12-01 2014-04-22 Bright Sun Technologies Automatically enabling the forwarding of instant messages
US8775538B2 (en) 2003-09-05 2014-07-08 Facebook, Inc. Methods for capturing electronic messages based on capture rules relating to online contexts of users
US8868112B2 (en) 2005-05-11 2014-10-21 Facebook, Inc. Personalized location information for mobile devices
US8874672B2 (en) 2003-03-26 2014-10-28 Facebook, Inc. Identifying and using identities deemed to be known to a user
USRE45254E1 (en) 2002-12-31 2014-11-18 Facebook, Inc. Implicit population of access control lists
US8898239B2 (en) 2004-03-05 2014-11-25 Aol Inc. Passively populating a participant list with known contacts
US8910056B2 (en) 2004-12-20 2014-12-09 Facebook, Inc. Automatic categorization of entries in a contact list
US8918727B2 (en) 2000-07-25 2014-12-23 Facebook, Inc. Video messaging
US8930480B2 (en) 2003-04-02 2015-01-06 Facebook, Inc. Degrees of separation for filtering communications
US8954530B2 (en) 2002-11-18 2015-02-10 Facebook, Inc. Intelligent results related to a character stream
US8959164B2 (en) 2000-05-04 2015-02-17 Facebook, Inc. Tri-state presence indicator
US8965964B1 (en) 2002-11-18 2015-02-24 Facebook, Inc. Managing forwarded electronic messages
US9002949B2 (en) 2004-12-01 2015-04-07 Google Inc. Automatically enabling the forwarding of instant messages
US9043418B2 (en) 2000-05-04 2015-05-26 Facebook, Inc. Systems and methods for instant messaging persons referenced in an electronic message
US9049160B2 (en) 2005-05-11 2015-06-02 Facebook, Inc. Identifying users sharing common characteristics
US9049159B2 (en) 2000-03-17 2015-06-02 Facebook, Inc. Establishing audio communication sessions
US9049569B2 (en) 2004-12-01 2015-06-02 Google Inc. Prohibiting mobile forwarding
US9083661B2 (en) 2001-09-28 2015-07-14 Facebook, Inc. Passive personalization of buddy lists
US9100221B2 (en) 2000-05-04 2015-08-04 Facebook, Inc. Systems for messaging senders and recipients of an electronic message
US9154561B2 (en) 2008-08-28 2015-10-06 Aol Inc. Methods and system for providing location-based communication services
US9160773B2 (en) 2004-12-30 2015-10-13 Aol Inc. Mood-based organization and display of co-user lists
US9185067B1 (en) 1999-12-01 2015-11-10 Facebook, Inc. System and method for analyzing communications
US9203794B2 (en) 2002-11-18 2015-12-01 Facebook, Inc. Systems and methods for reconfiguring electronic messages
US9203879B2 (en) 2000-03-17 2015-12-01 Facebook, Inc. Offline alerts mechanism
US9203647B2 (en) 2002-11-18 2015-12-01 Facebook, Inc. Dynamic online and geographic location of a user
US9246975B2 (en) 2000-03-17 2016-01-26 Facebook, Inc. State change alerts mechanism
CN105376311A (en) * 2015-11-11 2016-03-02 北京北信源软件股份有限公司 Method and device for determining page stay duration based on terminal access
US9319356B2 (en) 2002-11-18 2016-04-19 Facebook, Inc. Message delivery control settings
US9356894B2 (en) 2000-05-04 2016-05-31 Facebook, Inc. Enabled and disabled menu choices based on presence state
US9363213B2 (en) 2000-06-26 2016-06-07 Facebook, Inc. E-mail integrated instant messaging
US9360996B2 (en) 2000-05-04 2016-06-07 Facebook, Inc. Intelligently enabled menu choices based on online presence state in address book
US9461950B2 (en) 2000-05-04 2016-10-04 Facebook, Inc. Providing supplemental contact information corresponding to a referenced individual
US9647872B2 (en) 2002-11-18 2017-05-09 Facebook, Inc. Dynamic identification of other users to an online user
US9667585B2 (en) 2002-11-18 2017-05-30 Facebook, Inc. Central people lists accessible by multiple applications
US9742615B1 (en) 2002-12-31 2017-08-22 Aol Inc. Popularity index
US10021151B2 (en) 2004-03-15 2018-07-10 Oath Inc. Sharing social network information
US10187334B2 (en) 2003-11-26 2019-01-22 Facebook, Inc. User-defined electronic message preferences
US10367860B2 (en) 2004-03-15 2019-07-30 Oath Inc. Social networking permissions

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5905866A (en) * 1996-04-30 1999-05-18 A.I. Soft Corporation Data-update monitoring in communications network
US6023698A (en) * 1996-12-05 2000-02-08 International Business Machines Corporation System and method for transparently registering and updating information over the internet
US6064981A (en) * 1999-06-17 2000-05-16 Barni; Neil A. Method for online display and negotiation of cargo rates

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5905866A (en) * 1996-04-30 1999-05-18 A.I. Soft Corporation Data-update monitoring in communications network
US6023698A (en) * 1996-12-05 2000-02-08 International Business Machines Corporation System and method for transparently registering and updating information over the internet
US6064981A (en) * 1999-06-17 2000-05-16 Barni; Neil A. Method for online display and negotiation of cargo rates

Cited By (121)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001024092A1 (en) * 1999-09-30 2001-04-05 Wildseed, Ltd. Method and apparatus for on-line chatting
US9819629B2 (en) 1999-12-01 2017-11-14 Facebook, Inc. System and method for analyzing communications
US9749279B2 (en) 1999-12-01 2017-08-29 Facebook, Inc. System and method for analyzing communications
US9185067B1 (en) 1999-12-01 2015-11-10 Facebook, Inc. System and method for analyzing communications
US9749276B2 (en) 1999-12-01 2017-08-29 Facebook, Inc. System and method for analyzing communications
US9813370B2 (en) 1999-12-01 2017-11-07 Facebook, Inc. System and method for analyzing communications
US9405843B2 (en) 1999-12-01 2016-08-02 Facebook, Inc. System and method for analyzing communications
US9514233B2 (en) 1999-12-01 2016-12-06 Facebook, Inc. System and method for analyzing communications
US9619575B2 (en) 1999-12-01 2017-04-11 Facebook, Inc. System and method for analyzing communications
US9705834B2 (en) 1999-12-01 2017-07-11 Facebook, Inc. System and method for analyzing communications
US9049159B2 (en) 2000-03-17 2015-06-02 Facebook, Inc. Establishing audio communication sessions
US9203879B2 (en) 2000-03-17 2015-12-01 Facebook, Inc. Offline alerts mechanism
US9356891B2 (en) 2000-03-17 2016-05-31 Facebook, Inc. Voice messaging interface
US9736209B2 (en) 2000-03-17 2017-08-15 Facebook, Inc. State change alerts mechanism
US9246975B2 (en) 2000-03-17 2016-01-26 Facebook, Inc. State change alerts mechanism
US9360996B2 (en) 2000-05-04 2016-06-07 Facebook, Inc. Intelligently enabled menu choices based on online presence state in address book
US9043418B2 (en) 2000-05-04 2015-05-26 Facebook, Inc. Systems and methods for instant messaging persons referenced in an electronic message
US9356894B2 (en) 2000-05-04 2016-05-31 Facebook, Inc. Enabled and disabled menu choices based on presence state
US10158588B2 (en) 2000-05-04 2018-12-18 Facebook, Inc. Providing supplemental contact information corresponding to a referenced individual
US10122658B2 (en) 2000-05-04 2018-11-06 Facebook, Inc. System for instant messaging the sender and recipients of an e-mail message
US9621493B2 (en) 2000-05-04 2017-04-11 Facebook, Inc. Providing supplemental information corresponding to a referenced individual
US9531654B2 (en) 2000-05-04 2016-12-27 Facebook, Inc. Adding contacts from a hovering interface
US9100221B2 (en) 2000-05-04 2015-08-04 Facebook, Inc. Systems for messaging senders and recipients of an electronic message
US8959164B2 (en) 2000-05-04 2015-02-17 Facebook, Inc. Tri-state presence indicator
US9461950B2 (en) 2000-05-04 2016-10-04 Facebook, Inc. Providing supplemental contact information corresponding to a referenced individual
US9699122B2 (en) 2000-05-04 2017-07-04 Facebook, Inc. User interfaces for providing supplemental contact information corresponding to a referenced individual
US9363213B2 (en) 2000-06-26 2016-06-07 Facebook, Inc. E-mail integrated instant messaging
US9628431B2 (en) 2000-06-26 2017-04-18 Facebook, Inc. E-mail integrated instant messaging
US10313297B2 (en) 2000-06-26 2019-06-04 Facebook, Inc. E-mail integrated instant messaging
US8918727B2 (en) 2000-07-25 2014-12-23 Facebook, Inc. Video messaging
US9071725B2 (en) 2000-07-25 2015-06-30 Facebook, Inc. Methods and user interfaces for video messaging
US9100538B2 (en) 2000-07-25 2015-08-04 Facebook, Inc. Limited length video messaging
GB2368747B (en) * 2000-10-31 2004-12-29 Daniel Victor Pavin Method and system for determining the popularity of a subject
GB2368747A (en) * 2000-10-31 2002-05-08 Daniel Victor Pavin Determining the popularity of a user of a network
GB2376326B (en) * 2001-06-04 2004-10-13 Hewlett Packard Co Peer-to-peer content popularity
GB2376314A (en) * 2001-06-04 2002-12-11 Hewlett Packard Co Peer-to-peer network search popularity statistical information collection
GB2376326A (en) * 2001-06-04 2002-12-11 Hewlett Packard Co Peer-to-peer network search popularity statistical information collection
US9729476B2 (en) 2001-09-28 2017-08-08 Facebook, Inc. Personalization of recent contacts list
US9083661B2 (en) 2001-09-28 2015-07-14 Facebook, Inc. Passive personalization of buddy lists
WO2003094436A2 (en) * 2002-05-03 2003-11-13 Eyebees B.V. Methods and apparatus for monitoring a plurality of individuals
WO2003094436A3 (en) * 2002-05-03 2004-04-29 Eyebees B V Methods and apparatus for monitoring a plurality of individuals
US7103609B2 (en) * 2002-10-31 2006-09-05 International Business Machines Corporation System and method for analyzing usage patterns in information aggregates
US8954530B2 (en) 2002-11-18 2015-02-10 Facebook, Inc. Intelligent results related to a character stream
US9515977B2 (en) 2002-11-18 2016-12-06 Facebook, Inc. Time based electronic message delivery
US9171064B2 (en) 2002-11-18 2015-10-27 Facebook, Inc. Intelligent community based results related to a character stream
US9769104B2 (en) 2002-11-18 2017-09-19 Facebook, Inc. Methods and system for delivering multiple notifications
US9852126B2 (en) 2002-11-18 2017-12-26 Facebook, Inc. Host-based intelligent results related to a character stream
US9729489B2 (en) 2002-11-18 2017-08-08 Facebook, Inc. Systems and methods for notification management and delivery
US9203794B2 (en) 2002-11-18 2015-12-01 Facebook, Inc. Systems and methods for reconfiguring electronic messages
US9053174B2 (en) 2002-11-18 2015-06-09 Facebook, Inc. Intelligent vendor results related to a character stream
US9894018B2 (en) 2002-11-18 2018-02-13 Facebook, Inc. Electronic messaging using reply telephone numbers
US9203647B2 (en) 2002-11-18 2015-12-01 Facebook, Inc. Dynamic online and geographic location of a user
US10778635B2 (en) 2002-11-18 2020-09-15 Facebook, Inc. People lists
US9667585B2 (en) 2002-11-18 2017-05-30 Facebook, Inc. Central people lists accessible by multiple applications
US9253136B2 (en) 2002-11-18 2016-02-02 Facebook, Inc. Electronic message delivery based on presence information
US9647872B2 (en) 2002-11-18 2017-05-09 Facebook, Inc. Dynamic identification of other users to an online user
US9313046B2 (en) 2002-11-18 2016-04-12 Facebook, Inc. Presenting dynamic location of a user
US9319356B2 (en) 2002-11-18 2016-04-19 Facebook, Inc. Message delivery control settings
US9053173B2 (en) 2002-11-18 2015-06-09 Facebook, Inc. Intelligent results related to a portion of a search query
US9356890B2 (en) 2002-11-18 2016-05-31 Facebook, Inc. Enhanced buddy list using mobile device identifiers
US10033669B2 (en) 2002-11-18 2018-07-24 Facebook, Inc. Managing electronic messages sent to reply telephone numbers
US10389661B2 (en) 2002-11-18 2019-08-20 Facebook, Inc. Managing electronic messages sent to mobile devices associated with electronic messaging accounts
US9047364B2 (en) 2002-11-18 2015-06-02 Facebook, Inc. Intelligent client capability-based results related to a character stream
US9075867B2 (en) 2002-11-18 2015-07-07 Facebook, Inc. Intelligent results using an assistant
US9053175B2 (en) 2002-11-18 2015-06-09 Facebook, Inc. Intelligent results using a spelling correction agent
US8965964B1 (en) 2002-11-18 2015-02-24 Facebook, Inc. Managing forwarded electronic messages
US9075868B2 (en) 2002-11-18 2015-07-07 Facebook, Inc. Intelligent results based on database queries
US9571439B2 (en) 2002-11-18 2017-02-14 Facebook, Inc. Systems and methods for notification delivery
US8954534B2 (en) 2002-11-18 2015-02-10 Facebook, Inc. Host-based intelligent results related to a character stream
US9774560B2 (en) 2002-11-18 2017-09-26 Facebook, Inc. People lists
US9571440B2 (en) 2002-11-18 2017-02-14 Facebook, Inc. Notification archive
US9621376B2 (en) 2002-11-18 2017-04-11 Facebook, Inc. Dynamic location of a subordinate user
US8954531B2 (en) 2002-11-18 2015-02-10 Facebook, Inc. Intelligent messaging label results related to a character stream
US9560000B2 (en) 2002-11-18 2017-01-31 Facebook, Inc. Reconfiguring an electronic message to effect an enhanced notification
USRE48102E1 (en) 2002-12-31 2020-07-14 Facebook, Inc. Implicit population of access control lists
US9742615B1 (en) 2002-12-31 2017-08-22 Aol Inc. Popularity index
USRE45254E1 (en) 2002-12-31 2014-11-18 Facebook, Inc. Implicit population of access control lists
US9516125B2 (en) 2003-03-26 2016-12-06 Facebook, Inc. Identifying and using identities deemed to be known to a user
US9736255B2 (en) 2003-03-26 2017-08-15 Facebook, Inc. Methods of providing access to messages based on degrees of separation
US8874672B2 (en) 2003-03-26 2014-10-28 Facebook, Inc. Identifying and using identities deemed to be known to a user
US9531826B2 (en) 2003-03-26 2016-12-27 Facebook, Inc. Managing electronic messages based on inference scores
US8930480B2 (en) 2003-04-02 2015-01-06 Facebook, Inc. Degrees of separation for filtering communications
US9462046B2 (en) 2003-04-02 2016-10-04 Facebook, Inc. Degrees of separation for handling communications
US9070118B2 (en) 2003-09-05 2015-06-30 Facebook, Inc. Methods for capturing electronic messages based on capture rules relating to user actions regarding received electronic messages
US8775538B2 (en) 2003-09-05 2014-07-08 Facebook, Inc. Methods for capturing electronic messages based on capture rules relating to online contexts of users
US10102504B2 (en) 2003-09-05 2018-10-16 Facebook, Inc. Methods for controlling display of electronic messages captured based on community rankings
US10187334B2 (en) 2003-11-26 2019-01-22 Facebook, Inc. User-defined electronic message preferences
US8918460B2 (en) 2004-03-05 2014-12-23 Facebook, Inc. Organizing entries in participant lists based on communications strengths
US10341289B2 (en) 2004-03-05 2019-07-02 Facebook, Inc. Systems and methods of calculating communications strengths
US10587570B2 (en) 2004-03-05 2020-03-10 Oath Inc. Announcing new users of an electronic communications system to existing users
US8898239B2 (en) 2004-03-05 2014-11-25 Aol Inc. Passively populating a participant list with known contacts
US9948599B2 (en) 2004-03-05 2018-04-17 Oath Inc. Announcing new users of an electronic communications system to existing users
US11356405B2 (en) 2004-03-05 2022-06-07 Verizon Patent And Licensing Inc. Announcing new users of an electronic communications system to existing users
US10021151B2 (en) 2004-03-15 2018-07-10 Oath Inc. Sharing social network information
US11381615B2 (en) 2004-03-15 2022-07-05 Verizon Patent And Licensing Inc. Sharing social network information
US10911502B2 (en) 2004-03-15 2021-02-02 Verizon Media Inc. Sharing social network information
US10367860B2 (en) 2004-03-15 2019-07-30 Oath Inc. Social networking permissions
US9872157B2 (en) 2004-12-01 2018-01-16 Google Inc. Prohibiting mobile forwarding
US9615225B2 (en) 2004-12-01 2017-04-04 Google Inc. Automatically enabling the forwarding of instant messages
US9049569B2 (en) 2004-12-01 2015-06-02 Google Inc. Prohibiting mobile forwarding
US8706826B2 (en) 2004-12-01 2014-04-22 Bright Sun Technologies Automatically enabling the forwarding of instant messages
US9002949B2 (en) 2004-12-01 2015-04-07 Google Inc. Automatically enabling the forwarding of instant messages
US9088879B2 (en) 2004-12-01 2015-07-21 Google Inc. Automatically enabling the forwarding of instant messages
US9510168B2 (en) 2004-12-01 2016-11-29 Google Inc. Prohibiting mobile forwarding
US9560495B2 (en) 2004-12-01 2017-01-31 Google Inc. Automatically enabling the forwarding of instant messages
US9727631B2 (en) 2004-12-20 2017-08-08 Facebook, Inc. Automatic categorization of entries in a contact list
US8910056B2 (en) 2004-12-20 2014-12-09 Facebook, Inc. Automatic categorization of entries in a contact list
US9160773B2 (en) 2004-12-30 2015-10-13 Aol Inc. Mood-based organization and display of co-user lists
US9369411B2 (en) 2005-05-11 2016-06-14 Facebook, Inc. Identifying users sharing common characteristics
US9571975B2 (en) 2005-05-11 2017-02-14 Facebook, Inc. Identifying users of a communications system at commonn geographic locations
US8868112B2 (en) 2005-05-11 2014-10-21 Facebook, Inc. Personalized location information for mobile devices
US9049160B2 (en) 2005-05-11 2015-06-02 Facebook, Inc. Identifying users sharing common characteristics
US9210546B2 (en) 2005-05-11 2015-12-08 Facebook, Inc. Commenting on location information for mobile devices
US9203787B2 (en) 2005-05-11 2015-12-01 Facebook, Inc. Identifying users sharing common characteristics
US9204255B2 (en) 2005-05-11 2015-12-01 Facebook, Inc. Providing a log of location information for a mobile device
US9197999B2 (en) 2005-05-11 2015-11-24 Facebook, Inc. Providing a location identifier for a location with multiple co-users
EP2107761A1 (en) * 2008-03-31 2009-10-07 Sony Corporation Method to determine a subgroup of users
US9154561B2 (en) 2008-08-28 2015-10-06 Aol Inc. Methods and system for providing location-based communication services
US9705996B2 (en) 2008-08-28 2017-07-11 Aol Inc. Methods and system for providing location-based communication services
CN105376311B (en) * 2015-11-11 2018-09-11 北京北信源软件股份有限公司 A kind of page stay time based on terminal access determines method and device
CN105376311A (en) * 2015-11-11 2016-03-02 北京北信源软件股份有限公司 Method and device for determining page stay duration based on terminal access

Also Published As

Publication number Publication date
JP2003502776A (en) 2003-01-21
AU5240100A (en) 2001-01-09

Similar Documents

Publication Publication Date Title
US6879994B1 (en) System and method for processing and presenting internet usage information to facilitate user communications
US6606657B1 (en) System and method for processing and presenting internet usage information
WO2000079396A1 (en) System and method for processing and presenting internet usage information to facilitate user communications
US7620655B2 (en) Method, device and computer program product for identifying visitors of websites
US9391946B2 (en) System and method for enabling identification of network users having similar interests and facilitating communication between them
US8356097B2 (en) Computer program product and method for estimating internet traffic
US8386564B2 (en) Methods for determining a reputation score for a user of a social network
US7136915B2 (en) System for communicating through maps
US8701016B2 (en) Method and system for enhanced web page delivery and visitor tracking
US9178951B2 (en) Hot within my communities
US6745178B1 (en) Internet based method for facilitating networking among persons with similar interests and for facilitating collaborative searching for information
US7957510B2 (en) Notifying network contacts of inquiries
US20080189254A1 (en) Presenting web site analytics
US20020083134A1 (en) Method and system of collaborative browsing
US8638912B2 (en) Method and system for establishing a new account for a user with an online service
US20030093405A1 (en) System and method for searching, finding and contacting dates on the internet in instant messaging networks and/or in other methods that enable immediate finding and creating immediate contact
US20080183745A1 (en) Website analytics
US20030125970A1 (en) Method and system for real time interactive recruitment
EP0944003A1 (en) Notification subsystem
US20050090314A1 (en) Worldwide casino tour promotion and acceptance system and method
WO2008122092A1 (en) System and/or method for evaluating network content
KR100733088B1 (en) Service system of the realtime guidance and conversation offered connecting persons for make sure customer of the website operator
Maybury et al. Awareness of organizational expertise
US8799501B2 (en) System and method for anonymously sharing and scoring information pointers, within a system for harvesting community knowledge
KR20010105546A (en) Real-time events posting and sharing method with very large scaled internet connection

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY CA CH CN CR CU CZ DE DK DM EE ES FI GB GD GE 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 US UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A1

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
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
ENP Entry into the national phase

Ref country code: JP

Ref document number: 2001 505293

Kind code of ref document: A

Format of ref document f/p: F

REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

122 Ep: pct application non-entry in european phase