Systems and methods for co-browsing
AssigneeCapital One Services, LLC
InventorsByron Romon Walker, Connor Thomas Marcum
Life of this patent
Estimating the term…
Abstract
The present disclosed technology relates to systems and methods for synchronizing the website displayed by two computing devices. Embodiments of the disclosed technology include methods for transmitting the contents of a Document Object Model displayed on a customer device to a customer service device. Embodiments of the disclosed technology further include methods to transmit Shadow DOM elements from a customer device to a customer service device.
Claims25
A method for co-browsing, comprising the steps of:
- parsing, using a browser displaying a document on a first computing device, a HTML5 web component;
- producing a Document Object Model (DOM) tree data structure from the parsed HTML5 web component;
- identifying, in the DOM tree data structure and by the first computing device, a plurality of shadow roots, each with corresponding shadow elements;
- attaching a mutation observer module to each shadow root of the plurality of shadow roots;
- detecting, with the mutation observer module, a change in the shadow root;
- transmitting, from the first computing device directly to a second computing device, identifying information of the shadow element and a copy of the shadow element;
- transmitting, from the first computing device directly to the second computing device, and in response to the detected change in the shadow element, the identifying information of the shadow element and shadow element change information describing the detected change in the shadow element;
- aggregating changes detected by the attached mutation observers of the plurality of shadow roots by polling each of the attached mutation observers for modification information;
- adding obtained modification information to a queue;
- and
- periodically transmitting the obtained modification information in the queue directly to the second computing device according to queue transmission criteria.
(canceled)
A method for co-browsing, comprising the steps of:
- transmitting a document rendered by a browser of a first computer to a remote computer;
- producing, by the first computer, a Document Object Model (DOM) tree data structure from a parsed HTML5 web component of the document;
- identifying, from the DOM tree data structure, a plurality of HTML5 elements of the document that contain a shadow root;
- attaching a mutation observer to the shadow root of each of the identified elements containing a shadow root;
- aggregating changes detected by the shadow root mutation observers for each of the identified elements containing a shadow root;
- and
- transmitting, to the remote computer, modification information comprising identifying information for the identified elements and change information associated with the changes detected by the shadow root mutation observers for each of the identified elements containing a shadow root;
- wherein the step of aggregating changes comprises:
- polling each of the shadow root mutation observers for modification information;
- and
- adding obtained modification information to a queue;
- and
- wherein the step of transmitting modification information comprises periodically transmitting the obtained modification information in the queue to a remote server according to queue transmission criteria.
(canceled)
A method for co-browsing, comprising the steps of:
- transmitting a software module from a server to a first remote computing device, wherein the software module causes a browser at the first remote computing device to perform the steps of:
- transmitting a document rendered by the browser running on the first remote computing device to a second remote computing device;
- producing, by the first remote computing device, a Document Object Model (DOM) tree data structure from a parsed HTML5 web component of the document;
- identifying, from the DOM tree data structure, a plurality of HTML5 elements of the document that contain a shadow root;
- attaching a mutation observer to the shadow root of each of the identified elements containing a shadow root;
- aggregating changes detected by the attached mutation observers for each of the identified elements containing a shadow root;
- and
- transmitting modification information comprising identifying information for the identified elements and change information associated with the changes detected by the shadow root mutation observers for each of the identified elements containing a shadow root;
- wherein the step of aggregating changes comprises providing a callback function to each of the shadow root mutation observers to add observed mutations to a queue;
- and
- wherein the transmitting modification information further comprises:
- periodically transmitting obtained modification data in the queue to the server according to queue transmission criteria.
(canceled)
A method for co-browsing, comprising the steps of:
- receiving, at a first computing device, a document rendered by a browser of a second computing device during a browsing session;
- rendering the document at the first computing device;
- subscribing, by the first computing device, to a topic corresponding to the browsing session;
- receiving information from the browser of the second device, the information comprising identifying information produced by identifying a first element containing first shadow root from a Document Object Model (DOM) tree data structure derived from a parsed HTML5 web component of the document on the browser of the second device, and the contents of the first shadow root;
- identifying a corresponding element in the document at the first computing device;
- and
- updating the document such that the corresponding element comprises a second shadow root and contains the contents of the first shadow root;
- wherein the information received from the browser of the second computing device is published to the topic corresponding to the browsing session at a co-browsing server;
- and
- wherein the receiving information from the browser of the second computing device further comprises:
- receiving from the co-browsing server the information from the topic corresponding to the browsing session.
Dependencies are inferred from the claim text.