Claims
- 1. A method of placing ads on a client, comprising:
receiving notification of a context change in the client; re-evaluating an order of a plurality of potential display ads in response to the context change notification, to yield a next ad to be placed; receiving an ad request; and sending the previously determined next ad to be placed in response to the received ad request.
- 2. The method of claim 1, wherein the context change reflects a change in a video stream being viewed by a user of the client.
- 3. The method of claim 2, wherein the context change includes a channel change.
- 4. The method of claim 1, wherein the re-evaluation of ads is performed asynchronously with a change in the collection of ads.
- 5. The method of claim 1, wherein the re-evaluation of the ordering of the plurality of ads includes re-ordering a heap data structure containing pointers to ones of the plurality of ads.
- 6. The method of claim 1, wherein the re-evaluation of the ordering of the plurality of ads includes a re-ordering of a heap data structure containing pointers to ones of the plurality of ads.
- 7. The method of claim 1, wherein the re-evaluation of the ordering of the plurality of ads includes evaluation of an interpreted placement rule for at least some of the ads.
- 8. The method of claim 1, wherein the client is a video replay system.
- 9. The method of claim 1, wherein the re-evaluation of the ordering of the plurality of ads includes evaluation of a placement value for at least one ad when a trigger parameter of the ad is changed.
- 10. The method of claim 1, wherein the re-evaluation of the plurality of ads includes evaluation of a weight value for at least one of the plurality of ads when a trigger parameter of the ad is changed.
- 11. The method of claim 1, wherein the next ad to be placed is the ad at the top of a heap data structure after re-evaluation of the ordering of the plurality of ads.
- 12. The method of claim 1, wherein receiving an ad request includes receiving an ad request asynchronously to the notification of context change.
- 13. The method of claim 1, wherein sending the previously determined next ad to be placed includes sending an ad on the top of a heap data structure.
- 14. The method of claim 1, wherein sending the previously determined next ad to be placed includes sending a next ad having a highest weighted placement value in accordance with the ads placement rule and weight rule.
- 15. The method of claim 1, further comprising:
re-evaluating the ordering of the plurality of ads after an ad is returned in response to the ad request.
- 16. The method of claim 1, wherein the client is a video replay system.
- 17. The method of claim 1, wherein the next ad to be displayed is a full-page ad.
- 18. The method of claim 1, wherein the next ad to be displayed is a banner ad.
- 19. The method of claim 1, wherein the nest ad to be displayed is to be placed in a predetermined location on a display device.
- 20. The method of claim 1, wherein each of the plurality of ads has an associated rule set containing a placement rule and at least one local parameter value.
- 21. The method of claim 1, wherein at least one of the plurality of ads has an associated placement rule.
- 22. The method of claim 1, wherein at least one of the plurality of ads has an associated weight rule.
- 23. The method of claim 1, wherein at least one of the plurality of ads has an associated expiration rule.
- 24. The method of claim 1, wherein at least one of the plurality of ads has an associated trigger rule.
- 25. The method of claim 1, wherein at least one of the plurality of ads has associated local parameters defined in a rule set of the rule.
- 26. The method of claim 1, wherein the rule set for each rule is transmitted to the client machine in XML format.
- 27. The method of claim 1, wherein at least one global time parameter of the system is updated at a predetermined interval.
- 28. The method of claim 27, wherein the global time parameters is a trigger parameter that causes re-evaluation of an associated ad's placement value when the value of the global time parameter is updated.
- 29. The method of claim 1, wherein a global context parameter of the client is updated when the client context changes.
- 30. The method of claim 29, wherein the global context parameter is a trigger parameter that causes re-evaluation of an associated ad's placement value when the value of the global context parameter is changed.
- 31. The method of claim 1, wherein sending the previously determined next ad includes sending the previously determined next ad when the client enters a pause mode.
- 32. The method of claim 1, wherein sending the previously determined next ad includes sending the previously determined next ad when the client displays a program guide having an area reserved for an ad.
- 33. The method of claim 1, wherein sending the previously determined next ad includes sending the previously determined next ad when the client displays a zone program guide having an area reserved for an ad.
- 34. The method of claim 1, wherein a specific rule for an ad is evaluated following selection of that ad that permits the ad to modify at least one of: its local parameters; its weight; and its location on the heap.
- 35. The method of claim 1, wherein receiving a context change, re-evaluating, receiving an ad request, and sending the next ad to be placed are performed by the client.
- 36. A system, comprising:
a server side system providing a rule set for each ad that can be displayed; a client side system that receives the rule sets and determines a next ad to place in accordance with parameters in the rule set denoting at least one of program context, history of the client side system, a user profile, and a frequency of ad display in the past.
- 37. The system of claim 36, wherein the server side system further provides content, including at least one of a history, video, or sound file.
- 38. A method of displaying an ad on a client-side machine, comprising:
storing a plurality of ads on the client-side machine; evaluating the stored ads whenever a system context change occurs to determine a next ad to be displayed; displaying the next ad to be displayed when the client-side machine encounters an ad display opportunity.
- 39. The method of claim 37, wherein the ad display opportunity is display of a pause ad.
- 40. The method of claim 37, wherein the ad display opportunity is display of a programming guide.
- 41. The method of claim 37, wherein the ad display opportunity is display of a zone programming guide.
- 42. An apparatus to place ads on a client, comprising:
means for receiving notification of a context change in the client; means for re-evaluating an order of a plurality of potential display ads in response to the context change notification, to yield a next ad to be placed; means for receiving an ad request; and means for sending the previously determined next ad to be placed in response to the received ad request.
- 43. The apparatus of claim 41, wherein the client is a video replay system.
- 44. An apparatus for displaying an ad on a video replay machine, comprising:
means for storing a plurality of ads on the video replay machine; means for evaluating the stored ads whenever a system context change occurs to determine a next ad to be displayed; means for displaying the next ad to be displayed when the video replay machine encounters an ad display opportunity.
- 45. The apparatus of claim 43, wherein the ad display opportunity is display of a pause ad.
- 46. The apparatus of claim 43, wherein the ad display opportunity is display of a programming guide.
- 47. The apparatus of claim 43, wherein the ad display opportunity is display of a zone programming guide.
- 48. The apparatus of claim 43, wherein the video replay unit is a client-side machine.
- 49. A computer program product, comprising instructions stored on a computer readable medium, to effect a method comprising:
receiving notification of a context change in the client; re-evaluating an order of a plurality of potential display ads in response to the context change notification, to yield a next ad to be placed; receiving an ad request; and sending the previously determined next ad to be placed in response to the received ad request.
- 50. The computer program product of claim 48, wherein the computer readable medium is within a video replay system.
- 51. A computer program product, comprising instructions stored on a computer readable medium, to effect a method comprising:
storing a plurality of ads on a video replay unit; evaluating the stored ads whenever a system context change occurs to determine a next ad to be displayed; displaying the next ad to be displayed when the video replay unit encounters an ad display opportunity.
- 52. The computer program product of claim 50, wherein the ad display opportunity is display of a pause ad.
- 53. The computer program product of claim 50, wherein the ad display opportunity is display of a programming guide.
- 54. The computer program product of claim 50, wherein the ad display opportunity is display of a zone programming guide.
RELATED APPLICATIONS
[0001] This application claims priority under 35 U.S.C. § 119(e) to both U.S. Provisional Application No. 60/240,715, filed Oct. 15, 2000, and entitled “Method and System for Dynamic Ad Placement,” and U.S. Provisional Application No. 60/240,714, filed Oct. 15, 2000, and entitled “Method and System for Pause Ads,” both of which are incorporated by reference herein in their entirety.
Provisional Applications (2)
|
Number |
Date |
Country |
|
60240715 |
Oct 2000 |
US |
|
60240714 |
Oct 2000 |
US |