US20170186045A1 - Content ranking and serving on a multi-user device or interface - Google Patents

Content ranking and serving on a multi-user device or interface Download PDF

Info

Publication number
US20170186045A1
US20170186045A1 US15/460,378 US201715460378A US2017186045A1 US 20170186045 A1 US20170186045 A1 US 20170186045A1 US 201715460378 A US201715460378 A US 201715460378A US 2017186045 A1 US2017186045 A1 US 2017186045A1
Authority
US
United States
Prior art keywords
user
content
interactions
users
client device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US15/460,378
Inventor
Michael Froimowitz Greenzeiger
Mehul K. Sanghavi
Ravindra Phulari
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Apple Inc
Original Assignee
Apple Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Apple Inc filed Critical Apple Inc
Priority to US15/460,378 priority Critical patent/US20170186045A1/en
Publication of US20170186045A1 publication Critical patent/US20170186045A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0269Targeted advertisements based on user profile or attribute
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus

Definitions

  • the present disclosure relates to targeted content delivery and, more specifically, to intelligent targeting of invitational content to a multi-user interface.
  • Targeted content delivery has long been an accepted means of conveying a desired message to an audience. Instead of creating a single message and delivering it to every member of the general public, a content provider would prefer to identify a segment of the population that is likely to have the greatest interest in their message.
  • a key aspect in targeted content delivery is identifying an individual associated with a particular device or interface and delivering targeted content to the individual if his characteristics satisfy the target demographics for a particular item of targeted content.
  • delivering targeted content to a device or interface associated with multiple individuals can pose a challenge for several reasons.
  • conventional techniques for targeted content delivery will generally be inadequate for delivery of targeted content to multi-user interfaces.
  • the general methodology includes identifying users associated with the multi-user interface, obtaining user characteristics for these identified users, determining a set of user characteristics based on a set of derivation rules, and selecting content at a content delivery system based on the set of user characteristics.
  • the identification of users and user characteristics can be performed via a characteristic selection system that is part of, or separate from, the content delivery system.
  • the set of user characteristics can be obtained in a variety of ways.
  • the relative priority or ranking of the user can be obtained. Based on this ranking, delegate users associated with the highest ranking or priority can be identified. There after the user characteristics for these delegate users can be utilized as the set of user characteristics for the multi-user interface.
  • the interactions at the multi-user interface can be attributed to different users. Based on these interactions, delegate users can be identified and the user characteristics for these users can be utilized as the set of user characteristics for the multi-user interface.
  • the characteristics common to the users can be identified. If these common characteristics meet minimum set criteria, they can be utilized as the set of user characteristics for the multi-user interface. If not, a default set can be used instead. Additionally, these methodologies can be combined.
  • FIG. 1 illustrates an exemplary configuration of devices and a network
  • FIG. 2 illustrates an exemplary method embodiment for selecting content for a multi-user interface
  • FIG. 3 illustrates a first exemplary method embodiment for determining a set of user characteristics for selecting content for a multi-user interface
  • FIG. 4 illustrates a second exemplary method embodiment for determining a set of user characteristics for selecting content for a multi-user interface
  • FIG. 5 illustrates a third exemplary method embodiment for determining a set of user characteristics for selecting content for a multi-user interface
  • FIG. 6 illustrates an example system embodiment.
  • FIG. 1 An exemplary system configuration 100 is illustrated in FIG. 1 wherein electronic devices communicate via a network for purposes of exchanging content and other data.
  • the system can be configured for use on a local area network such as that illustrated in FIG. 1 .
  • the present principles are applicable to a wide variety of network configurations that facilitate the intercommunication of electronic devices.
  • each of the components of system 100 in FIG. 1 can be implemented in a localized or distributed fashion in a network.
  • invitational content can be delivered to user terminals 102 1 , 102 2 , . . . , 102 n (collectively “ 102 ”) connected to a network 104 by direct and/or indirect communications with a content delivery system 106 .
  • the user terminals 102 can, individually, collectively, or in combination with other components of system 100 , provide a multi-user interface.
  • multi-user interface refers to any type of user interface, or a system providing a user interface, that includes one or more elements or components, which can be concurrently accessed by multiple users.
  • a multi-user interface can refer to any type of user interface that allows multiple users to engage in a session or activity concurrently.
  • Multi-user devices and interfaces include televisions, radio broadcasting, group chat (on desktop/mobile devices), multi-touch tablet surfaces, bi-directional/web camera technologies, and more. Some of these devices, such as tablet computers or televisions tend to be shared between multiple users within a household.
  • the elements of the multi-user interface can be text-based elements, graphical elements, audio elements, video elements, any other interface elements, and any combinations thereof.
  • the elements can be input elements, output elements, or any combination thereof.
  • the multi-user interface can be provided via a single one of devices 102 . That is, multiple users can concurrently interact with an interface, or elements thereof, via the same device.
  • the multi-user interface can be provided via multiple ones of devices 102 , each associated with at least one user, engaged in a concurrent session or activity.
  • the multi-user session or activity can be managed in a centralized fashion via one or more of collaborative servers 103 1 , 103 2 , . . . , 103 n , (collectively “ 103 ”).
  • session can be managed by the devices 102 themselves and the role of the collaborative servers 103 can be to provide communications between the ones of device 102 engaged in the multi-user session.
  • the present technology is not limited in this regard and the multiple one of devices can communicate directly with each other in a decentralized or ad-hoc manner.
  • the content delivery system 106 can support connections from a variety of different client devices 102 , such as desktop computers; mobile computers; handheld communications devices, e.g. mobile phones, smart phones, tablets; and/or any other network enabled communications devices. Furthermore, content delivery system 106 can concurrently accept connections from and interact with multiple client devices 102 .
  • the content delivery system 106 can receive a request for electronic content, such as a web page, an application, a media item, etc., from one of user terminals 102 . Thereafter, the content delivery system 106 can assemble a content package and transmit the assembled content page to the requesting one of user terminals 102 .
  • the content delivery system 106 can include a communications interface 120 .
  • the content delivery system 106 can include a content management module 122 to facilitate the generation of an assembled content package.
  • the content management module 122 can combine content from one or more primary content providers 109 1 , 109 2 , . . . , 109 n (collectively “ 109 ”) and content from one or more secondary content providers 110 1 , 110 2 , . . . 110 n (collectively “ 110 ”) to generate the assembled content package for the user terminals 102 .
  • the content management module 122 can assemble a content package by requesting the data for the web page from one of the primary content providers 109 maintaining the web page.
  • the content management module 122 can request the appropriate data according to the arrangement between the primary and secondary content providers 109 and 110 . Additionally, the content management module 122 can create content packages that contain content from a single content provider. That is, a content package can contain only primary content or a content package can contain only secondary content. However, the content package is not limited to the content from content providers 109 and 110 . Rather, the content package can include other data generated at the content delivery systems 106 . In some embodiments, the content delivery system 106 can preselect the content package before a request is received.
  • An assembled content package can include text, graphics, audio, video, executable code, or any combination thereof. Further, an assembled content package can include invitational content designed to inform or elicit a pre-defined response from the user. In some embodiments, the invitational content can be associated with a product or can directly or indirectly advertise a product. For example, the assembled content package can include one or more types of advertisements from one or more advertisers.
  • the invitational content can be active invitational content. That is, invitational content that is designed to primarily elicit a pre-defined response from a user.
  • active invitational content can include one or more types of advertisements configured to be clicked upon, solicit information, or be converted by the user into a further action, such as purchase or a download of the advertised item.
  • invitational content can also be passive invitational content. That is invitational content that is designed to primarily inform the user, such as a video. In some cases, passive invitational content can include information that can lead or direct users to other invitational content including active invitational content.
  • the invitational content can be dynamic invitational content. That is invitational content that varies over time or that varies based on user interaction.
  • the various embodiments are not limited in this regard and the invitational content can include static invitational content that does not vary over time or with user interaction.
  • invitational content in a content package can be static or dynamic and active or passive.
  • a content package can include a combination of various types of invitational content in a single content package.
  • a content package can replace or update invitational content in a content package already delivered to a user terminal 102 .
  • a first content package can include an app that can be installed on the user terminal 102 .
  • a subsequent content package can include one or more items of invitational content that can be presented to a user of the user terminal 102 while the user interacts with the app.
  • primary and secondary providers 109 and 110 are presented herein as separate entities, this is for illustrative purposes only. In some cases, the primary and the secondary content providers 109 and 110 can be the same entity. Thus, a single entity can define and provide both the primary and the secondary content.
  • the content delivery module 122 can be configured to request that content be sent directly from content providers 109 and 110 .
  • a cached arrangement can also be used to improve performance of the content delivery system 106 and improve overall user experience. That is, the content delivery system 106 can include a content database 150 for locally storing/caching content maintained by content providers 109 and 110 .
  • the data in the content database 150 can be refreshed or updated on a regular basis to ensure that the content in the database is up to date at the time of a request from a user terminal 102 .
  • the content management module 122 can be configured to retrieve content directly from content providers 109 and 110 , if the metadata associated with the data in the content database 150 appears to be outdated or corrupted.
  • content maintained by the content providers 109 and 110 can be combined according to a predefined arrangement between the two content providers, which can be embodied as a set of rules.
  • these rules can be stored in a content delivery system (CDS) rules database 152 in content delivery system 106 .
  • the content management module 122 can be configured to assemble the content package for user terminals 102 based on these rules.
  • the rules can specify how to select content from secondary content providers 110 and primary content providers 109 in response to a request from one of user terminals 102 .
  • the rules database 152 can specify rules for selecting one of the secondary providers 110 .
  • the rules can also specify how to select specific content from the selected one of secondary providers 110 to be combined with the content provided by one of primary providers 109 .
  • the assembled content package can be sent to a requesting one of user terminals 102 .
  • user characteristics refers to the characteristics of a particular user associated with one or more of user terminals 102 .
  • User characteristics can include channel characteristics, demographic characteristics, behavioral characteristics, and spatial-temporal characteristics.
  • Channel characteristics can define the specific delivery channel being used to deliver a content package to a user.
  • channel characteristics can include a type of electronic content, a type of device or user terminal, a carrier or network provider, or any other characteristic that defines a specific delivery channel for the content package.
  • Spatial-temporal characteristics can define a location, a location zone, a date, a time, or any other characteristic that defines a geographic location and/or a time for delivery of the content package.
  • Demographic characteristics can define characteristics of the users targeted by the content or associated with the content.
  • demographic characteristics can include age, income, ethnicity, gender, occupation, or any other user characteristics.
  • Behavioral characteristics can define user behaviors for one or more different types of content, separately or in combination with any other user characteristics. That is, different behavioral characteristics may be associated with different channels, demographics, or spatial-temporal characteristics.
  • User characteristics can also include characteristics descriptive of a user's state of mind including characteristics indicative of how likely a user is to click on or convert an item of invitational content if it were displayed to the user. User characteristics can be learned directly or derived indirectly from a variety of sources.
  • the user characteristic values can be collected from one or more databases. For example, if the user is registered with an online media service, such as the ITUNES store maintained by Apple Inc.
  • the collected data could include the user's registration information. Such data can provide values for declared user characteristics. As will become apparent from the remainder of this disclosure, the content delivery system 106 can learn of or derive user characteristics from any number of other information sources.
  • the invitational content provided by the secondary content providers 110 can be associated with one or more targeted segments.
  • a targeted segment can be viewed as defining a space or region in k-dimensional space, where each of the k dimensions is associated with one of a plurality of user characteristics.
  • the k dimensions can include both orthogonal and non-orthogonal dimensions. That is, some of the k dimensions can overlap or can be related in some aspect. For example, if separate dimensions are specified for city and state, these dimensions are non-orthogonal.
  • the content delivery system 106 can also include a unique user identifier (UUID) database 154 that can be used for managing sessions with the various user terminal devices 102 .
  • UUID database 154 can be used with a variety of session management techniques.
  • the content delivery system 106 can implement an HTTP cookie or any other conventional session management method (e.g., IP address tracking, URL query strings, hidden form fields, window name tracking, authentication methods, and local shared objects) for user terminals 102 connected to content delivery system 106 via a substantially persistent network session.
  • IP address tracking e.g., IP address tracking, URL query strings, hidden form fields, window name tracking, authentication methods, and local shared objects
  • other methods can be used as well.
  • handheld communications devices e.g.
  • multiple requests for content from such devices may be assigned to a same entry in the UUID database 154 .
  • the delivery system 106 can analyze the attributes of requesting devices to determine whether such requests can be attributed to the same device.
  • attributes can include device or group-specific attributes.
  • the content delivery system 106 can include a user-profile database 156 .
  • the user-profile database 156 can, at least in part, be constructed based on declared user characteristics related to one or more users. In some cases, the user-profile database may contain inferred or derived user characteristic values.
  • the user-profile database 154 can be updated using a user-profile-updater module 124 . In some embodiments, the user-profile-updater module 124 can be configured to add additional profile data, update profile data, fill in missing profile data, or infer user characteristic values from declared data.
  • the user-profile-updater module 124 can also be configured to maintain the profile database 156 to include only more recently acquired data or to re-derive any inferred characteristics in order to ensure that the user profile is an accurate reflection of the current state of the user (location, state of mind, behaviors, demographics, etc. can change rapidly).
  • the updater module 124 can be configured to maintain the profile database 156 to include only data from the last two to three months.
  • the updater module 124 can be configured to adjust the data in profile database 156 to cover any span of time.
  • the updater module 124 can update the profile database 156 in real-time.
  • the updater module 124 can be configured to set an expiration period on a subset of the data in the profile database 156 .
  • a policy can specify that user declared data is maintained as long as the user account is active, but user characteristic values based on location information expire after a specified period of time.
  • a user can set the expiration period.
  • the updater module 124 can update the profile database 156 at least every week, or every day.
  • the delivery system 106 can receive a direct request to update one or more user profiles. The update request can come directly from the user's device or any other device capable of communicating with the delivery system 106 , such as other content delivery networks or websites.
  • the delivery system 106 can receive an indirect request to update one or more user profiles. An indirect request can be the result of receiving new user characteristic values. An update request can occur at any time.
  • the content delivery system 106 can include a segment database 158 that is used to aid in selecting invitational content to target to users.
  • the segment database 158 can store defined segments and associations between the segments and users and/or invitational content that should be targeted to users associated with the segments.
  • a targeted segment can be defined based on one or more user characteristics or derivatives thereof and can be associated with one or more items of invitational content. Additionally, a targeted segment can be associated with one or more users.
  • the delivery system 106 can match invitational content with users.
  • the delivery system 106 can update the segment database 158 to add newly defined targeted segments or to delete targeted segments.
  • a targeted segment can be as simple as a single user characteristic identifier and a single user characteristic value.
  • the common demographic identifiers of gender, age, occupation, or income can each be used in defining corresponding targeted segments.
  • a characteristic value can also be assigned to the identifier.
  • the values of male, 19, and student can be assigned to the user characteristics of gender, age, and occupation, respectively.
  • more complex targeted segments can also be defined that consist of one or more identifiers with one or more values associated with each identifier.
  • a targeted segment can be defined to target a user with the following characteristics: gender, male; age, 19-24; location, Northern California or New York City. Additional exemplary segments are described throughout this disclosure.
  • targeted segments can correspond to one or more segments that content providers are likely to easily understand and thus can quickly identify as being relevant to their content.
  • content providers 109 and 110 can define a custom targeted segment.
  • the content delivery system 106 can provide a segment assigner module 126 .
  • the segment assigner module 126 can apply a set of user characteristics associated with a user (including segments to which a user has been previously assigned) to assign the user to one or more targeted segments.
  • the assigner module 126 can obtain the set of user characteristic values from the user profile database 154 and/or from the user's activities during the current session.
  • the segment assigner module 126 can assign a user to one or more defined targeted segments in the segment database 158 , or alternatively, a user can be assigned to a custom targeted segment defined to meet specific goals of a content provider.
  • the user profile database 156 can be updated to reflect the segment assignments. Additionally, the delivery system 106 can use the segment assignments to select targeted content. In some cases, the user profile data in the user profile database 156 can change over time so the segment assigner module 126 can be configured to periodically update the segment assignments in the user profile database 156 . The segment assignment update can be triggered at specified intervals, upon detection of a change in the user profile database 156 , and/or upon detection of a specified activity in the delivery system 106 .
  • the content delivery system 106 can provide a segment-prioritizing module 128 for ordering the targeted segments assigned to a user.
  • the prioritization can be influenced by a number of factors, which can include the user's context, a content provider's campaign goals, and/or the content that is currently available for display to the user.
  • a request to prioritize the targeted segments can be explicit or implicit and can be made by any component of the system 100 .
  • a secondary content provider 110 can explicitly request that the content delivery system 106 prioritize the targeted segments or the request can be implicit as part of a request for a content package.
  • the resulting prioritized list can be provided, for example, to the content management module 122 , which can then use the information to assemble and deliver a content package. Additionally, the prioritized list can be stored, for example in the user profile, for later use.
  • the selection of an item of secondary content can be based, at least on part, on the characteristics of a user associated with a user terminal or a session associated with the user.
  • the CDS rules database 152 can specify that the delivery of a particular item of secondary content should be limited to users meeting a specific set of criteria.
  • each user can be associated with different user characteristics that would result in the selection of different items of secondary content based on the rules in the CDS rules database 152 .
  • one potential solution is to simply provide all of these different items at the device or interface, such an approach would be impractical in many circumstances.
  • a device or interface may only have limited capability or capacity for presenting such items to the user.
  • the communications links for the device or interface may only have a limited capability or capacity for receiving such items.
  • lag or time delays can be introduced if a significant number of items need to be provided to the device or interface.
  • a first aspect of the present technology provides systems and methods for deriving a set of user characteristics from the characteristics of the individual users based on the interactions of the users at the multi-user interface and selection criteria or rules.
  • a second aspect of the present technology provides systems and methods for deriving a set of user characteristics from the characteristics of the individual users based on a relative ranking or priority of the users at the multi-user interface and selection criteria or rules.
  • a third aspect of the present technology provides systems and methods for deriving a set of user characteristics by aggregating the characteristics of the users at the multi-user interface based on selection criteria or rules.
  • the system 100 can also be configured to include a characteristic selection system 108 that generates a set of user characteristics to be used by the content delivery system 106 for selecting and delivering content to ones of the user terminals 102 associated with a multi-user interface or device.
  • the characteristic selection system 108 can receive information associated with users at a user terminal 102 associated with a multi-user interface.
  • the characteristics selection system 108 can receive information regarding user characteristics, user interactions, or both. Whether the characteristic selection system 108 receives such information from the content delivery system 106 , the user terminals 102 , or other sources can vary with the configuration of the system 100 .
  • the characteristic selection system 108 can include a characteristic selection engine 160 and a selection rules database (DB) 162 .
  • the selection rules DB 162 can specify rules for the characteristics selection engine 160 to analyze the user characteristics from the various users accessing the one or more of user terminals 102 associated with the multi-device or interface and determine a set of user characteristics for the content delivery system 106 to utilized to select content to be delivered to the one or more of user terminals 102 .
  • the present disclosure contemplates that the rules in selection rules DB 162 can depend on any number of factors or conditions. Some exemplary factors and conditions include:
  • the operation of the characteristic selection system 108 is based on the assumption that the identity of the users is known or is readily ascertainable.
  • the multi-user device or interface can require users to register or login.
  • the user characteristics for the users can then be directly obtained from user profile database 156 or any other source of user characteristic data.
  • the identity of the users may not be known beforehand.
  • the characteristic selection system 108 can further include a user identification engine 164 .
  • the user identification engine can then be used to identify the users associated with the multi-user interface or device or at least determine or estimate the user characteristics for such users.
  • the operation of the characteristic selection system 108 within system 100 will be described in greater detail with respect to FIGS. 3-5
  • the characteristic selection system 108 is presented here as a separate entity, this is for ease of illustration and discussion.
  • the present disclosure contemplates that the content delivery system 106 can include the characteristic selection system 108 .
  • user terminals 102 can each include all or part of a characteristic selection system 108 .
  • this gathered data may include personal information data that uniquely identifies or can be used to contact or locate a specific person.
  • personal information data can include demographic data, location-based data, telephone numbers, email addresses, twitter ID's, home addresses, or any other identifying information.
  • the present disclosure recognizes that the use of such personal information data in the present technology can be used to the benefit of users.
  • the personal information data can be used to deliver targeted content that is of greater interest to the user. Accordingly, use of such personal information data enables calculated control of the delivered content. Further, other uses for personal information data that benefit the user are also contemplated by the present disclosure.
  • the present disclosure further contemplates that the entities responsible for the collection, analysis, disclosure, transfer, storage, or other use of such personal information data will comply with well-established privacy policies and/or privacy practices.
  • such entities should implement and consistently use privacy policies and practices that are generally recognized as meeting or exceeding industry or governmental requirements for maintaining personal information data private and secure.
  • personal information from users should be collected for legitimate and reasonable uses of the entity and not shared or sold outside of those legitimate uses. Further, such collection should occur only after receiving the informed consent of the users.
  • such entities would take any needed steps for safeguarding and securing access to such personal information data and ensuring that others with access to the personal information data adhere to their privacy policies and procedures. Further, such entities can subject themselves to evaluation by third parties to certify their adherence to widely accepted privacy policies and practices.
  • the present disclosure also contemplates embodiments in which users selectively block the use of, or access to, personal information data. That is, the present disclosure contemplates that hardware and/or software elements can be provided to prevent or block access to such personal information data.
  • the present technology can be configured to allow users to select to “opt in” or “opt out” of participation in the collection of personal information data during registration for services.
  • users can select not to provide location information for targeted content delivery services.
  • users can select to not provide precise location information, but permit the transfer of location zone information.
  • the present disclosure broadly covers use of personal information data to implement one or more various disclosed embodiments, the present disclosure also contemplates that the various embodiments can also be implemented without the need for accessing such personal information data. That is, the various embodiments of the present technology are not rendered inoperable due to the lack of all or a portion of such personal information data.
  • content can be selected and delivered to users by inferring preferences based on non-personal information data or a bare minimum amount of personal information, such as the content being requested by the device associated with a user, other non-personal information available to the content delivery services, or publically available information.
  • FIG. 2 there is shown a flowchart illustrating steps in an exemplary method 200 for selecting items of content to be delivered to a multi-user interface. For the sake of clarity, this method is discussed in terms of an exemplary system such as is shown in FIG. 1 . Although specific steps are shown in FIG. 2 , in other embodiments a method can have more or less steps than show.
  • Method 200 can begin at step 202 and proceed to step 204 .
  • the users associated with the multi-user interface can be identified. This can encompass configuring the user identification engine 164 of characteristic selection system 108 to obtain identification information for the various users associated with the multi-user interface or device. For example, this identification information can be obtained directly from the one or more of user terminals 102 associated with the multi-user interface. In cases where the session at the multi-user interface or device is managed by one or more of servers 103 , this identification information can be obtained from servers 103 . In still another configuration, the user identification information can be obtained from a combination of sources, including user terminals 102 , servers 103 , or any other components associated with system 100 . In such a configuration, the users may have registered, logged in, or otherwise identified themselves during the session associated with the multi-user device or interface.
  • user identification information may not be readily available for one or more of the users.
  • the absence of such information may be ignored by system 100 and items of content for the multi-user interface can be selected based solely on the known information.
  • the user information can be inferred from other types of information available from the user terminals 102 or events occurring at the user terminals 102 . That is, although the actual users may not be identifiable, the profile of the user may be ascertained to at least identify some characteristics of the user which can be used to infer identity information for the user.
  • these can include the type of content being presented via the multi-user interface, the content of user interactions at the multi-user interface, the characteristics of user interactions at the at multi-user interface, the type of device associated with the user, and location data for the device associated with the user, to name a few.
  • the various embodiments are not limited in this regard and any other type of information can be utilized to infer the user identity information.
  • the method 200 can proceed to step 206 .
  • the user characteristics for the identified users can be obtained.
  • the user identification engine 164 as part of the identification process, can retrieve user characteristic information from user profile database 156 .
  • characteristics selection engine 160 can retrieve this information from user profile database 156 as part of the process for selecting a set of user characteristics.
  • the characteristic selection system 108 can include additional functionality outside that of engines 160 and 164 from accessing and retrieving user characteristic information.
  • FIG. 1 shows this information as being stored and retrieved from content delivery system 106
  • the user profile database 156 can be stored elsewhere in system 100 , including within characteristic selection system 108 .
  • the inferred user identity information obtained at step 204 can be user characteristic information.
  • the present disclosure contemplates that the inferred user identity information can specify a category for a user and that this category is then used to identify a group of user characteristics typically associated with a user in such a category.
  • the method 200 can proceed to step 208 .
  • the characteristics selection engine 160 can then derive a set of user characteristics for use by the content delivery system 106 .
  • the characteristics selection engine 160 can examine the user characteristic data, alone or in combination with other types of data or information, in view of the rules in selection rules DB 162 . Based on these rules, a set of user characteristic data can be derived and delivered to the content delivery system 106 for processing. The operation of the characteristics selection engine 160 will be described in greater detail below with respect to FIGS. 3, 4, and 5 .
  • the method can proceed to step 210 .
  • the set of user characteristic data can then be used to select an appropriate item of content for the multi-user interface or device.
  • the method 200 can then resume previous processing at step 212 , including repeating method 200 .
  • a primary concern with multi-user interfaces is that although there may be multiple users associated with a session at a multi-user interface, in some instances only one or a few of these users should actually be targeted. For example, in the case of a multi-user interface being utilized by a parent and a child, targeting the child with an advertisement or other type of invitational content may be of little or no use. In such a scenario, financial decisions are likely being made by the parent, not the child. Accordingly, targeting the parent would be a more effective use of targeted content. The same situation comes up in various other scenarios.
  • a session using a multi-user interface involving employer(s) and employee(s), supervisor(s) and worker(s), caregiver(s) and patient(s), teacher(s) and student(2), or any other group of users in which one or more of the users is in a supervisory, guardianship, or decision-making role with respect to the other users associated with the multi-user interface.
  • FIGS. 3, 4, and 5 provide some exemplary methodologies for addressing such scenarios.
  • a first exemplary methodology is to base the set of user characteristics on known priority or ranking data for the users. This is illustrated with respect to FIG. 3 .
  • FIG. 3 shows a flowchart illustrating steps in a first exemplary method 300 for selecting a set of user characteristics in accordance with the present technology. Method 300 could be performed, for example, during step 208 in FIG. 2 .
  • Method 300 begins at step 302 and continues on to step 304 .
  • a relative priority or ranking of the users is obtained.
  • the relative priority or ranking can be computed a priority or is otherwise already known. For example, when the users are identified by user identification engine 164 or the user characteristics are provided to characteristics selection engine 160 , a relative ranking or priority of the users associated with this information can be provided as well.
  • the ranking can be a numerical value.
  • the present disclosure also contemplates that the ranking can be provided by categorizing the users based on user information, such as the user characteristics stored in user profile database 156 .
  • the characteristics selection system 108 can compute or otherwise discern the relative priority of the users from the user characteristic information or any other information associated with the users and made available to the characteristic selection system 108 .
  • the user characteristics may specify job title, description, or other information that indicates the relative position or category of the users within the group.
  • the user characteristics regarding age may indicate that one user is an adult and that the other users are children.
  • Other demographic information can be similarly used.
  • a formula can be provided from which a numerical ranking can be computed based on user information.
  • the relative importance of various types of user information can be weighted to provide the ranking.
  • the present technology is not limited to these examples and the present disclosure contemplates that other types of user information can be utilized to discern a relative priority or ranking. Further, the present disclosure contemplates that the methodology for discerning the relative priority or ranking can be specified by a content provider, users associated with the multi-user interface, or any combination thereof.
  • the method 300 can proceed to step 306 .
  • at least one delegate user from the plurality of users associated with the multi-user interface is selected based on ranking criteria. That is, the characteristics selection engine 160 can select users based on rules stored in the selection rules DB 162 specifying criteria for identifying users. For example, the rules associated with the ranking criteria can specify to select the highest ranked or highest priority user. In another example, the rules associated with the ranking criteria can specify to select a user associated with a particular position (e.g., teacher, supervisor, etc.). In still another example, a combination of different methods can be utilized to identify a highest ranked or priority user.
  • the present disclosure also contemplates that more than one user could be targeted. That is, there may be multiple users in a supervisory, guardianship, or decision-making role with respect to the other users. Accordingly, the rules associated with the ranking criteria can specify selection of multiple users. For example, such users can be identified based on the category of user. In another example, the rules associated with the ranking criteria can specify to select the n th highest ranked users, the users associated with some minimum ranking or priority, or a combination of both.
  • the set of user characteristics for the content delivery system 106 can be selected at step 308 .
  • the user characteristics for this single delegate user can be selected for use by the content delivery system 106 .
  • additional rules can be specified at selection rules DB 162 to allow the characteristics selection engine 160 to generate the set of user characteristics for content delivery system 106 . This generating can occur in a variety of ways based on these additional rules.
  • the set of user characteristics can be selected to include those characteristics that are common among the delegate users. In some configurations, an exact match can be required for inclusion. In another configuration, if all of the users are associated with sub-characteristics of a more general characteristic, the general characteristic can be selected for the set of user characteristics. In still another example, the set of user characteristics can be selected on the relative ranking or priority of the delegate users. That is, if no user characteristics are common for the delegate users, the set of user characteristics can be based on the highest ranked or priority delegate user or users. In still configurations, rather than requiring completely common characteristics, partially common characteristics can be selected.
  • a set of user characteristics cannot be selected because the user characteristics of the delegate users are contradictory, a set of user characteristics that is common to a majority of the delegate users can be selected. Similarly, a set of user characteristics that is common to at least the n th highest ranked ones of the delegate users can be selected.
  • the method 300 can resume previous processing at step 310 .
  • This can include resuming method 200 in FIG. 2 or repeating method 300 .
  • Method 300 relies on the assumption that priority or ranking information is directly or indirectly available from information stored for the users. However, in some instances such information may not be available. Accordingly, in such configurations, the relative ranking or priority information for the user can be discerned from their interactions with the multi-user interface. Such a methodology is illustrated below with respect to FIG. 4 .
  • FIG. 4 shows a flowchart of steps in a second exemplary method 400 for determining a set of user characteristics for content delivery system 106 .
  • Method 400 could be performed, for example, during step 208 in FIG. 2 .
  • Method 400 begins at step 402 and continues on to step 404 .
  • user interactions at the multi-user interface can be attributed to different users.
  • the user identification engine 164 can attribute interactions originating at different sources (e.g., different devices) can be to different users, thus identifying the different users.
  • the interactions can be analyzed to determine whether or not they come from different sources. That is, different users will generally be associated with different types of audio, visual, textual, or gestural (i.e., touchscreen or pointing device) interactions.
  • the biometrical features of the users' speech e.g., pitch, tone, volume, individual phonemes
  • Other types of interactions can be similarly analyzed to determine whether interactions are associated with different users.
  • delegate users can be identified at step 406 .
  • the user identification engine 164 can access rules stored in selection rules DB 162 or elsewhere to determine which of the identified users should be designated a delegate user.
  • the rules can specify interaction criteria to identify the types of interactions associated with users to be targeted. For example, in the case of identified users being associated with child voices and adult voices at the multi-user interface, the rules can specify selecting, as delegate users, the identified users associated with adult voices.
  • the content, tone, or other characteristics of voices can be utilized to select the identified user that is most influential or most likely the decision-maker. That is, an identified user associated with a voice that includes more command words or confident tones.
  • the frequency or volume of a voice can indicate users paying closer attention to the interface and thus users most likely to respond to content.
  • the examples above are directed primarily to analyses of voices, the present technology is not limited in this regard. That is, any audio, visual, textual, or gestural interaction at the multi-user interface, or any combinations thereof, can be analyzed to identify those users most likely to be decision-makers and thus the delegate users.
  • the set of user characteristics for the content delivery system 106 can be selected at step 408 using the characteristics selection engine 160 . Thereafter the method 400 can proceed to step 410 and resume previous processing, including repeating any of the methods described herein.
  • information regarding the various users may be known if registration or login was required to participate in the session at the multi-user interface. Accordingly, selecting the set of user characteristics can be performed in substantially a same manner as described above with respect to FIG. 3 . That is, in the case of a single delegate user being identified at step 406 , the user characteristics for this single delegate user can be selected for use by the content delivery system 106 . Further, in the case of multiple delegate users being identified at step 406 , additional rules can be specified at selection rules DB 162 to allow the characteristics selection engine 160 to generate the set of user characteristics for content delivery system 106 .
  • the user characteristics can be identified based on the user interactions associated with the delegate users. That is, rules can be specified at selection rules DB 162 that indicate what user characteristics to associate with particular types of user interactions. For example, referring back to the voice example, it may be possible to determine age, gender, race, and various other types of demographic characteristics form the biometrical features of the voice and the content of the speech associated with the voice. Similarly, other audio, visual, textual, or gestural interactions at the multi-user interface, or any combinations thereof, may be associated with particular types of user characteristics. Accordingly, the rules at selection rules DB 162 can be configured to allow an analysis of these interactions to determine these user characteristics. Again, as described above with respect to FIG.
  • the present disclosure contemplates that additional rules can be specified at selection rules DB 162 to allow the characteristics selection engine 160 to resolve these conflicts and generate the set of user characteristics for content delivery system 106 .
  • FIGS. 3 and 4 are based on the assumption that there is one or a few users who should be targeted at the multi-user interface. However, the present disclosure contemplates that a more general targeting of users can also be performed. This is illustrated with respect to FIG. 5 .
  • FIG. 5 shows a flowchart of steps in a third exemplary method 500 for determining a set of user characteristics for content delivery system 106 .
  • Method 500 could be performed, for example, during step 208 in FIG. 2 .
  • Method 500 begins at step 502 and continues on to step 504 .
  • a common set of user characteristics is identified. Selection of common user characteristics can be performed in a manner substantially similar to that described with respect to FIG. 3 . That is, the set of user characteristics can be selected to include those characteristics that are common among all of the users associated with the multi-user interface. As described above, some configurations can require an exact match inclusion in the common characteristics.
  • a common characteristic can be a general characteristic for which the user characteristics of the users are sub-characteristics.
  • the rules in selection rules DB 162 can specify a minimum set of requirements for a set of user characteristics.
  • the rules can specify a minimum number of common characteristics or required types of common characteristics.
  • the common characteristics obtained at step 504 can be compared to these minimum set criteria.
  • step 508 if the minimum set criteria are met, the common characteristics can be selected at step 510 to define the set of user characteristics. If the minimum set criteria are not met at step 508 , the method can instead proceed to step 512 .
  • an alternate or default set of user characteristics can be defined. This default set can be a set of characteristics that defines a general interest. Such a set can be defined based, for example, on the content at the multi-user interface. In another example, the default set of user characteristics can be specified by one of servers 103 managing the multi-user interface. Alternatively, different sets of user characteristics can be pre-defined and step 512 can encompass comparing the common characteristic to the pre-defined sets and selecting a one of the set that is most similar. Any other methods for identifying a default set can also be used in the present technology without limitation. Regardless of whether method 500 proceeds to step 510 or 512 , the method 500 can thereafter proceed to step 514 and resume previous processing, including repeating any of the methods described herein.
  • FIG. 6 shown is an exemplary system 600 , which defines a general-purpose computing device for implementing any of the methodologies described above.
  • the system 600 including a processing unit (CPU or processor) 620 and a system bus 610 that couples various system components including the system memory 630 such as read only memory (ROM) 640 and random access memory (RAM) 650 to the processor 620 .
  • the system 600 can include a cache 622 connected directly with, in close proximity to, or integrated as part of the processor 620 .
  • the system 600 copies data from the memory 630 and/or the storage device 660 to the cache for quick access by the processor 620 . In this way, the cache provides a performance boost that avoids processor 620 delays while waiting for data.
  • the processor 620 can include any general purpose processor and a hardware module or software module, such as module 1 662 , module 2 664 , and module 3 666 stored in storage device 660 , configured to control the processor 620 as well as a special-purpose processor where software instructions are incorporated into the actual processor design.
  • the processor 620 may essentially be a completely self-contained computing system, containing multiple cores or processors, a bus, memory controller, cache, etc.
  • a multi-core processor may be symmetric or asymmetric.
  • the system bus 610 may be any of several types of bus structures including a memory bus or memory controller, a peripheral bus, and a local bus using any of a variety of bus architectures.
  • a basic input/output (BIOS) stored in ROM 640 or the like may provide the basic routine that helps to transfer information between elements within the computing device 600 , such as during start-up.
  • the computing device 600 further includes storage devices 660 such as a hard disk drive, a magnetic disk drive, an optical disk drive, tape drive or the like.
  • the storage device 660 can include software modules 662 , 664 , 666 for controlling the processor 620 . Other hardware or software modules are contemplated.
  • the storage device 660 is connected to the system bus 610 by a drive interface.
  • the drives and the associated computer readable storage media provide nonvolatile storage of computer readable instructions, data structures, program modules and other data for the computing device 600 .
  • a hardware module that performs a particular function includes the software component stored in a non-transitory computer-readable medium in connection with the necessary hardware components, such as the processor 620 , bus 610 , display 670 , and so forth, to carry out the function.
  • the basic components are known to those of skill in the art and appropriate variations are contemplated depending on the type of device, such as whether the device 600 is a small, handheld computing device, a desktop computer, or a computer server.
  • Non-transitory computer-readable storage media expressly exclude media such as energy, carrier signals, electromagnetic waves, and signals per se.
  • an input device 690 represents any number of input mechanisms, such as a microphone for speech, a touch-sensitive screen for gesture or graphical input, keyboard, mouse, motion input, speech and so forth.
  • An output device 670 can also be one or more of a number of output mechanisms known to those of skill in the art.
  • multimodal systems enable a user to provide multiple types of input to communicate with the computing device 600 .
  • the communications interface 680 generally governs and manages the user input and system output. There is no restriction on operating on any particular hardware arrangement and therefore the basic features here may easily be substituted for improved hardware or firmware arrangements as they are developed.
  • the illustrative system embodiment is presented as including individual functional blocks including functional blocks labeled as a “processor” or processor 620 .
  • the functions these blocks represent may be provided through the use of either shared or dedicated hardware, including, but not limited to, hardware capable of executing software and hardware, such as a processor 620 , that is purpose-built to operate as an equivalent to software executing on a general purpose processor.
  • a processor 620
  • the functions of one or more processors presented in FIG. 6 may be provided by a single shared processor or multiple processors.
  • Illustrative embodiments may include microprocessor and/or digital signal processor (DSP) hardware, read-only memory (ROM) 640 for storing software performing the operations discussed below, and random access memory (RAM) 650 for storing results.
  • DSP digital signal processor
  • ROM read-only memory
  • RAM random access memory
  • VLSI Very large scale integration
  • the logical operations of the various embodiments are implemented as: (1) a sequence of computer implemented steps, operations, or procedures running on a programmable circuit within a general use computer, (2) a sequence of computer implemented steps, operations, or procedures running on a specific-use programmable circuit; and/or (3) interconnected machine modules or program engines within the programmable circuits.
  • the system 600 shown in FIG. 6 can practice all or part of the recited methods, can be a part of the recited systems, and/or can operate according to instructions in the recited non-transitory computer-readable storage media.
  • Such logical operations can be implemented as modules configured to control the processor 620 to perform particular functions according to the programming of the module. For example, FIG.
  • Mod 1 662 illustrates three modules Mod 1 662 , Mod 2 664 and Mod 3 666 which are modules configured to control the processor 620 . These modules may be stored on the storage device 660 and loaded into RAM 650 or memory 630 at runtime or may be stored as would be known in the art in other computer-readable memory locations.
  • Embodiments within the scope of the present disclosure may also include tangible and/or non-transitory computer-readable storage media for carrying or having computer-executable instructions or data structures stored thereon.
  • Such non-transitory computer-readable storage media can be any available media that can be accessed by a general purpose or special purpose computer, including the functional design of any special purpose processor as discussed above.
  • non-transitory computer-readable media can include RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to carry or store desired program code means in the form of computer-executable instructions, data structures, or processor chip design.
  • Computer-executable instructions include, for example, instructions and data which cause a general purpose computer, special purpose computer, or special purpose processing device to perform a certain function or group of functions.
  • Computer-executable instructions also include program modules that are executed by computers in stand-alone or network environments.
  • program modules include routines, programs, components, data structures, objects, and the functions inherent in the design of special-purpose processors, etc. that perform particular tasks or implement particular abstract data types.
  • Computer-executable instructions, associated data structures, and program modules represent examples of the program code means for executing steps of the methods disclosed herein. The particular sequence of such executable instructions or associated data structures represents examples of corresponding acts for implementing the functions described in such steps.
  • Embodiments of the disclosure may be practiced in network computing environments with many types of computer system configurations, including personal computers, hand-held devices, multi-processor systems, microprocessor-based or programmable consumer electronics, network PCs, minicomputers, mainframe computers, and the like. Embodiments may also be practiced in distributed computing environments where tasks are performed by local and remote processing devices that are linked (either by hardwired links, wireless links, or by a combination thereof) through a communications network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.

Abstract

The effectiveness of targeted content delivery at a multi-user interface can be directly linked to a proper targeting of users. A way of improving targeted content delivery at a multi-user interface can be to determine which users should be targeted based on one or more criteria. The present technology provides various methodologies for selecting one or more users associated with a multi-user interface to receive targeted content. Such users can be selected based on criteria associated with a ranking or priority of the users, criteria associated with an analysis of their interactions with the multi-user interface, criteria based on their most common characteristics, or any combination thereof. The user characteristics associated with such identified used can then be utilized to determine which content should be delivered to the multi-user interface.

Description

    CROSS REFERENCE TO RELATED APPLICATIONS
  • This application is a continuation of and claims benefit of U.S. application Ser. No. 13/480,724 filed on May 25, 2012, which is expressly incorporated by reference herein in its entirety.
  • BACKGROUND
  • 1. Technical Field
  • The present disclosure relates to targeted content delivery and, more specifically, to intelligent targeting of invitational content to a multi-user interface.
  • 2. Introduction
  • Targeted content delivery has long been an accepted means of conveying a desired message to an audience. Instead of creating a single message and delivering it to every member of the general public, a content provider would prefer to identify a segment of the population that is likely to have the greatest interest in their message. A key aspect in targeted content delivery is identifying an individual associated with a particular device or interface and delivering targeted content to the individual if his characteristics satisfy the target demographics for a particular item of targeted content.
  • However, delivering targeted content to a device or interface associated with multiple individuals can pose a challenge for several reasons. First, there is an initial challenge of consistently and correctly identifying the multiple individuals. Second, even when such identification is possible, the different individuals may be associated with different characteristics. Moreover, such characteristics may be inconsistent or conflicting. Accordingly, there is the additional challenge of determining which characteristics to utilize for targeted content delivery. As a result, conventional techniques for targeted content delivery will generally be inadequate for delivery of targeted content to multi-user interfaces.
  • SUMMARY
  • Additional features and advantages of the disclosure will be set forth in the description which follows, and in part will be obvious from the description, or can be learned by practice of the herein disclosed principles. The features and advantages of the disclosure can be realized and obtained by means of the instruments and combinations particularly pointed out in the appended claims. These and other features of the disclosure will become more fully apparent from the following description and appended claims, or can be learned by the practice of the principles set forth herein.
  • Disclosed are systems, methods, and non-transitory computer-readable storage media for selecting content for delivery by a content delivery system to a multi-user interface. The general methodology includes identifying users associated with the multi-user interface, obtaining user characteristics for these identified users, determining a set of user characteristics based on a set of derivation rules, and selecting content at a content delivery system based on the set of user characteristics. The identification of users and user characteristics can be performed via a characteristic selection system that is part of, or separate from, the content delivery system.
  • The set of user characteristics can be obtained in a variety of ways. In a first methodology, the relative priority or ranking of the user can be obtained. Based on this ranking, delegate users associated with the highest ranking or priority can be identified. There after the user characteristics for these delegate users can be utilized as the set of user characteristics for the multi-user interface.
  • In a second methodology, the interactions at the multi-user interface can be attributed to different users. Based on these interactions, delegate users can be identified and the user characteristics for these users can be utilized as the set of user characteristics for the multi-user interface.
  • In a third methodology, the characteristics common to the users can be identified. If these common characteristics meet minimum set criteria, they can be utilized as the set of user characteristics for the multi-user interface. If not, a default set can be used instead. Additionally, these methodologies can be combined.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • In order to describe the manner in which the above-recited and other advantages and features of the disclosure can be obtained, a more particular description of the principles briefly described above will be rendered by reference to specific embodiments thereof which are illustrated in the appended drawings. Understanding that these drawings depict only exemplary embodiments of the disclosure and are not therefore to be considered to be limiting of its scope, the principles herein are described and explained with additional specificity and detail through the use of the accompanying drawings in which:
  • FIG. 1 illustrates an exemplary configuration of devices and a network;
  • FIG. 2 illustrates an exemplary method embodiment for selecting content for a multi-user interface;
  • FIG. 3 illustrates a first exemplary method embodiment for determining a set of user characteristics for selecting content for a multi-user interface;
  • FIG. 4 illustrates a second exemplary method embodiment for determining a set of user characteristics for selecting content for a multi-user interface;
  • FIG. 5 illustrates a third exemplary method embodiment for determining a set of user characteristics for selecting content for a multi-user interface;
  • FIG. 6 illustrates an example system embodiment.
  • DETAILED DESCRIPTION
  • Various embodiments of the disclosure are discussed in detail below. While specific implementations are discussed, it should be understood that this is done for illustration purposes only. A person skilled in the relevant art will recognize that other components and configurations may be used without parting from the spirit and scope of the disclosure.
  • The present disclosure addresses the need in the art for improved targeted content delivery for multi-user interfaces. Using the present technology it is possible to generate a set of user characteristics for selecting targeted content from the user characteristics of the multiple users associated with a multi-user interface or device. An exemplary system configuration 100 is illustrated in FIG. 1 wherein electronic devices communicate via a network for purposes of exchanging content and other data. The system can be configured for use on a local area network such as that illustrated in FIG. 1. However, the present principles are applicable to a wide variety of network configurations that facilitate the intercommunication of electronic devices. For example, each of the components of system 100 in FIG. 1 can be implemented in a localized or distributed fashion in a network.
  • In system 100, invitational content can be delivered to user terminals 102 1, 102 2, . . . , 102 n (collectively “102”) connected to a network 104 by direct and/or indirect communications with a content delivery system 106. The user terminals 102 can, individually, collectively, or in combination with other components of system 100, provide a multi-user interface.
  • As used herein, the term “multi-user interface” refers to any type of user interface, or a system providing a user interface, that includes one or more elements or components, which can be concurrently accessed by multiple users. Alternatively stated, a multi-user interface can refer to any type of user interface that allows multiple users to engage in a session or activity concurrently. Multi-user devices and interfaces include televisions, radio broadcasting, group chat (on desktop/mobile devices), multi-touch tablet surfaces, bi-directional/web camera technologies, and more. Some of these devices, such as tablet computers or televisions tend to be shared between multiple users within a household. The elements of the multi-user interface can be text-based elements, graphical elements, audio elements, video elements, any other interface elements, and any combinations thereof. Further, the elements can be input elements, output elements, or any combination thereof. In some configurations, the multi-user interface can be provided via a single one of devices 102. That is, multiple users can concurrently interact with an interface, or elements thereof, via the same device. In other configurations, the multi-user interface can be provided via multiple ones of devices 102, each associated with at least one user, engaged in a concurrent session or activity. In such configurations, the multi-user session or activity can be managed in a centralized fashion via one or more of collaborative servers 103 1, 103 2, . . . , 103 n, (collectively “103”). Alternatively, session can be managed by the devices 102 themselves and the role of the collaborative servers 103 can be to provide communications between the ones of device 102 engaged in the multi-user session. However, the present technology is not limited in this regard and the multiple one of devices can communicate directly with each other in a decentralized or ad-hoc manner.
  • The content delivery system 106 can support connections from a variety of different client devices 102, such as desktop computers; mobile computers; handheld communications devices, e.g. mobile phones, smart phones, tablets; and/or any other network enabled communications devices. Furthermore, content delivery system 106 can concurrently accept connections from and interact with multiple client devices 102. The content delivery system 106 can receive a request for electronic content, such as a web page, an application, a media item, etc., from one of user terminals 102. Thereafter, the content delivery system 106 can assemble a content package and transmit the assembled content page to the requesting one of user terminals 102. To facilitate communications with the user terminals 102 and/or any other device or component, the content delivery system 106 can include a communications interface 120.
  • The content delivery system 106 can include a content management module 122 to facilitate the generation of an assembled content package. Specifically, the content management module 122 can combine content from one or more primary content providers 109 1, 109 2, . . . , 109 n (collectively “109”) and content from one or more secondary content providers 110 1, 110 2, . . . 110 n (collectively “110”) to generate the assembled content package for the user terminals 102. For example, in the case of a web page being delivered to a requesting one of user terminals 102, the content management module 122 can assemble a content package by requesting the data for the web page from one of the primary content providers 109 maintaining the web page. For the invitational content on the web page provided by the secondary content providers 110, the content management module 122 can request the appropriate data according to the arrangement between the primary and secondary content providers 109 and 110. Additionally, the content management module 122 can create content packages that contain content from a single content provider. That is, a content package can contain only primary content or a content package can contain only secondary content. However, the content package is not limited to the content from content providers 109 and 110. Rather, the content package can include other data generated at the content delivery systems 106. In some embodiments, the content delivery system 106 can preselect the content package before a request is received.
  • An assembled content package can include text, graphics, audio, video, executable code, or any combination thereof. Further, an assembled content package can include invitational content designed to inform or elicit a pre-defined response from the user. In some embodiments, the invitational content can be associated with a product or can directly or indirectly advertise a product. For example, the assembled content package can include one or more types of advertisements from one or more advertisers.
  • Additionally, the invitational content can be active invitational content. That is, invitational content that is designed to primarily elicit a pre-defined response from a user. For example, active invitational content can include one or more types of advertisements configured to be clicked upon, solicit information, or be converted by the user into a further action, such as purchase or a download of the advertised item. However, invitational content can also be passive invitational content. That is invitational content that is designed to primarily inform the user, such as a video. In some cases, passive invitational content can include information that can lead or direct users to other invitational content including active invitational content.
  • Furthermore, the invitational content can be dynamic invitational content. That is invitational content that varies over time or that varies based on user interaction. However, the various embodiments are not limited in this regard and the invitational content can include static invitational content that does not vary over time or with user interaction. In the various embodiments, invitational content in a content package can be static or dynamic and active or passive. A content package can include a combination of various types of invitational content in a single content package.
  • In some cases, a content package can replace or update invitational content in a content package already delivered to a user terminal 102. For example, a first content package can include an app that can be installed on the user terminal 102. A subsequent content package can include one or more items of invitational content that can be presented to a user of the user terminal 102 while the user interacts with the app.
  • Although, primary and secondary providers 109 and 110 are presented herein as separate entities, this is for illustrative purposes only. In some cases, the primary and the secondary content providers 109 and 110 can be the same entity. Thus, a single entity can define and provide both the primary and the secondary content.
  • The content delivery module 122 can be configured to request that content be sent directly from content providers 109 and 110. Alternatively, a cached arrangement can also be used to improve performance of the content delivery system 106 and improve overall user experience. That is, the content delivery system 106 can include a content database 150 for locally storing/caching content maintained by content providers 109 and 110. The data in the content database 150 can be refreshed or updated on a regular basis to ensure that the content in the database is up to date at the time of a request from a user terminal 102. However, in some cases, the content management module 122 can be configured to retrieve content directly from content providers 109 and 110, if the metadata associated with the data in the content database 150 appears to be outdated or corrupted.
  • As described above, content maintained by the content providers 109 and 110 can be combined according to a predefined arrangement between the two content providers, which can be embodied as a set of rules. In an arrangement where the content delivery system 106 assembles the content package from multiple content providers, these rules can be stored in a content delivery system (CDS) rules database 152 in content delivery system 106. The content management module 122 can be configured to assemble the content package for user terminals 102 based on these rules. The rules can specify how to select content from secondary content providers 110 and primary content providers 109 in response to a request from one of user terminals 102. For example, in the case of a web page maintained by one of primary content providers 109, and including variable advertisement portions, the rules database 152 can specify rules for selecting one of the secondary providers 110. The rules can also specify how to select specific content from the selected one of secondary providers 110 to be combined with the content provided by one of primary providers 109. Once assembled, the assembled content package can be sent to a requesting one of user terminals 102.
  • As used herein, the term “user characteristics” refers to the characteristics of a particular user associated with one or more of user terminals 102. User characteristics can include channel characteristics, demographic characteristics, behavioral characteristics, and spatial-temporal characteristics. Channel characteristics can define the specific delivery channel being used to deliver a content package to a user. For example, channel characteristics can include a type of electronic content, a type of device or user terminal, a carrier or network provider, or any other characteristic that defines a specific delivery channel for the content package. Spatial-temporal characteristics can define a location, a location zone, a date, a time, or any other characteristic that defines a geographic location and/or a time for delivery of the content package. Demographic characteristics can define characteristics of the users targeted by the content or associated with the content. For example, demographic characteristics can include age, income, ethnicity, gender, occupation, or any other user characteristics. Behavioral characteristics can define user behaviors for one or more different types of content, separately or in combination with any other user characteristics. That is, different behavioral characteristics may be associated with different channels, demographics, or spatial-temporal characteristics. User characteristics can also include characteristics descriptive of a user's state of mind including characteristics indicative of how likely a user is to click on or convert an item of invitational content if it were displayed to the user. User characteristics can be learned directly or derived indirectly from a variety of sources. In some embodiments, the user characteristic values can be collected from one or more databases. For example, if the user is registered with an online media service, such as the ITUNES store maintained by Apple Inc. of Cupertino, Calif., the collected data could include the user's registration information. Such data can provide values for declared user characteristics. As will become apparent from the remainder of this disclosure, the content delivery system 106 can learn of or derive user characteristics from any number of other information sources.
  • In some embodiments, the invitational content provided by the secondary content providers 110 can be associated with one or more targeted segments. A targeted segment can be viewed as defining a space or region in k-dimensional space, where each of the k dimensions is associated with one of a plurality of user characteristics. In the various embodiments, the k dimensions can include both orthogonal and non-orthogonal dimensions. That is, some of the k dimensions can overlap or can be related in some aspect. For example, if separate dimensions are specified for city and state, these dimensions are non-orthogonal.
  • In the various embodiments, the content delivery system 106 can also include a unique user identifier (UUID) database 154 that can be used for managing sessions with the various user terminal devices 102. The UUID database 154 can be used with a variety of session management techniques. For example, the content delivery system 106 can implement an HTTP cookie or any other conventional session management method (e.g., IP address tracking, URL query strings, hidden form fields, window name tracking, authentication methods, and local shared objects) for user terminals 102 connected to content delivery system 106 via a substantially persistent network session. However, other methods can be used as well. For example, in the case of handheld communications devices, e.g. mobile phones, smart phones, tablets, or other types of user terminals 102 connecting using multiple or non-persistent network sessions, multiple requests for content from such devices may be assigned to a same entry in the UUID database 154. The delivery system 106 can analyze the attributes of requesting devices to determine whether such requests can be attributed to the same device. Such attributes can include device or group-specific attributes.
  • In some embodiments, the content delivery system 106 can include a user-profile database 156. The user-profile database 156 can, at least in part, be constructed based on declared user characteristics related to one or more users. In some cases, the user-profile database may contain inferred or derived user characteristic values. The user-profile database 154 can be updated using a user-profile-updater module 124. In some embodiments, the user-profile-updater module 124 can be configured to add additional profile data, update profile data, fill in missing profile data, or infer user characteristic values from declared data.
  • The user-profile-updater module 124 can also be configured to maintain the profile database 156 to include only more recently acquired data or to re-derive any inferred characteristics in order to ensure that the user profile is an accurate reflection of the current state of the user (location, state of mind, behaviors, demographics, etc. can change rapidly). For example, the updater module 124 can be configured to maintain the profile database 156 to include only data from the last two to three months. However, the updater module 124 can be configured to adjust the data in profile database 156 to cover any span of time. In some instances the updater module 124 can update the profile database 156 in real-time. Alternatively, the updater module 124 can be configured to set an expiration period on a subset of the data in the profile database 156. For example, a policy can specify that user declared data is maintained as long as the user account is active, but user characteristic values based on location information expire after a specified period of time. In some cases, a user can set the expiration period. In some instances, the updater module 124 can update the profile database 156 at least every week, or every day. In some cases, the delivery system 106 can receive a direct request to update one or more user profiles. The update request can come directly from the user's device or any other device capable of communicating with the delivery system 106, such as other content delivery networks or websites. In some cases, the delivery system 106 can receive an indirect request to update one or more user profiles. An indirect request can be the result of receiving new user characteristic values. An update request can occur at any time.
  • In some embodiments, the content delivery system 106 can include a segment database 158 that is used to aid in selecting invitational content to target to users. The segment database 158 can store defined segments and associations between the segments and users and/or invitational content that should be targeted to users associated with the segments. As described above, a targeted segment can be defined based on one or more user characteristics or derivatives thereof and can be associated with one or more items of invitational content. Additionally, a targeted segment can be associated with one or more users. In some embodiments, by associating a targeted segment with both a user and an item of invitational content, the delivery system 106 can match invitational content with users. In some embodiments, the delivery system 106 can update the segment database 158 to add newly defined targeted segments or to delete targeted segments.
  • In some cases a targeted segment can be as simple as a single user characteristic identifier and a single user characteristic value. For example, the common demographic identifiers of gender, age, occupation, or income can each be used in defining corresponding targeted segments. A characteristic value can also be assigned to the identifier. For example, the values of male, 19, and student can be assigned to the user characteristics of gender, age, and occupation, respectively. However, more complex targeted segments can also be defined that consist of one or more identifiers with one or more values associated with each identifier. For example, a targeted segment can be defined to target a user with the following characteristics: gender, male; age, 19-24; location, Northern California or New York City. Additional exemplary segments are described throughout this disclosure. Furthermore, targeted segments can correspond to one or more segments that content providers are likely to easily understand and thus can quickly identify as being relevant to their content. Additionally, in some embodiments, content providers 109 and 110 can define a custom targeted segment.
  • In some embodiments, the content delivery system 106 can provide a segment assigner module 126. The segment assigner module 126 can apply a set of user characteristics associated with a user (including segments to which a user has been previously assigned) to assign the user to one or more targeted segments. The assigner module 126 can obtain the set of user characteristic values from the user profile database 154 and/or from the user's activities during the current session. The segment assigner module 126 can assign a user to one or more defined targeted segments in the segment database 158, or alternatively, a user can be assigned to a custom targeted segment defined to meet specific goals of a content provider.
  • Based on the assigned segments, the user profile database 156 can be updated to reflect the segment assignments. Additionally, the delivery system 106 can use the segment assignments to select targeted content. In some cases, the user profile data in the user profile database 156 can change over time so the segment assigner module 126 can be configured to periodically update the segment assignments in the user profile database 156. The segment assignment update can be triggered at specified intervals, upon detection of a change in the user profile database 156, and/or upon detection of a specified activity in the delivery system 106.
  • In some embodiments, the content delivery system 106 can provide a segment-prioritizing module 128 for ordering the targeted segments assigned to a user. The prioritization can be influenced by a number of factors, which can include the user's context, a content provider's campaign goals, and/or the content that is currently available for display to the user. A request to prioritize the targeted segments can be explicit or implicit and can be made by any component of the system 100. For example, a secondary content provider 110 can explicitly request that the content delivery system 106 prioritize the targeted segments or the request can be implicit as part of a request for a content package. The resulting prioritized list can be provided, for example, to the content management module 122, which can then use the information to assemble and deliver a content package. Additionally, the prioritized list can be stored, for example in the user profile, for later use.
  • In some content delivery systems, the selection of an item of secondary content can be based, at least on part, on the characteristics of a user associated with a user terminal or a session associated with the user. For example, the CDS rules database 152 can specify that the delivery of a particular item of secondary content should be limited to users meeting a specific set of criteria.
  • However, when multiple users are associated with the same user terminal or session, this process can be challenging. That is, each user can be associated with different user characteristics that would result in the selection of different items of secondary content based on the rules in the CDS rules database 152. Although one potential solution is to simply provide all of these different items at the device or interface, such an approach would be impractical in many circumstances. For example, a device or interface may only have limited capability or capacity for presenting such items to the user. Further, the communications links for the device or interface may only have a limited capability or capacity for receiving such items. As a result, lag or time delays can be introduced if a significant number of items need to be provided to the device or interface. Moreover, in the case of a multi-user interface, such an arrangement can result in invitational content of little or no interest being presented to many users. Worst yet, such an arrangement can result in invitational content of little or no interest being presented to a decision-maker among the multiple users.
  • In view of the foregoing, the present technology disclosed herein provides systems and methods for intelligently targeting invitational content for a multi-user interface. A first aspect of the present technology provides systems and methods for deriving a set of user characteristics from the characteristics of the individual users based on the interactions of the users at the multi-user interface and selection criteria or rules. A second aspect of the present technology provides systems and methods for deriving a set of user characteristics from the characteristics of the individual users based on a relative ranking or priority of the users at the multi-user interface and selection criteria or rules. A third aspect of the present technology provides systems and methods for deriving a set of user characteristics by aggregating the characteristics of the users at the multi-user interface based on selection criteria or rules.
  • In view of the foregoing, the system 100 can also be configured to include a characteristic selection system 108 that generates a set of user characteristics to be used by the content delivery system 106 for selecting and delivering content to ones of the user terminals 102 associated with a multi-user interface or device. The characteristic selection system 108 can receive information associated with users at a user terminal 102 associated with a multi-user interface. For example, the characteristics selection system 108 can receive information regarding user characteristics, user interactions, or both. Whether the characteristic selection system 108 receives such information from the content delivery system 106, the user terminals 102, or other sources can vary with the configuration of the system 100.
  • The characteristic selection system 108 can include a characteristic selection engine 160 and a selection rules database (DB) 162. The selection rules DB 162 can specify rules for the characteristics selection engine 160 to analyze the user characteristics from the various users accessing the one or more of user terminals 102 associated with the multi-device or interface and determine a set of user characteristics for the content delivery system 106 to utilized to select content to be delivered to the one or more of user terminals 102.
  • The present disclosure contemplates that the rules in selection rules DB 162 can depend on any number of factors or conditions. Some exemplary factors and conditions include:
      • 1. Number of users. This input will identify the minimum number of users who are engaged with the device at time of the request for content. The number of users can also reflect the total number of users who may be engaged with the device—some of whom may not be recognized or maybe participating passively.
      • 2. Device make/model/form factor. This input identifies what type of device is requesting the content along with other engaged devices. For example, users could be simultaneously engaging with a smart TV platform with one or more mobile/tablet devices.
      • 3. Input methods. This input will determine the input method used by the users of the multiuser device. For example, an online gaming platform coupled with a smart TV can identify active players (using controllers) along with passive players/spectators (using voice or visuals).
      • 4. User demographics. These inputs identify the user demographics such as age, gender, income etc.
      • 5. User locations. These inputs identify the user locations. A multi-user device may include participants who may not be in the same location.
      • 6. Other information such as current time, sequence of content previously served, user preferences, content ratings and more.
        However, the present technology is not limited in this regard and the present disclosure contemplates that any other factors and conditions can be considered.
  • In some configurations, the operation of the characteristic selection system 108 is based on the assumption that the identity of the users is known or is readily ascertainable. For example, the multi-user device or interface can require users to register or login. In such a configuration, the user characteristics for the users can then be directly obtained from user profile database 156 or any other source of user characteristic data. However, in other configurations, the identity of the users may not be known beforehand. Accordingly, in such configurations, the characteristic selection system 108 can further include a user identification engine 164. The user identification engine can then be used to identify the users associated with the multi-user interface or device or at least determine or estimate the user characteristics for such users. The operation of the characteristic selection system 108 within system 100 will be described in greater detail with respect to FIGS. 3-5
  • Although the characteristic selection system 108 is presented here as a separate entity, this is for ease of illustration and discussion. The present disclosure contemplates that the content delivery system 106 can include the characteristic selection system 108. Alternatively, user terminals 102 can each include all or part of a characteristic selection system 108.
  • As described above, one aspect of the present technology is the gathering and use of data available from various sources to improve the delivery to users of invitational content or any other content that may be of interest to them. The present disclosure contemplates that in some instances, this gathered data may include personal information data that uniquely identifies or can be used to contact or locate a specific person. Such personal information data can include demographic data, location-based data, telephone numbers, email addresses, twitter ID's, home addresses, or any other identifying information.
  • The present disclosure recognizes that the use of such personal information data in the present technology can be used to the benefit of users. For example, the personal information data can be used to deliver targeted content that is of greater interest to the user. Accordingly, use of such personal information data enables calculated control of the delivered content. Further, other uses for personal information data that benefit the user are also contemplated by the present disclosure.
  • The present disclosure further contemplates that the entities responsible for the collection, analysis, disclosure, transfer, storage, or other use of such personal information data will comply with well-established privacy policies and/or privacy practices. In particular, such entities should implement and consistently use privacy policies and practices that are generally recognized as meeting or exceeding industry or governmental requirements for maintaining personal information data private and secure. For example, personal information from users should be collected for legitimate and reasonable uses of the entity and not shared or sold outside of those legitimate uses. Further, such collection should occur only after receiving the informed consent of the users. Additionally, such entities would take any needed steps for safeguarding and securing access to such personal information data and ensuring that others with access to the personal information data adhere to their privacy policies and procedures. Further, such entities can subject themselves to evaluation by third parties to certify their adherence to widely accepted privacy policies and practices.
  • Despite the foregoing, the present disclosure also contemplates embodiments in which users selectively block the use of, or access to, personal information data. That is, the present disclosure contemplates that hardware and/or software elements can be provided to prevent or block access to such personal information data. For example, in the case of advertisement delivery services, the present technology can be configured to allow users to select to “opt in” or “opt out” of participation in the collection of personal information data during registration for services. In another example, users can select not to provide location information for targeted content delivery services. In yet another example, users can select to not provide precise location information, but permit the transfer of location zone information.
  • Therefore, although the present disclosure broadly covers use of personal information data to implement one or more various disclosed embodiments, the present disclosure also contemplates that the various embodiments can also be implemented without the need for accessing such personal information data. That is, the various embodiments of the present technology are not rendered inoperable due to the lack of all or a portion of such personal information data. For example, content can be selected and delivered to users by inferring preferences based on non-personal information data or a bare minimum amount of personal information, such as the content being requested by the device associated with a user, other non-personal information available to the content delivery services, or publically available information.
  • Now turning to FIG. 2, there is shown a flowchart illustrating steps in an exemplary method 200 for selecting items of content to be delivered to a multi-user interface. For the sake of clarity, this method is discussed in terms of an exemplary system such as is shown in FIG. 1. Although specific steps are shown in FIG. 2, in other embodiments a method can have more or less steps than show.
  • Method 200 can begin at step 202 and proceed to step 204. At step 204, the users associated with the multi-user interface can be identified. This can encompass configuring the user identification engine 164 of characteristic selection system 108 to obtain identification information for the various users associated with the multi-user interface or device. For example, this identification information can be obtained directly from the one or more of user terminals 102 associated with the multi-user interface. In cases where the session at the multi-user interface or device is managed by one or more of servers 103, this identification information can be obtained from servers 103. In still another configuration, the user identification information can be obtained from a combination of sources, including user terminals 102, servers 103, or any other components associated with system 100. In such a configuration, the users may have registered, logged in, or otherwise identified themselves during the session associated with the multi-user device or interface.
  • The present disclosure contemplates that user identification information may not be readily available for one or more of the users. In some configurations, if information for other users is available, then the absence of such information may be ignored by system 100 and items of content for the multi-user interface can be selected based solely on the known information. However, in other configurations, the user information can be inferred from other types of information available from the user terminals 102 or events occurring at the user terminals 102. That is, although the actual users may not be identifiable, the profile of the user may be ascertained to at least identify some characteristics of the user which can be used to infer identity information for the user. For example, these can include the type of content being presented via the multi-user interface, the content of user interactions at the multi-user interface, the characteristics of user interactions at the at multi-user interface, the type of device associated with the user, and location data for the device associated with the user, to name a few. However, the various embodiments are not limited in this regard and any other type of information can be utilized to infer the user identity information.
  • Once the identities of the users at the multi-user interface are determined at step 204, the method 200 can proceed to step 206. At step 206, the user characteristics for the identified users can be obtained. For example, the user identification engine 164, as part of the identification process, can retrieve user characteristic information from user profile database 156. Alternatively, characteristics selection engine 160 can retrieve this information from user profile database 156 as part of the process for selecting a set of user characteristics. In a further example, the characteristic selection system 108 can include additional functionality outside that of engines 160 and 164 from accessing and retrieving user characteristic information. Further, although FIG. 1 shows this information as being stored and retrieved from content delivery system 106, the user profile database 156 can be stored elsewhere in system 100, including within characteristic selection system 108.
  • In the case where user identity is inferred, the inferred user identity information obtained at step 204 can be user characteristic information. However, the present disclosure contemplates that the inferred user identity information can specify a category for a user and that this category is then used to identify a group of user characteristics typically associated with a user in such a category.
  • Once the user characteristic data is obtained at step 206, the method 200 can proceed to step 208. At step 208, the characteristics selection engine 160 can then derive a set of user characteristics for use by the content delivery system 106. In particular, the characteristics selection engine 160 can examine the user characteristic data, alone or in combination with other types of data or information, in view of the rules in selection rules DB 162. Based on these rules, a set of user characteristic data can be derived and delivered to the content delivery system 106 for processing. The operation of the characteristics selection engine 160 will be described in greater detail below with respect to FIGS. 3, 4, and 5.
  • Once the set of user characteristics are selected at step 208, the method can proceed to step 210. At step 210, the set of user characteristic data can then be used to select an appropriate item of content for the multi-user interface or device. The method 200 can then resume previous processing at step 212, including repeating method 200.
  • As noted above, a primary concern with multi-user interfaces is that although there may be multiple users associated with a session at a multi-user interface, in some instances only one or a few of these users should actually be targeted. For example, in the case of a multi-user interface being utilized by a parent and a child, targeting the child with an advertisement or other type of invitational content may be of little or no use. In such a scenario, financial decisions are likely being made by the parent, not the child. Accordingly, targeting the parent would be a more effective use of targeted content. The same situation comes up in various other scenarios. For example, a session using a multi-user interface involving employer(s) and employee(s), supervisor(s) and worker(s), caregiver(s) and patient(s), teacher(s) and student(2), or any other group of users in which one or more of the users is in a supervisory, guardianship, or decision-making role with respect to the other users associated with the multi-user interface. FIGS. 3, 4, and 5 provide some exemplary methodologies for addressing such scenarios.
  • A first exemplary methodology is to base the set of user characteristics on known priority or ranking data for the users. This is illustrated with respect to FIG. 3. FIG. 3 shows a flowchart illustrating steps in a first exemplary method 300 for selecting a set of user characteristics in accordance with the present technology. Method 300 could be performed, for example, during step 208 in FIG. 2.
  • Method 300 begins at step 302 and continues on to step 304. At step 304, a relative priority or ranking of the users is obtained. In some configurations, the relative priority or ranking can be computed a priority or is otherwise already known. For example, when the users are identified by user identification engine 164 or the user characteristics are provided to characteristics selection engine 160, a relative ranking or priority of the users associated with this information can be provided as well. In some configurations, the ranking can be a numerical value. However, the present disclosure also contemplates that the ranking can be provided by categorizing the users based on user information, such as the user characteristics stored in user profile database 156. However, the present technology is not limited in this regard and the characteristics selection system 108 can compute or otherwise discern the relative priority of the users from the user characteristic information or any other information associated with the users and made available to the characteristic selection system 108.
  • For example, the user characteristics may specify job title, description, or other information that indicates the relative position or category of the users within the group. In another example, the user characteristics regarding age may indicate that one user is an adult and that the other users are children. Other demographic information can be similarly used. In still another example, a formula can be provided from which a numerical ranking can be computed based on user information. In such a configuration, the relative importance of various types of user information can be weighted to provide the ranking. However, the present technology is not limited to these examples and the present disclosure contemplates that other types of user information can be utilized to discern a relative priority or ranking. Further, the present disclosure contemplates that the methodology for discerning the relative priority or ranking can be specified by a content provider, users associated with the multi-user interface, or any combination thereof.
  • Once the relative priority or ranking of the users is obtained at step 304, the method 300 can proceed to step 306. At step 306, at least one delegate user from the plurality of users associated with the multi-user interface is selected based on ranking criteria. That is, the characteristics selection engine 160 can select users based on rules stored in the selection rules DB 162 specifying criteria for identifying users. For example, the rules associated with the ranking criteria can specify to select the highest ranked or highest priority user. In another example, the rules associated with the ranking criteria can specify to select a user associated with a particular position (e.g., teacher, supervisor, etc.). In still another example, a combination of different methods can be utilized to identify a highest ranked or priority user.
  • The present disclosure also contemplates that more than one user could be targeted. That is, there may be multiple users in a supervisory, guardianship, or decision-making role with respect to the other users. Accordingly, the rules associated with the ranking criteria can specify selection of multiple users. For example, such users can be identified based on the category of user. In another example, the rules associated with the ranking criteria can specify to select the nth highest ranked users, the users associated with some minimum ranking or priority, or a combination of both.
  • After the delegate users are selected at step 306, the set of user characteristics for the content delivery system 106 can be selected at step 308. In the case of a single delegate user being identified at step 306, the user characteristics for this single delegate user can be selected for use by the content delivery system 106. In the case of multiple delegate users being identified at step 306, additional rules can be specified at selection rules DB 162 to allow the characteristics selection engine 160 to generate the set of user characteristics for content delivery system 106. This generating can occur in a variety of ways based on these additional rules.
  • In one example, the set of user characteristics can be selected to include those characteristics that are common among the delegate users. In some configurations, an exact match can be required for inclusion. In another configuration, if all of the users are associated with sub-characteristics of a more general characteristic, the general characteristic can be selected for the set of user characteristics. In still another example, the set of user characteristics can be selected on the relative ranking or priority of the delegate users. That is, if no user characteristics are common for the delegate users, the set of user characteristics can be based on the highest ranked or priority delegate user or users. In still configurations, rather than requiring completely common characteristics, partially common characteristics can be selected. For example, if a set of user characteristics cannot be selected because the user characteristics of the delegate users are contradictory, a set of user characteristics that is common to a majority of the delegate users can be selected. Similarly, a set of user characteristics that is common to at least the nth highest ranked ones of the delegate users can be selected.
  • Referring back to FIG. 3, after the set of user characteristics is selected at step 308, the method 300 can resume previous processing at step 310. This can include resuming method 200 in FIG. 2 or repeating method 300. Method 300 relies on the assumption that priority or ranking information is directly or indirectly available from information stored for the users. However, in some instances such information may not be available. Accordingly, in such configurations, the relative ranking or priority information for the user can be discerned from their interactions with the multi-user interface. Such a methodology is illustrated below with respect to FIG. 4.
  • FIG. 4 shows a flowchart of steps in a second exemplary method 400 for determining a set of user characteristics for content delivery system 106. Method 400 could be performed, for example, during step 208 in FIG. 2. Method 400 begins at step 402 and continues on to step 404. At step 404, user interactions at the multi-user interface can be attributed to different users. For example, the user identification engine 164 can attribute interactions originating at different sources (e.g., different devices) can be to different users, thus identifying the different users. In another example, the interactions can be analyzed to determine whether or not they come from different sources. That is, different users will generally be associated with different types of audio, visual, textual, or gestural (i.e., touchscreen or pointing device) interactions. For instance, in the case of a spoken or audio interaction, the biometrical features of the users' speech (e.g., pitch, tone, volume, individual phonemes) can be used to identify different users. Other types of interactions can be similarly analyzed to determine whether interactions are associated with different users.
  • After the interactions are attributed to different users at step 404, delegate users can be identified at step 406. For example, the user identification engine 164 can access rules stored in selection rules DB 162 or elsewhere to determine which of the identified users should be designated a delegate user. In particular, the rules can specify interaction criteria to identify the types of interactions associated with users to be targeted. For example, in the case of identified users being associated with child voices and adult voices at the multi-user interface, the rules can specify selecting, as delegate users, the identified users associated with adult voices. In another example, the content, tone, or other characteristics of voices can be utilized to select the identified user that is most influential or most likely the decision-maker. That is, an identified user associated with a voice that includes more command words or confident tones. In yet another example, the frequency or volume of a voice can indicate users paying closer attention to the interface and thus users most likely to respond to content. Although the examples above are directed primarily to analyses of voices, the present technology is not limited in this regard. That is, any audio, visual, textual, or gestural interaction at the multi-user interface, or any combinations thereof, can be analyzed to identify those users most likely to be decision-makers and thus the delegate users.
  • After the delegate users are selected at step 406, the set of user characteristics for the content delivery system 106 can be selected at step 408 using the characteristics selection engine 160. Thereafter the method 400 can proceed to step 410 and resume previous processing, including repeating any of the methods described herein. In some cases, information regarding the various users may be known if registration or login was required to participate in the session at the multi-user interface. Accordingly, selecting the set of user characteristics can be performed in substantially a same manner as described above with respect to FIG. 3. That is, in the case of a single delegate user being identified at step 406, the user characteristics for this single delegate user can be selected for use by the content delivery system 106. Further, in the case of multiple delegate users being identified at step 406, additional rules can be specified at selection rules DB 162 to allow the characteristics selection engine 160 to generate the set of user characteristics for content delivery system 106.
  • However, in the case where a registration or login process was not required or was not available, the user characteristics can be identified based on the user interactions associated with the delegate users. That is, rules can be specified at selection rules DB 162 that indicate what user characteristics to associate with particular types of user interactions. For example, referring back to the voice example, it may be possible to determine age, gender, race, and various other types of demographic characteristics form the biometrical features of the voice and the content of the speech associated with the voice. Similarly, other audio, visual, textual, or gestural interactions at the multi-user interface, or any combinations thereof, may be associated with particular types of user characteristics. Accordingly, the rules at selection rules DB 162 can be configured to allow an analysis of these interactions to determine these user characteristics. Again, as described above with respect to FIG. 3, in the event that different, conflicting user characteristics are associated with different delegate users, the present disclosure contemplates that additional rules can be specified at selection rules DB 162 to allow the characteristics selection engine 160 to resolve these conflicts and generate the set of user characteristics for content delivery system 106.
  • The methods described above with respect to FIGS. 3 and 4 are based on the assumption that there is one or a few users who should be targeted at the multi-user interface. However, the present disclosure contemplates that a more general targeting of users can also be performed. This is illustrated with respect to FIG. 5.
  • FIG. 5 shows a flowchart of steps in a third exemplary method 500 for determining a set of user characteristics for content delivery system 106. Method 500 could be performed, for example, during step 208 in FIG. 2. Method 500 begins at step 502 and continues on to step 504. At step 504, a common set of user characteristics is identified. Selection of common user characteristics can be performed in a manner substantially similar to that described with respect to FIG. 3. That is, the set of user characteristics can be selected to include those characteristics that are common among all of the users associated with the multi-user interface. As described above, some configurations can require an exact match inclusion in the common characteristics. As also described above, a common characteristic can be a general characteristic for which the user characteristics of the users are sub-characteristics.
  • Once the common characteristics are identified at step 504, it can be necessary to determine whether or not they define a sufficiently large group of characteristics for the content delivery system 106. That is, the rules in selection rules DB 162 can specify a minimum set of requirements for a set of user characteristics. For example, the rules can specify a minimum number of common characteristics or required types of common characteristics. Thus, at step 506, the common characteristics obtained at step 504 can be compared to these minimum set criteria.
  • Thereafter, at step 508, if the minimum set criteria are met, the common characteristics can be selected at step 510 to define the set of user characteristics. If the minimum set criteria are not met at step 508, the method can instead proceed to step 512. At step 512, an alternate or default set of user characteristics can be defined. This default set can be a set of characteristics that defines a general interest. Such a set can be defined based, for example, on the content at the multi-user interface. In another example, the default set of user characteristics can be specified by one of servers 103 managing the multi-user interface. Alternatively, different sets of user characteristics can be pre-defined and step 512 can encompass comparing the common characteristic to the pre-defined sets and selecting a one of the set that is most similar. Any other methods for identifying a default set can also be used in the present technology without limitation. Regardless of whether method 500 proceeds to step 510 or 512, the method 500 can thereafter proceed to step 514 and resume previous processing, including repeating any of the methods described herein.
  • Turning now to FIG. 6, shown is an exemplary system 600, which defines a general-purpose computing device for implementing any of the methodologies described above. The system 600, including a processing unit (CPU or processor) 620 and a system bus 610 that couples various system components including the system memory 630 such as read only memory (ROM) 640 and random access memory (RAM) 650 to the processor 620. The system 600 can include a cache 622 connected directly with, in close proximity to, or integrated as part of the processor 620. The system 600 copies data from the memory 630 and/or the storage device 660 to the cache for quick access by the processor 620. In this way, the cache provides a performance boost that avoids processor 620 delays while waiting for data. These and other modules can control or be configured to control the processor 620 to perform various actions. Other system memory 630 may be available for use as well. The memory 630 can include multiple different types of memory with different performance characteristics. It can be appreciated that the disclosure may operate on a computing device 600 with more than one processor 620 or on a group or cluster of computing devices networked together to provide greater processing capability. The processor 620 can include any general purpose processor and a hardware module or software module, such as module 1 662, module 2 664, and module 3 666 stored in storage device 660, configured to control the processor 620 as well as a special-purpose processor where software instructions are incorporated into the actual processor design. The processor 620 may essentially be a completely self-contained computing system, containing multiple cores or processors, a bus, memory controller, cache, etc. A multi-core processor may be symmetric or asymmetric.
  • The system bus 610 may be any of several types of bus structures including a memory bus or memory controller, a peripheral bus, and a local bus using any of a variety of bus architectures. A basic input/output (BIOS) stored in ROM 640 or the like, may provide the basic routine that helps to transfer information between elements within the computing device 600, such as during start-up. The computing device 600 further includes storage devices 660 such as a hard disk drive, a magnetic disk drive, an optical disk drive, tape drive or the like. The storage device 660 can include software modules 662, 664, 666 for controlling the processor 620. Other hardware or software modules are contemplated. The storage device 660 is connected to the system bus 610 by a drive interface. The drives and the associated computer readable storage media provide nonvolatile storage of computer readable instructions, data structures, program modules and other data for the computing device 600. In one aspect, a hardware module that performs a particular function includes the software component stored in a non-transitory computer-readable medium in connection with the necessary hardware components, such as the processor 620, bus 610, display 670, and so forth, to carry out the function. The basic components are known to those of skill in the art and appropriate variations are contemplated depending on the type of device, such as whether the device 600 is a small, handheld computing device, a desktop computer, or a computer server.
  • Although the exemplary embodiment described herein employs the hard disk 660, it should be appreciated by those skilled in the art that other types of computer readable media which can store data that are accessible by a computer, such as magnetic cassettes, flash memory cards, digital versatile disks, cartridges, random access memories (RAMs) 650, read only memory (ROM) 640, a cable or wireless signal containing a bit stream and the like, may also be used in the exemplary operating environment. Non-transitory computer-readable storage media expressly exclude media such as energy, carrier signals, electromagnetic waves, and signals per se.
  • To enable user interaction with the computing device 600, an input device 690 represents any number of input mechanisms, such as a microphone for speech, a touch-sensitive screen for gesture or graphical input, keyboard, mouse, motion input, speech and so forth. An output device 670 can also be one or more of a number of output mechanisms known to those of skill in the art. In some instances, multimodal systems enable a user to provide multiple types of input to communicate with the computing device 600. The communications interface 680 generally governs and manages the user input and system output. There is no restriction on operating on any particular hardware arrangement and therefore the basic features here may easily be substituted for improved hardware or firmware arrangements as they are developed.
  • For clarity of explanation, the illustrative system embodiment is presented as including individual functional blocks including functional blocks labeled as a “processor” or processor 620. The functions these blocks represent may be provided through the use of either shared or dedicated hardware, including, but not limited to, hardware capable of executing software and hardware, such as a processor 620, that is purpose-built to operate as an equivalent to software executing on a general purpose processor. For example the functions of one or more processors presented in FIG. 6 may be provided by a single shared processor or multiple processors. (Use of the term “processor” should not be construed to refer exclusively to hardware capable of executing software.) Illustrative embodiments may include microprocessor and/or digital signal processor (DSP) hardware, read-only memory (ROM) 640 for storing software performing the operations discussed below, and random access memory (RAM) 650 for storing results. Very large scale integration (VLSI) hardware embodiments, as well as custom VLSI circuitry in combination with a general purpose DSP circuit, may also be provided.
  • The logical operations of the various embodiments are implemented as: (1) a sequence of computer implemented steps, operations, or procedures running on a programmable circuit within a general use computer, (2) a sequence of computer implemented steps, operations, or procedures running on a specific-use programmable circuit; and/or (3) interconnected machine modules or program engines within the programmable circuits. The system 600 shown in FIG. 6 can practice all or part of the recited methods, can be a part of the recited systems, and/or can operate according to instructions in the recited non-transitory computer-readable storage media. Such logical operations can be implemented as modules configured to control the processor 620 to perform particular functions according to the programming of the module. For example, FIG. 6 illustrates three modules Mod1 662, Mod2 664 and Mod3 666 which are modules configured to control the processor 620. These modules may be stored on the storage device 660 and loaded into RAM 650 or memory 630 at runtime or may be stored as would be known in the art in other computer-readable memory locations.
  • Embodiments within the scope of the present disclosure may also include tangible and/or non-transitory computer-readable storage media for carrying or having computer-executable instructions or data structures stored thereon. Such non-transitory computer-readable storage media can be any available media that can be accessed by a general purpose or special purpose computer, including the functional design of any special purpose processor as discussed above. By way of example, and not limitation, such non-transitory computer-readable media can include RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to carry or store desired program code means in the form of computer-executable instructions, data structures, or processor chip design. When information is transferred or provided over a network or another communications connection (either hardwired, wireless, or combination thereof) to a computer, the computer properly views the connection as a computer-readable medium. Thus, any such connection is properly termed a computer-readable medium. Combinations of the above should also be included within the scope of the computer-readable media.
  • Computer-executable instructions include, for example, instructions and data which cause a general purpose computer, special purpose computer, or special purpose processing device to perform a certain function or group of functions. Computer-executable instructions also include program modules that are executed by computers in stand-alone or network environments. Generally, program modules include routines, programs, components, data structures, objects, and the functions inherent in the design of special-purpose processors, etc. that perform particular tasks or implement particular abstract data types. Computer-executable instructions, associated data structures, and program modules represent examples of the program code means for executing steps of the methods disclosed herein. The particular sequence of such executable instructions or associated data structures represents examples of corresponding acts for implementing the functions described in such steps.
  • Those of skill in the art will appreciate that other embodiments of the disclosure may be practiced in network computing environments with many types of computer system configurations, including personal computers, hand-held devices, multi-processor systems, microprocessor-based or programmable consumer electronics, network PCs, minicomputers, mainframe computers, and the like. Embodiments may also be practiced in distributed computing environments where tasks are performed by local and remote processing devices that are linked (either by hardwired links, wireless links, or by a combination thereof) through a communications network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.
  • The various embodiments described above are provided by way of illustration only and should not be construed to limit the scope of the disclosure. Those skilled in the art will readily recognize various modifications and changes that may be made to the principles described herein without following the example embodiments and applications illustrated and described herein, and without departing from the spirit and scope of the disclosure.

Claims (18)

1. A method for providing content at a multi-user interface comprising:
detecting, by a processor device, user interactions from a first user and a second user concurrently engaged with a client device;
in response to detecting the user interactions, obtaining, by the processor, user characteristics for the first user and the second user;
determining, by the processor device, a characteristic for the first user by applying a derivation rule to the user characteristics of the first user;
determining, by the processor device, a characteristic for the second user by applying the derivation rule to the user characteristics of the second user;
determining, by the processor device, the first user to receive first content based on a first priority between the first user and the second user;
determining, by the processor device, the second user to receive second content based on a second priority between the first user and the second user;
based on the characteristic for the first user, providing, by the processor device, the first content to be received by the first user at the client device; and
based on the characteristic for the second user, providing, by the processor device, the second content to be received by the second user at the client device.
2. The method of claim 1, wherein obtaining the user characteristics for the first user and the second user comprises:
associating first user interactions at the first client device to the first user, wherein the first user interactions are detected while the first user and second user are concurrently engaged with the client device; and
generating the user characteristics for the first user based on the user interactions.
3. The method of claim 2, wherein obtaining the user characteristics for the first user and the second user further comprises:
associating second user interactions at the first client device to the second user, wherein the second user interactions are detected while the first user and second user are concurrently engaged with the client device; and
generating the user characteristics for the second user based on the user interactions.
4. The method of claim 3, wherein the derivation rule specifies selecting from the user characteristics, as the characteristic, a most common characteristic shared among a plurality of users and the first user.
5. The method of claim 2, wherein the user interactions are at least one of audio, visual, textual, and gestural interactions.
6. The method of claim 1, further comprising:
inferring user identification information for the first user based on content currently being presented at the client device;
identifying a category of users based on the user identification information; and
wherein the user characteristics for the first user are identified based on the category of users.
7. A non-transitory computer readable-medium comprising instructions for providing content at a multi-user interface, the instructions, executable by a processor, comprising:
detecting user interactions from a first user and a second user concurrently engaged with a client device;
in response to detecting the user interactions, obtaining user characteristics for the first user and the second user;
determining a characteristic for the first user by applying a derivation rule to the user characteristics of the first user;
determining a characteristic for the second user by applying the derivation rule to the user characteristics of the second user;
determining the first user to receive first content based on a first priority between the first user and the second user;
determining the second user to receive second content based on a second priority between the first user and the second user;
based on the characteristic for the first user, providing the first content to be received by the first user at the client device; and
based on the characteristic for the second user, providing the second content to be received by the second user at the client device.
8. The non-transitory computer readable-medium of claim 7, wherein obtaining the user characteristics for the first user and the second user comprises:
associating first user interactions at the first client device to the first user, wherein the first user interactions are detected while the first user and second user are concurrently engaged with the client device; and
generating the user characteristics for the first user based on the user interactions.
9. The non-transitory computer readable-medium of claim 8, wherein obtaining the user characteristics for the first user and the second user further comprises:
associating second user interactions at the first client device to the second user, wherein the second user interactions are detected while the first user and second user are concurrently engaged with the client device; and
generating the user characteristics for the second user based on the user interactions.
10. The non-transitory computer readable-medium 9, wherein the derivation rule specifies selecting from the user characteristics, as the characteristic, a most common characteristic shared among a plurality of users and the first user.
11. The non-transitory computer readable-medium of claim 8, wherein the user interactions are at least one of audio, visual, textual, and gestural interactions.
12. The non-transitory computer readable-medium of claim 7, further comprising:
inferring user identification information for the first user based on content currently being presented at the client device;
identifying a category of users based on the user identification information; and
wherein the user characteristics for the first user are identified based on the category of users.
13. A system for providing content at a multi-user interface comprising:
at least one processing device to:
detect user interactions from a first user and a second user concurrently engaged with a client device;
in response to detecting the user interactions, obtain user characteristics for the first user and the second user;
determine a characteristic for the first user by applying a derivation rule to the user characteristics of the first user;
determine a characteristic for the second user by applying the derivation rule to the user characteristics of the second user;
determine the first user to receive first content based on a first priority between the first user and the second user;
determine the second user to receive second content based on a second priority between the first user and the second user;
based on the characteristic for the first user, provide the first content to be received by the first user at the client device; and
based on the characteristic for the second user, provide the second content to be received by the second user at the client device.
14. The system of claim 13, wherein to obtain the user characteristics for the first user and the second user comprises:
associating first user interactions at the first client device to the first user, wherein the first user interactions are detected while the first user and second user are concurrently engaged with the client device; and
generating the user characteristics for the first user based on the user interactions.
15. The system of claim 14, wherein to obtain the user characteristics for the first user and the second user further comprises:
associating second user interactions at the first client device to the second user, wherein the second user interactions are detected while the first user and second user are concurrently engaged with the client device; and
generating the user characteristics for the second user based on the user interactions.
16. The system of claim 15, wherein the derivation rule specifies selecting from the user characteristics, as the characteristic, a most common characteristic shared among a plurality of users and the first user.
17. The system of claim 13, wherein the user interactions are at least one of audio, visual, textual, and gestural interactions.
18. The system of claim 13, wherein the at least one computing device is further configured to:
infer user identification information for the first user based on content currently being presented at the client device;
identify a category of users based on the user identification information; and
wherein the user characteristics for the first user are identified based on the category of users.
US15/460,378 2012-05-25 2017-03-16 Content ranking and serving on a multi-user device or interface Abandoned US20170186045A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US15/460,378 US20170186045A1 (en) 2012-05-25 2017-03-16 Content ranking and serving on a multi-user device or interface

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/480,724 US9633368B2 (en) 2012-05-25 2012-05-25 Content ranking and serving on a multi-user device or interface
US15/460,378 US20170186045A1 (en) 2012-05-25 2017-03-16 Content ranking and serving on a multi-user device or interface

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US13/480,724 Continuation US9633368B2 (en) 2012-05-25 2012-05-25 Content ranking and serving on a multi-user device or interface

Publications (1)

Publication Number Publication Date
US20170186045A1 true US20170186045A1 (en) 2017-06-29

Family

ID=49622276

Family Applications (2)

Application Number Title Priority Date Filing Date
US13/480,724 Active 2034-09-03 US9633368B2 (en) 2012-05-25 2012-05-25 Content ranking and serving on a multi-user device or interface
US15/460,378 Abandoned US20170186045A1 (en) 2012-05-25 2017-03-16 Content ranking and serving on a multi-user device or interface

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US13/480,724 Active 2034-09-03 US9633368B2 (en) 2012-05-25 2012-05-25 Content ranking and serving on a multi-user device or interface

Country Status (1)

Country Link
US (2) US9633368B2 (en)

Families Citing this family (66)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9607137B2 (en) * 2013-12-17 2017-03-28 Lenovo (Singapore) Pte. Ltd. Verbal command processing based on speaker recognition
US20160042432A1 (en) * 2014-08-08 2016-02-11 Ebay Inc. Non-commerce data for commerce analytics
US9965247B2 (en) 2016-02-22 2018-05-08 Sonos, Inc. Voice controlled media playback system based on user profile
US9947316B2 (en) 2016-02-22 2018-04-17 Sonos, Inc. Voice control of a media playback system
US10264030B2 (en) 2016-02-22 2019-04-16 Sonos, Inc. Networked microphone device control
US10097939B2 (en) 2016-02-22 2018-10-09 Sonos, Inc. Compensation for speaker nonlinearities
US10509626B2 (en) 2016-02-22 2019-12-17 Sonos, Inc Handling of loss of pairing between networked devices
US10095470B2 (en) 2016-02-22 2018-10-09 Sonos, Inc. Audio response playback
US9826306B2 (en) 2016-02-22 2017-11-21 Sonos, Inc. Default playback device designation
US9978390B2 (en) 2016-06-09 2018-05-22 Sonos, Inc. Dynamic player selection for audio signal processing
US10134399B2 (en) 2016-07-15 2018-11-20 Sonos, Inc. Contextualization of voice inputs
US10152969B2 (en) 2016-07-15 2018-12-11 Sonos, Inc. Voice detection by multiple devices
US10115400B2 (en) 2016-08-05 2018-10-30 Sonos, Inc. Multiple voice services
US9693164B1 (en) 2016-08-05 2017-06-27 Sonos, Inc. Determining direction of networked microphone device relative to audio playback device
US9794720B1 (en) 2016-09-22 2017-10-17 Sonos, Inc. Acoustic position measurement
US9942678B1 (en) 2016-09-27 2018-04-10 Sonos, Inc. Audio playback settings for voice interaction
US9743204B1 (en) 2016-09-30 2017-08-22 Sonos, Inc. Multi-orientation playback device microphones
US10181323B2 (en) 2016-10-19 2019-01-15 Sonos, Inc. Arbitration-based voice recognition
US11183181B2 (en) 2017-03-27 2021-11-23 Sonos, Inc. Systems and methods of multiple voice services
US10475449B2 (en) 2017-08-07 2019-11-12 Sonos, Inc. Wake-word detection suppression
US10048930B1 (en) 2017-09-08 2018-08-14 Sonos, Inc. Dynamic computation of system response volume
US10446165B2 (en) 2017-09-27 2019-10-15 Sonos, Inc. Robust short-time fourier transform acoustic echo cancellation during audio playback
US10621981B2 (en) 2017-09-28 2020-04-14 Sonos, Inc. Tone interference cancellation
US10051366B1 (en) 2017-09-28 2018-08-14 Sonos, Inc. Three-dimensional beam forming with a microphone array
US10482868B2 (en) 2017-09-28 2019-11-19 Sonos, Inc. Multi-channel acoustic echo cancellation
US10466962B2 (en) 2017-09-29 2019-11-05 Sonos, Inc. Media playback system with voice assistance
US10880650B2 (en) 2017-12-10 2020-12-29 Sonos, Inc. Network microphone devices with automatic do not disturb actuation capabilities
US10818290B2 (en) 2017-12-11 2020-10-27 Sonos, Inc. Home graph
WO2019152722A1 (en) 2018-01-31 2019-08-08 Sonos, Inc. Device designation of playback and network microphone device arrangements
US11175880B2 (en) 2018-05-10 2021-11-16 Sonos, Inc. Systems and methods for voice-assisted media content selection
US10847178B2 (en) 2018-05-18 2020-11-24 Sonos, Inc. Linear filtering for noise-suppressed speech detection
US10959029B2 (en) 2018-05-25 2021-03-23 Sonos, Inc. Determining and adapting to changes in microphone performance of playback devices
US10681460B2 (en) 2018-06-28 2020-06-09 Sonos, Inc. Systems and methods for associating playback devices with voice assistant services
US11076035B2 (en) 2018-08-28 2021-07-27 Sonos, Inc. Do not disturb feature for audio notifications
US10461710B1 (en) 2018-08-28 2019-10-29 Sonos, Inc. Media playback system with maximum volume setting
US10878811B2 (en) 2018-09-14 2020-12-29 Sonos, Inc. Networked devices, systems, and methods for intelligently deactivating wake-word engines
US10587430B1 (en) 2018-09-14 2020-03-10 Sonos, Inc. Networked devices, systems, and methods for associating playback devices based on sound codes
US11024331B2 (en) 2018-09-21 2021-06-01 Sonos, Inc. Voice detection optimization using sound metadata
US10811015B2 (en) 2018-09-25 2020-10-20 Sonos, Inc. Voice detection optimization based on selected voice assistant service
US11100923B2 (en) 2018-09-28 2021-08-24 Sonos, Inc. Systems and methods for selective wake word detection using neural network models
US10692518B2 (en) 2018-09-29 2020-06-23 Sonos, Inc. Linear filtering for noise-suppressed speech detection via multiple network microphone devices
US11899519B2 (en) 2018-10-23 2024-02-13 Sonos, Inc. Multiple stage network microphone device with reduced power consumption and processing load
EP3654249A1 (en) 2018-11-15 2020-05-20 Snips Dilated convolutions and gating for efficient keyword spotting
US11183183B2 (en) 2018-12-07 2021-11-23 Sonos, Inc. Systems and methods of operating media playback systems having multiple voice assistant services
US11132989B2 (en) 2018-12-13 2021-09-28 Sonos, Inc. Networked microphone devices, systems, and methods of localized arbitration
US10602268B1 (en) 2018-12-20 2020-03-24 Sonos, Inc. Optimization of network microphone devices using noise classification
US11315556B2 (en) 2019-02-08 2022-04-26 Sonos, Inc. Devices, systems, and methods for distributed voice processing by transmitting sound data associated with a wake word to an appropriate device for identification
US10867604B2 (en) 2019-02-08 2020-12-15 Sonos, Inc. Devices, systems, and methods for distributed voice processing
US11120794B2 (en) 2019-05-03 2021-09-14 Sonos, Inc. Voice assistant persistence across multiple network microphone devices
US11200894B2 (en) 2019-06-12 2021-12-14 Sonos, Inc. Network microphone device with command keyword eventing
US11361756B2 (en) 2019-06-12 2022-06-14 Sonos, Inc. Conditional wake word eventing based on environment
US10586540B1 (en) 2019-06-12 2020-03-10 Sonos, Inc. Network microphone device with command keyword conditioning
US10871943B1 (en) 2019-07-31 2020-12-22 Sonos, Inc. Noise classification for event detection
US11138975B2 (en) 2019-07-31 2021-10-05 Sonos, Inc. Locally distributed keyword detection
US11138969B2 (en) 2019-07-31 2021-10-05 Sonos, Inc. Locally distributed keyword detection
US11189286B2 (en) 2019-10-22 2021-11-30 Sonos, Inc. VAS toggle based on device orientation
US11200900B2 (en) 2019-12-20 2021-12-14 Sonos, Inc. Offline voice control
US11562740B2 (en) 2020-01-07 2023-01-24 Sonos, Inc. Voice verification for media playback
US11556307B2 (en) 2020-01-31 2023-01-17 Sonos, Inc. Local voice data processing
US11308958B2 (en) 2020-02-07 2022-04-19 Sonos, Inc. Localized wakeword verification
US11727919B2 (en) 2020-05-20 2023-08-15 Sonos, Inc. Memory allocation for keyword spotting engines
US11308962B2 (en) 2020-05-20 2022-04-19 Sonos, Inc. Input detection windowing
US11482224B2 (en) 2020-05-20 2022-10-25 Sonos, Inc. Command keywords with input detection windowing
US11698771B2 (en) 2020-08-25 2023-07-11 Sonos, Inc. Vocal guidance engines for playback devices
US11551700B2 (en) 2021-01-25 2023-01-10 Sonos, Inc. Systems and methods for power-efficient keyword detection
US11785064B2 (en) * 2021-05-27 2023-10-10 International Business Machines Corporation Individual user content control in multiuser content delivery systems

Citations (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030018527A1 (en) * 1988-07-15 2003-01-23 Robert Filepp Method for presenting advertising in an interactive service
US7181438B1 (en) * 1999-07-21 2007-02-20 Alberti Anemometer, Llc Database access system
US20070282912A1 (en) * 2006-06-05 2007-12-06 Bruce Reiner Method and apparatus for adapting computer-based systems to end-user profiles
US20090030899A1 (en) * 2007-06-29 2009-01-29 Allvoices, Inc. Processing a content item with regard to an event and a location
US20090083269A1 (en) * 2002-07-09 2009-03-26 Vignette Corporation Method and system for identifying website visitors
US7725842B2 (en) * 2003-04-24 2010-05-25 Bronkema Valentina G Self-attainable analytic tool and method for adaptive behavior modification
US20110015990A1 (en) * 2009-07-16 2011-01-20 Mehul Sanghavi Advertising Based on a Dynamic Ad Taxonomy
US7945585B1 (en) * 2005-10-13 2011-05-17 Hewlett-Packard Development Company, L.P. Method and system for improving targeted data delivery
US20110153377A1 (en) * 2009-12-23 2011-06-23 Victor Novikov Mixing and Targeting Content Types/Items for Users to Promote Optimization Goals
US20110173102A1 (en) * 2010-01-12 2011-07-14 Christopher Burns Content sensitive point-of-sale system for interactive media
US20110225040A1 (en) * 2010-03-09 2011-09-15 Cevat Yerli Multi-user computer-controlled advertisement presentation system and a method of providing user and advertisement related data
US20120047087A1 (en) * 2009-03-25 2012-02-23 Waldeck Technology Llc Smart encounters
US20120077528A1 (en) * 2010-09-29 2012-03-29 Research In Motion Limited Method To Exchange Application Specific Information For Outgoing Calls Between Two Mobile Devices
US20120151359A1 (en) * 2010-12-09 2012-06-14 Google Inc. Correlating user interactions with interfaces
US8275623B2 (en) * 2009-03-06 2012-09-25 At&T Intellectual Property I, L.P. Method and apparatus for analyzing discussion regarding media programs
US8285573B1 (en) * 2008-01-15 2012-10-09 SciQuest Inc. Prioritizing orders/receipt of items between users
US20130290905A1 (en) * 2012-04-27 2013-10-31 Yahoo! Inc. Avatars for use with personalized generalized content recommendations
US20130346870A1 (en) * 2012-06-22 2013-12-26 Apple Inc. Multi-user targeted content delivery
US20150019223A1 (en) * 2011-12-31 2015-01-15 Jianfeng Chen Method and device for presenting content

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5812865A (en) 1993-12-03 1998-09-22 Xerox Corporation Specifying and establishing communication data paths between particular media devices in multiple media device computing systems based on context of a user or users
US8065698B2 (en) 2006-03-08 2011-11-22 At&T Intellectual Property I, L.P. Methods, systems, and computer program products for obtaining consumer information over a communications network
US20080133327A1 (en) 2006-09-14 2008-06-05 Shah Ullah Methods and systems for securing content played on mobile devices
US20100114709A1 (en) 2008-11-04 2010-05-06 Yahoo! Inc. Real-time distribution of targeted advertisement and sponsored content

Patent Citations (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030018527A1 (en) * 1988-07-15 2003-01-23 Robert Filepp Method for presenting advertising in an interactive service
US7181438B1 (en) * 1999-07-21 2007-02-20 Alberti Anemometer, Llc Database access system
US20090083269A1 (en) * 2002-07-09 2009-03-26 Vignette Corporation Method and system for identifying website visitors
US7725842B2 (en) * 2003-04-24 2010-05-25 Bronkema Valentina G Self-attainable analytic tool and method for adaptive behavior modification
US7945585B1 (en) * 2005-10-13 2011-05-17 Hewlett-Packard Development Company, L.P. Method and system for improving targeted data delivery
US20070282912A1 (en) * 2006-06-05 2007-12-06 Bruce Reiner Method and apparatus for adapting computer-based systems to end-user profiles
US20090030899A1 (en) * 2007-06-29 2009-01-29 Allvoices, Inc. Processing a content item with regard to an event and a location
US8285573B1 (en) * 2008-01-15 2012-10-09 SciQuest Inc. Prioritizing orders/receipt of items between users
US8275623B2 (en) * 2009-03-06 2012-09-25 At&T Intellectual Property I, L.P. Method and apparatus for analyzing discussion regarding media programs
US20120047087A1 (en) * 2009-03-25 2012-02-23 Waldeck Technology Llc Smart encounters
US20110015990A1 (en) * 2009-07-16 2011-01-20 Mehul Sanghavi Advertising Based on a Dynamic Ad Taxonomy
US20110153377A1 (en) * 2009-12-23 2011-06-23 Victor Novikov Mixing and Targeting Content Types/Items for Users to Promote Optimization Goals
US20110173102A1 (en) * 2010-01-12 2011-07-14 Christopher Burns Content sensitive point-of-sale system for interactive media
US20110225040A1 (en) * 2010-03-09 2011-09-15 Cevat Yerli Multi-user computer-controlled advertisement presentation system and a method of providing user and advertisement related data
US20120077528A1 (en) * 2010-09-29 2012-03-29 Research In Motion Limited Method To Exchange Application Specific Information For Outgoing Calls Between Two Mobile Devices
US20120151359A1 (en) * 2010-12-09 2012-06-14 Google Inc. Correlating user interactions with interfaces
US20150019223A1 (en) * 2011-12-31 2015-01-15 Jianfeng Chen Method and device for presenting content
US20130290905A1 (en) * 2012-04-27 2013-10-31 Yahoo! Inc. Avatars for use with personalized generalized content recommendations
US20130346870A1 (en) * 2012-06-22 2013-12-26 Apple Inc. Multi-user targeted content delivery

Also Published As

Publication number Publication date
US9633368B2 (en) 2017-04-25
US20130317828A1 (en) 2013-11-28

Similar Documents

Publication Publication Date Title
US20170186045A1 (en) Content ranking and serving on a multi-user device or interface
US8965828B2 (en) Inferring user mood based on user and group characteristic data
US8510658B2 (en) Population segmentation
US10896437B2 (en) Active time spent optimization and reporting
US20120042262A1 (en) Population segmentation based on behavioral patterns
AU2013251347B2 (en) Privacy management across multiple devices
US20120041969A1 (en) Deriving user characteristics
US20120041817A1 (en) Prioritizing population segment assignments to optimize campaign goals
US9342842B2 (en) Context-switching taxonomy for mobile advertisement
US9729596B2 (en) Content pods for streaming media services
US20120054303A1 (en) Content delivery based on temporal considerations
US10284618B2 (en) Dynamic media content
US20120041792A1 (en) Customizable population segment assembly
US8983978B2 (en) Location-intention context for content delivery
US8892685B1 (en) Quality score of content for a user associated with multiple devices
US20140330651A1 (en) System and method for social media-aware advertisement brokering
US9881320B2 (en) Targeting customer segments
US20150242885A1 (en) Invitational content attribution
US20130346870A1 (en) Multi-user targeted content delivery
US10991013B2 (en) Presentation of media content based on computing device context
US20150348090A1 (en) Engagement with device and ad serving
US8751513B2 (en) Indexing and tag generation of content for optimal delivery of invitational content
US20220358546A1 (en) Valuation of invitational content slots based on user attentiveness
US20190058904A1 (en) Customizing supplemental content delivery
US20150245110A1 (en) Management of invitational content during broadcasting of media streams

Legal Events

Date Code Title Description
STPP Information on status: patent application and granting procedure in general

Free format text: FINAL REJECTION MAILED

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION