IP Library Granted Patent US 10,257,253
Granted Patent B1
US 10,257,253 · App. 15/190,927 · Granted Apr 9, 2019

Systems, methods, and media for correlating information corresponding to multiple related frames on a web page

Inventors: Micah Freedman (Fairfax, CA); David Joseph Marquard, III (New York, NY); Moshe Silberman (Brooklyn, NY); Neil Wiltshire (Brooklyn, NY); Xinbei Zhang (Elmhurst, NY)
Assignee: Integral Ad Science, Inc.
H04L67/02G06F17/2247
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,257,253
App. No.
15/190,927
Granted
Apr 9, 2019
Kind
B1
Abstract

Systems, methods, and media for correlating information corresponding to multiple related frames on a web page are provided. In some embodiments, a method for identifying corresponding iframes on a web page to a server is provided, the method comprising: loading a web page including a plurality of iframes; receiving the requested content and identifying information for a first iframe; loading an event listener; determining a location of the first iframe in the structure of the web page; transmitting a message to a second iframe including the first identifying information and location of the first iframe; receiving, using the event listener, a message from the second iframe including second identifying information and location of the second iframe; determining that the second iframe is nested within the first iframe; and transmitting a third message to a server including at least the second identifying information and location of the second iframe.

Claims (58)

1. A method for identifying corresponding iframes on a web page to a server, the method comprising:

loading a web page including a plurality of iframes;

requesting first content for a first iframe of the plurality of iframes;

receiving the requested content for the first iframe over the Internet and first identifying information;

receiving instructions over the Internet to load an event listener in association with the first iframe;

loading the event listener in association with the first iframe;

determining a location of the first iframe in a structure of the web page;

transmitting a first message to at least a second iframe of the plurality of iframes that includes at least the first identifying information and information identifying the location of the first iframe in the structure of the web page;

receiving, using the event listener, a second message from the second iframe that includes at least second identifying information associated with the second iframe and information identifying a location of the second iframe in the structure of the web page;

determining that the second iframe is nested within the first iframe based on the information identifying the location of the second iframe; and

transmitting a third message to a server including a structural accounting of iframes associated with the web page, wherein the structural accounting is represented in a tree structure that includes at least the first identifying information, the second identifying information, the information identifying the location of the first iframe in the structure of the web page, and the information identifying the location of the second iframe in the structure of the web page.

2. The method of claim 1 , wherein transmitting the first message to the second iframe comprises using the function window.postMessage to send the first message to the second iframe through the top level window of the web browser.

3. The method of claim 1 , further comprising:

receiving, using the event listener, a fourth message from a third iframe that includes at least third identifying information associated with the third iframe and information identifying a location of the third iframe in the structure of the web page;

determining that the first iframe is nested within the third iframe based on the information identifying the location of the third iframe; and

wherein the third message also includes the third identifying information and information identifying the location of the third iframe in the structure of the web page.

4. The method of claim 3 , wherein the second message and the fourth message each include timing information indicating when the respective message was sent.

5. The method of claim 4 , further comprising, determining a latency for the second message and the fourth message, respectively, based on a time when the message was received and the time when the message was sent, wherein the third message further includes the latency determined for each of the second message and the fourth message.

6. The method of claim 3 , further comprising formatting the third message such that information for the first frame comes after information for the third frame and information for the second frame comes after information for the first frame.

7. A system for identifying corresponding iframes on a web page to a server, the system comprising:

a hardware processor that is programmed to:

load a web page including a plurality of iframes;

request first content for a first iframe of the plurality of iframes;

receive the requested content for the first iframe over the Internet and first identifying information;

receive instructions over the Internet to load an event listener in association with the first iframe;

load the event listener in association with the first iframe;

determine a location of the first iframe in a structure of the web page;

transmit a first message to at least a second iframe of the plurality of iframes that includes at least the first identifying information and information identifying the location of the first iframe in the structure of the web page;

receive, using the event listener, a second message from the second iframe that includes at least second identifying information associated with the second iframe and information identifying a location of the second iframe in the structure of the web page;

determine that the second iframe is nested within the first iframe based on the information identifying the location of the second iframe; and

transmit a third message to a server including a structural accounting of iframes associated with the web page, wherein the structural accounting is represented in a tree structure that includes at least the first identifying information, the second identifying information, the information identifying the location of the first iframe in the structure of the web page, and the information identifying the location of the second iframe in the structure of the web page.

8. The system of claim 7 , wherein transmitting the first message to the second iframe comprises using the function window.postMessage to send the first message to the second iframe through the top level window of the web browser.

9. The system of claim 7 , wherein the hardware processor is further programmed to:

receive, using the event listener, a fourth message from a third iframe that includes at least third identifying information associated with the third iframe and information identifying a location of the third iframe in the structure of the web page;

determine that the first iframe is nested within the third iframe based on the information identifying the location of the third iframe; and

wherein the third message also includes the third identifying information and information identifying the location of the third iframe in the structure of the web page.

10. The system of claim 9 , wherein the second message and the fourth message each include timing information indicating when the respective message was sent.

11. The system of claim 10 , wherein the hardware processor is further programmed to determine a latency for the second message and the fourth message, respectively, based on a time when the message was received and the time when the message was sent, wherein the third message further includes the latency determined for each of the second message and the fourth message.

12. The system of claim 9 , wherein the hardware processor is further programmed to format the third message such that information for the first frame comes after information for the third frame and information for the second frame comes after information for the first frame.

13. A non-transitory computer-readable medium containing computer executable instructions that, when executed by a processor, cause the processor to perform a method for identifying corresponding iframes on a web page to a server, the method comprising:

loading a web page including a plurality of iframes;

requesting first content for a first iframe of the plurality of iframes;

receiving the requested content for the first iframe over the Internet and first identifying information;

receiving instructions over the Internet to load an event listener in association with the first iframe;

loading the event listener in association with the first iframe;

determining a location of the first iframe in a structure of the web page;

transmitting a first message to at least a second iframe of the plurality of iframes that includes at least the first identifying information and information identifying the location of the first iframe in the structure of the web page;

receiving, using the event listener, a second message from the second iframe that includes at least second identifying information associated with the second iframe and information identifying a location of the second iframe in the structure of the web page;

determining that the second iframe is nested within the first iframe based on the information identifying the location of the second iframe; and

transmitting a third message to a server including a structural accounting of iframes associated with the web page, wherein the structural accounting is represented in a tree structure that includes at least the first identifying information, the second identifying information, the information identifying the location of the first iframe in the structure of the web page, and the information identifying the location of the second iframe in the structure of the web page.

14. The non-transitory computer-readable medium of claim 13 , wherein transmitting the first message to the second iframe comprises using the function window.postMessage to send the first message to the second iframe through the top level window of the web browser.

15. The non-transitory computer-readable medium of claim 13 , wherein the method further comprises:

receiving, using the event listener, a fourth message from a third iframe that includes at least third identifying information associated with the third iframe and information identifying a location of the third iframe in the structure of the web page;

determining that the first iframe is nested within the third iframe based on the information identifying the location of the third iframe; and

wherein the third message also includes the third identifying information and information identifying the location of the third iframe in the structure of the web page.

16. The non-transitory computer-readable medium of claim 15 , wherein the second message and the fourth message each include timing information indicating when the respective message was sent.

17. The non-transitory computer-readable medium of claim 16 , wherein the method further comprises, determining a latency for the second message and the fourth message, respectively, based on a time when the message was received and the time when the message was sent, wherein the third message further includes the latency determined for each of the second message and the fourth message.

18. The non-transitory computer-readable medium of claim 15 , wherein the method further comprises formatting the third message such that information for the first frame comes after information for the third frame and information for the second frame comes after information for the first frame.

Assignments (9)
RELEASE OF SECURITY INTEREST Recorded Jan 23, 2026
From: PNC BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
To: INTEGRAL AD SCIENCE, INC.
Reel/Frame 073560/0357 →
RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL, RECORDED ON SEPTEMBER 29, 2021 AT REEL/FRAME 57673/0653 Recorded Jan 9, 2026
From: PNC BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
To: INTEGRAL AD SCIENCE, INC.
Reel/Frame 074280/0981 →
PATENT SECURITY AGREEMENT Recorded Jan 9, 2026
From: INTEGRAL AD SCIENCE, INC.
To: ROYAL BANK OF CANADA, AS ADMINISTRATIVE AGENT
Reel/Frame 074280/0900 →
PATENT SECURITY AGREEMENT Recorded Sep 29, 2021
From: INTEGRAL AD SCIENCE, INC.
To: PNC BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
Reel/Frame 057673/0653 →
RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL AT REEL/FRAME NO. 46594/0001 Recorded Sep 29, 2021
From: GOLDMAN SACHS BDC, INC., AS COLLATERAL AGENT
To: INTEGRAL AD SCIENCE, INC.
Reel/Frame 057673/0706 →
TERMINATION AND RELEASE OF INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Jul 20, 2018
From: SILICON VALLEY BANK
To: INTEGRAL AD SCIENCE, INC.
Reel/Frame 046615/0943 →
PATENT SECURITY AGREEMENT Recorded Jul 20, 2018
From: INTEGRAL AD SCIENCE, INC.
To: GOLDMAN SACHS BDC, INC., AS COLLATERAL AGENT
Reel/Frame 046594/0001 →
SECURITY INTEREST Recorded Jul 24, 2017
From: INTEGRAL AD SCIENCE, INC.
To: SILICON VALLEY BANK
Reel/Frame 043305/0443 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 13, 2017
From: FREEDMAN, MICAH; MARQUARD III, DAVID JOSEPH; SILBERMAN, MOSHE; WILTSHIRE, NEIL; ZHANG, XINBEI
To: INTEGRAL AD SCIENCE, INC.
Reel/Frame 040966/0455 →