# US 12,120,125 B2 · Method and apparatus for securely co-browsing documents and media URLs

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

- Number: US 12,120,125 B2
- Document ID: US12120125B2
- Status: Granted
- Kind: B2
- Application number: 17/682,231
- Filed: 2022-02-28
- Published: 2022-09-01
- Granted: 2024-10-15
- Earliest claimed: 2021-02-28
- Assignees: Glance Networks, Inc.
- Applicants: Glance Networks, Inc.
- Inventors: Richard L. Baker; Andrew Norman; Brendan Ronan; Ellis Oliver Jones; Edward F. Hardebeck; Edward J. McGowan; Deborah Mendez
- Web page: https://patentgrep.com/patent/US12120125B2

## CPC

- H04L 63/105: {Multiple levels of security}
- G06F 3/1454: {involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay}
- G06F 16/986: {Document structures and storage, e.g. HTML extensions}
- G06F 40/106: Display of layout of documents; Previewing
- G06F 40/143: Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
- H04L 63/0853: {using an additional device, e.g. smartcard, SIM or a different communication terminal (cryptographic mechanisms or cryptographic arrangements for entity authentication involving additional secure or trusted devices H04L9/3234)}
- H04L 63/104: {Grouping of entities}
- H04L 63/108: {when the policy decisions are valid for a limited amount of time}
- H04L 67/02: based on web technology, e.g. hypertext transfer protocol [HTTP]
- G06F 3/147: using display panels
- G09G 2340/10: Mixing of images, i.e. displayed pixel being the result of an operation, e.g. adding, on the corresponding input pixels
- G09G 2370/027: Arrangements and methods specific for the display of internet documents
- H04L 43/0852: Delays
- H04L 67/1095: Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
- 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)
- G09G: ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION (arrangements for transferring data between digital computers and displays G06F3/14; static indicating arrangements comprising an association of a number of separate sources or light control cells G09F9/00; static indicating arrangements comprising integral associations of a number of light sources H01J, H01K, H10H, H05B33/12; scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission, details thereof H04N1/00)

## Abstract

Secure sharing of a document on a co-browse session is implemented by causing a JavaScript implemented document viewer to create HTML5 description of a rendered view of a document's content, and transmitting the HTML5 description of the rendered view of the document content as a DOM elements on the co-browse session. The rendered view of the document is overlayed on the web page being co-browsed, which enables the participants to the co-browse session to collaboratively view the rendered view of the document. However, since the document itself only resides in the visitor's browser, the document itself is not transmitted on the co-browse session. Media URLs can also be shared, and the participants' views of the audio/video media is synchronized by causing the video to play locally at each participant but synchronized with the visitor. Live video of the participants to the co-browse session is also implemented.

## Claims

### Claim 1

A Method of securely co-browsing documents on a co-browse session, the method including the steps of:
establishing a co-browse session in which a Document Object Model (DOM) describing content of a first browser and changes to the DOM describing changes to the content of the first browser are shared with a second browser, to enable the second browser to recreate the content of the first browser and have a consistent view of the content of the first browser;
selecting a document to be included on the co-browse session;
rendering a view of the document at the first browser using a document viewer implemented using JavaScript in the first browser to create a HyperText Markup Language (HTML) description of the rendered view of the document, the rendered view of the document containing HTML objects that are rendered onto an overlay on the first browser;
incorporating the HTML objects of the document into the DOM describing the content of the first browser;
forwarding the HTML objects as part of the DOM from the first browser to the second browser on the co-browse session; and
deleting the HTML objects of the document and not incorporating the HTML objects of the document into the DOM if not authorized via a dialog displayed in connection with generation of a local preview of the document on the first browser.

### Claim 2 (depends on 1)

The method of claim 1, further comprising storing the HTML description of the rendered view of the file document in browser Random Access Memory (RAM) at the first browser; and
when the co-browse session ends, automatically deleting the HTML objects by the first browser.

### Claim 3 (depends on 1)

The method of claim 1, further comprising receiving the HTML objects by a co-browse service implementing the co-browse session intermediate the first browser and second browser; and
forwarding the HTML objects from the first browser to the second browser without storing a copy of the HTML objects at the co-browse service.

### Claim 4 (depends on 3)

The method of claim 3, further comprising encrypting the HTML objects, by the first browser, before transmitting the HTML objects on the co-browse session.

### Claim 5 (depends on 1)

The method of claim 1, wherein the document is one of a .docx document, a .pdf document, an .xls spreadsheet, and a slide presentation.

### Claim 6 (depends on 1)

The method of claim 1, wherein the content of the first browser includes a web page, and the HTML objects describing the document are overlayed in a modal on top of the web page shown on the first browser and on the second browser.

### Claim 7 (depends on 1)

The method of claim 1, wherein selecting a document to be included on the co-browse session comprises selecting a document resident on a computer hosting the first browser.

### Claim 8 (depends on 1)

The method of claim 1, wherein selecting a document to be included on the co-browse session comprises selecting a document resident on a second computer hosting the second browser;
transmitting the content of the document from the second computer hosting the second browser to a first computer hosting the first browser; and
using the content of the document to render the document into the HTML objects at the first browser.

### Claim 9 (depends on 8)

The method of claim 8, further comprising storing a copy of the selected document on the first computer hosting the first browser.

### Claim 10 (depends on 8)

The method of claim 8, further comprising determining a file type of the selected document by the second browser, and only allowing selection of the document for inclusion on the co-browse session by the second browser when the first browser has a document viewer configured to render documents of the file type.

### Claim 11 (depends on 8)

The method of claim 8, further comprising comparing the selected document against an allowed list of approved files at the second browser, and only allowing selection of the document for inclusion on the co-browse session by the second browser when the selected document is on the list of approved files.

### Claim 12 (depends on 8)

The method of claim 8, further comprising performing a virus or malware scan of the document at the second computer prior to transmitting the content of the document from the second computer hosting the second browser to the first computer hosting the first browser.

### Claim 13 (depends on 1)

The method of claim 1, wherein the rendered view of the document includes only a visible portion of the document.

### Claim 14 (depends on 1)

The method of claim 1, wherein the step of selecting a document further comprises determining a file type of the selected document; and determining if the first browser has a document viewer configured to render documents with that file type into the HTML objects.

### Claim 15 (depends on 14)

The method of claim 14, when the first browser does not have a document viewer configured to render documents of the file type into the HTML objects, the method further comprising prompting the visitor to convert the selected document to a second file type.

### Claim 16 (depends on 14)

The method of claim 14, when the first browser does not have a document viewer configured to render documents of the file type into the HTML objects, the method further comprising automatically converting the selected document to a second file type.

### Claim 17 (depends on 14)

The method of claim 14, when the first browser does not have a document viewer configured to render documents of the file type into the HTML objects, the method further comprising automatically downloading the document viewer for the selected document type.

### Claim 18 (depends on 1)

The method of claim 1, further comprising generating the local preview on the first browser prior to incorporating the HTML objects of the document into the DOM describing the content of the first browser and prior to forwarding the HTML objects as part of DOM from the first browser to the second browser on the co-browse session.

### Claim 19 (depends on 18)

The method of claim 18, further comprising presenting the dialog in connection with the local preview on the first browser, and only incorporating the HTML objects of the document into the DOM describing the content of the first browser and prior to forwarding the HTML objects as part of DOM from the first browser to the second browser on the co-browse session if inclusion of the HTML objects into the DOM is authorized via the dialog.

### Claim 20

A Method of securely co-browsing documents on a co-browse session, the method including the steps of:
establishing a co-browse session in which a Document Object Model (DOM) describing content of a first browser and changes to the DOM describing changes to the content of the first browser are shared with a second browser, to enable the second browser to recreate the content of the first browser and have a consistent view of the content of the first browser;
selecting a document to be included on the co-browse session;
rendering a view of the document to create a HyperText Markup Language (HTML) description containing HTML objects that are rendered onto an overlay on the first browser;
generating a local preview on the first browser prior to incorporating the HTML objects of the document into the DOM describing the content of the first browser and prior to forwarding the HTML objects as part of DOM from the first browser to the second browser on the co-browse session;
presenting a dialog in connection with the local preview on the first browser, and only incorporating the HTML objects of the document into the DOM describing the content of the first browser and prior to forwarding the HTML objects as part of DOM from the first browser to the second browser on the co-browse session if inclusion of the HTML objects into the DOM is authorized via the dialog;
incorporating the HTML objects of the document into the DOM describing the content of the first browser and forwarding the HTML objects as part of the DOM from the first browser to the second browser on the co-browse session if authorized via the dialog; and
deleting the HTML objects of the document and not incorporating the HTML objects of the document into the DOM if not authorized via the dialog.
