Method and system for selecting content items to be presented to a viewer
First Claim
Patent Images
1. A centralized system to select particular content items to be presented to a viewer from a plurality of content items, comprising:
- a server operable to;
receive a content selection request, wherein the content selection request comprises first data describing the viewer;
receive data describing a plurality of content items and a corresponding plurality of policies, wherein each content item is associated with a policy;
determine data elements necessary to evaluate the plurality of policies, wherein the data elements comprise at least a portion of the first data describing the viewer, second data describing the viewer received from an external data source, data describing a context of the content selection request, and data describing content items previously provided to the viewer;
for each of the data elements that does not have a current value present at the server, determine an external data source comprising the data element and request the current value of the data element from the data source;
execute a rules engine, wherein the rules engine is operable to evaluate the plurality of policies in parallel based on the current values for the data elements necessary to evaluate the plurality of policies, in order to determine particular content items the viewer is eligible to receive in response to the content selection request;
rank the content items the viewer is eligible to receive in a prioritized list;
support a graphical user interface (GUI) operable to facilitate building and managing the policies;
maintain an application program interface (API) library operable to manage communications between a requesting service and the rules engine;
provide to the viewer a predetermined number of the highest prioritized content items from the prioritized list; and
store the content items provided to the viewer as content items previously provided to the viewer.
5 Assignments
0 Petitions
Accused Products
Abstract
A rules evaluation engine operable to select optimal content for presentation to the viewer at each presentation opportunity. The engine evaluates segmentation rules associated with each particular content item in parallel, and then selects the best content to be presented. Priorities determined during evaluation sort out which content items will be presented. Real time dynamic enrichment of the decision making context occurs by retrieving additional information required to evaluate the rules. Logging and administrative processes for managing the segmentation rules are also realized.
-
Citations
21 Claims
-
1. A centralized system to select particular content items to be presented to a viewer from a plurality of content items, comprising:
a server operable to; receive a content selection request, wherein the content selection request comprises first data describing the viewer; receive data describing a plurality of content items and a corresponding plurality of policies, wherein each content item is associated with a policy; determine data elements necessary to evaluate the plurality of policies, wherein the data elements comprise at least a portion of the first data describing the viewer, second data describing the viewer received from an external data source, data describing a context of the content selection request, and data describing content items previously provided to the viewer; for each of the data elements that does not have a current value present at the server, determine an external data source comprising the data element and request the current value of the data element from the data source; execute a rules engine, wherein the rules engine is operable to evaluate the plurality of policies in parallel based on the current values for the data elements necessary to evaluate the plurality of policies, in order to determine particular content items the viewer is eligible to receive in response to the content selection request; rank the content items the viewer is eligible to receive in a prioritized list; support a graphical user interface (GUI) operable to facilitate building and managing the policies; maintain an application program interface (API) library operable to manage communications between a requesting service and the rules engine; provide to the viewer a predetermined number of the highest prioritized content items from the prioritized list; and store the content items provided to the viewer as content items previously provided to the viewer. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
13. A method to select particular content items to be presented to a viewer from a plurality of content items, comprising:
-
receiving by a server a content selection request for content items to be presented to a viewer from a requesting system, wherein the content selection request comprises first data describing the viewer; receiving by the server data describing a plurality of content items and a corresponding plurality of policies, wherein each content item is associated with a policy; retrieving by the server the plurality of policies; determining data elements required to evaluate the plurality of policies, wherein the data elements required to evaluate the plurality of policies comprise at least a portion of the first data describing the viewer, second data describing the viewer received from an external data source, data describing a context of the content selection request and data describing content items previously provided to the viewer; retrieving current values of the identified data elements required to evaluate the plurality of policies, wherein the retrieving comprises for each of the identified data elements that does not have a current value that is present locally, determining by the server an external data source comprising a current value of the data element and requesting by the server the current value of the data element from the data source; evaluating by the server the plurality of policies in parallel based on the current values for the data elements required to evaluate the plurality of policies to determine content items that the viewer is eligible to receive; prioritizing the content items that the viewer is eligible to receive into a prioritized list by the server; providing to the requesting system by the server a predetermined number of the highest prioritized content items from the prioritized list; and storing by the server the content items provided to the requesting system as content items previously provided to the viewer. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21)
-
Specification