The present subject matter relates to making recommendations of media content to users based on social media services associated therewith.
Media content choices, such as movies, music, television programs, and videos, are ever-increasing. The sheer quantity of choices can often leave a viewer with a feeling of nothing to watch, even though there are now hundreds of television channels and an unlimited number of viral videos that may be selected for viewing, such as when browsing Internet videos. Often, a viewer may only have a limited amount of time to devote to watching television and/or browsing videos, yet is left to determine and prioritize what to select for viewing from the many choices. Viewers would likely prefer not to waste a limited amount of viewing time searching for something to watch, or watching video content that is irrelevant or otherwise not of interest to them.
Methods, systems, and apparatuses are described for social media-based content recommendations, substantially as shown in and/or described herein in connection with at least one of the figures, as set forth more completely in the claims.
The accompanying drawings, which are incorporated herein and form a part of the specification, illustrate embodiments and, together with the description, further serve to explain the principles of the embodiments and to enable a person skilled in the pertinent art to make and use the embodiments.
Embodiments will now be described with reference to the accompanying drawings.
In the drawings, like reference numbers indicate identical or functionally similar elements. Additionally, the left-most digit(s) of a reference number identifies the drawing in which the reference number first appears.
I. Introduction
The present specification discloses numerous example embodiments. The scope of the present patent application is not limited to the disclosed embodiments, but also encompasses combinations of the disclosed embodiments, as well as modifications to the disclosed embodiments.
References in the specification to “one embodiment,” “an embodiment,” “an example embodiment,” etc., indicate that the embodiment described may include a particular feature, structure, or characteristic, but every embodiment may not necessarily include the particular feature, structure, or characteristic. Moreover, such phrases are not necessarily referring to the same embodiment. Further, when a particular feature, structure, or characteristic is described in connection with an embodiment, it is submitted that it is within the knowledge of one skilled in the art to affect such feature, structure, or characteristic in connection with other embodiments whether or not explicitly described.
In the discussion, unless otherwise stated, adjectives such as “substantially,” “approximately,” and “about” modifying a condition or relationship characteristic of a feature or features of an embodiment of the disclosure, are understood to mean that the condition or characteristic is defined to be within tolerances that are acceptable for operation of the embodiment for an application for which it is intended.
Furthermore, it should be understood that spatial descriptions (e.g., “above,” “below,” “up,” “left,” “right,” “down,” “top,” “bottom,” “vertical,” “horizontal,” etc.) used herein are for purposes of illustration only, and that practical implementations of the structures described herein can be spatially arranged in any orientation or manner.
Still further, it should be noted that the drawings/figures are not drawn to scale unless otherwise noted herein.
Numerous exemplary embodiments are now described. Any section/subsection headings provided herein are not intended to be limiting. Embodiments are described throughout this document, and any type of embodiment may be included under any section/subsection. Furthermore, it is contemplated that the disclosed embodiments may be combined with each other in any manner That is, the embodiments described herein are not mutually exclusive of each other and may be practiced and/or implemented alone, or in any combination.
A method for recommending content to a first user is described herein. The method comprises: determining that the first user utilizes a first multimedia device to consume media content; determining that a second user, which utilizes a second multimedia device to consume media content, is associated with the first user via a social media service; determining that the second user is consuming a particular piece of media content via the second multimedia device; and causing an indicator to be displayed via a graphical user interface rendered on a display device communicatively coupled to the first multimedia device responsive to determining that the second user consuming the particular piece of media content is associated with the first user, the indicator recommending the particular piece of media content to the first user.
In one embodiment of the foregoing method, determining that a second user that utilizes a second multimedia device to consume media content is associated with the first user via a social media service comprises: receiving, via the first device, social media user credentials associated with the first user; accessing a social media profile associated with the first user based on the social media credentials; determining that the social media profile indicates that the second user is a contact of the first user; and determining that the second user is associated with the first user based on determining that the social media profile indicates that the second user is a contact of the first user.
In one embodiment of the foregoing method, determining that the second user is consuming a particular piece of media content via the second multimedia device comprises: receiving one or more social media posts of the second user based on the social media credentials associated with the first user; and analyzing the one or more social media posts for media content identifiers that identify the particular piece of media content in which the second user is engaging.
In one embodiment of the foregoing method, determining that the second user is consuming a particular piece of media content via the second multimedia device comprises: receiving a communication message from the second device that identifies the particular piece of media content.
In one embodiment of the foregoing method, determining that the second user is consuming the particular piece of media content comprises: determining that the second user is consuming the particular piece of media content during at least one of a particular day or a particular time; and said causing comprises: causing the indicator to be displayed via the graphical user interface rendered on the display device based on the at least one of the particular day or the particular time.
In one embodiment of the foregoing method, said causing comprises: determining that the first user is browsing for media content to engage via the graphical user interface of the first device; and causing the indicator to be displayed via the graphical user interface in response to determining that the first user is browsing for the media content.
In one embodiment of the foregoing method, the method further comprises: causing a user-interactive element to be displayed via the graphical user interface that, when activated, causes the particular piece of media content to be played back via the first device.
A system is also described herein. The system comprises at least one processor circuit; and at least one memory that stores program code configured to be executed by the at least one processor circuit, the program code comprising: a device determiner configured to determine that the first user utilizes a first multimedia device to consume media content; a user associator configured to determine that a second user, which utilizes a second multimedia device to consume media content, is associated with the first user via a social media service; a content observer configured to determine that the second user is consuming a particular piece of media content via the second multimedia device; and a content recommender configured to cause an indicator to be displayed via a graphical user interface rendered on a display device communicatively coupled to the first multimedia device responsive to determining that the second user consuming the particular piece of media content is associated with the first user, the indicator recommending the particular piece of media content to the first user.
In one embodiment of the foregoing system, the user associator is further configured to: receive, via the first device, social media user credentials associated with the first user; access a social media profile associated with the first user based on the social media credentials; determine that the social media profile indicates that the second user is a contact of the first user; and determine that the second user is associated with the first user based on determining that the social media profile indicates that the second user is a contact of the first user.
In one embodiment of the foregoing system, the content observer is further configured to: receive one or more social media posts of the second user based on the social media credentials associated with the first user; and analyze the one or more social media posts for media content identifiers that identify the particular piece of media content in which the second user is engaging.
In one embodiment of the foregoing system, the content observer is further configured to: receive a communication message from the second device that identifies the particular piece of media content.
In one embodiment of the foregoing system, the content observer is further configured to: determine that the second user is consuming the particular piece of media content during at least one of a particular day or a particular time; and the content recommender is further configured to: cause the indicator to be displayed via the graphical user interface rendered on the display device based on the at least one of the particular day or the particular time.
In one embodiment of the foregoing system, the content recommender is further configured to: determine that the first user is browsing for media content to engage via the graphical user interface of the first device; and cause the indicator to be displayed via the graphical user interface in response to determining that the first user is browsing for the media content.
In one embodiment of the foregoing system, the content recommender is further configured to cause a user-interactive element to be displayed via the graphical user interface that, when activated, causes the particular piece of media content to be played back via the first device.
A computer-readable storage medium having program instructions recorded thereon that, when executed by at least one processor of a computing device, perform a method, the method comprising: determining that the first user utilizes a first multimedia device to consume media content; determining that a second user, which utilizes a second multimedia device to consume media content, is associated with the first user via a social media service; determining that the second user is consuming a particular piece of media content via the second multimedia device; and causing an indicator to be displayed via a graphical user interface rendered on a display device communicatively coupled to the first multimedia device responsive to determining that the second user consuming the particular piece of media content is associated with the first user, the indicator recommending the particular piece of media content to the first user.
In one embodiment of the foregoing computer-readable storage medium, determining that a second user that utilizes a second multimedia device to consume media content is associated with the first user via a social media service comprises: receiving, via the first device, social media user credentials associated with the first user; accessing a social media profile associated with the first user based on the social media credentials; determining that the social media profile indicates that the second user is a contact of the first user; and determining that the second user is associated with the first user based on determining that the social media profile indicates that the second user is a contact of the first user.
In one embodiment of the foregoing computer-readable storage medium, determining that the second user is consuming a particular piece of media content via the second multimedia device comprises: receiving one or more social media posts of the second user based on the social media credentials associated with the first user; and analyzing the one or more social media posts for media content identifiers that identify the particular piece of media content in which the second user is engaging.
In one embodiment of the foregoing computer-readable storage medium, determining that the second user is consuming a particular piece of media content via the second multimedia device comprises: receiving a communication message from the second device that identifies the particular piece of media content.
In one embodiment of the foregoing computer-readable storage medium, determining that the second user is consuming the particular piece of media content comprises: determining that the second user is consuming the particular piece of media content during at least one of a particular day or a particular time; and said causing comprises: causing the indicator to be displayed via the graphical user interface rendered on the display device based on the at least one of the particular day or the particular time.
In one embodiment of the foregoing computer-readable storage medium, said causing comprises: determining that the first user is browsing for media content to engage via the graphical user interface of the first device; and causing the indicator to be displayed via the graphical user interface in response to determining that the first user is browsing for the media content.
II. Example Embodiments
Embodiments described herein are configured in various ways to recommend content based on content being engaged with by a user's social media contacts. For example, embodiments described herein advantageously provide a user with content recommendations that are based on what other people associated with the user (e.g., via a social media service) are consuming or have consumed. For instance, content being engaged with by a user's social media contacts are monitored via multimedia devices utilized by the user and his contacts and/or are inferred via social media posts of the user's contacts. Once the content is determined, the user is provided with recommendations for that content. The recommendations may be provided to the user while the user is watching content and/or browsing for content. The recommendations may also be provided based on periodicity of the media content.
The embodiments described herein may be adapted to various types of systems and devices, for example but without limitation, communication devices (e.g., cellular and smart phones, etc.), computers/computing devices (e.g., laptops, tablets, desktops, etc.), computing systems, electronic devices, gaming consoles, home electronics and entertainment devices (e.g., home theater systems, stereos, televisions, audio/video (A/V) switching devices, etc.), and/or the like. It is contemplated herein that in various embodiments and with respect to the illustrated figures of this disclosure, one or more components described and/or shown may not be included and that additional components may be included.
Embodiments described herein advantageously reduce the clutter of user interface (UI) elements such as graphical UI (GUI) elements presented to a user for content selection/recommendation by reducing the number of GUI elements presented to a user for content recommendations, thereby providing a user with a minimal, simplified GUI that automatically navigates a user through a normally cluttered, complex or confusing GUI. The reduction in clutter is possible by presenting a relatively lower number of determined recommendations based on the techniques described herein.
Embodiments described herein can improve the functioning of a system or a device (e.g., a computer or processing device) on which they are implemented. For example, content recommendations made according to the described embodiments allow for the simplification elements presented by a UI, e.g., a relatively small number of desired recommendations based on a usage profile. Thus, systems and devices perform more efficiently by providing content faster and using less power (less menu browsing and manual programming by the user, etc.). Additionally, the overall user experience is improved.
Various example embodiments are described in herein. In particular, example usage profile embodiments are described. This description is followed by further example embodiments and advantages. Subsequently an example processing device implementation is described. Finally, some concluding remarks are provided. It is noted that any division of the description herein generally into subsections and/or embodiments is provided for ease of illustration, and it is to be understood that any type of embodiment may be described in any subsection.
III. Example Embodiments
Systems and devices may be configured in various ways to recommend content based on content being engaged with by a user's social media contacts, according to the embodiments provided.
For instance,
As also shown in
Server 106 may include a content recommender 116 that is configured to make recommendations to a user based on the observed/detected media content consumption of other users. In accordance with an embodiment, the users are associated with each other via social media service(s) 120. Examples of social media service(s) 120 include, but are not limited to, Facebook®, Twitter®, etc. Social media service(s) 120 may be implemented via one or computing devices (e.g., servers), software, or a combination thereof. In accordance with such an embodiment, server 106 may be provided with the user credentials of social media service(s) 120 for the users of first device 102 and second device 104. For example, users may log into first device 102 and second device 104, respectively, using their social media user credentials, and such credentials may be provided to server 106. In another example, first device 102 and second device 104 may prompt users to input their social media user credentials, and first device 102 and second device 104 may provide the user credentials to server 106. In yet another example, a user may provide their social media user credentials via a website associated with first device 102 and/or second device 104 and that is maintained by server 106. For instance, users may set-up an online account associated with their respective first device 102 or second device 104. The online account may enable users to set-up a user profile, which includes social media accounts that are associated with the users.
Upon receiving user credentials, server 106 may log into the user's social media account and determine whether that user has contacts (e.g., friends, associates, followers, etc.) that utilize a multimedia device (e.g., first device 102 or second device 104) for consuming content. For example, if the user credentials of a user's contacts have also been provided to server 106, server 106 may determine that the user's contacts also utilize a multimedia device (e.g., first device 102 or second device 104) for consuming content. Server 106 may determine whether a contact is engaging or has engaged in content upon receiving a communication message from that contact's multimedia device that specifies the media content being watched by that user. Alternatively, server 106 may receive communication messages from social media service(s) 120 that specify social media posts from the user's contacts that specify what those contacts are watching. Content recommender 116 may provide a communication message to the user's multimedia device (e.g., first device 102) that identifies the media content being watched by his contact.
Content recommender 118 of the device receiving the communication message (e.g., first device 102 or second device 104) may then cause an identifier to be rendered on display device 110 that recommends the identified media content to the user and/or an identifier of the user engaging with the identified media content (e.g., “Sam is watching the Emmy's, would you like to watch as well?”) via a GUI. Content recommender 118 may, in addition to recommending content, prompt the user to determine whether the user would like to engage in the recommended content, to add the recommended content into a watchlist, and/or record the recommended content. If the user provides a selection indicating that he would like to engage in the content, first device 102 may automatically determine the device and/or streaming application that provides the content and automatically causes the content to be played back (e.g., by launching the content via a streaming application provided by multimedia device(s) 122, changing the channel of multimedia device(s) 122 (e.g., a cable or satellite set-top box, etc.), etc.). In accordance with an embodiment in which first device 102 or second device 102 is an A/V switching device, first device 102 or second device 104 automatically switches to a port of the plurality of AV ports thereof to a multimedia device of multimedia device(s) 122 or 124, respectively that is configured to provide the media content, etc. Additional details regarding an A/V switching device that is configured to automatically determine a source device from which media content may be played back be found in U.S. Pat. No. 10,051,204, which is titled “Seamless Setup and Control for Home Entertainment Devices and Content” and issued on Aug. 14, 2018.
Content recommender 116 may further recommend new episodes for media content based on past viewing/consumption observations for the user's contacts. Recommendations may comprise new shows that will become available for the media content (e.g., or that will be recorded (or have been recorded)) based on periodicity of the media content. Such content may include television content or Web series that are released in a periodic fashion (e.g., once a week). Content recommender 116 may be configured to determine the availability of released or upcoming (to be released) content to be recommended for the user based on his contact's consumption of media content.
Content recommender 116 may utilize the temporal identifier to recommend content to the user that has already been watched by a contact in the past. For example, content recommender 118 may cause an identifier to be rendered that specifies media content that was previously watched by a contact and may prompt the user to determine whether the user would like to engage in the recommended content and/or record the recommended content. The identifier may be displayed at any time while first device 102 is being utilized by the user. For example, the identifier may be displayed upon a determination that the user is browsing for content to watch. In another example, the identifier may be displayed based on a periodicity at which the media content is viewable. For instance, if a contact watched a show that airs every Sunday at 8:00pm, content recommender 118 may display the identifier at or approximately at 8:00pm on Sunday (e.g., “James watched Game of Thrones at this time last week. It's about to start, would you like to watch?”).
Turning now to
Flowchart 200 of
At step 204, a determination is made that a second user, which utilizes a second multimedia device to consume media content, is associated with the first user via a social media service. For example, with reference to
At step 206, a determination is made that the second user is consuming a particular piece of media content via the second multimedia device. For example, with reference to
In accordance with one or more embodiments, a communication message is received from the second device that identifies the particular piece of content. For example, content observer 314 of second device 304 may provide a communication message 334 to content observer 330 via network 308. Communication message 334 may specify the piece of content being watched by the second user via second device 304 and/or an identifier (e.g., first name, last name, username, etc.) of the second user.
For instance,
As shown in
In response to selecting media content identifier 428A, second device 404 may provide a communication message 434 that specifies the media content being played back via second device 404 (e.g., provides an identifier (such as the name) of the media content) to server 406 (e.g., via a network, such as network 308). Additional details regarding switching devices that are enabled to search for content via different content sources is may be found in aforementioned U.S. Pat. No. 10,051,204.
Returning to
For example, with reference to
In accordance with one or more embodiments, a user-interactive element is caused to be displayed via the graphical user interface that, when activated, causes the particular piece of media content to be played back via the first device. For example, with reference to
In accordance with an embodiment, communication message 434 may be provided to server 406 based on a determination that the second user has been watching the media content for a predetermined time period (e.g., 5 minutes, 10 minutes, etc.). By doing so, second device 404 provides communications messages 434 when it is likely that the second user is actually watching the media content, rather than sampling media content to determine which media content to watch. This also advantageously prevents the first user from being bombarded with recommendations when the second user is sampling/browsing for media content to watch.
In accordance with one or more embodiments, a determination is made that the first user is browsing for media content to engage via the graphical user interface of the first device, and an indicator is caused to be displayed via the graphical user interface in response to determining that the first user is browsing for the media content. For example, with reference to
In accordance with one or more embodiments, a determination is made that the second user is consuming the particular piece of media content during at least one of a particular day or a particular time and the indicator is caused to be displayed via the graphical user interfaced rendered on the display device based on the at least one of the particular day or the particular time. For example, with reference to
Content recommender 316 may be configured to provide recommendations for media content via communication message 336 on the day and/or time at which the media content airs. For example, the user profile of user profile(s) 340 of the second user indicates that the second user watches “Modern Family” on Wednesday at 7:00 PM CT, content recommender 316 may provide recommendations to first device 402 on Wednesday at 7:00 PM CT or approximately at (e.g., 5 minutes before) 7:00 PM CT. By doing so, the user will receive recommendations for media content that is available for viewing at or around the time the media content is available for viewing.
Turning now to
Flowchart 500 of
In step 504, a social media profile associated with the first user is accessed based on the social media user credentials. For example, with reference to
In step 506, a determination is made that the social media profile indicates that the second user is a contact of the first user. For example, with reference to
In step 508, a determination is made that the second user is associated with the first user based on determining that the social media profile indicates that the second user is a contact of the first user. For example, with reference to
Accordingly, server 606 may be configured to track the media content that is being watched by the contacts of the first user and make content recommendations based on the viewing habits of the first user's contacts.
Turning now to
Flowchart 700 of
In step 704, the one or more social media posts are analyzed for media content identifiers that identify the particular piece of media content in which the second user is engaging. For example, with reference to
For instance,
Social media analyzer 918 of server 906 may be configured to analyze each social media post received via communication message(s) 932 to determine media content identifiers included therein. For example, responsive to receiving a communication message 932 corresponding to post 906N, social media analyzer 918 may determine that the second user (named “Lawrence”) is watching the Cubs game. Social media analyzer 918 may utilize natural language processing (NLP)-based techniques and/or other techniques to identify media content identifiers, although the embodiments described herein are not so limited. In response to determining that the second user is watching the Cubs game, server 906 may provide a communication message 936 specifies the piece of media content being watched by the second user and an identifier of the second user. Communication message 936 is an example of communication message 336, as described above with reference to
In accordance with one or more embodiments, a user-interactive element is caused to be displayed via the graphical user interface that, when activated, causes the particular piece of media content to be played back via the first device. For example, with reference to
IV. Further Example Embodiments and Advantages
It should be noted that embodiments are contemplated for different types of media and multimedia content and activities, and while some embodiments described above refer to television or media content, embodiments are not so limited. Embodiments contemplate, without limitation, all forms of streaming media and multimedia content, rentable and pay-per-view content, content from satellite providers, content from internet service/application providers, and/or the like.
It is noted that certain components of server 106 may be incorporated in devices 102 and 104, and vice versa. For example, content recommender 116 may be implemented in devices 102 and 104 and/or content observer 114 and content recommender 118 may be implemented in server 106. It is also noted that certain components of server 306 may be incorporated in devices 302 and 304, and vice versa. For example, content recommender 316, device determiner 326, user associator 328, content observer 330, and user profile(s) 340 may be implemented in devices 302 and 304 and/or content observer 314 and content recommender 318 may be implemented in server 306. It is further noted that certain components of server 606 may be incorporated in devices 602 and 604, and vice versa. For example, user associator 628 may be implemented in devices 602 and 604 and/or content observer 614 and content recommender 618 may be implemented in server 606. It is also noted that certain components of server 806 may be incorporated in devices 802 and 804, and vice versa. For example, social media analyzer 816 may be implemented in devices 802 and 804 and/or content observer 814 and content recommender 818 may be implemented in server 806. It is further noted that certain components of server 906 may be incorporated in device 902, and vice versa. For example, social media analyzer 916 may be implemented in device 902.
In embodiments, one or more of the operations of any flowchart described herein may not be performed. Moreover, operations in addition to or in lieu of any flowchart described herein may be performed. Further, in embodiments, one or more operations of any flowchart described herein may be performed out of order, in an alternate sequence, or partially (or completely) concurrently with each other or with any other operations.
V. Example Computer Implementations
A device, as defined herein, is a machine or manufacture as defined by 35 U.S.C. § 101. Devices may be digital, analog or a combination thereof. Devices may include integrated circuits (ICs), one or more processors (e.g., central processing units (CPUs), microprocessors, digital signal processors (DSPs), etc.) and/or may be implemented with any semiconductor technology, including one or more of a Bipolar Junction Transistor (BJT), a heterojunction bipolar transistor (HBT), a metal oxide field effect transistor (MOSFET) device, a metal semiconductor field effect transistor (MESFET) or other transconductor or transistor technology device. Such devices may use the same or alternative configurations other than the configuration illustrated in embodiments presented herein.
Techniques and embodiments, including methods, described herein may be implemented in hardware (digital and/or analog) or a combination of hardware and software and/or firmware. Techniques described herein may be implemented in one or more components. Embodiments may comprise computer program products comprising logic (e.g., in the form of program code or instructions as well as firmware) stored on any computer useable storage medium, which may be integrated in or separate from other components. Such program code, when executed in one or more processors, causes a device to operate as described herein. Devices in which embodiments may be implemented may include storage, such as storage drives, memory devices, and further types of computer-readable media. Examples of such computer-readable storage media include, but are not limited to, a hard disk, a removable magnetic disk, a removable optical disk, flash memory cards, digital video disks, random access memories (RAMs), read only memories (ROM), and the like. In greater detail, examples of such computer-readable storage media include, but are not limited to, a hard disk associated with a hard disk drive, a removable magnetic disk, a removable optical disk (e.g., CDROMs, DVDs, etc.), zip disks, tapes, magnetic storage devices, MEMS (micro-electromechanical systems) storage, nanotechnology-based storage devices, as well as other media such as flash memory cards, digital video discs, RAM devices, ROM devices, and the like. Such computer-readable storage media may, for example, store computer program logic, e.g., program modules, comprising computer executable instructions that, when executed, provide and/or maintain one or more aspects of functionality described herein with reference to the figures, as well as any and all components, steps and functions therein and/or further embodiments described herein.
Computer readable storage media are distinguished from and non-overlapping with communication media (do not include communication media or modulated data signals). Communication media embodies computer-readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave. The term “modulated data signal” means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media includes wired media as well as wireless media such as acoustic, RF, infrared and other wireless media. Example embodiments are also directed to such communication media.
The content recommendation embodiments and/or any further systems, sub-systems, and/or components disclosed herein may be implemented in hardware (e.g., hardware logic/electrical circuitry), or any combination of hardware with software (computer program code configured to be executed in one or more processors or processing devices) and/or firmware.
The embodiments described herein, including systems, methods/processes, and/or apparatuses, may be implemented using well known processing devices, servers, electronic devices (e.g., consumer electronic devices) and/or, computers, such as a computer 900 shown in
Computer 1000 can be any commercially available and well-known communication device, processing device, and/or computer capable of performing the functions described herein, such as devices/computers available from International Business Machines®, Apple®, Sun®, HP®, Dell®, Cray®, Samsung®, Nokia®, etc. Computer 1000 may be any type of computer, including a desktop computer, a server, etc.
Computer 1000 includes one or more processors (also called central processing units, or CPUs), such as a processor 1006. Processor 1006 is connected to a communication infrastructure 1002, such as a communication bus. In some embodiments, processor 1006 can simultaneously operate multiple computing threads.
Computer 1000 also includes a primary or main memory 1008, such as random access memory (RAM). Main memory 1008 has stored therein control logic 1024 (computer software), and data.
Computer 1000 also includes one or more secondary storage devices 1010. Secondary storage devices 1010 include, for example, a hard disk drive 1012 and/or a removable storage device or drive 1014, as well as other types of storage devices, such as memory cards and memory sticks. For instance, computer 1000 may include an industry standard interface, such a universal serial bus (USB) interface for interfacing with devices such as a memory stick. Removable storage drive 1014 represents a floppy disk drive, a magnetic tape drive, a compact disk drive, an optical storage device, tape backup, etc.
Removable storage drive 1014 interacts with a removable storage unit 1016.
Removable storage unit 1016 includes a computer useable or readable storage medium 1018 having stored therein computer software 1026 (control logic) and/or data. Removable storage unit 1016 represents a floppy disk, magnetic tape, compact disk, DVD, optical storage disk, or any other computer data storage device. Removable storage drive 1014 reads from and/or writes to removable storage unit 1016 in a well-known manner
Computer 1000 also includes input/output/display devices 1004, such as touchscreens, LED and LCD displays, monitors, keyboards, pointing devices, etc.
Computer 1000 further includes a communication or network interface 1018. Communication interface 1020 enables computer 1000 to communicate with remote devices. For example, communication interface 1020 allows computer 1000 to communicate over communication networks or mediums 1022 (representing a form of a computer useable or readable medium), such as LANs, WANs, the Internet, etc. Network interface 1020 may interface with remote sites or networks via wired or wireless connections.
Control logic 1028 may be transmitted to and from computer 1000 via the communication medium 1022.
Any apparatus or manufacture comprising a computer useable or readable medium having control logic (software) stored therein is referred to herein as a computer program product or program storage device. This includes, but is not limited to, computer 1000, main memory 1008, secondary storage devices 1010, and removable storage unit 1016. Such computer program products, having control logic stored therein that, when executed by one or more data processing devices, cause such data processing devices to operate as described herein, represent embodiments of the invention.
Any apparatus or manufacture comprising a computer useable or readable medium having control logic (software) stored therein is referred to herein as a computer program product or program storage device. This includes, but is not limited to, a computer, computer main memory, secondary storage devices, and removable storage units. Such computer program products, having control logic stored therein that, when executed by one or more data processing devices, cause such data processing devices to operate as described herein, represent embodiments of the inventive techniques described herein
VI. Conclusion
While various embodiments have been described above, it should be understood that they have been presented by way of example only, and not limitation. It will be apparent to persons skilled in the relevant art that various changes in form and detail can be made therein without departing from the spirit and scope of the embodiments. Thus, the breadth and scope of the embodiments should not be limited by any of the above-described exemplary embodiments, but should be defined only in accordance with the following claims and their equivalents.
This application claims priority to U.S. Provisional Patent Application No. 62/739,590, titled “System and Method for Social Media-Based Content Recommendations,” filed Oct. 1, 2018, now pending, the entirety of which is incorporated by reference herein.
Number | Date | Country | |
---|---|---|---|
62739590 | Oct 2018 | US |