IP Library Granted Patent US 9,104,669
Granted Patent B1
US 9,104,669 · App. 11/390,461 · Granted Aug 11, 2015

Audio/video advertising network

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 9,104,669
App. No.
11/390,461
Granted
Aug 11, 2015
Kind
B1
Abstract

Owners of editorial video and/or audio content that is delivered over the Internet or other networks can enroll in an advertising affiliate network. Video and/or audio advertisements, or other marketing messages, are then delivered into the video and/or audio content when the content is accessed by a user. Bypassing of the advertising content may be prevented.

Claims (82)

1. A method comprising the following operations performed by one or more processors:

receiving, from a client system, a request for media content, wherein the client system uses a uniform resource locator to generate the request;

determining, with at least one processor, whether the uniform resource locator used by the client system to generate the request was obtained by the client system from a playlist provided to the client system, wherein the playlist includes a sequence of one or more uniform resource locators corresponding to advertising content and media content;

determining, with the at least one processor, whether the client system presented advertising content corresponding to a previous uniform resource locator within a predetermined time period, the previous uniform resource locator coming before the uniform resource locator used by the client system to generate the request in the sequence of the playlist;

providing access to the media content when the uniform resource locator used by the client system to generate the request was obtained by the client system from the provided playlist and when the client presented advertising content corresponding to the previous uniform resource locator within the predetermined time period; and

preventing access to the media content when the uniform resource locator used by the client system to generate the request was not obtained by the client system from the provided playlist or when the client did not present advertising content corresponding to the previous uniform resource locator within the predetermined time period.

2. The method of claim 1 further comprising:

receiving a playlist status message indicating whether the client presented content corresponding to the previous uniform resource locator.

3. The method of claim 1 wherein determining whether the uniform resource locator used by the client system to generate the request was obtained by the client system from a playlist provided to the client system comprises:

generating a dynamic uniform resource locator for the requested media content; and

verifying that the uniform resource locator used by the client system to generate the request is the dynamic uniform resource locator.

4. The method of claim 1 wherein determining whether the uniform resource locator used by the client system to generate the request was obtained by the client system from a playlist provided to the client system comprises:

determining that the uniform resource locator used by the client system to generate the request includes a key value; and

determining whether the included key value is valid.

5. The method of claim 4 wherein determining whether the included key value is valid comprises:

generating a hash value based on the uniform resource locator used by the client system to generate the request;

combining the hash value with the included key value and a shared key value to generate a time value; and

determining whether the generated time value is within a time threshold.

6. A method comprising the following operations performed by one or more processors:

receiving, from a client system, an initial request for media content;

generating, with at least one processor, a content key;

generating a playlist, the generated playlist including a sequence of at least a first playlist identifier and a second playlist identifier, the first playlist identifier associated with advertising content and the second playlist identifier including the content key and associated with the requested media content;

sending the playlist to the client system;

receiving a request including the second playlist identifier for the media content;

verifying, with at least one processor, that the content key of the received second playlist identifier is valid;

providing access to the media content associated with the second playlist identifier when the content key of the received second playlist identifier is valid, a request including the first playlist identifier for the advertising content was received before the request including the second playlist identifier, and the advertising content was presented within a predetermined time period; and

preventing access to the media content associated with the second playlist identifier when the content key of the second playlist identifier is not valid or a request including the first playlist identifier was not received before the request including the second playlist identifier or the advertising content was not presented within the predetermined time period.

7. The method of claim 6 wherein generating the content key includes:

generating a hash value based on the identifier of the media content included in the request for the playlist; and

combining the hash value with a shared key and a first time to generate the content key.

8. The method of claim 7 wherein verifying that the included content key is valid includes:

generating a hash value based on the identifier of the media content included in the request for the playlist;

combining the hash value with the shared key and the content key to obtain the first time; and

determining whether the obtained first time is within a predetermined amount of a second time.

9. The method of claim 8 wherein:

the first time is the time at which the request for the playlist is received; and

the second time is the time at which the request for the media content is received.

10. The method of claim 6 wherein:

the second playlist identifier associated with the media content includes a uniform resource locator for the media content; and

generating the second playlist identifier associated with the media content includes appending the content key to the uniform resource locator for the media content.

11. The method of claim 6 wherein:

the second playlist identifier associated with the media content includes a unique content identification value; and

generating the second playlist identifier associated with the media content includes determining a uniform resource locator for the media content based on the unique content identification value and appending the content key to the uniform resource locator for the media content.

12. A system comprising:

a playlist server computer system configured to provide playlists to client systems, the playlists including a sequence of one or more uniform resource locators corresponding to advertising content and media content; and

an affiliate media server computer system configured to:

receive, from a client system, a request for media content, wherein the client system uses a uniform resource locator to generate the request;

verify that the uniform resource locator used by the client system to generate the request was obtained by the client system from a playlist provided to the client system by the playlist server computer system;

verify that the client system requested advertising content using a previous uniform resource locator and presented the advertising content within a predetermined time period, the previous uniform resource locator coming before the uniform resource locator used by the client system to generate the request in the sequence of the playlist;

provide access to the requested media content to the client system when the uniform resource locator used by the client system to generate the request was obtained by the client system from the playlist provided to the client system by the playlist server computer system and when the client system requested advertising content using the previous uniform resource locator and presented the advertising content within the predetermined time period; and

prevent access to the requested media content to the client system when the uniform resource locator used by the client system to generate the request was not obtained by the client system from the playlist provided to the client system by the playlist server computer system or when the client system did not request advertising content using the previous uniform resource locator.

13. The system of claim 12 wherein, to determine whether the uniform resource locator used by the client system to generate the request was obtained by the client system from a playlist provided to the client system by a playlist server computer system, the affiliate media server computer system is configured to:

send a playlist status request to the playlist server computer system; and

receive a response to the playlist status request from the playlist server computer system, wherein the response from the playlist server computer system indicates whether the client system requested content using the previous uniform resource locator.

14. The system of claim 12 wherein, to determine whether the uniform resource locator used by the client system to generate the request was obtained by the client system from a playlist provided to the client system by a playlist server computer system, the affiliate media server computer system is configured to:

generate a dynamic uniform resource locator for the requested media content; and

verify that the uniform resource locator used by the client system to generate the request is the dynamic uniform resource locator.

15. The system of claim 12 wherein, to determine whether the uniform resource locator used by the client system to generate the request was obtained by the client system from a playlist provided to the client system by a playlist server computer system, the affiliate media server computer system is configured to:

determine that the uniform resource locator used by the client system to generate the request includes a key value generated by the playlist server computer system; and

determine whether the included key value is valid.

16. The system of claim 15 wherein, to determine whether the included key value is valid, the affiliate media server computer system is configured to:

generate a hash value based on the uniform resource locator used by the client system to generate the request;

combine the hash value with the included key value and a shared key value to generate a time value; and

determine whether the generated time value is within a time threshold.

17. A non-transitory computer-readable medium for storing a computer program, the computer program comprising instructions for causing a computer to:

receive, from a client system, a request for media content, wherein the client system uses a uniform resource locator to generate the request;

determine whether the uniform resource locator used by the client system to generate the request was obtained by the client system from a playlist provided to the client system, wherein the playlist includes a sequence of one or more uniform resource locators corresponding to advertising content and media content;

determine whether the client system presented advertising content corresponding to a previous uniform resource locator within a predetermined time period, the previous uniform resource locator coming before the uniform resource locator used by the client system to generate the request in the sequence of the playlist;

provide access to the media content when the uniform resource locator used by the client system to generate the request was obtained by the client system from a provided playlist and when the client presented advertising content corresponding to the previous uniform resource locator within the predetermined time period; and

prevent access to the media content when the uniform resource locator used by the client system to generate the request was not obtained by the client system from a provided playlist or when the client did not present advertising content corresponding to the previous uniform resource locator within the predetermined time period.

18. The non-transitory computer-readable medium of claim 17 , the computer program comprising instructions further causing the computer to:

receive a playlist status message indicating whether the client presented content corresponding to the previous uniform resource locator.

19. The non-transitory computer-readable medium of claim 17 wherein, to determine whether the uniform resource locator used by the client system to generate the request was obtained by the client system from a playlist provided to the client system, the computer program comprises instructions for causing the computer to:

generate a dynamic uniform resource locator for the requested media content; and

verify that the uniform resource locator used by the client system to generate the request is the dynamic resource locator.

20. The non-transitory computer-readable medium of claim 17 wherein, to determine whether the uniform resource locator used by the client system to generate the request was obtained by the client system from a playlist provided to the client system by a playlist server, the computer program comprises instructions for causing the computer to:

determine that the uniform resource locator used by the client system to generate the request includes a key value; and

determine whether the included key value is valid.

21. The non-transitory computer-readable medium of claim 20 wherein, to determine whether the included key is valid, the computer program comprises instructions for causing the computer to:

generate a hash value based on the uniform resource locator used by the client system to generate the request;

combine the hash value with the included key value and a shared key value to generate a time value; and

determine whether the generated time value is within a time threshold.

Assignments (8)
CHANGE OF NAME Recorded Mar 22, 2022
From: VERIZON MEDIA INC.
To: YAHOO AD TECH LLC
Reel/Frame 059471/0514 →
CHANGE OF NAME Recorded Jan 28, 2021
From: OATH (AMERICAS) INC.
To: VERIZON MEDIA INC.
Reel/Frame 055144/0372 →
MERGER Recorded Jan 28, 2021
From: ADVERTISING.COM LLC
To: OATH (AMERICAS) INC.
Reel/Frame 055054/0947 →
MERGER Recorded Jun 12, 2012
From: LIGHTNINGCAST LLC
To: ADVERTISING.COM LLC
Reel/Frame 028362/0483 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS Recorded Nov 16, 2010
From: BANK OF AMERICA, N A
To: AOL INC; AOL ADVERTISING INC; GOING INC; LIGHTNINGCAST LLC; MAPQUEST, INC; NETSCAPE COMMUNICATIONS CORPORATION; QUIGO TECHNOLOGIES LLC; SPHERE SOURCE, INC; TACODA LLC; TRUVEO, INC; YEDDA, INC
Reel/Frame 025323/0416 →
SECURITY AGREEMENT Recorded Dec 14, 2009
From: AOL INC.; AOL ADVERTISING INC.; BEBO, INC.; ICQ LLC; GOING, INC.; LIGHTNINGCAST LLC; MAPQUEST, INC.; NETSCAPE COMMUNICATIONS CORPORATION; QUIGO TECHNOLOGIES LLC; SPHERE SOURCE, INC.; TACODA LLC; TRUVEO, INC.; YEDDA, INC.
To: BANK OF AMERICAN, N.A. AS COLLATERAL AGENT
Reel/Frame 023649/0061 →
MERGER Recorded Nov 14, 2006
From: LIGHTNINGCAST, INC.
To: LIGHTNINGCAST LLC
Reel/Frame 018518/0259 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 19, 2006
From: JARDINS, G. THOMAS; MARKLEY, DAVID; RAGHUVAMSHI, VINAYAK; MACISAAC, THOMAS W.
To: LIGHTNINGCAST, INC.
Reel/Frame 017808/0348 →