← Back to Patent Explorer
US6018619A Expired / Lapsed US ⏱️ 0.0 years remaining

Method, system and apparatus for client-side usage tracking of information server systems

Assignee: Microsoft Technology Licensing LLC
•
Filing: 1996-05-24
•
Granted: 2000-01-25
•
Expires: 2016-05-24
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method for tracking usage patterns of users of hyper-media systems, such as the World-Wide Web, that creates a usage log on a user's client computer and periodically transmits the usage log from the user's client machine to a usage tracking server computer to be incorporated in an overall usage log for a given information server computer. Alternatively, proxy server may be connected between a client computer and an information server with the proxy server acting as a client to the information server and creating a usage log of the user's client computer access to the information server computer to be sent to usage tracking computer. Each time a user connects to a Web site, the client computer or proxy server creates a usage log that records all objects retrieved from that particular Web site and other attributes of user processing such as time spent viewing an object, amount of an object viewed, etc. Periodically, upon the occurrence of one of more predefined events that signify the end of a session, computer or proxy server saves the usage log into a single, compressed file and transmits the resulting file to the server. Events that signify the end of a session and trigger the transmission of a usage log from the user's client computer or proxy server computer to the usage tracking server computer may include a predetermined time interval, accessing a predetermined number of objects, application program or operating system shut down, connecting to a different Web site, and/or modem shut down.

Inventors

  • 👤 James E. Allard
  • 👤 David R. Treadwell, III
  • 👤 John F. Ludeman

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-29 00:27
CPC Classifications
H; H04; H04L; H04L41/00; H04L67/00; H04L67/50; H04L67/535; H04L67/56; H04L67/563; H04L69/00; H04L69/30; H04L69/32; H04L69/322; H04L69/329

Claims Analysis

Total Claims: 31
Claim 1
Independent Claim 347 words
In an information server system comprising a network with at least one information server accessed by a plurality of either client systems or proxy servers, each proxy server in turn accessed by a plurality of client systems, and wherein at least some of said proxy servers are non-tracking proxy servers and the other proxy servers are tracking proxy servers, and at least some of the client systems are non-tracking client systems and the other client systems are tracking client systems, a method for tracking at one or more client systems session events resulting from information supplied by the information server in response to requests for information from at least one of the client systems or one of the proxy servers, while maintaining system compatibility with those client systems or proxy servers that do not have tracking ability, the method for tracking comprising the steps of: initiating, by at least one client system or proxy server, a connection request to an information server system, said connection request also signifying whether said client system or proxy server is non-tracking or is capable of tracking given session events; in response to said connection request, returning to said requesting client system or requesting proxy server (i) information requested, (ii) an acknowledgment by said information server system which enables said requesting client system or requesting proxy server to begin tracking said session events if the requesting client system or requesting proxy server is capable of tracking such session events, and (iii) a location of a designated server for receiving tracked session event; in response to said acknowledgment, if said requesting client system or requesting proxy server is a tracking client system, monitoring said session events and generating a client side usage log of the monitored session events, and if said requesting client system or requesting proxy server is non-tracking, then generating a usage log of the monitored session events at the information server system; and thereafter transmitting the usage log that is generated either at the requesting client system or requesting proxy server, or at the information server, to said designated server.
Claim 2
Dependent Claim 347 words
In an information server system comprising a network with at least one information server accessed by a plurality of either client systems or proxy servers, each proxy server in turn accessed by a plurality of client systems, and wherein at least some of said proxy servers are non-tracking proxy servers and the other proxy servers are tracking proxy servers, and at least some of the client systems are non-tracking client systems and the other client systems are tracking client systems, a method for tracking at one or more client systems session events resulting from information supplied by the information server in response to requests for information from at least one of the client systems or one of the proxy servers, while maintaining system compatibility with those client systems or proxy servers that do not have tracking ability, the method for tracking comprising the steps of: initiating, by at least one client system or proxy server, a connection request to an information server system, said connection request also signifying whether said client system or proxy server is non-tracking or is capable of tracking given session events; in response to said connection request, returning to said requesting client system or requesting proxy server (i) information requested, (ii) an acknowledgment by said information server system which enables said requesting client system or requesting proxy server to begin tracking said session events if the requesting client system or requesting proxy server is capable of tracking such session events, and (iii) a location of a designated server for receiving tracked session event; in response to said acknowledgment, if said requesting client system or requesting proxy server is a tracking client system, monitoring said session events and generating a client side usage log of the monitored session events, and if said requesting client system or requesting proxy server is non-tracking, then generating a usage log of the monitored session events at the information server system; and thereafter transmitting the usage log that is generated either at the requesting client system or requesting proxy server, or at the information server, to said designated server.
Claim 3
Dependent Claim 34 words
A method for tracking as recited in claim 1 wherein the generated usage log is transmitted after the client system has been inactive a fixed amount of time with respect to said information server.
Claim 4
Dependent Claim 29 words
A method for tracking as recited in claim 1 wherein the generated usage log is transmitted after the client system has accessed a set number of objects or files.
Claim 5
Dependent Claim 28 words
A method for tracking as recited in claim 1 wherein the generated usage log is transmitted after the client system attempts connection to a different information server system.
Claim 6
Dependent Claim 29 words
A method for tracking as recited in claim 1 wherein the generated usage log includes information regarding a referring link where the client system previously accessed objects or files.
Claim 7
Dependent Claim 26 words
A method for tracking as recited in claim 1 wherein the generated usage log includes information regarding treatment of image data associated with a particular link.
Claim 8
Dependent Claim 31 words
A method for tracking as recited in claim 1 wherein the generated usage log includes information regarding a percentage amount processed by the client system of a particular object or file.
Claim 9
Dependent Claim 32 words
A method for tracking as recited in claim 1 wherein the generated usage log includes information regarding amount of time spent by the client system in accessing a particular object or file.
Claim 10
Dependent Claim 353 words
In an information server system comprising a network with at least one information server accessed by a plurality of either client systems or proxy servers, each proxy server in turn accessed by a plurality of client systems, and wherein at least some of said proxy servers are non-tracking proxy servers and the other proxy servers are tracking proxy servers, and at least some of the client systems are non-tracking client systems and the other client systems are tracking client systems, and wherein tracking is desired for one or more client systems session events resulting from information supplied by the information server in response to requests for information from at least one of the client systems or one of the proxy servers, while maintaining system compatibility with those client systems or proxy servers that do no have tracking ability, a computer program product comprising: a computer readable medium associated with one or more client systems at which the tracking of session events is desired; and computer program code means stored on said computer readable medium, said computer program code means comprising means for performing the desired tracking of said session events comprising: code means for initiating, by at least one client system, a connection request to an information server system, said connection request also signifying whether said requesting client system is a non-tracking or a tracking client system that is capable of tracking given session events; code means for receiving an acknowledgment from said information server system in response to said connection request which (i) enables said requesting client system to begin tracking said session events if the requesting client system is a tracking client system, and (ii) identifies a designated server for receiving tracked session events; code means for monitoring said session events and generating a client side usage log of the monitored session events if the client system is a tracking client system, and for causing the information server to generate a usage log if the client system is a non-tracking client system; and code means for transmitting the client side usage log to said designated server after a session is complete.
Claim 11
Dependent Claim 353 words
In an information server system comprising a network with at least one information server accessed by a plurality of either client systems or proxy servers, each proxy server in turn accessed by a plurality of client systems, and wherein at least some of said proxy servers are non-tracking proxy servers and the other proxy servers are tracking proxy servers, and at least some of the client systems are non-tracking client systems and the other client systems are tracking client systems, and wherein tracking is desired for one or more client systems session events resulting from information supplied by the information server in response to requests for information from at least one of the client systems or one of the proxy servers, while maintaining system compatibility with those client systems or proxy servers that do no have tracking ability, a computer program product comprising: a computer readable medium associated with one or more client systems at which the tracking of session events is desired; and computer program code means stored on said computer readable medium, said computer program code means comprising means for performing the desired tracking of said session events comprising: code means for initiating, by at least one client system, a connection request to an information server system, said connection request also signifying whether said requesting client system is a non-tracking or a tracking client system that is capable of tracking given session events; code means for receiving an acknowledgment from said information server system in response to said connection request which (i) enables said requesting client system to begin tracking said session events if the requesting client system is a tracking client system, and (ii) identifies a designated server for receiving tracked session events; code means for monitoring said session events and generating a client side usage log of the monitored session events if the client system is a tracking client system, and for causing the information server to generate a usage log if the client system is a non-tracking client system; and code means for transmitting the client side usage log to said designated server after a session is complete.
Claim 12
Dependent Claim 317 words
In an information server system comprising a network with at least one information server accessed by a plurality of either client systems or proxy servers, each proxy server in turn accessed by a plurality of client systems, and wherein at least some of said proxy servers are non-tracking proxy servers and the other proxy servers are tracking proxy servers, and at least some of the client systems are non-tracking client systems and the other client systems are tracking client systems, and wherein tracking is desired for one or more client systems session events resulting from information supplied by the information server in response to requests for information from at least one of the client systems or one of the proxy servers, while maintaining system compatibility with those client systems or proxy servers that do not have tracking ability, a computer program product comprising: a computer readable medium associated with the at least one information server; and computer program code means stored on said computer readable medium, said computer program code means comprising means for enabling the desired tracking of said session events comprising: code means for receiving from at least one client system or from at least one proxy server a connection request, said connection request also signifying whether said requesting client system or requesting proxy server is non-tracking or is capable of tracking given session events; and code means for initiating an acknowledgment by said information server system in response to said information request which (i) enables said requesting client system or said requesting proxy server to begin tracking said session events if the requesting client system or requesting proxy server has tracking capability, and (ii) identifies a designated server for receiving tracked session events from said requesting client system or requesting proxy server after they have been monitored by the requesting client system or requesting proxy server and stored in a client side usage log.
Claim 13
Dependent Claim 317 words
In an information server system comprising a network with at least one information server accessed by a plurality of either client systems or proxy servers, each proxy server in turn accessed by a plurality of client systems, and wherein at least some of said proxy servers are non-tracking proxy servers and the other proxy servers are tracking proxy servers, and at least some of the client systems are non-tracking client systems and the other client systems are tracking client systems, and wherein tracking is desired for one or more client systems session events resulting from information supplied by the information server in response to requests for information from at least one of the client systems or one of the proxy servers, while maintaining system compatibility with those client systems or proxy servers that do not have tracking ability, a computer program product comprising: a computer readable medium associated with the at least one information server; and computer program code means stored on said computer readable medium, said computer program code means comprising means for enabling the desired tracking of said session events comprising: code means for receiving from at least one client system or from at least one proxy server a connection request, said connection request also signifying whether said requesting client system or requesting proxy server is non-tracking or is capable of tracking given session events; and code means for initiating an acknowledgment by said information server system in response to said information request which (i) enables said requesting client system or said requesting proxy server to begin tracking said session events if the requesting client system or requesting proxy server has tracking capability, and (ii) identifies a designated server for receiving tracked session events from said requesting client system or requesting proxy server after they have been monitored by the requesting client system or requesting proxy server and stored in a client side usage log.
Claim 14
Dependent Claim 23 words
A computer program product as recited in claim 9 or 10 wherein the information server system and the designated server are the same.
Claim 15
Dependent Claim 31 words
A computer program product as recited in claim 9 or 10 wherein the generated usage log is transmitted after the client system has accessed a set number of objects or files.
Claim 16
Dependent Claim 37 words
A computer program product as recited in claim 9 or 10 wherein the generated usage log is transmitted after the client system has been inactive a fixed amount of time with respect to the information server system.
Claim 17
Dependent Claim 30 words
A computer program product as recited in claim 9 or 10 wherein the generated usage log is transmitted after the client system attempts connection to a different information server system.
Claim 18
Dependent Claim 31 words
A computer program product as recited in claim 9 or 10 wherein the generated usage log includes information regarding a referring link where the client system previously accessed objects or files.
Claim 19
Dependent Claim 28 words
A computer program product as recited in claim 9 or 10 wherein the generated usage log includes information regarding treatment of image data associated with a particular link.
Claim 20
Dependent Claim 33 words
A computer program product as recited in claim 1 or 9 wherein the generated usage log includes information regarding a percentage amount processed by the client system of a particular object or file.
Claim 21
Dependent Claim 35 words
A computer program product as recited in claim 9 or 10 wherein the generated usage log includes information regarding the amount of time spent by the client system in accessing a particular object or file.
Claim 22
Dependent Claim 430 words
An information server system comprising: a network with at least one information server accessed by a plurality of either client systems or proxy servers, each proxy server in turn accessed by a plurality of client systems wherein at least some of said proxy servers are non-tracking proxy servers and the other proxy servers are tracking proxy servers, and at least some of the client systems are non-tracking client systems and the other client systems are tracking client systems; as a first article of manufacture, a first computer readable medium stored on said information server, said first computer readable medium comprising first program code means stored thereon; as a second article of manufacture, a second computer readable medium stored on at least one of said proxy servers or one of said client systems, said second computer readable medium comprising second program code means stored thereon; and said first and second computer program means together providing a system for tracking at one or more of the tracking client systems or at one or more of the tracking proxy servers, session events resulting from information supplied by the information server in response to requests for information from at least one of the client systems or proxy servers, while maintaining system compatibility with other non-tracking client systems or proxy servers that do not have such tracking ability, the system comprising: code means for initiating, by at least one client system or proxy server, a connection request to an information server system, said connection request also signifying said client system's or said proxy server's ability to track given session events; code means for returning to said requesting client system or proxy server in response to said connection request (i) information requested, (ii) an acknowledgment by said information server system which enables said requesting client system or proxy server to begin tracking said session events when they are capable of doing so, and (iii) a location of a designated server for receiving tracked session events; code means for monitoring, by said requesting client system or said requesting proxy server, said session events and generating a client side usage log of the monitored session events when the requesting client system or proxy server have tracking ability, and for causing the information server to generate a usage log of the monitored session events when the requesting client system or proxy server to not having tracking ability; and code means for transmitting the either the client side usage log or the usage log generated by the information server, as applicable, to said designated server after a session is complete.
Claim 23
Dependent Claim 430 words
An information server system comprising: a network with at least one information server accessed by a plurality of either client systems or proxy servers, each proxy server in turn accessed by a plurality of client systems wherein at least some of said proxy servers are non-tracking proxy servers and the other proxy servers are tracking proxy servers, and at least some of the client systems are non-tracking client systems and the other client systems are tracking client systems; as a first article of manufacture, a first computer readable medium stored on said information server, said first computer readable medium comprising first program code means stored thereon; as a second article of manufacture, a second computer readable medium stored on at least one of said proxy servers or one of said client systems, said second computer readable medium comprising second program code means stored thereon; and said first and second computer program means together providing a system for tracking at one or more of the tracking client systems or at one or more of the tracking proxy servers, session events resulting from information supplied by the information server in response to requests for information from at least one of the client systems or proxy servers, while maintaining system compatibility with other non-tracking client systems or proxy servers that do not have such tracking ability, the system comprising: code means for initiating, by at least one client system or proxy server, a connection request to an information server system, said connection request also signifying said client system's or said proxy server's ability to track given session events; code means for returning to said requesting client system or proxy server in response to said connection request (i) information requested, (ii) an acknowledgment by said information server system which enables said requesting client system or proxy server to begin tracking said session events when they are capable of doing so, and (iii) a location of a designated server for receiving tracked session events; code means for monitoring, by said requesting client system or said requesting proxy server, said session events and generating a client side usage log of the monitored session events when the requesting client system or proxy server have tracking ability, and for causing the information server to generate a usage log of the monitored session events when the requesting client system or proxy server to not having tracking ability; and code means for transmitting the either the client side usage log or the usage log generated by the information server, as applicable, to said designated server after a session is complete.
Claim 24
Dependent Claim 19 words
A system as recited in claim 19 wherein the information server system and the designated server are the same.
Claim 25
Dependent Claim 27 words
A system as recited in claim 19 wherein the generated usage log is transmitted after the client system has accessed a set number of objects or files.
Claim 26
Dependent Claim 30 words
A system as recited in claim 19 wherein the generated usage log is transmitted after the client system has been inactive a fixed amount with respect to the information server.
Claim 27
Dependent Claim 25 words
A system as recited in claim 19 wherein the generated usage log is transmitted after the client system attempts connection to a different information server.
Claim 28
Dependent Claim 27 words
A system as recited in claim 19 wherein the generated usage log includes information regarding a referring link where the client system previously accessed objects or files.
Claim 29
Dependent Claim 24 words
A system as recited in claim 19 wherein the generated usage log includes information regarding treatment of image data associated with a particular link.
Claim 30
Dependent Claim 29 words
A system as recited in claim 19 wherein the generated usage log includes information regarding a percentage amount processed by the client system of a particular object or file.
Claim 31
Dependent Claim 31 words
A system as recited in claim 19 wherein the generated usage log includes information regarding the amount of time spent by the client system in accessing a particular object or file.

References Cited (Backward Citations)

US5032979A Cited
US5579222A Cited
US5517519A Cited
US5590245A Cited
US5619656A Cited
US5627886A Cited
US5614940A Cited
US5696965A Cited
US5678041A Cited
US5706507A Cited
US5727159A Cited
US5796952A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2003-01-24 2003-07-26 2004-01-25 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2007-01-24 2007-07-26 2008-01-25 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2011-01-24 2011-07-26 2012-01-25 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag