# US 2018/0323985 A1 · System and Method for Monitoring Usage of an Electronic Document

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2018/0323985 A1
- Document ID: US20180323985A1
- Status: Published application
- Kind: A1
- Application number: 15/918,306
- Filed: 2018-03-12
- Published: 2018-11-08
- Earliest claimed: 2013-06-13
- Assignees: Pushfor, Ltd.
- Applicants: Pushfor, Ltd.
- Inventors: John Safa; Lukasz Sielski
- Web page: https://patentgrep.com/patent/US20180323985A1

## CPC

- H04L 12/1813: {for computer conferences, e.g. chat rooms (instant messaging H04L51/04; protocols for multimedia communication H04L65/1101; arrangements for multi-party communication H04L65/403; telephonic conference arrangements H04M3/56; television conference systems H04N7/15)}
- G06F 16/116: {Details of conversion of file system types or formats}
- G06F 16/313: {Selection or weighting of terms for indexing}
- G06F 21/6209: {to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself}
- G06F 21/6218: {to a system of files or objects, e.g. local or distributed file system or database}
- H04L 12/1822: {Conducting the conference, e.g. admission, detection, selection or grouping of participants, correlating users to one or more conference sessions, prioritising transmission}
- H04L 12/1859: {adapted to provide push services, e.g. data channels}
- H04L 51/52: for supporting social networking services
- H04L 63/0245: {Filtering by information in the payload}
- H04L 67/06: specially adapted for file transfer, e.g. file transfer protocol [FTP]
- H04L 67/535: {Tracking the activity of the user (network monitoring arrangements H04L43/00; recording of computer activity G06F11/34)}
- H04W 4/18: Information format or content conversion, e.g. adaptation by the network of the transmitted or received information for the purpose of wireless delivery to users or terminals
- H04W 4/21: for social networking applications
- G06F 2221/2101: Auditing as a secondary aspect
- H04L 51/066: Format adaptation, e.g. format conversion or compression
- H04L 63/10: {for controlling access to devices or network resources}
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)

## Abstract

The invention is to a system and method that utilizes a user's navigation commands in order to track which portions of a document the user has viewed and to determine if such viewing habit meets a predefined viewing requirement.

## Claims

### Claim 1

A system comprised of a server computer in communication with a database and a remote device operated by a user for analyzing the viewing habits of the user of a document comprising:
a subsystem operating on the remote device adapted by logic to display at least a portion of the document on a display screen of the remote device;
a subsystem operating on the remote device adapted by logic to detect and store viewing commands input by the user for adjusting the apparent location in the document or apparent magnification of the viewing screen; and
a subsystem operating on the remote device adapted by logic to transmit to the server the viewing command stream of the user.

### Claim 2 (depends on 1)

The system of claim 1 further comprising:
a subsystem adapted by logic to convert the viewing command stream of the user into at least one heatmap image representing the user viewing command stream for at least one corresponding page of the displayed document.

### Claim 3 (depends on 1)

The system of claim 1 further comprising:
a database comprised of data that represents the aggregated viewing command streams of a plurality of users for a plurality of predefined region in the document as an N dimensional region in an N dimensional space, where N is the number of predefined regions in the plurality.

### Claim 4 (depends on 3)

The system of claim 3 further comprising:
a subsystem adapted by logic to receive the user viewing command stream, generate an N dimensional vector from such command stream and determine whether the N dimensional vector is located within the N dimensional region, or within a predetermined distance from the boundary of the N dimensional region.

### Claim 5 (depends on 1)

The system of claim 1 further comprising:
a database comprised of data representing the aggregated usage habits of a plurality of users of the document.

### Claim 6 (depends on 5)

The system of claim 5 further comprising:
a subsystem adapted by logic to convert the aggregated viewing habits data into at least one heatmap image representing the aggregated user viewing command stream for at least one corresponding page of the displayed document.

### Claim 7 (depends on 1)

The system of claim 1 further comprising:
a subsystem operating on the server to receive the user viewing command stream and determine whether the user viewing command stream meets a predetermined viewing requirement test.

### Claim 8

A system for tracking the viewing habits of a plurality of viewers with regard to an electronic document displayed on the viewers' remote computing device comprising:
a subsystem adapted by logic to receive and display at the remote computing device an electronic document;
a subsystem adapted by logic to receive and store at a server, data representing one or more commands input into the user interface of the remote computing device for navigating the viewing of the document; and
a subsystem adapted by logic to calculate an aggregated viewing habit metric associated with the plurality of viewers and the document, from the stored input command data;

### Claim 9 (depends on 8)

The system of claim 8 further comprising:
a subsystem comprised of logic to receive a command stream data from one of the plurality of viewer's computing device with regard to a predetermined document; and to determine if the one received navigation command stream indicates a viewing habit of the one of the plurality of viewers that is within a tolerated variation threshold of the aggregated viewing habit metric.

### Claim 10 (depends on 8)

The system of claim 8 further comprising:
a subsystem comprised of logic to receive metadata associated with a document that defines bounding boxes within the document; and
a subsystem comprised of logic to use the command stream of a particular one of the plurality of viewers to determine if the one viewer has input navigation commands that moved the apparent viewing window of the document to a location within a region overlapping at least one of the defined bounding boxes.

### Claim 11 (depends on 8)

The system of claim 8 further comprising:
a subsystem comprised of logic to convert the aggregated viewing habit data into a graphical image, said image comprised of at least one colored regions that uses a predetermined mapping of colors to a range of viewing habit amount of that viewer in that region, and the location of the colored region corresponds to the location of the region in the document.

### Claim 12 (depends on 8)

The system of claim 8 further comprising:
a viewing program resident on the remote device adapted by logic to display the received electronic document in an apparent window and respond to the input command stream so as to move the apparent window in response to said command stream to at least one location within the document and to display that location in the apparent window.

### Claim 13 (depends on 8)

The system of claim 8 further comprising:
a database operatively connected to the system by a data network in combination with a server, said database adapted by logic to store data records that associate the viewer, the document and the viewing command data input by the viewer into the remote device while viewing the document.

### Claim 14 (depends on 8)

The system of claim 8 further comprising:
a subsystem adapted by logic to receive a command stream data from one of the plurality of viewer's computing device with regard to a predetermined document; and
determine if the one received navigation command stream indicates a viewing habit of the one of the plurality of viewers that is within a tolerated variation threshold of a predetermined viewing habit metric requirement.

### Claim 15 (depends on 8)

The system of claim 8 further comprising:
a subsystem adapted by logic to receive a command stream data from one of the plurality of viewer's computing device with regard to a predetermined document; and
determine if the one received navigation command stream indicates a viewing habit of the one of the plurality of viewers that is outside a tolerated variation threshold of a predetermined viewing habit metric requirement.

### Claim 16 (depends on 8)

The system of claim 8 further comprising:
a subsystem adapted by logic to determine an N-space locus associated with the aggregated viewing command stream for a subset of the plurality of viewers for a particular document;
a subsystem adapted by logic to determine an N-space vector associated with one of the plurality of viewers; and
a subsystem adapted by logic to determine if the particular viewer's N-space vector is located within the determined N-space locus or within a variance threshold of such N-space locus.

### Claim 17 (depends on 1)

The system of claim 1 further comprising:
a subsystem adapted by logic to convert the received viewing command stream data from the user into at least one heatmap image representing the user's viewing behavior for at least one corresponding page of the displayed document and store the at least one heatmap image.

### Claim 18 (depends on 17)

The system of claim 17 further comprising:
a database comprised of a data record that relates the at least one heatmap image with the document and the user.

### Claim 19

A method executed by a server computer in communication with a database and a remote device operated by a user for analyzing the viewing habits of the user of a document comprising:
displaying at least a portion of the document on a display screen of the remote device;
detecting and storing viewing commands input by the user for adjusting the apparent location in the document or apparent magnification of the viewing screen; and
transmitting to the server the viewing command stream of the user.

### Claim 20 (depends on 19)

The method of claim 19 further comprising:
receiving transmitted viewing command stream; and
converting the viewing command stream of the user into at least one heatmap image representing the user viewing command stream for at least one corresponding page of the displayed document.

### Claim 21 (depends on 19)

The method of claim 19 further comprising:
Storing a database comprised of data that represents the aggregated viewing command streams of a plurality of users for a plurality of predefined region in the document as an N dimensional region in an N dimensional space, where N is the number of predefined regions in the plurality.

### Claim 22 (depends on 3)

The method of claim 3 further comprising:
receiving the user viewing command stream;
generating an N dimensional vector from such command stream; and
determining whether the N dimensional vector is located within the N dimensional region, or within a predetermined distance from the boundary of the N dimensional region.

### Claim 23 (depends on 19)

The method of claim 19 further comprising:
Storing a database comprised of data representing the aggregated usage habits of a plurality of users of the document.

### Claim 24 (depends on 23)

The method of claim 23 further comprising:
converting the aggregated user viewing command stream into at least one heatmap image representing the aggregated viewing habit of a plurality of users for at least one corresponding page of the displayed document.

### Claim 25 (depends on 19)

The method of claim 19 further comprising:
receiving the user viewing command stream; and
determining whether the user viewing command stream meets a predetermined viewing requirement test.

### Claim 26

A method for tracking the viewing habits of a plurality of viewers with regard to an electronic document displayed on the viewers' remote computing device comprising:
receiving and displaying at the remote computing device an electronic document;
receiving and storing at a server, data representing one or more commands input into the user interface of the remote computing device for navigating the viewing of the document; and
calculating an aggregated viewing habit metric associated with the plurality of viewers and the document, from the stored input command data.

### Claim 27 (depends on 26)

The method of claim 26 further comprising:
receiving a command stream data from one of the plurality of viewer's computing device with regard to a predetermined document; and
determining if the one received navigation command stream indicates a viewing habit of the one of the plurality of viewers that is within a tolerated variation threshold of the aggregated viewing habit metric.

### Claim 28 (depends on 26)

The method of claim 26 further comprising:
receiving metadata associated with a document that defines bounding boxes within the document; and
a using the command stream of a particular one of the plurality of viewers to determine if the one viewer has input navigation commands that moved the apparent viewing window of the document to a location within a region overlapping at least one of the defined bounding boxes.

### Claim 29 (depends on 26)

The method of claim 26 further comprising:
converting the aggregated viewing habit data into a graphical image, said image comprised of at least one colored regions that uses a predetermined mapping of colors to a range of viewing habit amount of that viewer in that region, and the location of the colored region corresponds to the location of the region in the document.

### Claim 30 (depends on 26)

The method of claim 26 further comprising:
displaying using a viewing program resident on the remote device the received electronic document in an apparent window; and
responding to the input command stream so as to move the apparent window in response to said command stream to at least one location within the document in order to display that location in the apparent window.

### Claim 31 (depends on 26)

The method of claim 26 further comprising:
storing in a database data records that associate the viewer, the document and the viewing command data input by the viewer into the remote device while viewing the document.

### Claim 32 (depends on 26)

The method of claim 26 further comprising:
receiving a command stream data from one of the plurality of viewer's computing device with regard to a predetermined document; and
determining if the one received navigation command stream indicates a viewing habit of the one of the plurality of viewers that is outside a tolerated variation threshold of a predetermined viewing habit metric requirement.

### Claim 33 (depends on 26)

The method of claim 26 further comprising:
determining an N-space locus associated with the aggregated viewing command stream for a subset of the plurality of viewers for a particular document;
determining an N-space vector associated with one of the plurality of viewers; and
determining if the one viewer's determined N-space vector is located within the determined N-space locus or within a variance threshold of such N-space locus.

### Claim 34 (depends on 26)

The method of claim 26 further comprising:
converting the received viewing command stream data from the user into at least one heatmap image representing the user's viewing behavior for at least one corresponding page of the displayed document and store the at least one heatmap image.

### Claim 35 (depends on 34)

The system of claim 34 further comprising:
storing in a database a data record that relates the at least one heatmap image with the document and the user.
