IP Library Granted Patent US 10,438,248
Granted Patent B2
US 10,438,248 · App. 14/609,258 · Granted Oct 8, 2019

Systems and methods for determining advertising services at multiples times for delivering to devices from any ad source

Inventors: Arvind Gupta (San Carlos, CA); Wayne Chan (Millbrae, CA); Daniel Kang (San Francisco, CA); Michael Deignan (San Francisco, CA); Sasha Solomon (San Francisco, CA); Raymond Myers (Foster City, CA)
Assignee: Vungle, Inc.
G06Q30/0277H04L43/0894H04L65/604
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,438,248
App. No.
14/609,258
Granted
Oct 8, 2019
Kind
B2
Abstract

Methods and systems are described for providing advertising services in a predictive manner to a device with an advertising exchange. In one embodiment, a system receives a configuration call from a device upon initiation of a software application and associated advertising services software on the device. The system generates, prior to a predicted ad play event on the device, a predictive ad request for obtaining at least one advertisement (ad) from at least one of an ad store and an advertising exchange prior to the predicted ad play event. The at least one ad is stored on the device prior to an actual ad play event. The system determines, just prior to the actual ad play event, a bandwidth for a connection between the device and the system. The system determines if any ad source includes at least one ad that is more likely to convert or cause user interaction than the ads stored on the device based on the bandwidth for the connection between the device and the system.

Claims (69)

1. A system, comprising:

an ad store of the system to store advertisements (ads);

an ad server coupled to the ad store, the ad server includes a storage medium to store one or more software programs and processing logic that is configured to execute instructions of at least one software program to:

generate with the system, prior to a predicted ad play event to display on a wireless device, a predictive ad request that is based on the predicted ad play event;

determine a first bandwidth at a first time for a network connection between one or more participants of an advertising exchange and the system,

determine a second bandwidth at a second time for a network connection between the wireless device and the system,

process the predictive ad request to determine available options to obtain at least one advertisement (ad) in time for the predicted ad play event based on the first bandwidth and the second bandwidth,

access the ad store of the system for at least one ad when the second bandwidth is sufficient to obtain the at least one ad in time for the predicted ad play event,

perform an ad auction with the ad exchange in real time prior to the predicted ad play event and access the ad exchange for at least one ad when the first bandwidth is sufficient to obtain the at least one ad in time for the predicted ad play event, and

select, based on anticipated likelihood of converting, at least one ad among a cached ad stored on the wireless device, the at least one ad from the ad store, and the at least one ad from the ad exchange.

2. The system of claim 1 , wherein the processing logic is further configured to execute instructions of at least one software program to:

store the selected at least one ad on the wireless device prior to an actual ad play event when the at least one ad is selected from the ad store or the ad exchange;

determine a third bandwidth at a third time for the network connection between the one or more participants of the ad exchange and the system;

determine a fourth bandwidth at a fourth time for the network connection between the wireless device and the system; and

determine if at least one ad is available from the ad store or the ad exchange that is more likely to convert than the ads stored on the wireless device.

3. The system of claim 2 , wherein the processing logic is further configured to execute instructions of at least one software program to: select, based on anticipated likelihood of converting, at least one ad from the ad store, the ad exchange, or stored on the wireless device when sufficient bandwidth is available for obtaining the at least one ad from the ad store or the ad exchange to the wireless device in time for the ad play event.

4. The system of claim 3 , wherein the processing logic is further configured to execute instructions of at least one software program to: select at least one ad from the stored ads on the wireless device when sufficient bandwidth is not available for obtaining at least one ad from the ad store or the ad exchange to the wireless device in time for the ad play event.

5. The system of claim 1 , wherein the processing logic is further configured to execute instructions of at least one software program to: access the advertising exchange based on the predictive ad request; and generate an auction based on different business rules including at least one of a floor price and inventory allocation.

6. The system of claim 5 , wherein the processing logic is further configured to execute instructions of at least one software program to: send a predictive ad exchange request to each participant of the auction with the predictive ad exchange request including configurable parameters including at least one of ad length, bit rate for playing the ad, ad categories, age ratings, a limit for a number of redirects to minimize latency, and a floor price; receive ad exchange responses from one or more participants of the auction; process the ad exchange responses; and determine which of the one or more participants if any will serve at least one ad based on a conversion rate of at least one ad from the ad exchange responses for the predicted ad play event.

7. A machine-accessible non-transitory medium containing executable computer program instructions which when executed by a data processing system cause said system to perform a method, the method comprising:

generating with the system, prior to a predicted ad play event to display on a wireless device, a predictive ad request that is based on the predicted ad play event;

determining a first bandwidth at a first time for a network connection between one or more participants of an advertising exchange and the system;

determining a second bandwidth at a second time for a network connection between the wireless device and the system;

processing the predictive ad request to determine available options to obtain at least one advertisement (ad) in time for the predicted ad play event based on the first bandwidth and the second bandwidth;

accessing the ad store of the system for at least one ad when the second bandwidth is sufficient to obtain the at least one ad in time for the predicted ad play event;

performing an ad auction with the ad exchange in real time prior to the predicted ad play event and access the ad exchange for at least one ad when the first bandwidth is sufficient to obtain the at least one ad in time for the predicted ad play event; and

selecting, based on anticipated likelihood of converting, at least one ad among a cached ad stored on the wireless device, the at least one ad from the ad store, and the at least one ad from the ad exchange.

8. The machine-accessible non-transitory medium of claim 7 , wherein the method further comprises:

storing the selected at least one ad on the wireless device prior to an actual ad play event when the at least one ad is selected from the ad store or the ad exchange;

determining a third bandwidth at a third time for the network connection between the one or more participants of the ad exchange and the system;

determining a fourth bandwidth at a fourth time for the network connection between the wireless device and the system; and

determining if at least one ad is available from the ad store or the ad exchange that is more likely to convert than the ads stored on the wireless device.

9. The machine-accessible non-transitory medium of claim 8 , wherein the method further comprises:

selecting, based on anticipated likelihood of converting, at least one ad from the ad store, the ad exchange, or stored on the wireless device when sufficient bandwidth is available for obtaining the at least one ad from the ad store or the ad exchange to the wireless device in time for the ad play event.

10. The machine-accessible non-transitory medium of claim 9 , wherein the method further comprises: selecting at least one ad from the stored ads on the wireless device when sufficient bandwidth is not available for obtaining at least one ad from the ad store or the ad exchange to the wireless device in time for the ad play event.

11. The machine-accessible non-transitory medium of claim 7 , wherein the method further comprises: accessing the advertising exchange based on the predictive ad request; and generating an auction based on different business rules including at least one of a floor price and inventory allocation.

12. The machine-accessible non-transitory medium of claim 11 , wherein the method further comprises: sending a predictive ad exchange request to each participant of the auction with the predictive ad exchange request including configurable parameters including at least one of ad length, bit rate for playing the ad, ad categories, age ratings, a limit for a number of redirects to minimize latency, and a floor price; receiving ad exchange responses from one or more participants of the auction; process the ad exchange responses; and determining which of the one or more participants if any will serve at least one ad based on a conversion rate of at least one ad from the ad exchange responses for the predicted ad play event.

13. A method for providing advertising services for a wireless device comprising:

initiating a software application on a wireless device;

generating with the system, prior to a predicted ad play event to display on a wireless device, a predictive ad request that is based on the predicted ad play event;

determining a first bandwidth at a first time for a network connection between one or more participants of an advertising exchange and a system;

determining a second bandwidth at a second time for a network connection between the wireless device and the system;

processing the predictive ad request to determine available options to obtain at least one advertisement (ad) in time for the predicted ad play event based on the first bandwidth and the second bandwidth;

accessing an ad store of the system for at least one ad when the second bandwidth is sufficient to obtain the at least one ad in time for the predicted ad play event;

performing an ad auction with the ad exchange in real time prior to the predicted ad play event and access the ad exchange for at least one ad when the first bandwidth is sufficient to obtain the at least one ad in time for the predicted ad play event; and

selecting, based on anticipated likelihood of converting, at least one ad among a cached ad stored on the wireless device, the at least one ad from the ad store, and the at least one ad from the ad exchange.

14. The method of claim 13 , further comprises:

storing the selected at least one ad on the wireless device prior to an actual ad play event when the at least one ad is selected from the ad store or the ad exchange;

determining a third bandwidth at a third time for the network connection between the one or more participants of the ad exchange and the system;

determining a fourth bandwidth at a fourth time for the network connection between the wireless device and the system; and

determining if at least one ad is available from the ad store or the ad exchange that is more likely to convert than the ads cached on the wireless device.

15. The method of claim 14 , further comprises: selecting, based on anticipated likelihood of converting, at least one ad from the ad store, the ad exchange, or cached on the wireless device when sufficient bandwidth is available for obtaining the at least one ad from the ad store or the ad exchange to the wireless device in time for the ad play event.

16. The method of claim 13 , further comprises: selecting at least one ad from the cached ads on the wireless device when sufficient bandwidth is not available for obtaining at least one ad from the ad store or the ad exchange to the wireless device in time for the ad play event.

17. A machine-accessible non-transitory medium containing executable computer program instructions which when executed by a wireless device cause said wireless device to perform a method, the method comprising:

initiating a software application on the wireless device;

generating with the wireless device, prior to a predicted ad play event to display on the wireless device, a predictive ad request that is based on the predicted ad play event;

determining a first bandwidth at a first time for a network connection between one or more participants of an advertising exchange and an ad system;

determining a second bandwidth at a second time for a network connection between the wireless device and the ad system;

processing the predictive ad request to determine available options to obtain at least one advertisement (ad) in time for the predicted ad play event based on the first bandwidth and the second bandwidth;

accessing an ad store of the ad system for at least one ad when the second bandwidth is sufficient to obtain the at least one ad in time for the predicted ad play event;

access the ad exchange having an ad auction in real time prior to the predicted ad play event for at least one ad when the first bandwidth is sufficient to obtain the at least one ad in time for the predicted ad play event; and

selecting, based on anticipated likelihood of converting, at least one ad among a cached ad stored on the wireless device, the at least one ad from the ad store, and the at least one ad from the ad exchange.

18. The machine-accessible non-transitory medium of claim 17 , wherein the method further comprises:

storing the selected at least one ad on the wireless device prior to an actual ad play event when the at least one ad is selected from the ad store or the ad exchange;

determining a third bandwidth at a third time for the network connection between the one or more participants of the ad exchange and the system;

determining a fourth bandwidth at a fourth time for the network connection between the wireless device and the system; and

determining if at least one ad is available from the ad store or the ad exchange that is more likely to convert than the ads stored on the wireless device.

19. The machine-accessible non-transitory medium of claim 18 , wherein the method further comprises: selecting, based on anticipated likelihood of converting, at least one ad from the ad store, the ad exchange, or stored on the wireless device when sufficient bandwidth is available for obtaining the at least one ad from the ad store or the ad exchange to the wireless device in time for the ad play event.

20. The machine-accessible non-transitory medium of claim 19 , wherein the method further comprises: selecting at least one ad from the stored ads on the wireless device when sufficient bandwidth is not available for obtaining at least one ad from the ad store or the ad exchange to the wireless device in time for the ad play event.

Assignments (4)
RELEASE OF SECURITY INTEREST IN PATENTS Recorded Sep 30, 2021
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: VUNGLE, INC.
Reel/Frame 057677/0598 →
PATENT SECURITY AGREEMENT Recorded Sep 30, 2021
From: VUNGLE, INC.; TRESENSA TECHNOLOGIES, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 057677/0618 →
SECURITY INTEREST Recorded Oct 1, 2019
From: VUNGLE, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 050583/0408 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 16, 2019
From: GUPTA, ARVIND; CHAN, WAYNE; KANG, DANIEL; DEIGNAN, MICHAEL; SOLOMON, SASHA; MYERS, RAYMOND
To: VUNGLE, INC.
Reel/Frame 050383/0584 →
Continuity (3)
Continuation In Part 14260155 · Apr 23, 2014
Provisional Application 61974981 · Apr 3, 2014
Related Publication 20150287105A1 · Oct 8, 2015