US7152018B2 - System and method for monitoring usage patterns - Google Patents

System and method for monitoring usage patterns Download PDF

Info

Publication number
US7152018B2
US7152018B2 US10/499,578 US49957804A US7152018B2 US 7152018 B2 US7152018 B2 US 7152018B2 US 49957804 A US49957804 A US 49957804A US 7152018 B2 US7152018 B2 US 7152018B2
Authority
US
United States
Prior art keywords
profile
central server
value
client location
state object
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
US10/499,578
Other versions
US20050066011A1 (en
Inventor
Tony Wicks
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alto Dynamics LLC
Original Assignee
Nice Systems Technologies UK Ltd
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
Family has litigation
US case filed in Texas Eastern District Court litigation Critical https://portal.unifiedpatents.com/litigation/Texas%20Eastern%20District%20Court/case/2%3A24-cv-00110 Source: District Court Jurisdiction: Texas Eastern District Court "Unified Patents Litigation Data" by Unified Patents is licensed under a Creative Commons Attribution 4.0 International License.
First worldwide family litigation filed litigation https://patents.darts-ip.com/?family=9928242&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=US7152018(B2) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
US case filed in Delaware District Court litigation https://portal.unifiedpatents.com/litigation/Delaware%20District%20Court/case/1%3A22-cv-01349 Source: District Court Jurisdiction: Delaware District Court "Unified Patents Litigation Data" by Unified Patents is licensed under a Creative Commons Attribution 4.0 International License.
US case filed in New York Southern District Court litigation https://portal.unifiedpatents.com/litigation/New%20York%20Southern%20District%20Court/case/1%3A22-cv-09866 Source: District Court Jurisdiction: New York Southern District Court "Unified Patents Litigation Data" by Unified Patents is licensed under a Creative Commons Attribution 4.0 International License.
US case filed in Texas Western District Court litigation https://portal.unifiedpatents.com/litigation/Texas%20Western%20District%20Court/case/6%3A22-cv-00389 Source: District Court Jurisdiction: Texas Western District Court "Unified Patents Litigation Data" by Unified Patents is licensed under a Creative Commons Attribution 4.0 International License.
US case filed in Massachusetts District Court litigation https://portal.unifiedpatents.com/litigation/Massachusetts%20District%20Court/case/1%3A23-cv-11351 Source: District Court Jurisdiction: Massachusetts District Court "Unified Patents Litigation Data" by Unified Patents is licensed under a Creative Commons Attribution 4.0 International License.
US case filed in Texas Western District Court litigation https://portal.unifiedpatents.com/litigation/Texas%20Western%20District%20Court/case/6%3A23-cv-00704 Source: District Court Jurisdiction: Texas Western District Court "Unified Patents Litigation Data" by Unified Patents is licensed under a Creative Commons Attribution 4.0 International License.
US case filed in Texas Western District Court litigation https://portal.unifiedpatents.com/litigation/Texas%20Western%20District%20Court/case/1%3A22-cv-00829 Source: District Court Jurisdiction: Texas Western District Court "Unified Patents Litigation Data" by Unified Patents is licensed under a Creative Commons Attribution 4.0 International License.
US case filed in Texas Eastern District Court litigation https://portal.unifiedpatents.com/litigation/Texas%20Eastern%20District%20Court/case/2%3A24-cv-00109 Source: District Court Jurisdiction: Texas Eastern District Court "Unified Patents Litigation Data" by Unified Patents is licensed under a Creative Commons Attribution 4.0 International License.
US case filed in Texas Eastern District Court litigation https://portal.unifiedpatents.com/litigation/Texas%20Eastern%20District%20Court/case/2%3A23-cv-00590 Source: District Court Jurisdiction: Texas Eastern District Court "Unified Patents Litigation Data" by Unified Patents is licensed under a Creative Commons Attribution 4.0 International License.
US case filed in Texas Eastern District Court litigation https://portal.unifiedpatents.com/litigation/Texas%20Eastern%20District%20Court/case/2%3A22-cv-00350 Source: District Court Jurisdiction: Texas Eastern District Court "Unified Patents Litigation Data" by Unified Patents is licensed under a Creative Commons Attribution 4.0 International License.
US case filed in Texas Western District Court litigation https://portal.unifiedpatents.com/litigation/Texas%20Western%20District%20Court/case/6%3A22-cv-01037 Source: District Court Jurisdiction: Texas Western District Court "Unified Patents Litigation Data" by Unified Patents is licensed under a Creative Commons Attribution 4.0 International License.
US case filed in Texas Western District Court litigation https://portal.unifiedpatents.com/litigation/Texas%20Western%20District%20Court/case/6%3A22-cv-00576 Source: District Court Jurisdiction: Texas Western District Court "Unified Patents Litigation Data" by Unified Patents is licensed under a Creative Commons Attribution 4.0 International License.
US case filed in Texas Western District Court litigation https://portal.unifiedpatents.com/litigation/Texas%20Western%20District%20Court/case/6%3A22-cv-01286 Source: District Court Jurisdiction: Texas Western District Court "Unified Patents Litigation Data" by Unified Patents is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Nice Systems Technologies UK Ltd filed Critical Nice Systems Technologies UK Ltd
Assigned to SEARCHSPACE LIMITED reassignment SEARCHSPACE LIMITED ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: WICKS, TONY
Publication of US20050066011A1 publication Critical patent/US20050066011A1/en
Priority to US11/557,170 priority Critical patent/US7392160B2/en
Application granted granted Critical
Publication of US7152018B2 publication Critical patent/US7152018B2/en
Assigned to FORTENT LIMITED reassignment FORTENT LIMITED CHANGE OF NAME (SEE DOCUMENT FOR DETAILS). Assignors: SEARCHSPACE LIMITED
Assigned to GORMANDIZE LLC reassignment GORMANDIZE LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: FORTENT LIMITED
Assigned to CHEMTRON RESEARCH LLC reassignment CHEMTRON RESEARCH LLC MERGER (SEE DOCUMENT FOR DETAILS). Assignors: GORMANDIZE LLC
Assigned to INTELLECTUAL VENTURES ASSETS 166 LLC reassignment INTELLECTUAL VENTURES ASSETS 166 LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: CHEMTRON RESEARCH LLC
Assigned to ALTO DYNAMICS, LLC reassignment ALTO DYNAMICS, LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: INTELLECTUAL VENTURES ASSETS 166 LLC
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

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/3409Recording 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 for performance assessment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/87Monitoring of transactions
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/88Monitoring involving counting

Definitions

  • This invention relates generally to the monitoring, recording and analysis of user activity.
  • the invention relates to a method to create and store a profile of user activity and a system for doing so.
  • the web applies a client-server computing architecture, where data is stored on server machines and can be requested and transferred to a user's computer. Users generally request pages through the use of computer applications known as “browsers”, which are available for a range of computing devices, from desktop or personal, computers to mobile phones and Personal Digital Assistants (PDAs).
  • HTTP HyperText Transfer Protocol
  • Documents are commonly transferred in Hypertext Markup Language (HTML) format that allows content to be expressed for display in the client web browser.
  • HTML and other formats also allow the web browser to retrieve and embed computer language scripts, commonly termed Dynamic HyperText Markup Language (DHTML), that allow additional client side programmable behaviour to be performed.
  • HTML Dynamic HyperText Markup Language
  • HTTP was originally a stateless transfer method, in that servers responded to each client request without relating the request to previous or subsequent requests.
  • Internet standard RFC2029 introduced an extension to the HTTP protocol that allows the server to store a state object on the client browser, and to retrieve and change this object during subsequent transfers.
  • This object often referred to as a cookie, allows a stateful session (a session during which details are retained and shared between a client and server) between the client and server systems that can be used to track and identify further HTTP requests.
  • This approach is in widespread use and allows managed client-server sessions, such as those found in web shopping systems.
  • Cookies can be exchanged during any HTTP transfer, assuming the browser supports the capability or that the capability is not disabled. This includes the request and transfer of embedded HTML document content, such as image files.
  • the scope of access by which servers can read and change cookie values can be controlled by Uniform Resource Locator (URL) path and Internet domain parameters. Cookies can be set and updated by server side processes or through DHTML, or similar, scripts embedded in web pages.
  • Cookies to personalise web page content, to remember user or password details for future site visits, for session management in on-line sales, to track web page usage and for the targeted delivery of content and advertisements.
  • a common practice is for a server to place a unique identifier in the cookie on a client's machine when that machine first accesses the server. This allows the browser being used by the user to be identified during subsequent requests. If a user then submits personal information such as name, address or e-mail details, then, using this process, the identifier can be used to recognize the actual user.
  • Additional information such as the IP address or domain name of the user's computer, the browser type and version, the client operating system, the Internet service provider, the local machine time and the URL of the data being accessed can also be collected and audited during the HTTP transfer.
  • This allows geographical and demographical information, that can be used for user identification and targeting of specific content, to be derived.
  • the unique identifiers are also used to build aggregate historical details of URLs accessed and other such statistics. This information can then be used for marketing purposes to infer the interests of users and for the generation of targeted web page content.
  • Unique user identification is also unnecessary in many cases where the requirement is to target content to users based on general characteristics, or profiles, of activity rather than on individual characteristics.
  • the computational requirements to classify and extract details of users based on a single unique identifier, combined with the storage requirements to process past histories, may also be undesirable. Further, such processing cannot benefit from web page caches, or similar methods which speed access to site content, because all processing associated with the identification of the user identifier must be performed by the originating web servers.
  • a method of monitoring user usage patterns of a system comprising the steps of: providing at least one state object, the object including a profile representative of user usage; storing the state object at a client location; passing, to a central server, the state object with each subsequent interaction initiation; and receiving, from the central server, the state object along with the response of the central server, wherein the profile is modified to reflect the interaction between client location and central server.
  • the profile includes at least one key and value-field pair.
  • the key is an identifier of a particular interaction type, and the value-field comprises information relating to that interaction.
  • the value-field would contain a count of the number of occurrences of that particular interaction type.
  • the value-field may contain a time component denoting the time at which the count in the value-field was last modified and may also contain a second time component denoting the time that the key and value-field was first created.
  • additional value-field components may be used for other operational purposes.
  • At least one state object is provided by the central server during the first interaction between the server and the client location. More preferably, the state object is provided as a part of the central server's response to a request for resources/information submitted by the client location.
  • the modification of the profile includes; providing at least one further state object, the further state object comprising one or more key and value-field pair; and storing at least one further state object at the client location.
  • at least one further state object is provided by the central server.
  • the modification of a profile may include one or more of: incrementing the count component of at least one key and value-field pair and modification of the time components of at least one value-field; adding at least one further key and value-field pair to the profile; and removing one or more key and value-field pair from the profile
  • modification of the profile is carried out within the central server.
  • modification of profiles is effected by one or more scripts within or included in information/resources provided to the client location by the central server, or one or more program executed at the client location, thus precluding manipulation of the profile by the server.
  • interaction between the client location and the central server occurs via the internet, or other analogous means.
  • the central server further audits the state object provided to it.
  • the central server performs analysis on the audited profile in order to direct services and/or information suited to the profile to the client location.
  • a module configured to monitor user usage patterns within a system, the module resident within the system, the system comprising: a central server; and at least one client location; and the module comprising: means, within the central server, for generating at least one state object; and means for modifying a profile representative of system usage included in the state object to reflect interactions between the central server and client location, wherein the at least one state object is stored at the client location and is passed between the client location and central server during interactions.
  • the profile includes at least one key and value-field pair.
  • the value-field contains an interaction count.
  • the value-field contains an interaction count and components relating to the time of last modification of the interaction count and/or the time of creation of the key and value-field.
  • the means for modifying includes: means for incrementing a count which embodies the value-field of at least one key and value-field pair of the profile; means for adding at least one further key and value-field pair to the profile; and means for removing one or more key and value-field pair from the profile.
  • modification of the profile is carried out within the central server.
  • modification of the profile is effected through one or more scripts within or included in information/resources provided to the client location by the central server, or by one or more program executed at the client location, thus precluding manipulation of the profile by the server.
  • interaction between the central server and client location occurs via the internet, or other analogous means.
  • the server further includes means for auditing the profile and for analysing the audited profile of user usage, such that information/services suited thereto may be provided to the client location by the central server.
  • the present invention provides an automated system and method for the monitoring of user activity in environments where there is the exchange and storage of state information between client and server systems, such as web and Internet environments.
  • the invention allows profiles of user activity to be built based on a range of parameters, which may include general classifications of page content previously viewed, the URLs of pages viewed, or other details that might be used to classify or subdivide groups of web pages or web sites such as input from controls associated with one or more pages, e.g. buttons and active images (image maps).
  • the profile may comprise a histogram containing counts of web page types that have been accessed by a user. This information can then be used to determine the specific pattern of interests for a user and can be used to target advertisements, or other content forms, when a site is re-visited.
  • the site serving the web pages can also audit the profiles and these aggregations can be used to derive typical or average profiles for all users or groups of users of a system.
  • Profile aggregations at the server may include the consideration of demographic or other information to create profile groupings.
  • the invention is computationally efficient in that profile details are stored and updated on the client machine, rather than the server machine, and, unlike other systems, does not require database storage and lookup on the server side, since the profiles are readily available from the client machine.
  • the invention also has the advantage that, in one implementation where client side calculation is used to generate and update the profiles, web pages can be accessed through web page caches or similar services and direct access to the originating server is not required.
  • FIG. 1 is a block diagram showing one implementation of the system of the present invention and including a number of example communications within it;
  • FIGS. 2 a and 2 b illustrate communications between server and user location during a first interaction and during a repeat interaction, respectively.
  • the present invention is described in terms of an Internet web environment where cookies, or other state objects, are exchanged. Those skilled in the art will understand that the invention may be applied in a wide range of client and server computing environments or a multitude of other business environments. For example, the present invention may be implemented in any general computer or computing environment and in a multitude of business types and areas.
  • FIG. 1 shows a block diagram of a client computer 110 running a web browser application 130 , and a server computer 120 operating with a web page server application 140 .
  • the diagram represents the sequence associated with a web page transfer between the server 120 and client 110 systems.
  • a web page request 150 is sent to the web server 140 , identifying content/resources to be transferred. This is done through the use of a URL.
  • the web server locates the web page content/resources, or dynamically generates the content/resources, and a response 160 returns an HTTP result 170 to the requesting client.
  • This result contains header information according to the HTTP protocol, cookie information 180 and web page content 190 .
  • This initial request assumes that there is no cookie relating to this server already set on the client browser.
  • the cookie initially sent by the server may be sent, according to the guidelines of Internet standard RFC2029, back to the server.
  • cookies are transferred between client and server during subsequent requests, and between server and client during subsequent responses, as may be seen in FIGS. 2 a and 2 b .
  • Additional cookies can be transferred and the content of existing cookies can be changed or deleted.
  • Changes to cookies can happen as part of the server processing as indicated by the function boxes 202 , 204 in FIGS. 2 a and 2 b .
  • such changes may be made as a part of the client side processing. In this situation, the changes may be initiated by and/or carried out by a part of one of more scripts downloaded with the information/resources from the server for example, as will be described further below.
  • cookies, or groups of cookies, associated with particular areas of a web site are set and updated on the client browser.
  • the value associated with a cookie comprises a set of key and value-field elements or pairs.
  • multiple cookies could be used to retain the same information.
  • the key and value-field elements or pairs represent an identifier and a count indicating the number of times that resources associated with the identifier have been accessed.
  • the key identifier may relate to the URL of pages accessed, but would more generally relate to broad classifications associated with web page content, such as sport (or areas of sport, such as football, hockey, tennis), entertainment, news, science, etc.
  • the key identifier will be an enumerated integer (although names could be used), where each integer relates directly to a content type.
  • profiles in the invention will be represented in cookies in the following manner:
  • the cookie contains a sequence of key/value-field pairs separated by a semi-colon.
  • the server can then amend value-fields as part of the HTTP response, where content types are already represented, as follows:
  • the “domain” and “path” attributes are used to control the operational scope of the cookies whilst the “expires” attribute is used to define the time at which the cookie becomes invalid, according to the standard defined in RFC2029.
  • the “expires” attribute will generally be set sufficiently in the future such that the cookie never expires, or the attribute could be updated so that the cookie expires a given time period after the last access was performed.
  • a time specifier may be added to the value-fields detailing the last time at which the key value-field pair was changed.
  • the cookie would take the following form:
  • a time of creation specifier may be added to each value-field. This specifier will detail the time at which the key and value-field was created.
  • the cookie would take the following form:
  • a time of creation specifier may be added to value fields containing only interaction counts also.
  • An efficient time representation is a long integer count of seconds or milliseconds, based upon some epoch.
  • each web page may call the same function in a single script file, which passes an enumerated identity number that classifies the web page content, to update the profile cookie value.
  • changes may be initiated and/or carried out by computer programs running on the client, such as ActiveX controls or web-browser plug-ins.
  • the profile of user behaviour held in the cookie on the client browser will change to represent the user pattern of interests. This pattern is then audited, when the cookie is sent as part of a request to a web server or may be accessed and used from within the web page or otherwise by the client computer. It is therefore possible to perform statistical analysis on the profile in order to identify content most suitable to be served to the user. In this way targeted content or targeted advertising content can be served to a user, in response to web page requests. A simple example of this targeting would be the ordering of page content or navigation details on a page in accordance with preferences or weighted importance expressed in the profile.
  • each cookie can hold up to 4 kilobytes of information, which is sufficient to store at least 120 key and value field elements or pairs (dependent upon the precise make-up of the components of the value-field). If there is a requirement to extend the profile beyond these limits, the profile can be extended across multiple cookies, e.g. PROFILE1, PROFILE2. Increasing the granularity of the profile in this way will improve the ability of the system to classify user behaviour. However, where there is limited storage, older key and value pairs may be removed in order to make room for newer values. In this case, the older values, or older values with small value counts, are removed in preference to newer values.
  • a second cookie is set on the client browser and operates in an identical fashion to that described above.
  • a second profile included within the second cookie may be audited and removed by server systems. Periodic removal in this way allows server systems to track usage between defined time periods associated with initial population and removal of the profile. Removal can also be limited to be performed only when particular resources are accessed. Thus, user interests associated with access to that resource can be measured for a population of users.
  • a client browser may have the following profile information on access to a given server
  • a nontransient profile provides an historical record of user interests over an extended period. It is the purpose of a transient profile to allow recent user interests to be identified associated with a particular resource and thus to avoid re-counting users who have previously accessed the resource (i.e. outside the period of interest). If a non-transient profile were utilised for this purpose, previous access by users would be counted and an unrealistc count would be produced.
  • server side processing may be implemented solely through the use of server side processing, or through the combination of client and server side processing.
  • server side processing is used exclusively there is no requirement for the use of client side processing, other than that involved in the transfer and storage of cookie information.
  • client side processing is used for the maintenance and update of profile data there is no requirement for access to the server originating the page content, and the client can therefore be served through web caches, or proxy servers.
  • the present invention is particularly, but not exclusively as has already been set forth, suited to Internet environments for the monitoring of web pages and similar content forms.
  • the profiles generated by the invention audit a user's system behaviour and can be used to infer a users pattern of interests.
  • the invention can be used to build profiles of user behaviour for those using Internet services such as web sites, for the generation of targeted page content, such as targeted advertising, for the targeted sale of goods or services and for logging and audit purposes.
  • the invention has the advantage of anonymity, robustness and reduced server side storage requirements.

Abstract

A method of monitoring user usage patterns of a system, comprising the steps of: providing at least one state object (180), the object including a profile representative of user usage; storing the state object at a client location (110); passing, to a central server (120), the state object with each subsequent interaction initiation; and receiving, from the central server, the state object along with the response (170) of the central server, wherein the profile is modified to reflect the interaction between client location and central server. The present invention ides a system and a method for monitoring user usage patterns, and is particularly suited to use in Internet and World Wide Web applications.

Description

This invention relates generally to the monitoring, recording and analysis of user activity. In particular the invention relates to a method to create and store a profile of user activity and a system for doing so.
Usage of the Internet and the World-Wide-Web (“the web”) has become commonplace. The web applies a client-server computing architecture, where data is stored on server machines and can be requested and transferred to a user's computer. Users generally request pages through the use of computer applications known as “browsers”, which are available for a range of computing devices, from desktop or personal, computers to mobile phones and Personal Digital Assistants (PDAs). The most common protocol used for communication between web clients and web servers is the HyperText Transfer Protocol (HTTP). Documents are commonly transferred in Hypertext Markup Language (HTML) format that allows content to be expressed for display in the client web browser. Other data transfer formats are also in common use. HTML and other formats also allow the web browser to retrieve and embed computer language scripts, commonly termed Dynamic HyperText Markup Language (DHTML), that allow additional client side programmable behaviour to be performed.
HTTP was originally a stateless transfer method, in that servers responded to each client request without relating the request to previous or subsequent requests. Internet standard RFC2029 introduced an extension to the HTTP protocol that allows the server to store a state object on the client browser, and to retrieve and change this object during subsequent transfers. This object, often referred to as a cookie, allows a stateful session (a session during which details are retained and shared between a client and server) between the client and server systems that can be used to track and identify further HTTP requests. This approach is in widespread use and allows managed client-server sessions, such as those found in web shopping systems. Cookies can be exchanged during any HTTP transfer, assuming the browser supports the capability or that the capability is not disabled. This includes the request and transfer of embedded HTML document content, such as image files. The scope of access by which servers can read and change cookie values can be controlled by Uniform Resource Locator (URL) path and Internet domain parameters. Cookies can be set and updated by server side processes or through DHTML, or similar, scripts embedded in web pages.
Numerous Internet sites use cookies to personalise web page content, to remember user or password details for future site visits, for session management in on-line sales, to track web page usage and for the targeted delivery of content and advertisements. A common practice is for a server to place a unique identifier in the cookie on a client's machine when that machine first accesses the server. This allows the browser being used by the user to be identified during subsequent requests. If a user then submits personal information such as name, address or e-mail details, then, using this process, the identifier can be used to recognize the actual user. Additional information such as the IP address or domain name of the user's computer, the browser type and version, the client operating system, the Internet service provider, the local machine time and the URL of the data being accessed can also be collected and audited during the HTTP transfer. This allows geographical and demographical information, that can be used for user identification and targeting of specific content, to be derived. The unique identifiers are also used to build aggregate historical details of URLs accessed and other such statistics. This information can then be used for marketing purposes to infer the interests of users and for the generation of targeted web page content.
In some environments the use of unique cookies for user identification purposes is undesirable, because it reduces the anonymity with which users can access resources. Unique user identification is also unnecessary in many cases where the requirement is to target content to users based on general characteristics, or profiles, of activity rather than on individual characteristics. The computational requirements to classify and extract details of users based on a single unique identifier, combined with the storage requirements to process past histories, may also be undesirable. Further, such processing cannot benefit from web page caches, or similar methods which speed access to site content, because all processing associated with the identification of the user identifier must be performed by the originating web servers.
In accordance with the present invention there is provided a method of monitoring user usage patterns of a system, comprising the steps of: providing at least one state object, the object including a profile representative of user usage; storing the state object at a client location; passing, to a central server, the state object with each subsequent interaction initiation; and receiving, from the central server, the state object along with the response of the central server, wherein the profile is modified to reflect the interaction between client location and central server.
Preferably the profile includes at least one key and value-field pair. The key is an identifier of a particular interaction type, and the value-field comprises information relating to that interaction. In a simple embodiment the value-field would contain a count of the number of occurrences of that particular interaction type. In addition to an interaction count the value-field may contain a time component denoting the time at which the count in the value-field was last modified and may also contain a second time component denoting the time that the key and value-field was first created. In other implementations additional value-field components may be used for other operational purposes.
Preferably, at least one state object is provided by the central server during the first interaction between the server and the client location. More preferably, the state object is provided as a part of the central server's response to a request for resources/information submitted by the client location.
Preferably, the modification of the profile includes; providing at least one further state object, the further state object comprising one or more key and value-field pair; and storing at least one further state object at the client location. Preferably, at least one further state object is provided by the central server. The modification of a profile may include one or more of: incrementing the count component of at least one key and value-field pair and modification of the time components of at least one value-field; adding at least one further key and value-field pair to the profile; and removing one or more key and value-field pair from the profile
Preferably, modification of the profile is carried out within the central server. Alternatively, the modification of profiles is effected by one or more scripts within or included in information/resources provided to the client location by the central server, or one or more program executed at the client location, thus precluding manipulation of the profile by the server.
In a preferred embodiment of the present invention, interaction between the client location and the central server occurs via the internet, or other analogous means.
Preferably, the central server further audits the state object provided to it. Preferably, the central server performs analysis on the audited profile in order to direct services and/or information suited to the profile to the client location.
Also in accordance with the present invention there is provided a module configured to monitor user usage patterns within a system, the module resident within the system, the system comprising: a central server; and at least one client location; and the module comprising: means, within the central server, for generating at least one state object; and means for modifying a profile representative of system usage included in the state object to reflect interactions between the central server and client location, wherein the at least one state object is stored at the client location and is passed between the client location and central server during interactions.
Preferably, the profile includes at least one key and value-field pair. In one embodiment the value-field contains an interaction count. Alternatively, the value-field contains an interaction count and components relating to the time of last modification of the interaction count and/or the time of creation of the key and value-field.
In a preferred embodiment, the means for modifying includes: means for incrementing a count which embodies the value-field of at least one key and value-field pair of the profile; means for adding at least one further key and value-field pair to the profile; and means for removing one or more key and value-field pair from the profile. Preferably, modification of the profile is carried out within the central server. Alternatively, modification of the profile is effected through one or more scripts within or included in information/resources provided to the client location by the central server, or by one or more program executed at the client location, thus precluding manipulation of the profile by the server.
In a preferred embodiment of the present invention, interaction between the central server and client location occurs via the internet, or other analogous means.
Preferably, the server further includes means for auditing the profile and for analysing the audited profile of user usage, such that information/services suited thereto may be provided to the client location by the central server.
As such, the present invention provides an automated system and method for the monitoring of user activity in environments where there is the exchange and storage of state information between client and server systems, such as web and Internet environments. The invention allows profiles of user activity to be built based on a range of parameters, which may include general classifications of page content previously viewed, the URLs of pages viewed, or other details that might be used to classify or subdivide groups of web pages or web sites such as input from controls associated with one or more pages, e.g. buttons and active images (image maps). In a simple form the profile may comprise a histogram containing counts of web page types that have been accessed by a user. This information can then be used to determine the specific pattern of interests for a user and can be used to target advertisements, or other content forms, when a site is re-visited.
The site serving the web pages can also audit the profiles and these aggregations can be used to derive typical or average profiles for all users or groups of users of a system. Profile aggregations at the server may include the consideration of demographic or other information to create profile groupings. The invention is computationally efficient in that profile details are stored and updated on the client machine, rather than the server machine, and, unlike other systems, does not require database storage and lookup on the server side, since the profiles are readily available from the client machine.
The invention also has the advantage that, in one implementation where client side calculation is used to generate and update the profiles, web pages can be accessed through web page caches or similar services and direct access to the originating server is not required.
Since profile information is held on the client machine it is possible that a user may modify details of the profile or remove it completely. Obfuscation or other means can be used to deny user access to the content held. However, in web environments, where very large volumes of users access resources, it is unlikely that any errors deliberately introduced into profiles being considered would detrimentally effect system performance. Indeed, statistical, or other methods, could be used to reduce potential sources of error.
The previous discussion sets forth a particular application in which there exist problems one or more of which are addressed by the present invention. However the techniques and principles discussed hereinafter apply to other environments that apply similar mechanisms. Similar methods, for example, could be used in any client and server computing environment, in card (or other forms) of loyalty scheme, or to monitor any environment where state information is retained by a user and where this state can be updated as users access different features or areas of a system.
A specific embodiment of the present invention is now described, by way of example only, with reference to the accompanying drawings, in which:
FIG. 1 is a block diagram showing one implementation of the system of the present invention and including a number of example communications within it; and
FIGS. 2 a and 2 b illustrate communications between server and user location during a first interaction and during a repeat interaction, respectively.
The present invention is described in terms of an Internet web environment where cookies, or other state objects, are exchanged. Those skilled in the art will understand that the invention may be applied in a wide range of client and server computing environments or a multitude of other business environments. For example, the present invention may be implemented in any general computer or computing environment and in a multitude of business types and areas.
Description in the above terms is for convenience only. It is not intended that the invention be limited in application to this example environment, as is stated above.
In general, but not exclusive, terms the invention can be implemented as shown in FIG. 1. FIG. 1 shows a block diagram of a client computer 110 running a web browser application 130, and a server computer 120 operating with a web page server application 140. The diagram represents the sequence associated with a web page transfer between the server 120 and client 110 systems. A web page request 150 is sent to the web server 140, identifying content/resources to be transferred. This is done through the use of a URL. The web server locates the web page content/resources, or dynamically generates the content/resources, and a response 160 returns an HTTP result 170 to the requesting client. This result contains header information according to the HTTP protocol, cookie information 180 and web page content 190. This initial request assumes that there is no cookie relating to this server already set on the client browser.
When the next request for web page content is made from client to server the cookie initially sent by the server may be sent, according to the guidelines of Internet standard RFC2029, back to the server. In this way cookies are transferred between client and server during subsequent requests, and between server and client during subsequent responses, as may be seen in FIGS. 2 a and 2 b. Additional cookies can be transferred and the content of existing cookies can be changed or deleted. Changes to cookies can happen as part of the server processing as indicated by the function boxes 202,204 in FIGS. 2 a and 2 b. Alternatively, such changes may be made as a part of the client side processing. In this situation, the changes may be initiated by and/or carried out by a part of one of more scripts downloaded with the information/resources from the server for example, as will be described further below.
In the course of operation of the invention, cookies, or groups of cookies, associated with particular areas of a web site are set and updated on the client browser. In one implementation of the invention, the value associated with a cookie comprises a set of key and value-field elements or pairs. In another implementation, multiple cookies could be used to retain the same information. In general terms the key and value-field elements or pairs represent an identifier and a count indicating the number of times that resources associated with the identifier have been accessed. For example, the key identifier may relate to the URL of pages accessed, but would more generally relate to broad classifications associated with web page content, such as sport (or areas of sport, such as football, hockey, tennis), entertainment, news, science, etc. Generally the key identifier will be an enumerated integer (although names could be used), where each integer relates directly to a content type. Typically, profiles in the invention will be represented in cookies in the following manner:
    • PROFILE=1002/10:234515:7783/20
The cookie contains a sequence of key/value-field pairs separated by a semi-colon. In this example there are three entries, for content classifications 1002, 2345 and 7783, with value-fields comprising interaction counts of 10, 5 and 20 respectively. Any suitable separator characters could be used between each key and value-field or between the key and value-field pairs. When an HTTP request is made to a server, the client browser sends the existing profile as a part of the request:
    • Cookie: PROFILE=1002/10:2345/5:7783/20;
The server can then amend value-fields as part of the HTTP response, where content types are already represented, as follows:
    • Setookie: PROFILE=1002/10:2345/6:7783/20;path=/;expires=Thursday, 5-Dec.-2002 12:15:00;domain=acme.com
or add to the profile where a new content type is presented in the response, as follows:
    • SetCookie:PROFILE=1002/10:1899/1:2345/5:7783/20;path=/;expires=Thursday, 5Dec.-2002 12:15:00;domain=acme.com
In these cases the “domain” and “path” attributes are used to control the operational scope of the cookies whilst the “expires” attribute is used to define the time at which the cookie becomes invalid, according to the standard defined in RFC2029. The “expires” attribute will generally be set sufficiently in the future such that the cookie never expires, or the attribute could be updated so that the cookie expires a given time period after the last access was performed.
In an alternate implementation of the invention, a time specifier may be added to the value-fields detailing the last time at which the key value-field pair was changed. In this case the cookie would take the following form:
    • PROFILE=1002/10/TIME1:189911/TIME2:2345/5/TIME3:7783/20/TIME4
In another alternate implementation of the invention, a time of creation specifier may be added to each value-field. This specifier will detail the time at which the key and value-field was created. In this case the cookie would take the following form:
    • PROFILE=1002/10/TIME1/TIME1creation:1899/1/TIME2/TIME2creation:
      • 2345/5/TIME3/TIME3creation:7783/20/TIME4/TIME4creation
Of course, a time of creation specifier may be added to value fields containing only interaction counts also.
An efficient time representation is a long integer count of seconds or milliseconds, based upon some epoch.
Through the use of scripts within web pages, or included in web pages, it will be understood that it is possible to update and manipulate the contents of the cookie profile without requiring any server side manipulation. In this case, each web page may call the same function in a single script file, which passes an enumerated identity number that classifies the web page content, to update the profile cookie value. Alternatively, changes may be initiated and/or carried out by computer programs running on the client, such as ActiveX controls or web-browser plug-ins.
As a user browses multiple pages and HTTP requests are made for additional content, the profile of user behaviour held in the cookie on the client browser will change to represent the user pattern of interests. This pattern is then audited, when the cookie is sent as part of a request to a web server or may be accessed and used from within the web page or otherwise by the client computer. It is therefore possible to perform statistical analysis on the profile in order to identify content most suitable to be served to the user. In this way targeted content or targeted advertising content can be served to a user, in response to web page requests. A simple example of this targeting would be the ordering of page content or navigation details on a page in accordance with preferences or weighted importance expressed in the profile.
Since the profile of user activity is held in a cookie on the web browser of the client computing device, server-side storage requirements are minimised. According to RFC2029, each cookie can hold up to 4 kilobytes of information, which is sufficient to store at least 120 key and value field elements or pairs (dependent upon the precise make-up of the components of the value-field). If there is a requirement to extend the profile beyond these limits, the profile can be extended across multiple cookies, e.g. PROFILE1, PROFILE2. Increasing the granularity of the profile in this way will improve the ability of the system to classify user behaviour. However, where there is limited storage, older key and value pairs may be removed in order to make room for newer values. In this case, the older values, or older values with small value counts, are removed in preference to newer values.
In another form of the invention, a second cookie is set on the client browser and operates in an identical fashion to that described above. A second profile included within the second cookie may be audited and removed by server systems. Periodic removal in this way allows server systems to track usage between defined time periods associated with initial population and removal of the profile. Removal can also be limited to be performed only when particular resources are accessed. Thus, user interests associated with access to that resource can be measured for a population of users. As an example, a client browser may have the following profile information on access to a given server
    • PROFILE=1002/10/TIME1:1899/1/TIME2:2345/5/TIME3:7783/20/TIME4 TRANSIENT_PROFILE=1002/10/TIME1:1899/1/TIME2
Following access to the server, and auditing of the transient profile, the profiles might become:
    • PROFILE=1002/11/TIME1:1899/1/TIME2:2345/5/TIME3:7783/20/TIME4 TRANSIENT PROFILE=
In effect, a nontransient profile provides an historical record of user interests over an extended period. It is the purpose of a transient profile to allow recent user interests to be identified associated with a particular resource and thus to avoid re-counting users who have previously accessed the resource (i.e. outside the period of interest). If a non-transient profile were utilised for this purpose, previous access by users would be counted and an unrealistc count would be produced.
It is thus clear that the present invention may be implemented solely through the use of server side processing, or through the combination of client and server side processing. Where server side processing is used exclusively there is no requirement for the use of client side processing, other than that involved in the transfer and storage of cookie information. Where client side processing is used for the maintenance and update of profile data there is no requirement for access to the server originating the page content, and the client can therefore be served through web caches, or proxy servers. This makes the invention highly scalable and very efficient. However, direct server access will be required in order to audit profile information, unless such auditing is carried out directly by the client application.
The present invention is particularly, but not exclusively as has already been set forth, suited to Internet environments for the monitoring of web pages and similar content forms. The profiles generated by the invention audit a user's system behaviour and can be used to infer a users pattern of interests. In this way, the invention can be used to build profiles of user behaviour for those using Internet services such as web sites, for the generation of targeted page content, such as targeted advertising, for the targeted sale of goods or services and for logging and audit purposes. The invention has the advantage of anonymity, robustness and reduced server side storage requirements.
It will of course be understood that the present invention has been described above purely by way of example, and that modifications of detail can be made within the scope of the invention.

Claims (23)

1. A method of monitoring user usage patterns of a system, comprising the steps of:
providing at least one state object, the object including a profile representative of user usage;
storing the state object at a client location;
passing, to a central server, the state object with each subsequent interaction initiation; and
receiving, from the central server, the state object along with the response of the central server;
wherein the profile is modified, to reflect the interaction between the client location and the central server, by one of one or more scripts within or included in information/resources provided to the client location by the central server, and one or more programs executed at the client location, thus precluding manipulation of the profile by the server.
2. A method as claimed in claim 1, wherein the profile includes at least one key and value-field pair.
3. A method as claimed in claim 2, wherein the key is an identifier of a particular interaction type, and the value-field contains a count of the number of occurrences of that particular interaction type.
4. A method as claimed in claim 3, wherein the value-field further contains at least one of a time component detailing the last modification of the interaction count and a time component detailing the creation of the key and value-field.
5. A method as claimed in claim 1, wherein the at least one state object is provided by the central server during a first interaction between the server and the client location.
6. A method as claimed in claim 5, wherein the state object is provided as a part of the central server's response to a request for resources/information submitted by the client location.
7. A method as claimed in claim 2, wherein the step of modifying the profile includes:
providing at least one further state object, wherein the at least one further state object includes a further profile representative of user usage, the further profile comprising one or more key and value-field pair; and
storing the at least one further state object at the client location.
8. A method as claimed in claim 7, wherein the at least one further state object is provided by the central server.
9. A method as claimed in claim 4, wherein the modification of the profile includes one or more of:
incrementing the count component of the at least one key and value-field pair;
updating a time component of the at least one key and value-field pair;
adding at least one further key and value-field pair to the profile; and
removing one or more key and value-field pair from the profile.
10. A method as claimed in claim 1, wherein modification of the profile is carried out within the central server.
11. A method as claimed in claim 1, wherein interaction between the client location and the central server occurs via the Internet.
12. A method as claimed in claim 11, wherein the central server further audits the state object/profile passed to it.
13. A method as claimed in claim 12, wherein the central server performs analysis on the audited profile in order to direct at least one of services and information suited to the profile to the client location.
14. A module configured to monitor user usage patterns within a system, the module resident within the system, the system comprising:
a central server; and
at least one client location;
the module comprising:
means, within the central server, for generating at least one state object; and
means for modifying a profile representative of system usage included in the state object to reflect interactions between the central server and the client location, wherein modification of the profile is effected through one of one or more scripts within or included in information/resources provided to the client location by the central server, and one or more programs executed at the client location thus precluding manipulation of the profile by the server;
wherein the at least one state object is stored at the client location and passed between the client location and central server during interaction therebetween.
15. A module as claimed in claim 14, wherein the profile includes at least one key and value-field pair.
16. A module as claimed in claim 15, wherein the value-field contains an interaction count.
17. A module as claimed in clam 15, wherein the means for modifying includes:
means for incrementing a count which embodies a value of the at least one key and value-field pair;
means for updating a time component of the at least one key and value-field pair;
means for adding at least one further key and value-field pair to the profile; and
means for removing one or more key and value-field pair from the profile.
18. A module as claimed in claim 14, wherein modifying the profile is carried out within the central server.
19. A module as claimed in claim 14, wherein interaction between the central server and the client location occurs via the Internet.
20. A module as claimed in claim 14, further including means for auditing the profile, and for analyzing the profile or user usage, such that information/services suited thereto is provided to the client location by the central server.
21. A computer program product comprising a computer readable medium having stored thereon computer program means for causing a computer to monitor user usage patterns within a system, comprising:
code for providing at least one state object, the object including a profile representative of user usage;
code for storing the state object at a client location;
code for passing, to a central server, the state object with each subsequent interaction initiation; and
code for receiving, from the central server, the state object along with the response of the central server; and
code for wherein the profile is modified, to reflect the interaction between the client location and the central server, by one of one or more scripts within or included in information/resources provided to the client location by the central server, and one or more programs executed at the client location, thus precluding manipulation of the profile by the server.
22. A method as claimed in claim 8, wherein the further state object is audited and removed after a specified time period or in response to an access by the client of a specified resource.
23. A module as claimed in claim 16, wherein the value-field contains at least one of a time component detailing the last modification of the interaction count and a time component detailing the creation of the key and value-field.
US10/499,578 2001-12-21 2002-12-18 System and method for monitoring usage patterns Expired - Lifetime US7152018B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US11/557,170 US7392160B2 (en) 2002-12-18 2006-11-07 System and method for monitoring usage patterns

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GB0130744.6 2001-12-21
GB0130744A GB2383505B (en) 2001-12-21 2001-12-21 System and method for monitoring usage patterns
PCT/GB2002/005772 WO2003056430A2 (en) 2001-12-21 2002-12-18 System and method for monitoring usage patterns

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US11/557,170 Continuation US7392160B2 (en) 2002-12-18 2006-11-07 System and method for monitoring usage patterns

Publications (2)

Publication Number Publication Date
US20050066011A1 US20050066011A1 (en) 2005-03-24
US7152018B2 true US7152018B2 (en) 2006-12-19

Family

ID=9928242

Family Applications (1)

Application Number Title Priority Date Filing Date
US10/499,578 Expired - Lifetime US7152018B2 (en) 2001-12-21 2002-12-18 System and method for monitoring usage patterns

Country Status (5)

Country Link
US (1) US7152018B2 (en)
EP (1) EP1459184A2 (en)
AU (1) AU2002352446A1 (en)
GB (1) GB2383505B (en)
WO (1) WO2003056430A2 (en)

Cited By (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060075141A1 (en) * 2002-12-03 2006-04-06 David Boxenhorn Networked computing using objects
US20060162071A1 (en) * 2005-01-27 2006-07-27 Eleri Dixon A/B testing
US20070233831A1 (en) * 2006-03-28 2007-10-04 Microsoft Corporation Management of extensibility servers and applications
US7359935B1 (en) * 2002-12-20 2008-04-15 Versata Development Group, Inc. Generating contextual user network session history in a dynamic content environment
US20080256144A1 (en) * 2005-09-26 2008-10-16 Koninklijke Philips Electronics, N.V. Storage Profile Generation for Network-Connected Portable Storage Devices
US20100161831A1 (en) * 2008-12-19 2010-06-24 David Haas Optimizing content and communication in multiaccess mobile device exhibiting communication functionalities responsive of tempo spatial parameters
US20110022962A1 (en) * 2009-02-23 2011-01-27 Luo Vicky W Method and System Utilizing User-State-Monitoring Objects and Relevant Data to Monitor and Provide Customer Service Online
US20110066717A1 (en) * 2009-09-16 2011-03-17 Nokia Corporation Method and apparatus for time adaptation of online services to user behavior
US7921174B1 (en) 2009-07-24 2011-04-05 Jason Adam Denise Electronic communication reminder technology
US20110125547A1 (en) * 2009-11-20 2011-05-26 Palo Alto Research Center Incorporated Method for estimating stress from temporal work patterns
US7962404B1 (en) 2007-11-07 2011-06-14 Experian Information Solutions, Inc. Systems and methods for determining loan opportunities
US7996521B2 (en) 2007-11-19 2011-08-09 Experian Marketing Solutions, Inc. Service for mapping IP addresses to user segments
US8024264B2 (en) 2007-04-12 2011-09-20 Experian Marketing Solutions, Inc. Systems and methods for determining thin-file records and determining thin-file risk levels
US8301574B2 (en) 2007-09-17 2012-10-30 Experian Marketing Solutions, Inc. Multimedia engagement study
US8412593B1 (en) 2008-10-07 2013-04-02 LowerMyBills.com, Inc. Credit card matching
US20130185247A1 (en) * 2009-04-24 2013-07-18 Palo Alto Research Center Incorporated Computer-Implemented System And Method For Identifying Tasks Using Temporal Footprints
US8606626B1 (en) 2007-01-31 2013-12-10 Experian Information Solutions, Inc. Systems and methods for providing a direct marketing campaign planning environment
US8639920B2 (en) 2009-05-11 2014-01-28 Experian Marketing Solutions, Inc. Systems and methods for providing anonymized user profile data
US8683016B1 (en) 2002-12-20 2014-03-25 Versata Development Group, Inc. Data recording components and processes for acquiring selected web site data
US8732004B1 (en) 2004-09-22 2014-05-20 Experian Information Solutions, Inc. Automated analysis of data to generate prospect notifications based on trigger events
US8799148B2 (en) 2006-08-31 2014-08-05 Rohan K. K. Chandran Systems and methods of ranking a plurality of credit card offers
US9152727B1 (en) 2010-08-23 2015-10-06 Experian Marketing Solutions, Inc. Systems and methods for processing consumer information for targeted marketing applications
US9344508B2 (en) 2013-03-13 2016-05-17 International Business Machines Corporation Dynamically launching inter-dependent applications based on user behavior
US20160182673A1 (en) * 2014-12-22 2016-06-23 Barak KINARTI Dynamic cache injector
US9654541B1 (en) 2012-11-12 2017-05-16 Consumerinfo.Com, Inc. Aggregating user web browsing data
US9767309B1 (en) 2015-11-23 2017-09-19 Experian Information Solutions, Inc. Access control system for implementing access restrictions of regulated database records while identifying and providing indicators of regulated database records matching validation criteria
US10678894B2 (en) 2016-08-24 2020-06-09 Experian Information Solutions, Inc. Disambiguation and authentication of device users
US10810605B2 (en) 2004-06-30 2020-10-20 Experian Marketing Solutions, Llc System, method, software and data structure for independent prediction of attitudinal and message responsiveness, and preferences for communication media, channel, timing, frequency, and sequences of communications, using an integrated data repository
US11257117B1 (en) 2014-06-25 2022-02-22 Experian Information Solutions, Inc. Mobile device sighting location analytics and profiling system
US11403539B2 (en) 2018-06-28 2022-08-02 International Business Machines Corporation Pattern-optimized session logs for improved web analytics
US11416760B2 (en) * 2018-11-29 2022-08-16 Sap Se Machine learning based user interface controller
US11682041B1 (en) 2020-01-13 2023-06-20 Experian Marketing Solutions, Llc Systems and methods of a tracking analytics platform
US11720377B2 (en) 2020-07-10 2023-08-08 Navan, Inc. Methods and systems for dynamically generating contextual user interface elements
US11887175B2 (en) 2006-08-31 2024-01-30 Cpl Assets, Llc Automatically determining a personalized set of programs or products including an interactive graphical user interface

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6970918B2 (en) * 2001-09-24 2005-11-29 International Business Machines Corporation System and method for transcoding support of web content over secure connections
GB2404751A (en) * 2003-08-07 2005-02-09 Thomas Guy Sneesby System for providing user targeted adverts
US7373524B2 (en) 2004-02-24 2008-05-13 Covelight Systems, Inc. Methods, systems and computer program products for monitoring user behavior for a server application
JP4679167B2 (en) * 2004-03-05 2011-04-27 株式会社東芝 Computer system analyzer
US20060212353A1 (en) * 2005-03-16 2006-09-21 Anton Roslov Targeted advertising system and method
JP3980603B2 (en) * 2005-03-30 2007-09-26 株式会社日立製作所 Digital content distribution method and digital content distribution apparatus
US7930736B2 (en) * 2006-01-13 2011-04-19 Google, Inc. Providing selective access to a web site
GB0601939D0 (en) 2006-01-31 2006-03-15 Speed Trap Com Ltd Website monitoring and cookie setting
EP1979839B1 (en) * 2006-01-31 2014-01-08 Speed-trap.com Ltd. Website monitoring and cookie setting
US8892737B2 (en) * 2006-03-06 2014-11-18 Vmware, Inc. Network sniffer for performing service level management
US7693996B2 (en) * 2006-03-06 2010-04-06 Vmware, Inc. Service level management system
US20070220010A1 (en) * 2006-03-15 2007-09-20 Kent Thomas Ertugrul Targeted content delivery for networks
GB0605578D0 (en) 2006-03-20 2006-04-26 Speed Trap Com Ltd Content management
WO2007125108A1 (en) * 2006-04-27 2007-11-08 Abb Research Ltd A method and system for controlling an industrial process including automatically displaying information generated in response to a query in an industrial installation
US9027011B1 (en) * 2006-08-31 2015-05-05 Oracle America, Inc. Using method-profiling to dynamically tune a virtual machine for responsiveness
EP2126715A4 (en) * 2006-12-22 2011-11-02 Phorm Uk Inc Systems and methods for channeling client network activity
US20080222283A1 (en) * 2007-03-08 2008-09-11 Phorm Uk, Inc. Behavioral Networking Systems And Methods For Facilitating Delivery Of Targeted Content
US20090077163A1 (en) * 2007-09-14 2009-03-19 Phorm Uk, Inc. Approach for identifying and providing targeted content to a network client with reduced impact to the service provider
US8078605B2 (en) * 2008-10-02 2011-12-13 InsideSales.com, Inc. User-specific contact apparatus and method
EP2415009A4 (en) * 2009-04-01 2012-02-08 Douglas J Honnold Determining projection weights based on census data
US8694659B1 (en) * 2010-04-06 2014-04-08 Symantec Corporation Systems and methods for enhancing domain-name-server responses
CN103620595A (en) * 2011-04-29 2014-03-05 诺基亚公司 Method and apparatus for context-aware role modeling and recommendation
US9137370B2 (en) 2011-05-09 2015-09-15 Insidesales.com Call center input/output agent utilization arbitration system
US9231996B2 (en) * 2013-04-12 2016-01-05 International Business Machines Corporation User-influenced page loading of web content

Citations (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1997026729A2 (en) 1995-12-27 1997-07-24 Robinson Gary B Automated collaborative filtering in world wide web advertising
US5948061A (en) * 1996-10-29 1999-09-07 Double Click, Inc. Method of delivery, targeting, and measuring advertising over networks
EP1020804A2 (en) 1999-01-13 2000-07-19 Pitney Bowes Inc. A system for managing user-characterizing network protocol headers
WO2000075827A1 (en) 1999-06-04 2000-12-14 Websidestory, Inc. Internet website traffic flow analysis
EP1074929A2 (en) 1999-07-08 2001-02-07 DynamicLogic, Inc. System and method for evaluating and/or monitoring effectiveness of on-line advertising
EP1130525A2 (en) 2000-03-02 2001-09-05 Corbis Corporation Method and system for automatically displaying an image and a product in a page based on contextual interaction and metadata
US20010047397A1 (en) * 2000-02-18 2001-11-29 Jameson David H. Method and system for using pervasive device to access webpages
US20020062367A1 (en) * 2000-01-26 2002-05-23 Debber J. Dale Opportunity tracking information system
EP1244016A1 (en) 2001-03-23 2002-09-25 Hewlett-Packard Company User access pattern tracking of computer resources
US20020136204A1 (en) * 2001-02-06 2002-09-26 Metaedge Corporation Method and system for routing network traffic based upon application information
US6460071B1 (en) * 1997-11-21 2002-10-01 International Business Machines Corporation System and method for managing client application state in a stateless web browser environment
US20020161659A1 (en) * 2001-03-15 2002-10-31 Veilleux David P. Color image display accuracy for display devices on a network
US20020198966A1 (en) * 1997-05-01 2002-12-26 Stratum Technologies Corporation Method and apparatus for dynamic programming across a computer network
US20030055530A1 (en) * 2001-06-05 2003-03-20 Dave Dodson System for delivering web content to fuel dispenser
US20030052165A1 (en) * 2001-06-05 2003-03-20 Dave Dodson Method of delivering Web content to fuel dispenser
US6757900B1 (en) * 2000-05-18 2004-06-29 Microsoft Corporation State management of server-side control objects
US6792607B1 (en) * 2000-05-18 2004-09-14 Microsoft Corporation Databinding using server-side control objects
US6839680B1 (en) * 1999-09-30 2005-01-04 Fujitsu Limited Internet profiling
US20050120091A1 (en) * 2002-03-04 2005-06-02 Eduardo Casais Method, network device and system for providing profile data applicable to hypertext transfer protocol (http)
US6915454B1 (en) * 2001-06-12 2005-07-05 Microsoft Corporation Web controls validation
US6934757B1 (en) * 2000-01-06 2005-08-23 International Business Machines Corporation Method and system for cross-domain service invocation using a single data handle associated with the stored common data and invocation-specific data
US6944797B1 (en) * 2001-06-07 2005-09-13 Microsoft Corporation Method and system for tracing
US6961750B1 (en) * 2000-05-18 2005-11-01 Microsoft Corp. Server-side control objects for processing client-side user interface elements
US6970933B1 (en) * 1999-07-15 2005-11-29 F5 Networks, Inc. Enabling application level persistence between a server and another resource over a network

Patent Citations (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1997026729A2 (en) 1995-12-27 1997-07-24 Robinson Gary B Automated collaborative filtering in world wide web advertising
US5948061A (en) * 1996-10-29 1999-09-07 Double Click, Inc. Method of delivery, targeting, and measuring advertising over networks
US20020198966A1 (en) * 1997-05-01 2002-12-26 Stratum Technologies Corporation Method and apparatus for dynamic programming across a computer network
US6460071B1 (en) * 1997-11-21 2002-10-01 International Business Machines Corporation System and method for managing client application state in a stateless web browser environment
EP1020804A2 (en) 1999-01-13 2000-07-19 Pitney Bowes Inc. A system for managing user-characterizing network protocol headers
WO2000075827A1 (en) 1999-06-04 2000-12-14 Websidestory, Inc. Internet website traffic flow analysis
EP1074929A2 (en) 1999-07-08 2001-02-07 DynamicLogic, Inc. System and method for evaluating and/or monitoring effectiveness of on-line advertising
US6970933B1 (en) * 1999-07-15 2005-11-29 F5 Networks, Inc. Enabling application level persistence between a server and another resource over a network
US6839680B1 (en) * 1999-09-30 2005-01-04 Fujitsu Limited Internet profiling
US6934757B1 (en) * 2000-01-06 2005-08-23 International Business Machines Corporation Method and system for cross-domain service invocation using a single data handle associated with the stored common data and invocation-specific data
US20020062367A1 (en) * 2000-01-26 2002-05-23 Debber J. Dale Opportunity tracking information system
US20010047397A1 (en) * 2000-02-18 2001-11-29 Jameson David H. Method and system for using pervasive device to access webpages
EP1130525A2 (en) 2000-03-02 2001-09-05 Corbis Corporation Method and system for automatically displaying an image and a product in a page based on contextual interaction and metadata
US6757900B1 (en) * 2000-05-18 2004-06-29 Microsoft Corporation State management of server-side control objects
US6792607B1 (en) * 2000-05-18 2004-09-14 Microsoft Corporation Databinding using server-side control objects
US6961750B1 (en) * 2000-05-18 2005-11-01 Microsoft Corp. Server-side control objects for processing client-side user interface elements
US20020136204A1 (en) * 2001-02-06 2002-09-26 Metaedge Corporation Method and system for routing network traffic based upon application information
US20020161659A1 (en) * 2001-03-15 2002-10-31 Veilleux David P. Color image display accuracy for display devices on a network
EP1244016A1 (en) 2001-03-23 2002-09-25 Hewlett-Packard Company User access pattern tracking of computer resources
US20030055530A1 (en) * 2001-06-05 2003-03-20 Dave Dodson System for delivering web content to fuel dispenser
US20030052165A1 (en) * 2001-06-05 2003-03-20 Dave Dodson Method of delivering Web content to fuel dispenser
US6944797B1 (en) * 2001-06-07 2005-09-13 Microsoft Corporation Method and system for tracing
US6915454B1 (en) * 2001-06-12 2005-07-05 Microsoft Corporation Web controls validation
US20050120091A1 (en) * 2002-03-04 2005-06-02 Eduardo Casais Method, network device and system for providing profile data applicable to hypertext transfer protocol (http)

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
"What are cookies?" Internet Cookies, The U.S. Department of Energy Computer Incident Advisory Capability, No. I-034, Mar. 12, 1998, pp. 1-10.
Cingil, I "Supporting global user profiles through trusted authorities," Sigmod Record, Mar. 2002, vol. 31, No. 1; pp. 11-17.
Cingil, I et al, "A broader approach to personalization", Communications of the ACM, Aug. 2000, vol. 43, No. 8 (pp. 136-141.
European Search Report Issued for GB 0130744.6, dated Jul. 31, 2002.
Hensley, P., "Proposal for an open profiling standard", Internet article, Online Jun. 2, 1997, retrieved on May 10, 2004 (pages).
International Search Report Issued for PCT/GB/02/05772, dated May 26, 2004.

Cited By (78)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7752335B2 (en) * 2002-12-03 2010-07-06 David Boxenhorn Networked computing using objects
US20060075141A1 (en) * 2002-12-03 2006-04-06 David Boxenhorn Networked computing using objects
US7359935B1 (en) * 2002-12-20 2008-04-15 Versata Development Group, Inc. Generating contextual user network session history in a dynamic content environment
US8683016B1 (en) 2002-12-20 2014-03-25 Versata Development Group, Inc. Data recording components and processes for acquiring selected web site data
US11657411B1 (en) 2004-06-30 2023-05-23 Experian Marketing Solutions, Llc System, method, software and data structure for independent prediction of attitudinal and message responsiveness, and preferences for communication media, channel, timing, frequency, and sequences of communications, using an integrated data repository
US10810605B2 (en) 2004-06-30 2020-10-20 Experian Marketing Solutions, Llc System, method, software and data structure for independent prediction of attitudinal and message responsiveness, and preferences for communication media, channel, timing, frequency, and sequences of communications, using an integrated data repository
US10586279B1 (en) 2004-09-22 2020-03-10 Experian Information Solutions, Inc. Automated analysis of data to generate prospect notifications based on trigger events
US8732004B1 (en) 2004-09-22 2014-05-20 Experian Information Solutions, Inc. Automated analysis of data to generate prospect notifications based on trigger events
US11562457B2 (en) 2004-09-22 2023-01-24 Experian Information Solutions, Inc. Automated analysis of data to generate prospect notifications based on trigger events
US11373261B1 (en) 2004-09-22 2022-06-28 Experian Information Solutions, Inc. Automated analysis of data to generate prospect notifications based on trigger events
US11861756B1 (en) 2004-09-22 2024-01-02 Experian Information Solutions, Inc. Automated analysis of data to generate prospect notifications based on trigger events
US7975000B2 (en) * 2005-01-27 2011-07-05 Fmr Llc A/B testing of a webpage
US9077780B2 (en) 2005-01-27 2015-07-07 Fmr Llc A/B testing
US20110225265A1 (en) * 2005-01-27 2011-09-15 FMR Corp., a Delaware corporation A/B Testing
US20060162071A1 (en) * 2005-01-27 2006-07-27 Eleri Dixon A/B testing
US8583766B2 (en) 2005-01-27 2013-11-12 Fmr Llc A/B testing
US7987213B2 (en) * 2005-09-26 2011-07-26 Koninklijke Philips Electronics N.V. Storage profile generation for network-connected portable storage devices
US20080256144A1 (en) * 2005-09-26 2008-10-16 Koninklijke Philips Electronics, N.V. Storage Profile Generation for Network-Connected Portable Storage Devices
US20070233831A1 (en) * 2006-03-28 2007-10-04 Microsoft Corporation Management of extensibility servers and applications
US7899892B2 (en) * 2006-03-28 2011-03-01 Microsoft Corporation Management of extensibility servers and applications
US8799148B2 (en) 2006-08-31 2014-08-05 Rohan K. K. Chandran Systems and methods of ranking a plurality of credit card offers
US11887175B2 (en) 2006-08-31 2024-01-30 Cpl Assets, Llc Automatically determining a personalized set of programs or products including an interactive graphical user interface
US11803873B1 (en) 2007-01-31 2023-10-31 Experian Information Solutions, Inc. Systems and methods for providing a direct marketing campaign planning environment
US9508092B1 (en) 2007-01-31 2016-11-29 Experian Information Solutions, Inc. Systems and methods for providing a direct marketing campaign planning environment
US10311466B1 (en) 2007-01-31 2019-06-04 Experian Information Solutions, Inc. Systems and methods for providing a direct marketing campaign planning environment
US10692105B1 (en) 2007-01-31 2020-06-23 Experian Information Solutions, Inc. Systems and methods for providing a direct marketing campaign planning environment
US9916596B1 (en) 2007-01-31 2018-03-13 Experian Information Solutions, Inc. Systems and methods for providing a direct marketing campaign planning environment
US11176570B1 (en) 2007-01-31 2021-11-16 Experian Information Solutions, Inc. Systems and methods for providing a direct marketing campaign planning environment
US8606626B1 (en) 2007-01-31 2013-12-10 Experian Information Solutions, Inc. Systems and methods for providing a direct marketing campaign planning environment
US8024264B2 (en) 2007-04-12 2011-09-20 Experian Marketing Solutions, Inc. Systems and methods for determining thin-file records and determining thin-file risk levels
US8271378B2 (en) 2007-04-12 2012-09-18 Experian Marketing Solutions, Inc. Systems and methods for determining thin-file records and determining thin-file risk levels
US8738515B2 (en) 2007-04-12 2014-05-27 Experian Marketing Solutions, Inc. Systems and methods for determining thin-file records and determining thin-file risk levels
US8301574B2 (en) 2007-09-17 2012-10-30 Experian Marketing Solutions, Inc. Multimedia engagement study
US7962404B1 (en) 2007-11-07 2011-06-14 Experian Information Solutions, Inc. Systems and methods for determining loan opportunities
US7996521B2 (en) 2007-11-19 2011-08-09 Experian Marketing Solutions, Inc. Service for mapping IP addresses to user segments
US8533322B2 (en) 2007-11-19 2013-09-10 Experian Marketing Solutions, Inc. Service for associating network users with profiles
US9058340B1 (en) 2007-11-19 2015-06-16 Experian Marketing Solutions, Inc. Service for associating network users with profiles
US8412593B1 (en) 2008-10-07 2013-04-02 LowerMyBills.com, Inc. Credit card matching
US9336178B2 (en) * 2008-12-19 2016-05-10 Velocee Ltd. Optimizing content and communication in multiaccess mobile device exhibiting communication functionalities responsive of tempo spatial parameters
US20100161831A1 (en) * 2008-12-19 2010-06-24 David Haas Optimizing content and communication in multiaccess mobile device exhibiting communication functionalities responsive of tempo spatial parameters
US20110022962A1 (en) * 2009-02-23 2011-01-27 Luo Vicky W Method and System Utilizing User-State-Monitoring Objects and Relevant Data to Monitor and Provide Customer Service Online
US9547839B2 (en) * 2009-02-23 2017-01-17 Newegg Inc. Method and system utilizing user-state-monitoring objects and relevant data to monitor and provide customer service online
US9576239B2 (en) * 2009-04-24 2017-02-21 Palo Alto Research Center Incorporated Computer-implemented system and method for identifying tasks using temporal footprints
US20130185247A1 (en) * 2009-04-24 2013-07-18 Palo Alto Research Center Incorporated Computer-Implemented System And Method For Identifying Tasks Using Temporal Footprints
US8966649B2 (en) 2009-05-11 2015-02-24 Experian Marketing Solutions, Inc. Systems and methods for providing anonymized user profile data
US9595051B2 (en) 2009-05-11 2017-03-14 Experian Marketing Solutions, Inc. Systems and methods for providing anonymized user profile data
US8639920B2 (en) 2009-05-11 2014-01-28 Experian Marketing Solutions, Inc. Systems and methods for providing anonymized user profile data
US8224917B1 (en) 2009-07-24 2012-07-17 Google Inc. Electronic communication reminder technology
US7921174B1 (en) 2009-07-24 2011-04-05 Jason Adam Denise Electronic communication reminder technology
US8046418B1 (en) 2009-07-24 2011-10-25 Jason Adam Denise Electronic communication reminder technology
US8352561B1 (en) 2009-07-24 2013-01-08 Google Inc. Electronic communication reminder technology
US8661087B2 (en) 2009-07-24 2014-02-25 Google Inc. Electronic communication reminder technology
US9137181B2 (en) 2009-07-24 2015-09-15 Google Inc. Electronic communication reminder technology
US9088493B2 (en) 2009-09-16 2015-07-21 Nokia Technologies Oy Method and apparatus for time adaptation of online services to user behavior
US20110066717A1 (en) * 2009-09-16 2011-03-17 Nokia Corporation Method and apparatus for time adaptation of online services to user behavior
US8706821B2 (en) * 2009-09-16 2014-04-22 Nokia Corporation Method and apparatus for time adaptation of online services to user behavior
US20110125547A1 (en) * 2009-11-20 2011-05-26 Palo Alto Research Center Incorporated Method for estimating stress from temporal work patterns
US8117054B2 (en) * 2009-11-20 2012-02-14 Palo Alto Research Center Incorporated Method for estimating task stress factors from temporal work patterns
US9152727B1 (en) 2010-08-23 2015-10-06 Experian Marketing Solutions, Inc. Systems and methods for processing consumer information for targeted marketing applications
US10277659B1 (en) 2012-11-12 2019-04-30 Consumerinfo.Com, Inc. Aggregating user web browsing data
US9654541B1 (en) 2012-11-12 2017-05-16 Consumerinfo.Com, Inc. Aggregating user web browsing data
US11012491B1 (en) 2012-11-12 2021-05-18 ConsumerInfor.com, Inc. Aggregating user web browsing data
US11863310B1 (en) 2012-11-12 2024-01-02 Consumerinfo.Com, Inc. Aggregating user web browsing data
US10020993B2 (en) 2013-03-13 2018-07-10 International Business Machines Corporation Dynamically launching inter-dependent applications based on user behavior
US9344508B2 (en) 2013-03-13 2016-05-17 International Business Machines Corporation Dynamically launching inter-dependent applications based on user behavior
US11257117B1 (en) 2014-06-25 2022-02-22 Experian Information Solutions, Inc. Mobile device sighting location analytics and profiling system
US11620677B1 (en) 2014-06-25 2023-04-04 Experian Information Solutions, Inc. Mobile device sighting location analytics and profiling system
US20160182673A1 (en) * 2014-12-22 2016-06-23 Barak KINARTI Dynamic cache injector
US9767309B1 (en) 2015-11-23 2017-09-19 Experian Information Solutions, Inc. Access control system for implementing access restrictions of regulated database records while identifying and providing indicators of regulated database records matching validation criteria
US10685133B1 (en) 2015-11-23 2020-06-16 Experian Information Solutions, Inc. Access control system for implementing access restrictions of regulated database records while identifying and providing indicators of regulated database records matching validation criteria
US11748503B1 (en) 2015-11-23 2023-09-05 Experian Information Solutions, Inc. Access control system for implementing access restrictions of regulated database records while identifying and providing indicators of regulated database records matching validation criteria
US10019593B1 (en) 2015-11-23 2018-07-10 Experian Information Solutions, Inc. Access control system for implementing access restrictions of regulated database records while identifying and providing indicators of regulated database records matching validation criteria
US11550886B2 (en) 2016-08-24 2023-01-10 Experian Information Solutions, Inc. Disambiguation and authentication of device users
US10678894B2 (en) 2016-08-24 2020-06-09 Experian Information Solutions, Inc. Disambiguation and authentication of device users
US11403539B2 (en) 2018-06-28 2022-08-02 International Business Machines Corporation Pattern-optimized session logs for improved web analytics
US11416760B2 (en) * 2018-11-29 2022-08-16 Sap Se Machine learning based user interface controller
US11682041B1 (en) 2020-01-13 2023-06-20 Experian Marketing Solutions, Llc Systems and methods of a tracking analytics platform
US11720377B2 (en) 2020-07-10 2023-08-08 Navan, Inc. Methods and systems for dynamically generating contextual user interface elements

Also Published As

Publication number Publication date
AU2002352446A1 (en) 2003-07-15
GB0130744D0 (en) 2002-02-06
WO2003056430A3 (en) 2004-07-15
GB2383505B (en) 2004-03-31
WO2003056430A2 (en) 2003-07-10
GB2383505A (en) 2003-06-25
US20050066011A1 (en) 2005-03-24
EP1459184A2 (en) 2004-09-22
AU2002352446A8 (en) 2003-07-15

Similar Documents

Publication Publication Date Title
US7152018B2 (en) System and method for monitoring usage patterns
US7392160B2 (en) System and method for monitoring usage patterns
US8972530B2 (en) Method of data collection among participating content providers in a distributed network
KR101588428B1 (en) Method of data collection in a distributed network
US8484283B2 (en) Method and system for mitigating automated agents operating across a distributed network
EP2332063B1 (en) Uniquely identifying network-distributed devices without explicitly provided device or user identifying information
US7181488B2 (en) System, method and computer program product for presenting information to a user utilizing historical information about the user
US6981017B1 (en) Predictive pre-download using normalized network object identifiers
US20080086524A1 (en) Method and system for identifying valid users operating across a distributed network
US20140365564A1 (en) Network Communication Using Identifiers Mappable To Resource Locators
US20050267973A1 (en) Customizable and measurable information feeds for personalized communication
JP2000148675A (en) Device and method for providing customized advertisement on www
KR20100080799A (en) Approach for identifying and providing targeted content to a network client with reduced impact to the service provider
EP2702747A1 (en) Privacy protection in recommendation services
KR20020097291A (en) Method for analyzing log of wireless internet
WO2015055231A1 (en) Information on navigation behavior of web page users
Nelte et al. Cookies: weaving the Web into a state
Artail et al. A framework for identifying the linkability between Web servers for enhanced internet computing and E-commerce
Sridhar A Study on Web Usage Mining
KR20070038060A (en) Method for providing keyword ad
JP2001109711A (en) Information management system
KR20030072017A (en) System for Providing Internet Ad Coressponds to Client's Unique Indentifier
KR20070038062A (en) System for providing wireless ad
KR20070038061A (en) System for providing wireless ad
KR20070038059A (en) Method for providing internet ad

Legal Events

Date Code Title Description
AS Assignment

Owner name: SEARCHSPACE LIMITED, UNITED KINGDOM

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:WICKS, TONY;REEL/FRAME:015389/0780

Effective date: 20040811

STCF Information on status: patent grant

Free format text: PATENTED CASE

FEPP Fee payment procedure

Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

CC Certificate of correction
AS Assignment

Owner name: FORTENT LIMITED, UNITED KINGDOM

Free format text: CHANGE OF NAME;ASSIGNOR:SEARCHSPACE LIMITED;REEL/FRAME:019036/0097

Effective date: 20061201

FEPP Fee payment procedure

Free format text: PAYER NUMBER DE-ASSIGNED (ORIGINAL EVENT CODE: RMPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

FEPP Fee payment procedure

Free format text: PAT HOLDER NO LONGER CLAIMS SMALL ENTITY STATUS, ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: STOL); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

FPAY Fee payment

Year of fee payment: 4

SULP Surcharge for late payment
FEPP Fee payment procedure

Free format text: PAYER NUMBER DE-ASSIGNED (ORIGINAL EVENT CODE: RMPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

AS Assignment

Owner name: GORMANDIZE LLC, DELAWARE

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:FORTENT LIMITED;REEL/FRAME:028069/0115

Effective date: 20120227

CC Certificate of correction
FPAY Fee payment

Year of fee payment: 8

AS Assignment

Owner name: CHEMTRON RESEARCH LLC, DELAWARE

Free format text: MERGER;ASSIGNOR:GORMANDIZE LLC;REEL/FRAME:037404/0373

Effective date: 20150826

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 12TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1553)

Year of fee payment: 12

AS Assignment

Owner name: INTELLECTUAL VENTURES ASSETS 166 LLC, DELAWARE

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:CHEMTRON RESEARCH LLC;REEL/FRAME:057270/0863

Effective date: 20210809

AS Assignment

Owner name: ALTO DYNAMICS, LLC, GEORGIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:INTELLECTUAL VENTURES ASSETS 166 LLC;REEL/FRAME:058537/0869

Effective date: 20210825