IP Library Granted Patent US 10,102,306
Granted Patent B2
US 10,102,306 · App. 15/145,170 · Granted Oct 16, 2018

Patching base document object model (DOM) with DOM-differentials to generate high fidelity replay of webpage user interactions

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,102,306
App. No.
15/145,170
Granted
Oct 16, 2018
Kind
B2
Abstract

Generating replay of a webpage is provided. In response to determining that a document object model (DOM) replay of the webpage is a differential DOM replay, a base DOM of the webpage, base DOM differentials of the webpage, and user interactions with the webpage are retrieved. The base DOM of the webpage is patched with the base DOM differentials of the webpage to generate a patched DOM corresponding to the webpage. The user interactions with the webpage are overlaid on the patched DOM to generate the replay of the webpage.

Claims (44)

1. A computer-implemented method for generating replay of a webpage, the computer-implemented method comprising:

responsive to a computer determining that a document object model (DOM) replay of the webpage is a differential DOM replay, retrieving, by the computer, a base DOM of the webpage, base DOM differentials of the webpage, and user interactions with the webpage;

patching, by the computer, the base DOM of the webpage with the base DOM differentials of the webpage to generate a patched DOM corresponding to the webpage; and

overlaying, by the computer, the user interactions with the webpage on the patched DOM to generate the replay of the webpage.

2. The computer-implemented method of claim 1 further comprising:

responsive to the computer determining that the DOM replay is not the differential DOM replay based on webpage replay information maintained by the computer, replaying, by the computer, the webpage using entire captured DOMs of the webpage.

3. The computer-implemented method of claim 1 , wherein the base DOM differentials of the webpage represents at least one change to the base DOM of the webpage and not the base DOM of the webpage in its entirety.

4. The computer-implemented method of claim 3 further comprising:

receiving, by the computer, a request via a network from a webpage replay client for replay of the webpage interacted with by a set of one or more users, wherein the base DOM differentials represent a plurality of different changes to the base DOM of the webpage during a particular session.

5. The computer-implemented method of claim 1 further comprising:

determining, by the computer, a type of replay of the webpage based on information in an agent embedded in a web application corresponding to the webpage.

6. The computer-implemented method of claim 1 further comprising:

receiving, by the computer, via a network a captured base DOM of the webpage, captured base DOM differentials of the webpage, and captured user interactions with the webpage during a session.

7. The computer-implemented method of claim 6 , wherein the captured base DOM of the webpage, the captured base DOM differentials of the webpage, and the captured user interactions with the webpage are included in a set of snapshots.

8. The computer-implemented method of claim 1 , wherein the base DOM differentials of the webpage include a flag indicating that the base DOM differentials are changes to the base DOM only and not an entire base DOM.

9. The computer-implemented method of claim 1 further comprising:

applying, by the computer, privacy rules to the replay of the webpage, wherein the privacy rules define how personal information of a user interacting with the webpage captured during a session is handled.

10. The computer-implemented method of claim 9 further comprising:

adding, by the computer, context information to the base DOM differentials of the webpage to apply the privacy rules using the base DOM differentials without having to reconstruct an entire DOM.

11. The computer-implemented method of claim 1 further comprising:

applying, by the computer, replay rules to enhance the replay of the webpage, wherein the replay rules modify session data during the replay of the webpage so that the replay looks as close as possible to an original experience of a visitor to the webpage.

12. A computer system for generating replay of a webpage, the computer system comprising:

a bus system;

a storage device connected to the bus system, wherein the storage device stores program instructions; and

a processor connected to the bus system, wherein the processor executes the program instructions to:

retrieve a base document object model (DOM) of the webpage, base DOM differentials of the webpage, and user interactions with the webpage in response to determining that a DOM replay of the webpage is a differential DOM replay;

patch the base DOM of the webpage with the base DOM differentials of the webpage to generate a patched DOM corresponding to the webpage; and

overlay the user interactions with the webpage on the patched DOM to generate the replay of the webpage.

13. The computer system of claim 12 , wherein the processor further executes the program instructions to:

replay the webpage using entire captured DOMs of the webpage in response to determining that the DOM replay is not the differential DOM replay based on webpage replay information maintained by the computer system.

14. A computer program product for generating replay of a webpage, the computer program product comprising a non-transitory computer readable storage medium having program instructions embodied therewith, the program instructions executable by a computer to cause the computer to perform a method comprising:

responsive to the computer determining that a document object model (DOM) replay of the webpage is a differential DOM replay, retrieving, by the computer, a base DOM of the webpage, base DOM differentials of the webpage, and user interactions with the webpage;

patching, by the computer, the base DOM of the webpage with the base DOM differentials of the webpage to generate a patched DOM corresponding to the webpage; and

overlaying, by the computer, the user interactions with the webpage on the patched DOM to generate the replay of the webpage.

15. The computer program product of claim 14 further comprising:

responsive to the computer determining that the DOM replay is not the differential DOM replay based on webpage replay information maintained by the computer, replaying, by the computer, the webpage using entire captured DOMs of the webpage.

16. The computer program product of claim 14 , wherein the base DOM differentials of the webpage represents at least one change to the base DOM of the webpage and not the base DOM of the webpage in its entirety.

17. The computer program product of claim 16 further comprising:

receiving, by the computer, a request via a network from a webpage replay client for replay of the webpage interacted with by a set of one or more users, wherein the base DOM differentials represent a plurality of different changes to the base DOM of the webpage during a particular session.

18. The computer program product of claim 14 further comprising:

determining, by the computer, a type of replay of the webpage based on information in an agent embedded in a web application corresponding to the webpage.

19. The computer program product of claim 14 further comprising:

receiving, by the computer, via a network a captured base DOM of the webpage, captured base DOM differentials of the webpage, and captured user interactions with the webpage during a session.

20. The computer program product of claim 19 , wherein the captured base DOM of the webpage, the captured base DOM differentials of the webpage, and the captured user interactions with the webpage are included in a set of snapshots.

Assignments (6)
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Oct 19, 2022
From: GOLDMAN SACHS SPECIALTY LENDING GROUP, L.P.
To: ACOUSTIC, L.P.
Reel/Frame 061713/0942 →
SECURITY INTEREST Recorded Oct 19, 2022
From: ACOUSTIC, L.P.
To: ALTER DOMUS (US) LLC, AS COLLATERAL AGENT
Reel/Frame 061720/0361 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 5, 2019
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: ACOUSTIC, L.P.
Reel/Frame 049964/0263 →
SECURITY INTEREST Recorded Jun 28, 2019
From: ACOUSTIC, L.P.
To: GOLDMAN SACHS SPECIALTY LENDING GROUP, L.P.
Reel/Frame 049629/0649 →
CORRECTIVE ASSIGNMENT TO CORRECT THE SPELLING OF INVENTOR #4'S FIRST NAME, WHICH SHOULD BE SPELLED HAIXIAO PREVIOUSLY RECORDED ON REEL 038445 FRAME 0692. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Feb 8, 2019
From: LE BRAS, YVES; MADDALI, LALITH KUMAR; PUNJABI, MANOJ; YU, HAIXIAO
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 048288/0646 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 3, 2016
From: LE BRAS, YVES; MADDALI, LALITH KUMAR; PUNJABI, MANOJ; YU, HIAXIAO
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 038445/0692 →
Cited By (1)
US 12,547,745