This disclosure relates to wireless communications. In particular, the present disclosure relates to wireless communications systems usable for targeted content-message and related transactions.
Mobile Targeted-Content-Message (TCM)-enabled systems can be described as systems capable of delivering targeted content information, such as local weather reports and advertisements targeted to a particular demographic, to wireless communication devices (WCDs), such as cellular telephones or other forms of wireless access terminals (W-ATs). Such systems may also provide a better user experience by presenting non-intrusive targeted-content-messages that are likely to be of interest to a user.
An example of a mobile TCM-enabled system is a mobile advertising system capable of delivering advertisements to wireless communication devices (WCDs). Generally, a mobile advertising system can provide such things as an advertisement sales conduit for a cellular provider to provide advertisements on a W-AT, as well as some form of analytical interface to report back on the performance of various advertisement campaigns. A particular consumer benefit of mobile advertising is that it can provide alternate/additional revenue models for wireless services so as to allow more economical access to the wireless services to those consumers willing to accept advertisements. For example, the revenue generated through advertising may allow W-AT users to enjoy various services without paying the full subscription price usually associated with such services.
In order to increase the effectiveness of TCMs on W-ATs, it can be beneficial to provide targeted information, i.e., TCMs which are deemed likely to be well received by, and/or of likely interest to, a particular person or a designated group of people.
Targeted-Content-Message (TCM) information can be based on immediate needs or circumstances, such as a need to find emergency roadside service or the need for information about a travel route. Targeted-Content-Message information can also be based on specific products or services (e.g., games) for which a user has demonstrated past interest, and/or based on demographics, for example, a determination of an age and income group likely to be interested in a particular product. Targeted Advertisements are an example of TCMs.
Targeted advertisements can provide a number of advantages (over general advertisements) including: (1) in an economic structure based on cost per view, an advertiser may be able to increase the value of his advertising budget by limiting paid advertising to a smaller set of prospects; and (2) as targeted advertisements are likely to represent areas of interest for a particular user, the likelihood that users will respond positively to targeted advertisements increases substantially.
Unfortunately, the information that makes some forms of targeted advertising possible may be restricted due to government regulations and the desire of people to limit the dissemination of their personal information. For example, in the US, such government restrictions include the Graham-Leach-Bliley Act (GLBA), Title 47 of the United States Code, Section 222—“Privacy of Customer Information.” In comparison, the European Union has a policy of protecting “personal data” or “any information relating to an identified or identifiable natural person (‘data subject’); an identifiable person is one who can be identified, directly or indirectly, in particular by reference to an identification number or to one or more factors specific to his physical, physiological, mental, economic, cultural or social identity.” Common carriers also may be restricted from using personal information about their subscribers for marketing purposes. For example, the GLBA prohibits access to individually identifiable customer information, as well as the disclosure of location information, without the express prior authorization of the customer.
Thus, new technology for delivering targeted advertising in a wireless communication environment is desirable.
In an exemplary embodiment, an information transfer method for exchange of information with a wireless access terminal (W-AT) includes receiving a first message from a W-AT, the first message including first information related to targeted-content-message information and/or user profile information provided by the W-AT and an address of the W-AT capable of identifying the W-AT, converting the first message to an anonymized message by replacing the W-AT address with a transaction identifier (ID), transmitting the anonymized message to a remote server, receiving a first response from the remote server, the first response having response information and the anonymized address information, converting the first response to a second response by replacing the transaction ID with the W-AT address, and transmitting the second response to the W-AT.
In another exemplary embodiment, a proxy server capable of transferring information to a wireless access terminal (W-AT) includes means for receiving a first message from a W-AT, the first message including first information related to targeted content message information and/or user profile information provided by the W-AT and an address of the W-AT capable of identifying the W-AT, means for converting the first message to an anonymized message by replacing the W-AT address with a transaction identifier (ID), means for transmitting the anonymized message to a remote server, means for receiving a first response from the remote server, the first response having response information and the transaction ID, means for converting the first response to a second response by replacing the transaction ID with the W-AT address; and means for transmitting the second response to the W-AT by use of the W-AT address information.
In another exemplary embodiment, a proxy server capable of transferring information to a wireless access terminal (W-AT) includes wireless receiving circuitry configured to receive a first message from a W-AT, the first message including first information related to targeted content message information and/or user profile information provided by the W-AT and an address of the W-AT capable of identifying the W-AT, first processing circuitry configured to convert the first message to an anonymized message by replacing the W-AT address with a transaction identifier (ID), first transmitting circuitry configured to transmit the anonymized message to a remote server, first receiving circuitry configured to receive a first response from the remote server, the first response having response information and the transaction ID, second processing circuitry configured to convert the first response to a second response by replacing the transaction ID with the W-AT address, and wireless transmitting circuitry configured to transmit the second response to the W-AT by use of the W-AT address information.
In another exemplary embodiment, a computer program product includes a computer-readable medium that includes a first set of instructions for receiving a first message from a W-AT, the first message including first information related to targeted content message information and/or user profile information provided by the W-AT and an address of the W-AT capable of identifying the W-AT, a second set of instructions for converting the first message to an anonymized message by replacing the W-AT address with a transaction identifier (ID), a third set of instructions for transmitting the anonymized message to a remote server, a fourth set of instructions for receiving a first response from the remote server, the first response having response information and the anonymized address information, a fifth set of instructions for converting the first response to a second response by replacing the transaction ID with the W-AT address, and a sixth set of instructions for transmitting the second response to the W-AT.
In another exemplary embodiment, one or more integrated circuits that together includes wireless receiving circuitry configured to receive a first message from a W-AT, the first message including first information provided by the W-AT and an address of the W-AT capable of identifying the W-AT, first processing circuitry configured to convert the first message to an anonymized message by replacing the W-AT address with a transaction identifier (ID), first transmitting circuitry configured to transmit the anonymized message to a remote server, first receiving circuitry configured to receive a first response from the remote server, the first response having response information and the transaction ID, second processing circuitry configured to convert the first response to a second response by replacing the transaction ID with the W-AT address, and wireless transmitting circuitry configured to transmit the second response to the W-AT by use of the W-AT address information.
In another exemplary embodiment, an apparatus includes processing circuitry; and a memory coupled to the processing circuitry that includes a first set of instructions for receiving a first message from a W-AT, the first message including first information related to targeted content messages provided by the W-AT and an address of the W-AT capable of identifying the W-AT, a second set of instructions for converting the first message to an anonymized message by replacing the W-AT address with a transaction identifier (ID), a third set of instructions for transmitting the anonymized message to a remote server, a fourth set of instructions for receiving a first response from the remote server, the first response having response information and the anonymized address information, a fifth set of instructions for converting the first response to a second response by replacing the transaction ID with the W-AT address, and a sixth set of instructions for transmitting the second response to the W-AT.
The features and nature of the present disclosure will become more apparent from the detailed description set forth below when taken in conjunction with the drawings in which reference characters identify corresponding items and processes throughout.
The terms and respective definitions/descriptions below are provided as a reference to the following disclosure. Note, however, that when applied to certain embodiments, some of the applied definitions/descriptions may be expanded or may otherwise differ with some of the specific language provided below as may be apparent to one of ordinary skill and in light of the particular circumstances.
TCM—Targeted-Content-Message. An advertisement can be an example of a Targeted-Content-Message.
M-TCM-PS—Mobile Targeted-Content-Message Processing System
MAS—Mobile advertising system.
UPG—User Profile Generation Agent
M-TCM-EC—Mobile TCM-Enabled Client
MAEC—Mobile advertising enabled client. This can be an example of a Mobile TCM-Enabled Client
Mobile TCM Provider (M-TCM-P)—A person or an entity that may want to display a targeted-content-message through a targeted-content-message processing system.
Advertiser—A person or an entity that may want to display advertisements through a mobile advertising system (MAS). An advertiser may provide the advertisement data along with respective targeting and playback rules, which may in some instances form advertisement metadata to a MAS. An advertiser is an example of a Mobile TCM Provider.
TCM Metadata—A term used to identify data that can be used to provide additional information about a respective Targeted-Content-Message (TCM).
Advertisement Metadata—A term used to identify data that may be used to provide additional information about a respective advertisement. This may include, but is not limited to, mime type, advertisement duration, advertisement viewing start time, advertisement viewing end time, etc. Respective advertisement targeting and playback rules provided by the advertiser may also get attached to an advertisement as metadata for the advertisement. Advertisement Metadata is an example of TCM metadata.
Application Developer—A person who or an entity that develops an application for the mobile advertising enabled client (MAEC) that can feature advertisements.
System Operator—A person who or entity that operates a MAS.
Third Party Inference Rule Provider—A third party (other than a system operator) who may provide user profile inference rules to be used by a User Profile Generation Agent
User Profile Generation Agent—A functional unit at the client that may receive various pertinent data, such as advertisement inference rules, user behavior from a metric collection agent, location data from a GPS, explicit user preferences entered by a user (if any) and/or user behavior from other client applications, then generate various user profile elements. A User Profile Generation Agent may continuously update a profile based upon information gathered that may be used to characterize user behavior.
User Behavior Synthesizer—A functional device or agent within a User Profile Generation Agent that may be used to receive a variety of data, such as user behavior information, location information and user profile inference rules to generate synthesized profile attributes.
Profile Element Refiner—A functional device or agent within a User Profile Generation Agent that may receive profile attributes generated by a user behavior synthesizer as well as a number of user profile inference rules. A Profile Element Refiner may refine profile attributes, process them through queries sent to a profile attribute processor, and generate user profile elements.
Profile Attribute Processor—A server and/or resident agent of a server that may process profile attribute requests that may require data-intensive lookups, and then respond with refined profile attributes.
TCM Filtering Agent—A client agent that may receiver a number of TCMs with their respective meta-data, TCM targeting rules and TCM filtering rules, then store some or all of the TCMs in a TCM-cache memory. The filtering agent may also take a user profile as input from the User Profile Generation Agent.
Advertisement Filtering Agent—A client agent that may receive a number of advertisements with their respective metadata, advertisement targeting rules and advertisement filter rules, then store some or all of the received advertisements in an advertisement cache memory. The filtering agent may also take a user profile as input from the User Profile Generation Agent. An advertising filtering agent is an example of a TCM filtering agent.
TCM Cache Manager—A client agent that can maintain a targeted content-message cache. A cache manager may take cached targeted content-messages from a filtering agent, and respond to content-message requests from other applications on the access terminal.
Advertisement Cache Manager—A client agent that can maintain an advertisement cache. A cache manager may take cached advertisements from a filtering agent and respond to advertisement requests from other applications on the access terminal. An advertisement cache manager is an example of a TCM cache manager.
User Profile Attributes—User behavior, interests, demographic information, and so on that may be synthesized by a user behavior synthesizer to form profile attributes, which may be viewed as intermediate pre-synthesized forms of data that may be further processed and refined by a profile element refiner into more refined user profile elements.
User Profile Elements—Items of information used to maintain a user profile, which may include various types of data useful to categorize or define the user's interests, behavior, demographic etc.
TCM Targeting Rules—These may include rules related to the presentation of a targeted-content-message specified by a Mobile TCM Provider.
Advertisement Targeting Rules—These may include rules specified by advertisers to impose rules/restrictions on how advertisements may be displayed and/or rules to target an advertisement towards a particular segment of users. They may be specific to a number of criteria, such as an advertisement campaign or advertisement group. Advertisement Targeting Rules are an example of TCM Targeting Rules.
TCM Playback Rules—These can include display rules specified by a client application while querying a TCM Cache Manager for TCMs to display in the context of their application.
Advertisement Playback Rules—These can include display rules specified by a client application while querying an Advertisement Cache Manager for advertisements to display in the context of their application. Advertisement Playback Rules are an example of TCM Playback Rules.
TCM Filter Rules—These can include rules upon which TCMs may be filtered. Typically, a system operator may specify these rules.
Advertisement Filter Rules—These can include rules upon which advertisements may be filtered. Typically, a system operator may specify these rules. Advertisement Filter Rules are an example of TCM-Filter-Rules.
User Profile Element Inference Rules—These can include rules, specified by a system operator (and/or a third party), that may be used to determine one or more processes usable to build a user profile from demographic and behavioral data.
TCM Telescoping—A display or presentation function for a TCM whereby additional presentation material may presented to a user in response to a user request.
Advertisement Telescoping—An advertisement display or presentation function whereby additional presentation material may presented to a user in response to a user request. Advertisement Telescoping is an example of TCM telescoping.
As mentioned above, various regulations regarding telecommunications and privacy can make targeted advertising difficult. However, the present disclosure can provide a variety of solutions to deliver targeted advertising to wireless access terminals (W-ATs), e.g., cellular phones, while paying attention to privacy concerns.
One of the many approaches of this disclosure used to alleviate privacy issues includes offloading a variety of processes onto a user's W-AT that may, in turn, be used to generate a set of information that likely characterizes the user, i.e., it can create a “user profile” of the user on the W-AT itself. Accordingly, targeted-content-messages, such as advertisements and other media, may be directed to the user's W-AT based on the user's profiles without exposing potentially sensitive customer information to the outside world.
The various disclosed methods and systems may be used in a Mobile TCM Processing System (M-TCM-PS) (and, in particular, in a Mobile Advertising System (MAS)), which for the present disclosure may include an end-to-end communication system usable to deliver targeted-content-messages (or in particular, advertisements) to TCM-Enabled W-ATs (or in particular Mobile Advertising Enabled W-ATs). A MAS may also provide an analytical interface capable of reporting on the performance of a particular advertisement campaign. Accordingly, an appropriately constructed MAS may provide a better consumer experience by presenting only non-intrusive advertisements that are likely to be of interest to consumers.
While the following examples are generally directed to content, such as commercial advertising, a broader scope of directed content is envisioned. For example, instead of directed advertisements, content such as stock reports, weather reports, religious information, news and sports information specific to a user's interests, and so on is envisioned within the bounds of this disclosure. For example, while directed content may be an advertisement, a score for a sports event and a weather report may just as easily be directed content. Accordingly, devices such as advertising servers may be viewed as more general content servers, and advertising-related agents and devices may be more generally thought of as content-related agents and servers. Information exchange between a TCM-enabled WAT and a content-related agent or server can be encrypted. All further discussion is provided in the context of advertisements as an example of a TCM (Targeted Content Message), and it should be noted that such discussion is applicable to Targeted-Content-Messages in general.
As shown in
In operation, the “client side” of the MAS can be handled by the W-AT 100 (depicted on the left-hand side of
The transferred metrics/data may be provided through the RAN 190 to the advertising infrastructure 150 (depicted on the right-hand side of
The server advertisement interface 164 can provide a conduit for supplying advertisements (advertising ingestion), bundling advertisements, determining a distribution of advertisements and sending advertising through the data service layer 180 of the advertising infrastructure 150 to the rest of the MAS network. The advertising infrastructure 150 can provide the W-AT 100 with the advertisements, and metadata for advertisements. The W-AT 100 can be instructed by the advertising infrastructure 150 to select advertisements based on any available advertisement metadata according to rules provided by the advertising infrastructure.
As mentioned above, the exemplary W-AT 100 may be enabled to generate, in whole or in part, a user profile for the W-AT's user that, in turn, may be useful to enable the MAS to deliver targeted advertisements of likely interest to the user. This may result in better “click-through rates” for various advertisement campaigns. However, as mentioned above, generating a user profile may raise privacy concerns because of the potentially sensitive nature of data that may reside in the user profile.
Nevertheless, as will be shown below in the various MAS embodiments, privacy concerns may be alleviated by enabling a user's W-AT to generate a user profile while subsequently limiting the user profile to the confines of the user's W-AT except in very limited (and controlled) circumstances.
While the various components 110-240 of the W-AT 100 are depicted as separate functional blocks, it should be appreciated that each of these functional blocks may take a variety of forms including separate pieces of dedicated logic, separate processors running separate pieces of software/firmware, collections of software/firmware residing in a memory and being operated upon by a single processor, and so on.
In operation, the client applications device 110 may perform any number of functional applications useful for telecommunications (e.g., calls and text messaging) or other tasks (e.g., games) using the platform specific adaptation interface 111 to interface with the client advertisement interface. The client advertisement interface 112, in turn, can be used to allow the W-AT 100 to perform a number of useful processes, such as monitor user behavior and pass user-related information to the user profile generation agent 210.
In addition to receiving information directly from the client applications interface, the user profile generation agent 210 may accrue user behavior information from the metrics collection agent 120, which itself may receive the same or different information from the client advertisement interface 112. Examples of user behavior may include advertising-related responses, such as advertisement clicks and other metrics indicating types and frequency of usage. Other user behavior information may include direct user preferences or authorizations.
The metrics collection agent 120 may provide metrics/data to the metrics reporting agent 126, which in turn may provide the metrics/data information to other components of MAS (discussed below) that may be internal or external to a W-AT.
The profile attribute processor 270 can process incoming profile attribute processing requests from the W-AT 100 that require (or can otherwise benefit from) data-intensive lookups and respond with refined profile attributes to the user profile generation agent 210.
One function of the user profile generation agent 210 may include providing user profile information to the client advertisement filtering agent 220, which may determine advertisements that may be provided to the W-AT's user in accordance with relevant filter rules, as well as advertisement data and advertisement metadata from the advertising sales interface 164. The advertisement filtering agent 220 may also provide filtered advertisements to the advertisement cache manager 122, which in turn may store and later provide such advertisements (via advertisement cache memory 240) for presentation to the user.
A user profile generation agent can be any collection of hardware and/or software residing in a Mobile Advertising Enabled W-AT that can be used to collect user behavior information. Potential information sources may include, but are not limited to, applications residing on the user's W-AT, public information available in various accessible databases, previous user responses to advertisements, location data from a resident GPS radio and explicit user preferences entered by the user (if any). Any user profile information gathered may then be processed/synthesized to generate user profile attributes or elements, which may better characterize the user while using less memory resources.
In various embodiments, user profile inference rules provided by a system operator (and/or a third party) may drive the particular actions of a W-AT's user profile generation agent. Note that these rules may be of a number of types, including: (1) Basic Rules, which include actions to be performed by a user profile generation agent on a pre-determined schedule associated with each action; and (2) Qualified Rules, which include “action(s)” that are qualified by a “condition”, where the “condition” may define a behavior that needs to be true, and the “action” may define an action taken by a rule engine of the user profile generation agent when the condition is detected to be true. Such rules may be useful in inferring information from specific user actions or behavior.
For example, a simple rule for a user profile generation agent might be to store GPS derived location information for the user's W-AT every five minutes. An associated rule could be that the location most frequented within a 09:00-17:00 time range in the day be marked as the user's likely work location.
By way of a second example, a rule qualified by a condition might be to add a “game” category to the user's list of interests if the user often spends more than 30 minutes a day in the gaming applications on his W-AT.
Also note that the user profile generation agent may also take as input user preferences including user selection concerning express authorization of the user to derive a profile using location data, other authorizations made by the user and other specific information entered by the user. E.g. the user might input his preference to view travel related advertisements.
Various rule-driven approaches incorporated in a user's W-AT usable to gather and refine/categorize behavior data may alleviate some of the privacy concerns users might have. For example, by mining data and synthesizing raw data into more meaningful/useful forms within the W-AT (as opposed to using an external server), sensitive or personal information can be developed and later used for targeted advertising without exposing this information to the rest of the W-AT's communication network.
In various embodiments, particular aspects of a user's profile may control portions of the user's W-AT. For example, a user profile generation agent may utilize any retrieved W-AT information to tailor information content in a manner best suited for the W-AT, including the choice of menu layout, such as linear, hierarchical, animated, popup and softkeys.
As mentioned above, while most profile generation rules can be interpreted by the W-AT's embedded user profile generation agent, there might be some rules that require large database lookups, e.g., government census data. Since memory on the W-AT may be too limited to accommodate large databases, it may be possible to further refine the already synthesized user behavior and demographic data by offloading the appropriate refinement tasks to a specially configured server at the W-AP side of the MAS network. For the present disclosure, any such external server capable of assisting in user profile generation may be referred to as a “profile attribute processor.” Additional discussion of profile attribute processors is provided below with respect to
One of the features of a mobile phone is that it can be carried by a user wherever he/she goes. Utilizing the GPS capabilities of a W-AT, the W-AT can determine where the user is periodically or a-periodically spending some or most of his/her time. As there is often demographic data associated with locations, the use of GPS information and demographic data associated with locations that the user frequents may allow the development of at least some portions of a demographic profile associated with the user. Typical demographic profile elements associated with the user's profile using the location information may include, but are not limited to:
Note that multiple demographic user profiles can be maintained at the W-AT for the user. For example, the Mobile Advertising Enabled Client might be configured by the network to maintain two demographic profiles for the user—one for his “home” location (most frequented location between, say, 21:00-06:00) and one for his “work” location (most frequented location between, say 09:00-17:00).
In addition to general demographics, a user profile may be further developed using any of a W-AT's numerous applications. Which applications, e.g., games, a user tends to spend most of his time with or how he interacts with the various applications on the phone may provide an opportunity to build a profile for the user based on his behavior and preferences. Most of the data mining and user behavior profile determination of this sort can be done on the W-AT itself, being driven by user profile inference rules fed to the user profile generation agent 210. Typical behavioral profile elements associated with a user may include, but are not limited to, the following:
Many profile elements (including demographics) can be inferred from behavior mined by adding hooks to observe application behavior through a native user interface application on a W-AT. It is through such applications that the user may launch other applications. Applications of interest to the user and time spent in these applications can be inferred by monitoring when the user launches and exits a particular application.
Rules fed to the user profile generation agent 210 can associate interest categories for a user based on the user's interactions with applications. Interest categories can also be assigned to the user profile using server assisted collaborative filtering on the behavior data collected at the W-AT.
Rules that may get downloaded to the user profile generation agent 210 may allow a server to control the functioning of the user profile generation agent 210 in a dynamic fashion. By mining raw data on the incumbent W-AT and synthesizing it into more meaningful information (profile attributes), particular sensitive user behavior information can be transformed into advertisement behavior categories and user profile elements versus maintaining data in raw form.
An exemplary W-AT can keep track of the advertisements of interest to the user and the keywords associated with such advertisements. Multiple clicks on the same advertisement may indicate to a user profile agent an interest level associated with the associated keywords and advertisement. On the same lines, games and music of interest to the user can be maintained at the W-AT. Server-assisted mode can also be used to associate user interest categories with the user's profile based on the user's music and game play-lists.
As a user profile is developed and maintained, such a profile can take a variety of forms, e.g., synthesized profile attributes and elements.
Note that some or all data attributes and elements in a user profile may have some confidence level associated with them. That is, because certain elements and attributes are based upon inferences and rules, their results may not be certain and have “fuzziness” associated with them. This fuzziness may be expressed as a confidence level associated with a user profile attribute and element.
By way of example, noting that a user is sending more that five-hundred SMS messages per month, the profile generator might say that the user is likely to be in the age group from 15-24 with a confidence level of 60%. That means that if 100 users sending more than five-hundred SMS messages per month were to be polled for their age, about 60 of them are likely to fall within the age group of 15-24.
Similarly, when a demographic profile is inferred for a user based on his/her home location, there may be a confidence level associated with the profile attributes. The confidence level here may indicate the number of times the profile attribute is expected to be accurate in a sample of one-hundred users with the same home location.
The exemplary user profile generation agent 210 can also be fed rules to combine confidence levels on the same profile attribute from multiple sources to come up with a unified confidence level for the attribute. For example, if the SMS usage rate indicates that the user is within the age group of 15-24 years with a 60% confidence level and demographic profile for the home location indicates that the user is in age group of 15-24 years with a 20% confidence level, then these two items can be combined with fuzzy logic rules to come up with a unified confidence level for the user lying in the same age group.
In contrast, if a user enters his interest preferences into the client, then such values might be given a confidence level of close to 100% since they are coming directly from the user. Similarly if the carrier specifies any user profile attributes/elements based on the user data it has (billing data or optional profile data collected from the user during service sign-up), then that too will have a higher confidence level associated with it.
As more user behavior data is collected on a W-AT and inferences made based on that, subsequent confidence level, in the profile attribute and element values, is expected to increase.
Before a request is received by a profile attribute processor 270, synthesized profile attributes may be gathered at the relevant W-AT, and sent to the profile attribute processor 270 noting that the use of synthesized profile attributes can result in better use of bandwidth. Some of the user profile attributes, which require data-intensive lookups, can be processed by the profile attribute processor 270 optionally by anonymously querying techniques to protect user identities. The profile attribute processor 270 may further refine any received attributes, and provide the refined data to the appropriate W-AT in what may be referred to as a set of refined user profile attributes.
When activated by a request from a W-AT, the profile attribute processor 270 may process various types of specific and non-specific synthesized data regarding a user's behavior and demographics (e.g., profile attributes) and respond with the appropriate refined profile information. In order to maintain user privacy, some form of data scrambling, e.g., a hashing function and a number of other tools may be employed via a device, such as the one-way hash function generator 810 of
In various operations, a hashing function employed in a W-AT can generate a predictable and unique, but anonymous, value associated with a particular user. Such an approach can enable the W-AT to query external servers without compromising on the privacy of the user. In various embodiments, a hashing function may be based on a primary identifier of the W-AT, e.g. a serial number associated with the W-AT, as well as. a random value, a pseudo-random value, and a time-based value. Further, the hashing function may be calculated to provide a low probability of collision with other generated values.
The W-AT may use the same random number for subsequent queries to allow external servers to associate multiple queries from the same client. The use of the random number can help to prevent external servers (or unauthorized agents) from doing a reverse lookup on a subscriber base to determine a user's identity.
Once a hashed value is generated, the hashed value may be used as an alternate user identifier for the W-AT and provided, along with geographic information or some or items of information from a user profile, and provided to a remote apparatus.
Subsequently, one or more targeted content messages can be received from the remote apparatus based on the alternate user identifier and first advertisement-related information to the remote apparatus and/or other information capable of supplementing a user profile. Such information can be incorporated into the user profile of the W-AT.
In order to further maintain user privacy, a proxy server at the wireless access point (W-AP) side (see, e.g.,
Once the mobile advertising server 940 receives and replies to the request, the proxy server 930 may use the appropriate transaction ID to forward the mobile advertising server's reply. Later, the proxy server 930 may delete the look up table entry.
Note that the scheme depicted in
In order to alleviate concerns of users that their location is possibly being tracked in real-time by their W-ATs, the W-ATs may elect not to query the server for refinement of location data in real-time. Note that such queries can be sent anonymously and sparsely over an extended period of time (e.g., once a month). A typical schedule could be, for example, to collect location information every 5 minutes for 72 hours. The most frequented location during this time frame or during specific time frames can be used to query the demographic profile of the user from the server at a randomly selected time between 30 and 40 days or by some other schedule specified by a the system operator.
The above case is an example of a hybrid approach using both the rule driven operation of the user profile generation agent along with the server-assisted mode to generate profile elements for the user while maintaining the user's privacy.
As discussed above, basic rules may include pre-scheduled events, e.g., performing a query of the user at a specific time. Similarly, a respective qualified rule might require the same query to be preceded by a condition and/or event, such as physical status information or operational status information.
Next, in step 604, the received rules can be used to collect raw data, and in step 606 the raw data may be processed/synthesized into user profile elements or attributes noting that while all such processing/synthesizing may occur on board the W-AT, some refinement may occur using external devices, such as the profile attribute processors discussed above. That is, as discussed above raw data and/or synthesized data may be incorporated to form a user profile for the W-AT's user. For example, a rule relating to monitoring SMS messages may be used to change a dynamic property of a user profile when applied to collect raw data and synthesize profile attributes/elements regarding SMS messages. Static data, e.g., a user's birth date, may be likewise collected using a rule to query the user, and then applied as an element in a user profile.
Then, in step 608, confidence levels for user profile data can be determined. Note that confidence levels can have a variety of forms, such as a range of numbers, variance statistic, or distribution profile.
In step 610, various received rules plus raw data and synthesized data relating to various user profile elements and attributes, which may form all of a user profile, may be used to receive targeted advertisements. That is, as discussed above, in various embodiments a used/usable rule on a W-AT may be used to generate a user profile—along with collected raw data and synthesized data—to provide any number of static or dynamic properties of the user profile, and such information may be used to receive content, such as advertisements, sports scores, weather reports and news directed to subjects of likely interest.
Note that in various embodiments where user profile data can have confidence levels associated with them, rules may be applied to the confidence levels and targeted content messages may be received and displayed based on such confidence information.
Continuing, control of the operation may jump back to step 602 where new/more rules may be received and used to collect data and modify the user's profile.
Note that, as referenced above rules may be used based on physical configuration of an W-AT so as to utilize W-AT information to tailor content display in a manner suited for the W-AT to create suitable displays, such as menu layouts having linear, hierarchical, animated, popup and/or softkey attributes.
Continuing to step 710, a determination may be made as to whether further information or processing is required that may not be practical on a W-AT. For example, assuming that a W-AT has accrued a series of locations for which the W-AT regularly has visited using a GPS, a software agent on the W-AT using one or more rules may determine the need to query a large external database, such as a geographic information service or a national census database on a remote server, to determine a likely ethnicity (or other demographics) of the user. If further information or processing is required, control continues to step 712; otherwise, control of the operation may jump back to the step 720 where profile attributes are used to generate/modify the user's profile.
For instances where further information or processing is required, a request may be made of an external device (step 712), such as by the profile attribute processor discussed above (optionally using hashing functions and/or proxy servers) to protect user information.
Next, in step 714, the external device can perform any number of refinement steps, such as query large databases, to produce refined user profile attributes. Then, in step 718, refined user profile attributes may then be provided to the appropriate W-AT, where (in step 720) they may be used to generate, modify or otherwise incorporated in a user profile. Note that when confidence levels are available for processing, unified confidence levels may be determined based on individual confidence levels. Control of the operation may then jump back to the step 702 where new/more rules may be received and used to collect data and modify the user's profile.
Jumping forward to
In operation, a network system operator 280 (and/or a third party) may provide profile attribute processing rules to the profile attribute processor 270. The profile attribute processor 270 may also receive a profile attribute process request from modules on the W-AT 100 and provide an appropriate response through modules on the W-AT 100.
Additionally, multicast or broadcast advertisements may be received by the W-AT 100. In this configuration, the W-AT 100 (or other Mobile Device) can be able to receive all advertisements and determine which advertisements are to be stored and presented to the user in accordance with the user profile generated at the W-AT 100 and the filter rules also received from an ad server, such as the multicast/broadcast distribution server 1010 of
However, in this embodiment unicast advertisements may be requested by the W-AT 100 from the ad distribution server 1110. The W-AT 100 may be able to receive all advertisements over a unicast communication link and determine which advertisements are to be stored and presented to the user in accordance with the user profile generated at the W-AT 100 and the filter rules also received from the ad server 1110.
However, in this embodiment, the ad distribution server 1210 may receive user profile information provided by the W-AT 100, process the received user profile information, and then provide the appropriate targeted ads to the W-AT 100.
In operation, the W-AT 100 may send a request for advertisements where after the W-AT 100 can receive a set of metadata representative of the various advertisements available in the ad distribution server 1310. The W-AT 100 may then select a number of advertisements based on the metadata and on the filtering rules within the W-AT 100, and provide the selection information to the ad distribution server 1310. Accordingly, the selected advertisements can then be provided to the W-AT 100 and presented to the user in accordance with the user profile rules.
The above approach keeps the user profile local on the W-AT while using optimal network bandwidth when delivering advertisements to the W-AT over the unicast communication link.
The techniques and modules described herein may be implemented by various means. For example, these techniques may be implemented in hardware, software, or a combination thereof. For a hardware implementation, the processing units within an access point or an access terminal may be implemented within one or more application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing W-ATs (DSPDs), programmable logic W-ATs (PLDs), field programmable gate arrays (FPGAs), processors, controllers, micro-controllers, microprocessors, other electronic units designed to perform the functions described herein, or a combination thereof.
For a software implementation, the techniques described herein may be implemented with modules (e.g., procedures, functions, and so on) that perform the functions described herein. The software codes may be stored in memory units and executed by processors or demodulators. The memory unit may be implemented within the processor or external to the processor, in which case it can be communicatively coupled to the processor via various means.
The previous description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the features, functions, operations, and embodiments disclosed herein. Various modifications to these embodiments may be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from their spirit or scope. Thus, the present disclosure is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.
The present Application for Patent is a Continuation of U.S. Non-Provisional application Ser. No. 12/134,688, entitled “METHOD FOR TRANSFER OF INFORMATION RELATED TO TARGETED CONTENT MESSAGES THROUGH A PROXY SERVER”, filed on Jun. 6, 2008, which is assigned to the assignee hereof and hereby expressly incorporated by reference herein in its entirety, and which in turn claims priority to Provisional Application No. 60/948,450 entitled “USER PROFILE GENERATION ARCHITECTURE FOR MOBILE ADVERTISING” filed Jul. 7, 2007, and Provisional Application No. 60/948,451 entitled “USER PROFILE GENERATION ARCHITECTURE FOR MOBILE ADVERTISING USING SECURE EXTERNAL PROCESSES” filed Jul. 7, 2007, and Provisional Application No. 60/948,452 entitled “METHOD AND SYSTEM FOR PROVIDING TARGETED ADVERTISING BASED ON A USER IN A MOBILE ENVIRONMENT” filed Jul. 7, 2007, and Provisional Application No. 60/948,453 entitled “USER PROFILE GENERATION ARCHITECTURE FOR MOBILE ADVERTISING USING PROFILE ATTRIBUTES HAVING VARIABLE CONFIDENCE LEVELS” filed Jul. 7, 2007, and Provisional Application No. 60/948,455 entitled “METHOD AND SYSTEM FOR DELIVERY OF TARGETED ADVERTISING BASED ON A USER PROFILE IN A MOBILE COMMUNICATION DEVICE” filed Jul. 7, 2007, and Provisional Application No. 60/948,456 entitled “USER PROFILE GENERATION ARCHITECTURE FOR MOBILE ADVERTISING” filed Jul. 7, 2007, all of which are assigned to the assignee hereof and hereby expressly incorporated by reference herein in their entirety.
Number | Date | Country | |
---|---|---|---|
60948450 | Jul 2007 | US | |
60948451 | Jul 2007 | US | |
60948452 | Jul 2007 | US | |
60948453 | Jul 2007 | US | |
60948455 | Jul 2007 | US | |
60948456 | Jul 2007 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 12134688 | Jun 2008 | US |
Child | 15659191 | US |