Personalized Game Notifications
The remote computing system addresses the challenge of identifying user-interest content by personalizing game notification feeds through weighted scoring and feedback mechanisms, ensuring relevance and engagement.
Patent Information
- Application Number
- JP2022555753
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2020-03-20
- Filing Date
- 2021-03-19
- Publication Date
- 2025-01-14
- Estimated Expiration
- 2041-03-19
AI Technical Summary
The challenge lies in identifying and presenting content items, such as games, that are of interest to individual users amidst the vast array of available options, as users find it difficult to navigate through the increasing volume of content and related information.
A remote computing system generates personalized game notification feeds by determining user-specific game titles, applying weights based on playtime and recency, scoring notifications based on user interaction, and using feedback to refine the feed content, potentially employing machine learning for continuous personalization.
This approach effectively curates and updates notification feeds in real-time, ensuring that users receive relevant game-related information, enhancing user engagement and satisfaction by aligning content with their preferences and behaviors.
Smart Images

Figure 0007612705000001 
Figure 0007612705000002 
Figure 0007612705000003
Abstract
Description
[Technical field]
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS This is a PCT application that claims priority to U.S. Patent Application No. 16 / 826,111, entitled "PERSONALIZED GAME NOTIFICATIONS," filed March 20, 2020, which is incorporated by reference in its entirety herein. [Background technology]
[0002] As consumption of content items on electronic devices continues to proliferate, the amount of available content items, and information about these content items, also continues to proliferate. For example, the number of songs, movies, television programs, and games available for streaming or download has increased significantly in recent years. While this increase in available content items, and information about these content items, is generally beneficial to users, it remains difficult to identify content items and information that are of interest to individual users. [Brief description of the drawings]
[0003] The detailed description is set forth with reference to the accompanying drawings, in which the leftmost digit(s) of a reference number identifies the figure in which the reference number first appears, and the use of the same reference number in different drawings indicates similar or identical components or features.
[0004] [Figure 1]FIG. 1 illustrates an example environment including a plurality of client computing devices operated by respective users coupled to a remote computing system configured to provide games and other content items to the client computing devices. In addition, the remote computing system may generate a notification feed for each of the users, each notification feed being personalized to the user based on game titles associated with the respective user, such as game titles owned by the user, game titles added to a list (e.g., the user's wish list), game titles followed by the user, etc. [Diagram 2] 1 illustrates an example user interface of a personalized notification feed that the remote computing system of FIG. 1 may provide to a client computing device. As illustrated, the notification feed may include an array of notifications that may have been selected for a user associated with the client computing device based on game titles associated with the user, user preferences (e.g., notification types preferred by the user), etc. The user interface may also include icons to allow the user to select the types of notifications to include in the feed, as well as the game source that generates the notifications. [Diagram 3] 3 illustrates the example user interface of FIG. 2 after a user selects a notification from the notification feed. As illustrated, the user interface may display additional content in response to the selection. Additionally, the remote system may use the selection as feedback to generate subsequent notification feeds for the user and / or other users. [Figure 4] 1 illustrates a flow diagram of an example process for generating a personalized gaming notification feed for a user, receiving feedback from the user or from other users, and, in response, generating an updated personalized gaming notification feed. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0005] Described herein are, among other things, techniques, devices, and systems for generating a personalized gaming notification feed for a user. In some cases, a remote computing system offering one or more game titles for acquisition may determine which notifications generated by the respective game publishers are likely to be of interest to various users, and after doing so, may generate a personalized gaming notification feed including the selected notifications. Additionally, each of the users may provide feedback on one or more of the notifications in the notification feed, and the system may use this feedback to reselect the notifications and regenerate the personalized gaming notification feed.
[0006] To generate a personalized notification feed associated with the user, the remote computing system may determine a set of game titles associated with the user, which may include games that the user has previously acquired (e.g., owned or rented) or played, games that the user has requested to be followed, games that the remote computing system has recommended to the user (e.g., because they are related to games the user has previously played), games that the user has added to a list for the user (e.g., the user's wishlist), games that have been recommended by game curators that the user follows, games that are currently trending (e.g., generally or within a game category associated with the user) or at or near the top of a sales or game playlist, and / or the like.
[0007] In some cases, the remote computing system may apply a weight to each respective game title included in the set of game titles. For example, the remote computing system may apply a time decay model to each game title such that games that the user played more recently are weighted more heavily than games that the user has not played for a significant period of time. In another example, games that the user purchased more recently may be weighted more heavily than games that the user purchased further back in time. In yet another instance, games that the user followed more recently may be weighted more heavily than games that the user followed earlier. In yet another example, the weight may increase with the amount of time the user has played the game, such that heavily played games are weighted more heavily than games that are rarely played. This may be determined either absolutely (e.g., in terms of play time) or relatively (e.g., in terms of play time relative to other users who have also played the game title, or in terms of play time relative to the amount of time the same user has played other game titles). Of course, while the above describes an example method of assigning weights to game titles, in other examples, the weights may be applied in an opposite manner or in any other manner.
[0008] After determining a set of game titles associated with the user, and potentially applying weights to these titles, the remote computing system may determine one or more notifications associated with these game titles to present to the user. In this regard, a game publisher associated with a particular game may generate notifications for presentation to the user. These notifications may include, at a high level, any information associated with the respective game. For example, the notifications may include any one or more of the following: An indication that a game update is available, such as a small update, patch update, or major update; Indicators that a game is currently being released or is about to be released, indications of a future release date for a game, invitations to join or learn about a beta for a game, indications that downloadable (DLC) content has been or will be available, or indications that additional game content is available, such as indications of an upcoming season or battle pass release; Indicators that a Game discount or promotion is available, such as a limited-time discount on a Game, a discount on an in-game item or DLC item, or a free trial associated with a Game; Indicators of in-game events, such as periods during which a user will receive additional points ("XP Boosts"), loot drops, bonus or reward offers, or general in-game events; Indicators of game challenges or contests, such as weekly or monthly challenges or in-game contests; - indicators of live streams or broadcasts of games; Game announcement indicators, - metrics about communication sessions associated with the game, such as chat sessions; A measure of in-person events associated with the game, such as expos, meetups, or conventions; Indicators of a promotion (e.g. cross-promotion) of a related game; or · Indications of other types of news associated with the game.
[0009] As described above, the remote computing system may determine which notifications to present to the user based on the set of game titles associated with the user. For example, for each game indicated in the set of game titles, the remote computing system may identify one or more game notifications for each game provided by a respective game publisher. Given that the number of notifications associated with this set of game titles may be relatively large, the remote computing system may apply a score to each notification to rank these notifications relative to one another. After ranking the notifications, the remote computing system may generate and present to the user a notification feed that is ordered or otherwise presented based at least in part on this ranking.
[0010] For example, the remote computing system may apply a score to each notification based at least in part on the weighting applied to the respective game title. For example, if a game title is associated with a relatively high weight because the user plays the game fairly frequently, one or more notifications associated with this game title may be assigned a higher weight, and therefore score, than notifications associated with games that the user plays infrequently.
[0011] Additionally or alternatively, the score associated with each notification may be based, at least in part, on other information associated with the user, or on information associated with one or more other users. For example, if a particular user has previously indicated a desire for certain types of events, such as game update indications, the remote computing system may rank these types of notifications higher than notifications in which the user has not previously indicated interest. In other cases, the remote computing system may assign a relatively higher score to notifications that are frequently utilized by users of a broader user community. For example, if many users of a particular game (or many users in general) often watch live streaming events, notifications of these events may be assigned a higher score than other types of notifications.
[0012] In some instances, the remote computing system determines a score for each notification based on explicit or implicit feedback provided by a particular user and / or users in general. For example, after providing a notification feed to a user, the remote computing system may determine which of the notifications the user interacts with (e.g., selects, watches, reads, etc.) as well as which notifications the user does not interact with. In addition, the remote computing system may determine the amount of time the user consumes each respective notification. In some cases, the ratio between the number of times a particular type of notification is selected and the number of times the remote computing system presents that notification type to the user (i.e., click-to-impression ratio) may be used in part to determine the score of subsequent notifications of that type. For example, if the user often reads about game updates when they are presented to the user, this relatively high ratio of selections to impressions may result in the subsequent game update notifications being assigned a relatively high score. Conversely, if the user rarely selects notifications associated with game promotions, the remote computing system may assign a relatively lower score to the notifications associated with game promotions.
[0013] This may additionally or alternatively be applied on a per-game basis. That is, if a user often selects notifications associated with a first game but rarely selects notifications associated with a second game, the remote computing system may assign a relatively higher score to subsequent notifications associated with the first game (and potentially related games) and a relatively lower score to subsequent notifications associated with the second game (and potentially related games). Furthermore, although the techniques above are described with respect to a particular user, these techniques may also or alternatively be applied to a user community in general. That is, if users of a particular user community (e.g., a global community, a subset of the global community, etc.) often watch live stream events when presented with notifications about these events, these types of notifications may be assigned a relatively higher score relative to other users assigned to the subset of communities.
[0014] After selecting notifications for inclusion in a personalized notification feed for the user, the remote computing system may generate a personalized notification feed including the selected notifications and transmit the notification feed for output (e.g., display, audible output, etc.) on a client computing device associated with the user. The personalized notification feed may be presented in a manner based at least in part on the scores of each of the corresponding notifications. For example, the highest scored / ranked notifications may be presented first, followed by the second highest scored / ranked notification, and so on. Additionally or alternatively, the personalized gaming notification feed may present more highly ranked notifications more prominently (e.g., in a larger manner) than less highly ranked notifications. As described below, each notification in the notification feed may be selectable by the user to view additional information along with the notification. For example, selection of a particular notification may result in an expansion of the notification to present additional content associated with the notification, navigation to a new user interface associated with the notification, etc.
[0015] As described above, when a user interacts with a notification feed, the remote computing system may use this feedback to recalculate a score associated with the user's notification, potentially generating an additional personalized game notification feed for the user. Additionally or alternatively, the user may provide explicit feedback. For example, in some cases, the notification feed includes one or more icons selectable by the user to provide feedback. For example, each notification may include a first icon (e.g., a like button) that, when selected, indicates that the user would like to see more of these types of notifications and / or generally enjoys this particular notification. Additionally or alternatively, each notification may include a second icon selectable by the user to indicate that the user would like to see fewer of these types of notifications and / or that the user does not enjoy this particular notification. Each notification may further include a third icon that, when selected, allows the user to comment on the notification. As with the first icon, the selection of the third icon, and the provision of a comment by the user, may be received by the remote computing system as an indication of the user's positive response.
[0016] In some cases, the remote computing system may use the received feedback to generate a new score and / or ranking and thus a new personalized notification feed in real-time or near real-time. In other cases, the remote computing system may use the received feedback to generate a new personalized notification feed the next time the user navigates to a location where the personalized notification feed is presented (e.g., a web page, a portion of a client mobile application, etc.).
[0017] In some cases, the remote computing system may train one or more machine learning models for determining a personalized notification feed using the above inputs of user feedback, game title sets, etc. For example, after such a model is trained, the remote computing system may input data customized to a particular user such that the model outputs a ranked list of notifications for inclusion in the personalized notification feed.
[0018] The techniques introduced above are described with reference to Figures 1-4. The disclosed techniques may be implemented, at least in part, by a remote computing system that distributes content items (e.g., video games, movies, television programs, songs, etc.) and notification feeds to client devices of a user community (e.g., as part of a video game service, a movie service, a song service). Although these techniques are described with respect to games (e.g., video games), it should be understood that these techniques may be applied to any other type of content item, such as books, movies, videos, etc.
[0019] FIG. 1 is a diagram illustrating an example environment 100 including a plurality of client computing devices operated by respective users of a user community 102. As illustrated, each of the client computing devices can be coupled to a remote computing system 104 via a network 106. For example, FIG. 1 illustrates a user 102(1) operating a client computing device ("client device") 108 coupled to a display device 110. The user 102(1) can operate the client device 108 to interact with the remote computing system 104, which can provide games and other content items to the client computing device 108 and other client computing devices. In addition, the remote computing system 104 can generate a notification feed for each of the users, with each notification feed personalized for the user based on game titles associated with the respective user, such as game titles owned by the user, game titles added to a list (e.g., the user's wish list), game titles followed by the user, etc. Additionally or alternatively, the notification feed may include notifications generated by sources other than the game publisher, such as notifications generated by game curators that the user follows in the user community 102 (e.g., game reviews done by the curators), notifications generated by other users in the user community 102. Further, in some instances, the notifications presented may not be based on games associated with a particular user, but rather may include trending notifications, notifications of top selling games, etc.
[0020] The client devices 108 may be implemented as any suitable type of computing device configured to execute content items, such as video games, movies, songs, etc. The client devices 108 may include, but are not limited to, personal computers (PCs), desktop computers, laptop computers, mobile phones (e.g., smartphones), tablet computers, personal digital assistants (PDAs), wearable computers (e.g., virtual reality (VR) headsets, augmented reality (AR) headsets, smart glasses, etc.), in-vehicle (e.g., in-car) computers, televisions (smart TVs), set-top boxes (STBs), game consoles, music players, voice-controlled assistants, and / or any similar computing devices. The client devices 108 may communicate with a remote computing system 104 (sometimes shortened herein to "computing system 104") via a computer network 106. This computer network 106 may represent or include, but is not limited to, the Internet, other types of data and / or voice networks, wired infrastructures (e.g., coaxial cable, fiber optic cable, etc.), wireless infrastructures (e.g., radio frequency (RF), cellular, satellite, etc.), and / or other connection technologies. The computing system 104 may, in some cases, be part of a network-accessible computing platform that is maintained and accessed via the computer network 106. Such network-accessible computing platforms may be referred to using terms such as "on-demand computing," "software as a service (SaaS)," "platform computing," "network-accessible platform," "cloud services," "data center," and the like.
[0021] In some embodiments, the computing system 104 serves as or has access to a video game platform that implements a video game service to deliver (e.g., download, stream, etc.) video games (or any other type of content item) to client devices, such as the client devices 108. In one example, each client device may have a client application installed thereon. The installed client application may be a video game client (e.g., game software for playing a video game). The client devices 108 with the client application installed may be configured to download, stream, or otherwise receive programs (e.g., video games, and content thereof) from the computing system 104 over the computer network 106. To this end, any type of content distribution model may be utilized, such as a direct purchase model in which programs (e.g., video games) can be individually purchased for download and execution on the client devices 108, a subscription-based model, a content distribution model in which programs are rented or leased for a period of time, streamed, or otherwise made available to the client devices. Thus, each client device 108 may include one or more installed video games that are executable by loading a client application.
[0022] A client device 108 may be used to register with and subsequently log into a video game service. A user may create a user account for this purpose and specify / set credentials (e.g., password, PIN, biometric ID, etc.) tied to the registered user account. As users interact with the video game platform (e.g., by accessing their user / player profile with the registered user account, playing video games on their respective client devices, etc.), the client devices transmit data to the remote computing system 104. For a given client device 108, the data transmitted to the remote computing system 104 may include, but is not limited to, user input data, video game data (e.g., game performance statistics uploaded to the remote system), social networking messages and related activities, identifiers (IDs) of video games played on the client device 108, etc. This data may be streamed in real-time (or substantially real-time), transmitted to the remote system 104 at defined intervals, and / or uploaded in response to an event (e.g., the completion of a video game). As described in further detail below, this data may be used to determine the game play history of the user of the client device 108, which may be used to determine a score for determining which notifications to present to the user 102(1) as part of a personalized game notification feed.
[0023] 1 illustrates, for example, that a display device 110 coupled to a client device 108 may present a user interface (UI) 112 including a personalized game notification feed for a user 102(1). As illustrated, the UI 112 may present one or more game notifications 114(1), 114(2), ..., 114(4). As introduced above, a game notification may be any information associated with a respective game, a notification generated by a game curator or other user, and / or the like. For example, a notification may include any one or more of the following: An indication that a game update is available, such as a small update, patch update, or major update; Indicators that a game is currently being released or is about to be released, indications of a future release date for a game, invitations to join or learn about a beta for a game, indications that downloadable (DLC) content has been or will be available, or indications that additional game content is available, such as indications of an upcoming season or battle pass release; Indicators that a Game discount or promotion is available, such as a limited-time discount on a Game, a discount on an in-game item or DLC item, or a free trial associated with a Game; Indicators of in-game events, such as periods during which a user will receive additional points ("XP Boosts"), loot drops, bonus or reward offers, or general in-game events; Indicators of game challenges or contests, such as weekly or monthly challenges or in-game contests; - indicators of live streams or broadcasts of games; Game announcement indicators, - metrics about communication sessions associated with the game, such as chat sessions; A measure of in-person events associated with the game, such as expos, meetups, or conventions; Indicators of a promotion (e.g. cross-promotion) of a related game; or · Indications of other types of news associated with the game.
[0024] Generally, the remote system 104 may determine which notifications 114(1)-(4) to present as part of a notification feed based on information and / or behavior associated with the user 102(1) and / or the user community 102. In this regard, the remote system may include one or more processors 116 (e.g., a central processing unit (CPU)) and computer-readable media 118, as well as components stored thereon for generating a personalized notification feed for the user. The computer-readable media 118 may include removable and non-removable media implemented in any method or technology for storing information, such as volatile and non-volatile memory, computer-readable instructions, data structures, program modules, or other data. Such memory may include, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVDs) or other optical storage, magnetic cassettes, magnetic tapes, magnetic disk storage or other magnetic storage devices, R, or other storage media. AID storage system, or any other medium that can be used to store desired information and that can be accessed by a computing device. The computer-readable medium 118 can be implemented as a computer-readable storage medium ("CRSM"), which can be any available physical medium accessible by the processor 116 to execute instructions stored on the computer-readable medium 118. In one basic implementation, the CRSM can include random access memory ("RAM") and flash memory. In other implementations, the CRSM can include, but is not limited to, read-only memory ("ROM"), electrically erasable programmable read-only memory ("EEPROM"), or any other tangible medium that can be accessed by the processor 116 and that can be used to store desired information.
[0025] As illustrated, the computer-readable medium 118 may store or otherwise have access to the acquisition component 120, the notification generation component 122, the feed generation component 124, and the user interaction component 126. In addition, the computer-readable medium 118 may store library data 128 indicative of game titles previously acquired by various users of the user community 102 and information regarding the users' gameplay of each of the games (e.g., playtime), list data 130 indicative of a list of games (e.g., wishlists, etc.) associated with the users of the user community 102, follow data 132 indicative of games that the various users of the user community 102 have requested to follow, and curator data 134 indicative of game curators that the various users of the user community 102 have requested to follow. In addition, the computer-readable medium 118 may store notification data 136, which may be provided by game publishers in some instances, and feed data 138, which may store personalized notification feeds associated with the users of the user community 102.
[0026] Generally, acquisition component 120 may enable users of user community 102 to request to acquire (e.g., rent, purchase, etc.) games offered by remote computing system 104. When a user, such as user 102(1), acquires a game, computing system 104 may store a corresponding indication in library data 130. That is, acquisition component 120 may store an indication that user 102(1) has access to play the acquired game.
[0027] Meanwhile, user interaction component 126 may receive information associated with interactions between users of user community 102 and computing system 104 and store this data for future use. For example, user interaction component 126 may store information about games played by user 102(1) and other users, the amount of time users play games, feedback given by users regarding games or game notifications, etc. As introduced above and described below, this data may be used to generate a personalized game notification feed for users, such as user 102(1).
[0028] Meanwhile, the notification generation component 122 may enable game publishers to generate game notifications for presentation to users of a user community. As mentioned above, game publishers may provide any type of notification data that may be stored as notification data 136 and presented to users as part of a personalized notification feed. In some cases, the notifications presented to each user may be selectable such that, when selected, the notification provides additional information to the user. Exemplary notification feeds are described below with reference to FIGS. 2 and 3.
[0029] Feed generation component 124 may use data associated with users of user community 102 to determine which of the notifications to include in a personalized notification feed, which may be stored as feed data 138. For example, feed generation component 124 may use data associated with user 102(1) to generate the notification feed illustrated in UI 112. In this example, feed generation component 124 may have determined to generate a personalized notification feed for user 102(1) that includes at least the four illustrated game notifications 114(1)-(4).
[0030] To generate a personalized notification feed associated with the user, the feed generation component 124 may first determine a set of game titles associated with the user 102(1) from at least the library data 128, the lists data 130, the following data 132, and / or the curator data 134. The set of game titles may include games that the user has previously acquired (e.g., owned or rented) or played as indicated by the library data 128, games that the user has added to the user's list (e.g., the user's wishlist) as indicated by the lists data 130, games that the user has requested to be followed as indicated by the following data 132, games recommended by a game curator that the user follows as indicated by the curator data 134, games that a remote computing system recommends to the user (e.g., as identified by a trained machine learning model because they are associated with games previously played by the user), and / or the like.
[0031] In some cases, the feed generation component 124 may apply a weight to each respective game title included in the set of game titles. For example, the feed generation component 124 may apply a time decay model to each game title such that games that the user played more recently are weighted more heavily than games that the user has not played for a significant period of time. In another example, games that the user purchased more recently may be weighted more heavily than games that the user purchased further back in time. In yet another instance, games that the user followed more recently may be weighted more heavily than games that the user followed earlier. In yet another example, the weight may increase with the amount of time that the user has played the game, such that heavily played games are weighted more heavily than games that are rarely played. This may be determined either absolutely (e.g., in terms of play time) or relatively (e.g., in terms of play time relative to other users who have also played the game title, or in terms of play time relative to the amount of time the same user has played other game titles). Of course, while the above describes an example method of assigning weights to game titles, in other examples, the weights may be applied in an inverse manner or in any other manner.
[0032] After determining the set of game titles associated with the user, and potentially applying weights to these titles, the feed generation component 124 may determine from the notification data 136 one or more notifications associated with these game titles to present to the user 102(1). For example, for each game represented in the set of game titles, the feed generation component 124 may identify one or more game notifications for each game provided by a respective game publisher. Given that the number of notifications associated with this set of game titles may be relatively large, the feed generation component 124 may apply a score to each notification to rank these notifications relative to one another. After ranking the notifications, the feed generation component 124 may generate and present to the user 102(1) a notification feed that is ordered or otherwise presented based at least in part on this ranking.
[0033] For example, the feed generation component 124 may apply a score to each notification based at least in part on the weighting applied to the respective game title. For example, if a game title is associated with a relatively high weight because the user plays the game fairly frequently, one or more notifications associated with this game title may be assigned a higher weight, and therefore score, than notifications associated with games that the user 102(1) rarely plays.
[0034] Additionally or alternatively, the score associated with each notification may be based, at least in part, on other information associated with the user 102(1) or on information associated with one or more other users. For example, if a particular user has previously indicated a desire for certain types of events, such as game update indicators, the feed generation component 124 may rank these types of notifications higher than notifications in which the user has not previously indicated an interest (or types of notifications that the user has explicitly indicated he or she does not like). In other cases, the feed generation component 124 may assign a relatively higher score to notifications that are frequently consumed by users of the broader user community 102. For example, if many users of a particular game (or many users in general) often watch live streaming events, notifications for these events may be assigned a higher score than other types of notifications.
[0035] In some instances, the feed generation component 124 determines a score for each notification based on explicit or implicit feedback provided by the user 102(1) and / or users 102 in general. For example, after providing a notification feed to the user, the user interaction component 126 may determine which of the notifications the user 102(1) interacts with (e.g., selects, watches, reads, etc.), as well as which notifications the user 102(1) does not interact with. In addition, the user interaction component 126 may determine the amount of time the user 102(1) consumes each respective notification. In some cases, the ratio between the number of times a particular type of notification is selected and the number of times the remote computing system 104 presents that notification type to the user 102(1) (i.e., click-to-impression ratio) may be used in part to determine the score for subsequent notifications of that type. For example, if user 102(1) often reads about game updates when they are presented to user 102(1), this relatively high ratio of selections to impressions may result in subsequent game update notifications being assigned a relatively high score. Conversely, if user 102(1) rarely selects notifications associated with game promotions, feed generation component 124 may assign notifications associated with game promotions a relatively lower score.
[0036] This may additionally or alternatively be applied on a per-game basis. That is, if a user 102(1) often selects notifications associated with a first game but rarely selects notifications associated with a second game, the feed generation component 124 may assign a relatively higher score to subsequent notifications associated with the first game (and potentially related games) and a relatively lower score to subsequent notifications associated with the second game (and potentially related games). Additionally, while the techniques above are described with respect to a particular user 102(1), these techniques may also or alternatively be applied to the user community 102 in general. That is, if users of the user community 102 (e.g., the global community, a subset of the global community, etc.) often watch live stream events when presented with notifications about these events, these types of notifications may be assigned a relatively higher score relative to other users assigned to the community of the subset of communities.
[0037] After selecting notifications for inclusion in a personalized notification feed for the user, the feed generation component 124 may generate a personalized notification feed including the selected notifications and may transmit the notification feed for output (e.g., display, audible output, etc.) on a client computing device associated with the user, such as for presentation on the display device 110. The personalized notification feed may be presented in a manner based at least in part on the scores of each of the corresponding notifications. For example, the highest scored / ranked notifications may be presented first, followed by the second highest scored / ranked notification, and so on. Additionally or alternatively, the personalized gaming notification feed may present more highly ranked notifications more prominently (e.g., in a larger manner) than less highly ranked notifications. As described below, each notification in the notification feed may be selectable by the user to view additional information along with the notification. For example, selection of a particular notification may result in an expansion of the notification to present additional content associated with the notification, navigation to a new user interface associated with the notification, etc.
[0038] As described above, when user 102(1) interacts with the notification feed, feed generation component 124 may use this feedback to recalculate scores associated with the user's 102(1) notifications, potentially generating additional personalized game notification feeds for user 102(1). Additionally or alternatively, user 102(1) may provide explicit feedback. For example, in some cases, the notification feed includes one or more icons selectable by the user to provide feedback, as described below with reference to FIG. 2.
[0039] In some cases, the feed generation component 124 may use the received feedback to generate a new score and / or ranking and thus a new personalized notification feed in real-time or near real-time. In other cases, the feed generation component 124 may use the received feedback to generate a new personalized notification feed the next time the user navigates to a location where the personalized notification feed is presented (e.g., a web page, a portion of a client mobile application, etc.).
[0040] In some cases, the feed generation component 124 may use the above inputs, such as user feedback, game title sets, etc., to train one or more machine learning models for determining a personalized notification feed. For example, after such a model is trained, the feed generation component 124 may input data customized to a particular user such that the model outputs a ranked list of notifications for inclusion in the personalized notification feed.
[0041] FIG. 2 illustrates an example UI 202 of a personalized notification feed that the feed generation component 124 may provide to an example client computing device 108 of a user 102(1). As illustrated, the notification feed may include an array of notifications 208(1), (2), ..., (4) that may have been selected for the user 102(1) based on game titles associated with the user, the preferences of the user 102(1) (e.g., notification types preferred by the user), and the like. As illustrated, each of the notifications 208 may include an indication of a source of the notification. For example, each notification may indicate whether it is associated with a game in the user's library, whether it is associated with a game on the user's wishlist, whether it is associated with a game followed by the user, whether it is associated with a game recommended to the user, and the like. For example, a first notification 208(1) may indicate that it is associated with a game in the user's 102(1) game library, a second notification 208(2) may indicate that it is associated with a game on the user's 102(1) wishlist, and so on. Additionally, and as noted above, in some cases, notifications may additionally or alternatively not be directly associated with the game, but may be generated by a game curator, a user within the user community 102, or the like.
[0042] FIG. 2 further illustrates that UI 202 includes indicators 204 of different notification types included in the notification feed. For example, indicators 204 illustrate that the notification feed includes event notifications, streaming notifications, game update notifications, game release notifications, sales notifications, and news notifications. Of course, while FIG. 2 illustrates several example types of notifications, it should be understood that other embodiments may include more or fewer notification types. In addition, FIG. 2 illustrates that UI 202 includes functionality for allowing user 102(1) to select which notification types to view. For example, user 102(1) may request to view certain notification types without viewing other notification types. While this example illustrates this functionality in terms of checkboxes, it should be understood that other mechanisms (e.g., radio buttons, drop-down menus, etc.) may be utilized.
[0043] FIG. 2 further illustrates that UI 202 includes an indication 206 of different game sources associated with notifications included in the notification feed. For example, indication 206 illustrates that the notification feed includes notifications associated with games in user 102(1)'s library, games on user 102(1)'s wishlist, games followed by user 102(1), games recommended to user 102(1) by computing system 104, and games played or recommended by curators followed by user 102(1). Of course, while FIG. 2 illustrates several example types of game sources, it should be understood that other embodiments may include more or fewer game sources, and further, the source of a notification may not be directly associated with a game, such as in the case of curator-created or user-created notifications. In addition, FIG. 2 illustrates that UI 202 includes functionality to enable user 102(1) to select which notifications to view based on the game source. That is, user 102(1) may request to view notifications associated with a particular game source (e.g., followed games), while not viewing notifications associated with other game sources (e.g., games already in the user's library). Again, this example illustrates this functionality in terms of checkboxes, but it should be understood that other mechanisms (e.g., radio buttons, drop-down menus, etc.) may be utilized.
[0044] 2 further illustrates that each notification in the UI 202 may include functionality that allows the user to provide feedback on the notification. For example, each notification may include a first icon (e.g., “like”) that is selectable so that the user can indicate that the user enjoys this particular notification, a second icon (e.g., “dislike”) that is selectable so that the user can indicate that the user does not enjoy this particular notification, a third icon (e.g., “show more stuff like this”) that is selectable so that the user can indicate that the user enjoys a type of notification, a fourth icon (e.g., “show less stuff like this”) that is selectable so that the user does not enjoy this particular type of notification, and a fifth icon (e.g., “comments”) that is selectable so that the user can view or express comments about the notification. In some cases, as described above, the selection of these icons may be tracked by the user interaction component 126 to generate feedback data, which may be used by the feed generation component 124 to generate a subsequent personalized notification feed for the user.
[0045] FIG. 3 illustrates an example UI 202 after a user selects a notification 208(2) from the notification feed. As illustrated, the user interface may display additional content 210 of the notification in response to the selection. In this example, the additional content 210 includes a video, while in other instances, the additional content 210 may include additional text, images, links, example gameplay, and / or other content. Additionally, the user interaction component 126 may store an indication of this selection as feedback data, and the feed generation component 124 may use the feedback data to generate subsequent notification feeds for the user and / or other users. For example, the user interaction component 126 may determine which notification the user selected and the amount of time the user viewed the additional content, each of which may be used by the feed generation component 124 to generate subsequent notification feeds for the user 102(1). In some instances, the greater the amount of time the user views the additional content, the greater the weighting applied to this notification, the type of notification, the source of the notification, etc.
[0046] FIG. 4 illustrates a flow diagram of an example process 400 for generating a personalized gaming notification feed for a user, receiving feedback from the user or from other users, and generating an updated personalized gaming notification feed in response. This process, and each process described herein, is illustrated as a collection of blocks in a logical flow graph that represent a sequence of operations that may be implemented in hardware, software, or a combination thereof. In the context of software, the blocks represent computer-executable instructions that, when executed by one or more processors, perform the recited operations. Generally, computer-executable instructions include routines, programs, objects, components, data structures, etc. that perform particular functions or implement particular abstract data types. The order in which the operations are described is not intended to be construed as a limitation, and any several described blocks may be combined in any order and / or in parallel to implement a process. In some cases, the computing system 104 may be configured to perform some or all of the operations, while in other cases, other devices may additionally or alternatively perform some or all of the operations.
[0047] At operation 402, the computing system 104 may receive, from each of a plurality of game publishers, a respective notification providing information associated with a game offered by each respective game publisher. As described above, each respective notification may include an indication that a game update is available, an indication that additional game content is available, an indication that a game discount or promotion is available, an indication of an in-game event, an indication of a game challenge or contest, an indication of a game live stream or broadcast, an indication of a game announcement, an indication of a communication session associated with the game, an indication of an in-person event associated with the game, or an indication of a promotion of the related game.
[0048] In operation 404, the computing system 104 may determine, for a user of the plurality of users, a set of games associated with the user. The set of games may include one or more games previously acquired by the user (as well as the amount of time played), one or more games previously added by the user to a list associated with the user (as well as when the user added each game to the list), one or more games for which the user previously requested to receive information, one or more games recommended by game curators followed by the user, etc.
[0049] At operation 406, the computing system 104 may determine a first respective score associated with each game in the set of games. As noted above, this score may be based on previous interactions between the user (and / or other users) and the computing system 104. For example, the computing system 104 may determine which notification types the user typically responds to, which notification types the user typically ignores, etc. In some cases, if the ratio of the amount of time the user selects a notification to the amount of time the notification is presented to the user is relatively high, the score for the notification may be higher, whereas if this ratio is relatively low, the score for the notification may be lower.
[0050] At operation 408, the computing system 104 may generate a first notification feed including a first plurality of notifications for the user and based at least in part on the first score of each game in the set of games associated with the user. At operation 410, the computing system 104 may cause display of the first notification feed to the user. This may include presenting the notifications according to their ranking, in some cases with notifications having the relatively highest scores being presented first.
[0051] In operation 412, the computing system 104 determines whether feedback has been received from the user or from another user. If not, the user may continue to view the first notification feed. However, if feedback is received, the computing system 104 may calculate a new score for the notification, taking into account that the feedback may affect the score, and therefore the ranking, of the notification. If so, the computing system 104 may generate a second notification feed and cause the display of the second notification feed to the user. As described above, the remote computing system may use the received feedback to generate a new score and / or ranking, and thus generate a new personalized notification feed in real-time or near real-time, or may use this feed to generate a new personalized notification feed the next time the user navigates to a location where the personalized notification feed is presented (e.g., a web page, a portion of a client mobile application, etc.).
[0052] Although the present subject matter has been described in language specific to structural features, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the particular features described. Rather, the particular features are disclosed as example forms of implementing the claims. The inventions described in the claims at the time of filing of this application are set forth below. [1] 1. A method comprising: receiving a respective notification from each of a plurality of game publishers providing information associated with games offered by each respective game publisher; determining, for a user of a plurality of users, a set of games associated with the user; generating a first notification feed for the user and including a first plurality of notifications based at least in part on the set of games associated with the user; causing a display of the first notification feed to the user; and receiving feedback from the user regarding at least one notification of the first plurality of notifications; generating a second notification feed for the user and including a second plurality of notifications based at least in part on the set of games associated with the user and the feedback; causing a display of the second notification feed to the user. [2] The method of any one of claims 1 to 5, wherein determining the set of games associated with the user includes determining one or more games previously acquired by the user. [3] The method of claim 2, further comprising: for each of the one or more games previously acquired by the user, determining an amount of time the user has played each respective game; and wherein generating each of the first notification feed and the second notification feed is further based at least in part on the amount of time the user has played each respective game. [4] The method of any one of claims 1 to 5, wherein determining the set of games associated with the user includes determining one or more games that the user previously added to a list associated with the user. [5] [4] The method of claim 4, further comprising: for each of the one or more games that the user previously added to the list, determining a time at which the user added each respective game to the list, and wherein generating each of the first notification feed and the second notification feed is further based at least in part on the time at which the user added each respective game to the list. [6] The method of any one of claims 1 to 5, wherein determining the set of games associated with the user includes determining one or more games for which the user has previously requested to receive information. [7] The method of any one of claims 1 to 5, wherein determining the set of games associated with the user includes determining one or more games recommended by game curators followed by the user. [8] 2. The method of claim 1, wherein the receiving of the feedback from the user includes receiving an indication of one or more notifications of the first notification feed selected by the user. [9] The method of any one of claims 1 to 5, wherein the receiving of the feedback from the user includes receiving an indication of at least one notification of the first notification feed that the user selected to view additional information for, and an amount of time the user viewed the additional information.
[10] The method of any one of claims 1 to 5, further comprising receiving additional feedback from additional users regarding at least one notification, wherein the generation of the second notification feed is further based at least in part on the additional feedback from the additional users.
[11] The method of any one of claims 1 to 5, wherein generating the first notification feed includes determining a first order of the first plurality of notifications, and generating the second notification feed includes determining a second order of the second plurality of notifications.
[12] determining a first respective score associated with each game in the set of games; determining a second respective score associated with each game in the set of games after the receiving of the feedback; The method of any one of claims 1 to 5, wherein the generation of the first notification feed is based at least in part on the first respective scores and the generation of the second notification feed is based at least in part on the second respective scores.
[13] The method of claim 1, wherein each respective notification includes an indication that a game update is available, an indication that additional game content is available, an indication that a game discount or promotion is available, an indication of an in-game event, an indication of a game challenge or contest, an indication of a game live stream or broadcast, an indication of a game announcement, an indication of a communication session associated with the game, an indication of an in-person event associated with the game, or an indication of a related game promotion.
[14] The method of any one of claims 1 to 5, wherein causing the display of the first notification feed to the user further comprises causing the display of one or more icons to enable the user to select which types of notifications to display as part of the first notification feed.
[15] determining the set of games includes determining the set of games from a plurality of game sources, each of the plurality of game sources being associated with one or more notifications of the first notification feed; The method of any one of claims 1 to 5, wherein causing the display of the first notification feed to the user further includes causing the display of one or more icons to enable the user to select which of the multiple game sources to use to generate the first notification feed.
[16] 1. A computing system comprising: one or more processors; and one or more computer-readable media storing computer-executable instructions that, when executed, cause the one or more processors to: receiving a respective notification from each of a plurality of game publishers providing information associated with games offered by each respective game publisher; determining, for a user of a plurality of users, a set of games associated with the user; generating a first notification feed for the user and including a first plurality of notifications based at least in part on the set of games associated with the user; causing a display of the first notification feed to the user; and receiving feedback from the user regarding at least one notification of the first plurality of notifications; generating a second notification feed for the user and including a second plurality of notifications based at least in part on the set of games associated with the user and the feedback; causing a display of the second notification feed to the user.
[17] determining the set of games associated with the user, determining one or more games previously acquired by the user; determining one or more games that the user previously added to a list associated with the user; determining one or more games for which the user has previously requested to receive information; and determining one or more games recommended by game curators followed by the user.
[18] determining the set of games includes determining the set of games from a plurality of game sources, each of the plurality of game sources being associated with one or more notifications of the first notification feed;
[16] The computing system of claim 1, wherein causing the display of the first notification feed to the user further includes causing the display of one or more first icons to allow the user to select which type of notification to display as the first notification feed, and one or more second icons to allow the user to select which game source of the multiple game sources to use to generate the first notification feed.
[19] One or more computer-readable media storing computer-executable instructions that, when executed, cause one or more processors to: receiving a respective notification from each of a plurality of game publishers providing information associated with games offered by each respective game publisher; determining, for a user of a plurality of users, a set of games associated with the user; generating a first notification feed for the user and including a first plurality of notifications based at least in part on the set of games associated with the user; causing a display of the first notification feed to the user; and receiving feedback from the user regarding at least one notification of the first plurality of notifications; generating a second notification feed for the user and including a second plurality of notifications based at least in part on the set of games associated with the user and the feedback; and causing display of the second notification feed to the user.
[20] determining the set of games associated with the user, determining one or more games previously acquired by the user; determining one or more games that the user previously added to a list associated with the user; determining one or more games for which the user has previously requested to receive information;
[19] The one or more computer-readable media described in
[19] , comprising at least one of: determining one or more games recommended by game curators followed by the user.
Claims
1. A method implemented at least in part by one or more processors of a computing system, comprising: receiving a respective notification from each of a plurality of game publishers providing information regarding a respective event associated with a game offered by each respective game publisher; determining, for a user of a plurality of users, a set of games associated with the user; generating a first notification feed for the user and including a first plurality of notifications based at least in part on the set of games associated with the user; wherein the first plurality of notifications are ordered based at least in part on an amount of time that the user has played a respective game associated with each notification; The first plurality of notifications: a first notification indicating that at least one of an update to the game or additional content for the game is available; and generating a second notification indicating that at least one of an in-game event, a live stream of the game, or a broadcast of the game is available; causing a display of the first notification feed to the user; and receiving feedback from the user regarding at least one notification of the first plurality of notifications; receiving a selection of a notification type for exclusion from a subsequent notification feed; receiving a selection of one of a plurality of game sources for exclusion from the subsequent notification feed; generating a second notification feed including a second plurality of notifications for the user and based at least in part on the set of games associated with the user, the feedback, the selection of the notification types to exclude, and the selection of game sources to exclude; wherein the second plurality of notifications are ordered based at least in part on an amount of time that the user has played a respective game associated with each notification; generating the second plurality of notifications, the second plurality of notifications being not notifications of the notification type and not notifications generated based on the game source; causing a display of the second notification feed to the user.
2. The method of claim 1 , wherein the determining the set of games associated with the user comprises determining one or more games previously acquired by the user.
3. The method of claim 1 , wherein the determining the set of games associated with the user comprises determining one or more games that the user previously added to a list associated with the user.
4. 4. The method of claim 3, further comprising, for each of the one or more games previously added by the user to the list, determining a time at which the user added each respective game to the list, and wherein the generating each of the first notification feed and the second notification feed is further based at least in part on the time at which the user added each respective game to the list.
5. The method of claim 1 , wherein the determining the set of games associated with the user comprises determining one or more games for which the user has previously requested to receive information.
6. The method of claim 1 , wherein the determining the set of games associated with the user comprises determining one or more games recommended by game curators followed by the user.
7. The method of claim 1 , wherein the receiving the feedback from the user comprises receiving an indication of one or more notifications of the first notification feed selected by the user.
8. 2. The method of claim 1 , wherein the receiving the feedback from the user includes receiving an indication of at least one notification of the first notification feed that the user selected to view additional information for and an amount of time that the user viewed the additional information.
9. 10. The method of claim 1, further comprising receiving additional feedback from additional users regarding at least one notification, wherein the generation of the second notification feed is further based at least in part on the additional feedback from the additional users.
10. 2. The method of claim 1 , wherein the generating the first notification feed includes determining a first order of the first plurality of notifications, and the generating the second notification feed includes determining a second order of the second plurality of notifications.
11. determining a first respective score associated with each game in the set of games; determining a second respective score associated with each game in the set of games after the receiving of the feedback; 2. The method of claim 1, wherein the generation of the first notification feed is based at least in part on the first respective scores and the generation of the second notification feed is based at least in part on the second respective scores.
12. The method of claim 1, wherein the plurality of first notifications further include a third notification, the third notification including at least one of an indication of a game discount or promotion, an indication of a game challenge or contest, an indication of a game announcement, an indication of a communication session associated with the game, an indication of an in-person event associated with the game, or an indication of a promotion of a related game.
13. causing the display of the first notification feed to the user further includes causing the display of one or more icons to allow the user to select which of a plurality of notification types to display as part of the first notification feed; the plurality of notification types includes at least a game update, additional content for the game, an in-game event, a live stream of the game, or a broadcast of the game; 2. The method of claim 1 , wherein receiving a selection of the notification type to exclude includes receiving a selection of at least one of the game updates, the additional content for the game, the in-game events, the live stream of the game, or the broadcast of the game.
14. determining the set of games includes determining the set of games from a plurality of game sources, each of the plurality of game sources being associated with one or more notifications of the first notification feed; causing the display of the first notification feed to the user further includes causing the display of one or more icons to allow the user to select which of the multiple game sources to use to generate the first notification feed; the plurality of game sources include at least games from the user's library, games from the user's wishlist, games the user follows, games associated with curators followed by the user, or games recommended for the user; 2. The method of claim 1, wherein receiving the selection of the game source to exclude includes receiving at least one of games from the user's library, games from the user's wishlist, games the user follows, games associated with a curator followed by the user, or games recommended for the user.
15. 1. A computing system comprising: one or more processors; and one or more computer-readable media storing computer-executable instructions that, when executed, cause the one or more processors to: receiving, from each of a plurality of game publishers, respective notifications providing information regarding respective events associated with games offered by each respective game publisher; determining, for a user of a plurality of users, a set of games associated with the user; generating a first notification feed for the user and including a first plurality of notifications based at least in part on the set of games associated with the user; wherein the first plurality of notifications are ordered based at least in part on an amount of time that the user has played a respective game associated with each notification; The first plurality of notifications: a first notification indicating that at least one of an update to the game or additional content for the game is available; and generating a second notification indicating that at least one of an in-game event, a live stream of the game, or a broadcast of the game is available; causing a display of the first notification feed to the user; and receiving feedback from the user regarding at least one notification of the first plurality of notifications; receiving a selection of a notification type for exclusion from a subsequent notification feed; receiving a selection of one of a plurality of game sources for exclusion from the subsequent notification feed; generating a second notification feed including a second plurality of notifications for the user and based at least in part on the set of games associated with the user, the feedback, the selection of the notification types to exclude, and the selection of game sources to exclude; wherein the second plurality of notifications are ordered based at least in part on an amount of time that the user has played a respective game associated with each notification; generating the second plurality of notifications, the second plurality of notifications being not notifications of the notification type and not notifications generated based on the game source; causing a display of the second notification feed to the user.
16. determining the set of games associated with the user, determining one or more games previously acquired by the user; determining one or more games that the user previously added to a list associated with the user; determining one or more games for which the user has previously requested to receive information; and determining one or more games recommended by game curators followed by the user.
17. determining the set of games includes determining the set of games from a plurality of game sources, each of the plurality of game sources being associated with one or more notifications of the first notification feed; 16. The computing system of claim 15, wherein causing the display of the first notification feed to the user further comprises causing the display of one or more first icons to allow the user to select which type of notifications to display as the first notification feed, and one or more second icons to allow the user to select which of the multiple game sources to use to generate the first notification feed.
18. One or more non-transitory computer-readable media storing computer-executable instructions that, when executed, cause one or more processors to: receiving, from each of a plurality of game publishers, respective notifications providing information regarding respective events associated with games offered by each respective game publisher; determining, for a user of a plurality of users, a set of games associated with the user; generating a first notification feed for the user and including a first plurality of notifications based at least in part on the set of games associated with the user; wherein the first plurality of notifications are ordered based at least in part on an amount of time that the user has played a respective game associated with each notification; The first plurality of notifications: a first notification indicating that at least one of an update to the game or additional content for the game is available; and generating a second notification indicating that at least one of an in-game event, a live stream of the game, or a broadcast of the game is available; causing a display of the first notification feed to the user; and receiving feedback from the user regarding at least one notification of the first plurality of notifications; receiving a selection of a notification type for exclusion from a subsequent notification feed; receiving a selection of one of a plurality of game sources for exclusion from the subsequent notification feed; generating a second notification feed including a second plurality of notifications for the user and based at least in part on the set of games associated with the user, the feedback, the selection of the notification types to exclude, and the selection of game sources to exclude; wherein the second plurality of notifications are ordered based at least in part on an amount of time that the user has played a respective game associated with each notification; generating the second plurality of notifications, the second plurality of notifications being not notifications of the notification type and not notifications generated based on the game source; and causing a display of the second notification feed to the user.
19. determining the set of games associated with the user, determining one or more games previously acquired by the user; determining one or more games that the user previously added to a list associated with the user; determining one or more games for which the user has previously requested to receive information; and determining one or more games recommended by game curators followed by the user.
Citation Information
Patent Citations
Event management server, information processing system, information processing apparatus, and event attendance management method
JP2017045426A
Interactive event platform
JP2018187400A
Information processing device, information processing method, and information processing program
JP2019008357A
Dynamic recommendation of games
US20140274355A1
Recommendation engine for electronic game shopping channel
US20150099589A1