IP Library Granted Patent US 10,757,209
Granted Patent B2
US 10,757,209 · App. 16/188,157 · Granted Aug 25, 2020

Systems, methods, and apparatus to process background requests while monitoring network media

Inventors: Achilleas Papakostas (Dallas, TX); Susan Cimino (Tampa, FL)
Assignee: The Nielsen Company (US), LLC
H04L67/22H04L43/028H04L43/106H04L67/02H04L67/28H04L67/2819H04L67/32H04L67/325
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,757,209
App. No.
16/188,157
Granted
Aug 25, 2020
Kind
B2
Abstract

Methods, apparatus, systems, and articles of manufacture to monitor mobile Internet usage are disclosed. Example apparatus disclosed herein to monitor application usage associated with a device include a request analyzer to detect a burst of logged requests based on respective timestamps included in the logged requests, the logged requests obtained from a proxy server in communication with the device. The request analyzer is also to differentiate between foreground requests and background requests included in the burst of logged requests based on the respective timestamps. Disclosed example apparatus further include a duration calculator to determine a presentation duration for a first application executed by the device based on at least a subset of the foreground requests identified in the burst of logged requests.

Claims (53)

1. An apparatus to monitor application usage associated with a device, the apparatus comprising:

a request analyzer to:

detect a burst of logged requests based on respective timestamps included in the logged requests, the logged requests obtained from a proxy server in communication with the device; and

differentiate between foreground requests and background requests included in the burst of logged requests based on the respective timestamps; and

a duration calculator to determine a presentation duration for a first application executed by the device based on at least a subset of the foreground requests identified in the burst of logged requests.

2. The apparatus of claim 1 , wherein the request analyzer is to compare a difference between the respective timestamps of two consecutive logged requests to a threshold time period to determine whether to include the two consecutive logged requests in the burst of logged requests.

3. The apparatus of claim 1 , wherein to differentiate between foreground requests and background requests included in the burst of logged requests, the request analyzer is to compare a timestamp included in a last logged request of the burst to a timestamp of a next subsequent logged request following the last logged request of the burst to determine whether the next subsequent logged request following the last logged request of the burst occurred at least a threshold time period after the last logged request of the burst.

4. The apparatus of claim 3 , wherein the last logged request of the burst is associated with the first application, and the request analyzer is to determine the last logged request of the burst corresponds to a first foreground request associated with the first application when the next subsequent logged request following the last logged request of the burst occurred at least the threshold time period after the last logged request of the burst.

5. The apparatus of claim 4 , wherein the threshold time period is a first threshold time period, and when the next subsequent logged request following the last logged request of the burst did not occur at least the threshold time period after the last logged request of the burst, the request analyzer is to determine the last logged request of the burst corresponds to the first foreground request associated with the first application when:

a group of logged requests preceding the last logged request of the burst indicate that two application sessions each lasting no more than a second threshold time period preceded the last logged request of the burst;

the next subsequent logged request following the last logged request is associated with a second application different than the first application and occurred at least a third threshold time period after the last logged request of the burst, the third threshold time period being less than the first threshold time period; and

a next subsequent logged request following the last logged request and associated with the first application occurred at least the first threshold time period after the last logged request of the burst.

6. The apparatus of claim 5 , wherein when the next subsequent logged request following the last logged request of the burst did not occur at least the threshold time period after the last logged request of the burst, the request analyzer is to determine the last logged request of the burst corresponds to a background request when at least one of:

the group of logged requests preceding the last logged request of the burst indicate that two application sessions each lasting no more than the second threshold time period did not precede the last logged request of the burst;

the next subsequent logged request following the last logged request and associated with the first application did not occur at least the first threshold time period after the last logged request of the burst; or

the next subsequent logged request following the last logged request and associated with the second application did not occur at least the third threshold time period after the last logged request of the burst.

7. The apparatus of claim 4 , wherein the request analyzer is to associate the first foreground request with a default presentation time, and the duration calculator is to determine the presentation duration for the first application based on the default presentation time associated with the first foreground request.

8. A non-transitory computer readable medium comprising computer readable instructions that, when executed, cause a processor to at least:

detect a burst of logged requests based on respective timestamps included in the logged requests, the logged requests obtained from a proxy server in communication with a device;

differentiate between foreground requests and background requests included in the burst of logged requests based on the respective timestamps; and

determine a presentation duration for a first application executed by the device based on at least a subset of the foreground requests identified in the burst of logged requests.

9. The non-transitory computer readable medium of claim 8 , wherein the instructions, when executed, cause the processor to compare a difference between the respective timestamps of two consecutive logged requests to a threshold time period to determine whether to include the two consecutive logged requests in the burst of logged requests.

10. The non-transitory computer readable medium of claim 8 , wherein the instructions, when executed, cause the processor to compare a timestamp included in a last logged request of the burst to a timestamp of a next subsequent logged request following the last logged request of the burst to determine whether the next subsequent logged request following the last logged request of the burst occurred at least a threshold time period after the last logged request of the burst.

11. The non-transitory computer readable medium of claim 10 , wherein the last logged request of the burst is associated with the first application, and the instructions, when executed, cause the processor to determine the last logged request of the burst corresponds to a first foreground request associated with the first application when the next subsequent logged request following the last logged request of the burst occurred at least the threshold time period after the last logged request of the burst.

12. The non-transitory computer readable medium of claim 11 , wherein the threshold time period is a first threshold time period, and when the next subsequent logged request following the last logged request of the burst did not occur at least the threshold time period after the last logged request of the burst, the instructions, when executed, cause the processor to determine the last logged request of the burst corresponds to the first foreground request associated with the first application when:

a group of logged requests preceding the last logged request of the burst indicate that two application sessions each lasting no more than a second threshold time period preceded the last logged request of the burst;

the next subsequent logged request following the last logged request is associated with a second application different than the first application and occurred at least a third threshold time period after the last logged request of the burst, the third threshold time period being less than the first threshold time period; and

a next subsequent logged request following the last logged request and associated with the first application occurred at least the first threshold time period after the last logged request of the burst.

13. The non-transitory computer readable medium of claim 12 , wherein when the next subsequent logged request following the last logged request of the burst did not occur at least the threshold time period after the last logged request of the burst, the instructions, when executed, cause the processor to determine the last logged request of the burst corresponds to a background request when at least one of:

the group of logged requests preceding the last logged request of the burst indicate that two application sessions each lasting no more than the second threshold time period did not precede the last logged request of the burst;

the next subsequent logged request following the last logged request and associated with the first application did not occur at least the first threshold time period after the last logged request of the burst; or

the next subsequent logged request following the last logged request and associated with the second application did not occur at least the third threshold time period after the last logged request of the burst.

14. The non-transitory computer readable medium of claim 11 , wherein the instructions, when executed, cause the processor to:

associate the first foreground request with a default presentation time; and

determine the presentation duration for the first application based on the default presentation time associated with the first foreground request.

15. A method to monitor application usage associated with a device, the method comprising:

detecting, by executing an instruction with a processor, a burst of logged requests based on respective timestamps included in the logged requests, the logged requests obtained from a proxy server in communication with a device;

differentiating, by executing an instruction with the processor, between foreground requests and background requests included in the burst of logged requests based on the respective timestamps; and

determining, by executing an instruction with the processor, a presentation duration for a first application executed by the device based on at least a subset of the foreground requests identified in the burst of logged requests.

16. The method of claim 15 , wherein the detecting of the burst of logged requests includes comparing a difference between the respective timestamps of two consecutive logged requests to a threshold time period to determine whether to include the two consecutive logged requests in the burst of logged requests.

17. The method of claim 15 , wherein the differentiating between the foreground requests and the background requests includes comparing a timestamp included in a last logged request of the burst to a timestamp of a next subsequent logged request following the last logged request of the burst to determine whether the next subsequent logged request following the last logged request of the burst occurred at least a threshold time period after the last logged request of the burst.

18. The method of claim 17 , wherein the last logged request of the burst is associated with the first application, and the differentiating between the foreground requests and the background requests includes determining the last logged request of the burst corresponds to a first foreground request associated with the first application when the next subsequent logged request following the last logged request of the burst occurred at least the threshold time period after the last logged request of the burst.

19. The method of claim 18 , wherein the threshold time period is a first threshold time period, and when the next subsequent logged request following the last logged request of the burst did not occur at least the threshold time period after the last logged request of the burst, the differentiating between the foreground requests and the background requests includes determining the last logged request of the burst corresponds to the first foreground request associated with the first application when:

a group of logged requests preceding the last logged request of the burst indicate that two application sessions each lasting no more than a second threshold time period preceded the last logged request of the burst;

the next subsequent logged request following the last logged request is associated with a second application different than the first application and occurred at least a third threshold time period after the last logged request of the burst, the third threshold time period being less than the first threshold time period; and

a next subsequent logged request following the last logged request and associated with the first application occurred at least the first threshold time period after the last logged request of the burst.

20. The method of claim 19 , wherein when the next subsequent logged request following the last logged request of the burst did not occur at least the threshold time period after the last logged request of the burst, the differentiating between the foreground requests and the background requests includes determining the last logged request of the burst corresponds to a background request when at least one of:

the group of logged requests preceding the last logged request of the burst indicate that two application sessions each lasting no more than the second threshold time period did not precede the last logged request of the burst;

the next subsequent logged request following the last logged request and associated with the first application did not occur at least the first threshold time period after the last logged request of the burst; or

the next subsequent logged request following the last logged request and associated with the second application did not occur at least the third threshold time period after the last logged request of the burst.

21. The method of claim 18 , further including:

associating the first foreground request with a default presentation time; and

determining the presentation duration for the first application based on the default presentation time associated with the first foreground request.

Assignments (8)
RELEASE (REEL 054066 / FRAME 0064) Recorded May 11, 2023
From: CITIBANK, N.A.
To: A. C. NIELSEN COMPANY, LLC; EXELATE, INC.; GRACENOTE, INC.; GRACENOTE MEDIA SERVICES, LLC; THE NIELSEN COMPANY (US), LLC; NETRATINGS, LLC
Reel/Frame 063605/0001 →
RELEASE (REEL 053473 / FRAME 0001) Recorded May 11, 2023
From: CITIBANK, N.A.
To: A. C. NIELSEN COMPANY, LLC; EXELATE, INC.; GRACENOTE, INC.; GRACENOTE MEDIA SERVICES, LLC; THE NIELSEN COMPANY (US), LLC; NETRATINGS, LLC
Reel/Frame 063603/0001 →
SECURITY INTEREST Recorded May 8, 2023
From: GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; GRACENOTE, INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC
To: ARES CAPITAL CORPORATION
Reel/Frame 063574/0632 →
SECURITY INTEREST Recorded Apr 28, 2023
From: GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; GRACENOTE, INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC
To: CITIBANK, N.A.
Reel/Frame 063561/0381 →
SECURITY AGREEMENT Recorded Jan 31, 2023
From: GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; GRACENOTE, INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC
To: BANK OF AMERICA, N.A.
Reel/Frame 063560/0547 →
CORRECTIVE ASSIGNMENT TO CORRECT THE PATENTS LISTED ON SCHEDULE 1 RECORDED ON 6-9-2020 PREVIOUSLY RECORDED ON REEL 053473 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE SUPPLEMENTAL IP SECURITY AGREEMENT. Recorded Oct 7, 2020
From: A.C. NIELSEN (ARGENTINA) S.A.; A.C. NIELSEN COMPANY, LLC; ACN HOLDINGS INC.; ACNIELSEN CORPORATION; ACNIELSEN ERATINGS.COM; AFFINNOVA, INC.; ART HOLDING, L.L.C.; ATHENIAN LEASING CORPORATION; CZT/ACN TRADEMARKS, L.L.C.; EXELATE, INC.; GRACENOTE, INC.; GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; NETRATINGS, LLC; NIELSEN AUDIO, INC.; NIELSEN CONSUMER INSIGHTS, INC.; NIELSEN CONSUMER NEUROSCIENCE, INC.; NIELSEN FINANCE CO.; NIELSEN FINANCE LLC; NIELSEN INTERNATIONAL HOLDINGS, INC.; NIELSEN MOBILE, LLC; NMR INVESTING I, INC.; TCG DIVESTITURE INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC; VIZU CORPORATION; VNU MARKETING INFORMATION, INC.; NMR LICENSING ASSOCIATES, L.P.; NIELSEN HOLDING AND FINANCE B.V.; THE NIELSEN COMPANY B.V.; VNU INTERNATIONAL B.V.
To: CITIBANK, N.A
Reel/Frame 054066/0064 →
SUPPLEMENTAL SECURITY AGREEMENT Recorded Jun 9, 2020
From: A. C. NIELSEN COMPANY, LLC; ACN HOLDINGS INC.; ACNIELSEN CORPORATION; ACNIELSEN ERATINGS.COM; AFFINNOVA, INC.; ART HOLDING, L.L.C.; ATHENIAN LEASING CORPORATION; CZT/ACN TRADEMARKS, L.L.C.; EXELATE, INC.; GRACENOTE, INC.; GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; NETRATINGS, LLC; NIELSEN AUDIO, INC.; NIELSEN CONSUMER INSIGHTS, INC.; NIELSEN CONSUMER NEUROSCIENCE, INC.; NIELSEN FINANCE CO.; NIELSEN FINANCE LLC; NIELSEN INTERNATIONAL HOLDINGS, INC.; NIELSEN MOBILE, LLC; NIELSEN UK FINANCE I, LLC; NMR INVESTING I, INC.; TCG DIVESTITURE INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC; VIZU CORPORATION; VNU MARKETING INFORMATION, INC.; NMR LICENSING ASSOCIATES, L.P.; NIELSEN HOLDING AND FINANCE B.V.; THE NIELSEN COMPANY B.V.; VNU INTERNATIONAL B.V.
To: CITIBANK, N.A.
Reel/Frame 053473/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 27, 2019
From: PAPAKOSTAS, ACHILLEAS; CIMINO, SUSAN
To: THE NIELSEN COMPANY (US), LLC
Reel/Frame 048451/0535 →