Patent Description:
This disclosure is generally directed to network-based user identification.

In today's world, on-demand availability of content -- such as movies, TV shows and music, to name just a few examples -- is commonplace. But the electronic and computerized storage and delivery of content offers the potential for far more than just the availability and vanilla playback of content. For example, through innovative use of technology, it is possible to generate content recommendations that are tailored for individual users, as well as to customize the viewing experience to each user's personal preferences. However, to generate useful recommendations and customized the viewing experience for users, it would be helpful to be able to accurately identify the user who is viewing or otherwise consuming the content at any given moment.

<CIT> discloses system, method, and computer program product examples for the detection of a mobile device to identify user preferences. An example operates by detecting that a mobile device is within a vicinity of a computing device. A user ID that corresponds to the mobile device is identified. The user ID is provided to an application over a network, wherein the application identifies one or more preferences associated with the user ID. The one or more identified preferences are received from the application. The computing device is configured based on the one or more identified preferences associated with on the user ID, responsive to the detection.

According to a first aspect of the present invention there is provided a method as specified in claim <NUM>. The method may optionally be as specified in any of claims <NUM>-<NUM>.

According to a second aspect of the present invention there is provided a system as specified in claim <NUM>. The system may optionally be as specified in any of claims <NUM> to <NUM>.

According to a third aspect of the present invention there is provided a non-transitory computer-readable medium as specified in claim <NUM>. The non-transitory computer-readable medium may optionally be as specified in any of claims <NUM> to <NUM>.

Provided herein are system, apparatus, article of manufacture, method and/or computer program product embodiments, and/or combinations and sub-combinations thereof, for using technology in innovative ways to provide enhanced media streaming functionality, including automatic, accurate user identification.

An embodiment is directed to system, apparatus, article of manufacture, method and/or computer program product embodiments, and/or combinations and sub-combinations thereof, for network-based user identification. In a non-limiting embodiment, an apparatus, such as a streaming media device, may transmit a discovery signal over a network. The streaming media device may receive a response to the discovery signal from a mobile device operating on the network. The mobile device may be associated with a user of the streaming media device. Based on the response, it may be determined that the user is within a threshold vicinity of the streaming media device. One or more user settings corresponding to the user may be determined. The streaming media device or another device may be configured based on the one more user settings.

An additional embodiment is directed to system, apparatus, article of manufacture, method and/or computer program product embodiments, and/or combinations and sub-combinations thereof, for interaction-based user identification. In a non-limiting embodiment, an apparatus receives an interaction between a user and a mobile device. The mobile device can communicate with a streaming media device. Based on the interaction, an identity of the user is determined. User settings corresponding to the identity for the streaming media device are determined. The streaming media device is configured based on the user settings.

An additional embodiment is directed to system, apparatus, article of manufacture, method and/or computer program product embodiments, and/or combinations and sub-combinations thereof, for enforcing time limit and/or content restrictions against a user identified as using a media device. In a non-limiting embodiment, an apparatus may automatically identify a user who is using a media device using a network-oriented method of user discovery and/or an interaction oriented method of user discovery. The apparatus may access preferences associated with the identified user. The preferences may include time limit restrictions and/or content restrictions. The apparatus may enforce the time limit restrictions and/or content restrictions against the identified user when using the media device. In an embodiment, the network-oriented method of user discovery may be based on Bluetooth, WIFI, address resolution protocol, and/or geolocation. In an embodiment, the interaction or user-action oriented method of user discovery may be based on voice command, biometric information and/or capacitive sensing.

<FIG> illustrates a block diagram of a multimedia environment <NUM>, according to some embodiments. In a non-limiting example, multimedia environment <NUM> is directed to streaming media.

The multimedia environment <NUM> may include one or more media systems <NUM> and one or more content servers <NUM> communicatively coupled to a network <NUM>. In various embodiments, the network <NUM> can include, without limitation, wired and/or wireless intranet, extranet, Internet, cellular, Bluetooth and/or any other short range, long range, local, regional, global communications network, as well as any combination thereof.

Media system <NUM> may include a display device <NUM>, media device <NUM>, <NUM> and remote control <NUM>. Display device <NUM> may be a monitor, television, computer, smart phone, tablet, and/or projector, to name just a few examples. Media device <NUM> may be a streaming media device, DVD device, audio/video playback device, cable box, and/or digital video recording device, to name just a few examples. In some embodiments, the media device <NUM> can be a part of, integrated with, operatively coupled to, and/or connected to display device <NUM>. The media device <NUM> may be configured to communicate with network <NUM>.

A user <NUM> may interact with media system <NUM> via remote control <NUM>. Remote control <NUM> can be any component, part, apparatus or method for controlling media device <NUM> and/or display device <NUM>, such as a remote control, a tablet, laptop computer, smartphone, on-screen controls, integrated control buttons, or any combination thereof, to name just a few examples. In an embodiment, different users <NUM> may have their own remote controls <NUM> (e.g., mobile phones) which may be used to identify which user is interacting with the media system <NUM>. Or, for example, multiple users <NUM> may use or share a particular remote control <NUM>. Then, for example, the various embodiments of user identification as described herein may be used to identify different users <NUM>.

Content servers <NUM> (also called content sources <NUM>) may each include databases to store content <NUM> and metadata <NUM>. Content <NUM> may include any combination of music, videos, movies, TV programs, multimedia, images, still pictures, text, graphics, gaming applications, advertisements, software, and/or any other content or data objects in electronic form. In some embodiments, metadata <NUM> comprises data about content <NUM>. For example, metadata <NUM> may include associated or ancillary information indicating or related to writer, director, producer, composer, artist, actor, summary, chapters, production, history, year, trailers, alternate versions, related content, applications, and/or any other information pertaining or relating to the content <NUM>. Metadata <NUM> may also or alternatively include links to any such information pertaining or relating to the content <NUM>. Metadata <NUM> may also or alternatively include one or more indexes of content <NUM>, such as but not limited to a trick mode index.

<FIG> illustrates an example block diagram of the media device <NUM>, according to some embodiments. Media device <NUM> may include a streaming module <NUM>, processing module <NUM>, user interface module <NUM> and database <NUM>.

Now referring to <FIG> and <FIG>, in some embodiments, user <NUM> may use remote control <NUM> to interact with the user interface module <NUM> of media device <NUM> to select content, such as a movie, TV show, music, book, application, game, etc. The streaming module <NUM> of media device <NUM> may request the selected content from content server(s) <NUM> over the network <NUM>. Content server(s) <NUM> may transmit the requested content to the streaming module <NUM>. Media device <NUM> may transmit the received content to display device <NUM> for presentation to user <NUM>. In streaming embodiments, the streaming module <NUM> may transmit the content to display device <NUM> in real time or near real time as it receives such content from content server(s) <NUM>. In non-streaming embodiments, media device <NUM> may buffer or store the content received from content server(s) <NUM> in database <NUM> for later playback on display device <NUM>.

<FIG> is a block diagram of a network-based user identification system <NUM>, according to some embodiments. In <FIG>, a streaming media device <NUM> may identify a user <NUM> associated with a mobile device <NUM> over a network <NUM>. In an embodiment, streaming media device <NUM> of <FIG> may correspond to or otherwise include features similar to those described herein with respect to media device <NUM> of <FIG>. Similarly, in some embodiments, content provider <NUM> may correspond to content server <NUM>, mobile device <NUM> may correspond to remote control <NUM>, user <NUM> may correspond to user <NUM>, and/or network <NUM> may correspond to network <NUM>.

Streaming media device <NUM> may receive content (such as content <NUM>) from one or more content providers <NUM>. Streaming media device <NUM> may make the content available to one or more users <NUM> by displaying or otherwise making available the content for consumption via one more devices such as televisions, monitors, laptops, mobile phones, tablets, or other audio or display device <NUM>. However, different users <NUM> may have different viewing preferences or settings with regard to which content they prefer and/or how they prefer to consume the respective content. These viewing preferences or settings may be tracked, saved, or otherwise accessed by streaming media device <NUM> as user settings <NUM>.

In some embodiments, for streaming media device <NUM> to customize its content (such as the content it receives, reads, buffers, recommends or provides to user <NUM>) and/or operation via user settings <NUM>, streaming media device <NUM> identifies which user(s) <NUM> are using streaming media device <NUM> and/or consuming the content.

In some embodiments, a user <NUM> may manually log in and out of streaming media device <NUM> (including signing in/out of different streaming content applications operating thereon) to thereby identify himself to streaming media device <NUM>. During operation, user <NUM> may set particular settings or configure streaming media device <NUM> based on different user preferences, which may be saved as user settings <NUM>. Thereafter, streaming media device <NUM> may access the user settings <NUM> for that user <NUM> to customize its content and operation for the user <NUM>.

However, after a user <NUM> logs into streaming media device <NUM>, the user <NUM> may leave a geographic vicinity of streaming media device <NUM> without notifying (i.e., logging out) streaming media device <NUM> or the applications executing thereon. For example, a first user may begin playing content via streaming media device <NUM>, and a second user may take over control of streaming media device <NUM> after the first user leaves the room or geographic vicinity of streaming media device <NUM>. But, because the streaming media device <NUM> continues to customize its content and operation for the first user, the second user's viewing experience may not be as satisfying. Accordingly, some embodiments of this disclosure operate to automatically determine which user(s) <NUM> are within a geographic vicinity of streaming media device <NUM>, and to customize its content and operation for those users <NUM> who are located within a threshold distance of the streaming media device <NUM>. Accordingly, in the provided example, when the first user leaves and the second user enters the room, streaming media device <NUM>, content, and/or one more other devices may be configured based on the user settings <NUM> for the second user and/or other users detected in the room or within a threshold vicinity <NUM> of the streaming media device <NUM>.

In some embodiments, a network agent <NUM> may identify which mobile device(s) <NUM> are within a threshold vicinity <NUM> of streaming media device <NUM>. Streaming media device <NUM> may assume that the user(s) <NUM> associated with those identified mobile device(s) <NUM> are using the streaming media device <NUM>. Accordingly, the streaming media device <NUM> may customize which content is provided and/or how the content is presented for those user(s) <NUM> using the user setting(s) <NUM> respectively associated with the user(s) <NUM>. In an embodiment, network agent <NUM> may ping the detected device(s) <NUM> to determine which devices user settings <NUM> should be loaded.

In some embodiments, network agent <NUM> may transmit a signal over a network <NUM> to detect which mobile devices <NUM> are within the threshold vicinity <NUM>. In an embodiment, the signal may be a discovery signal <NUM>. Discovery signal <NUM> may be a signal transmit over network <NUM> to one or more device(s) communicatively coupled or potentially communicatively coupled to network <NUM>. Network <NUM> may provide wired and/or wireless communicative coupling between devices. In an embodiment, network <NUM> may be a WiFi, local area, wide area, or other network. In another embodiment, network <NUM> may include a Bluetooth network (or other short range communication coupling) that allows two or more devices to communicate directly with one another. Network agent <NUM> may be part of streaming media device <NUM>, or may be a standalone processor or device that is communicatively coupled to streaming media device <NUM>.

Network agent <NUM> may receive a response <NUM> to discovery signal <NUM> from mobile device <NUM> via network <NUM>. In some embodiments, the mobile device <NUM> may be within a vicinity or range of the streaming media device <NUM> to have received the discovery signal <NUM>, or may be communicatively connected to network <NUM>. In an embodiment, network agent <NUM> may determine which user(s) <NUM> or user settings <NUM> are associated with a mobile device <NUM> based on a response table <NUM>. For example, response <NUM> may include identifying information that may be used to identify mobile device <NUM> and/or one or more user <NUM>. For example, mobile device <NUM> may return a device identifier code. Network agent <NUM> may compare the received code against the data of response table <NUM> to identify which user <NUM> is registered to the device with the received code and/or what user settings <NUM> to load.

Based on response <NUM>, network agent <NUM> may determine which mobile device(s) <NUM> are within threshold vicinity <NUM>, and for which users <NUM>, user settings <NUM> should be loaded. In an embodiment, if multiple mobile devices <NUM> are detected within threshold vicinity <NUM>, a union, intersection, or other combination or delineation of user settings <NUM> may be used for the multiple devices <NUM> (e.g., such as based on a relative priority of the users <NUM>/mobile devices <NUM>). Various example embodiments on how a system may respond when multiple mobile devices <NUM> or users <NUM> are identified within threshold vicinity <NUM> are described in <CIT> entitled "Detection Of A Mobile Device To Identify User Preferences And Provide Customized Functionality Or Content," referenced above. Or, for example, if no mobile devices <NUM> are detected to be within threshold vicinity <NUM>, then a default or most-recently used set of user settings <NUM> may be used.

Discovery signal <NUM> and/or response <NUM> may vary depending on the nature or type of network <NUM> communications being used. For example, in Bluetooth communication, discovery signal <NUM> may be a Bluetooth beacon (e.g., a hardware processor that can transmit or broadcast its identifying information to electronic devices within a particular range of transmission). In an embodiment, response <NUM> may be a Bluetooth pairing request from mobile device <NUM> or a signal indicating that mobile device <NUM> is within a pairing range (e.g., threshold vicinity <NUM>) of streaming media device <NUM>.

In an embodiment, network agent <NUM> may be configured to operate as an access point (e.g., WiFi access point). When acting as an access point, the network agent <NUM> may provide one or more user devices <NUM> access to, for example, the internet using a wireless network standard such as IEEE <NUM>. Additionally, in some embodiments, the network agent <NUM> may operate as a node in, for example, an ad hoc peer-to-peer network. When acting as a node in a peer-to-peer network, one or more user devices <NUM> may connect to the network agent using, for example, Bluetooth, Bluetooth LE, or any suitable wireless connection. The network agent <NUM> may, in these embodiments, maintain a record of which mobile devices <NUM> (if any) are connected to via the network agent <NUM> at any given time. Additionally, in such embodiments, discovery signal <NUM> may be a record that identifies which mobile device(s) <NUM> (if any) are communicatively coupled to the access point of streaming media device <NUM>.

In an embodiment, network agent <NUM> may communicate with mobile devices <NUM> using an address resolution protocol (ARP). For example, in ARP, network agent <NUM> may determine a media access control (MAC) address of a device registered with or that may have previously interacted with streaming media device <NUM>. Network agent <NUM> may transmit discovery signal <NUM> with the MAC address of one or more devices. Then, for example, if the identified device <NUM> (e.g., with the corresponding MAC address) is on or otherwise communicatively coupled to network <NUM> and receives the signal <NUM>, the mobile device <NUM> may return response <NUM> to network agent <NUM> via network <NUM>. In an embodiment, response <NUM> may include or indicate an internet protocol (IP) address of mobile device <NUM> on network <NUM>. Then, for example, network agent <NUM> may not only determine mobile device <NUM> is within threshold vicinity <NUM>, but may also communicate directly with mobile device <NUM> using the IP address.

In an embodiment, if no device responds to discovery signal <NUM> (e.g., if no device <NUM> has or is associated with the indicated MAC address), network agent <NUM> may try another, different MAC address of another known device <NUM>. In an embodiment, network agent <NUM> may discontinue probing for mobile devices <NUM> as soon as one mobile device <NUM> responds. In another embodiment, network agent <NUM> may continue transmitting discovery signals <NUM> with all known or a threshold or predetermined number of MAC addresses to determine if multiple mobile devices <NUM> are currently communicatively coupled to network <NUM> or are otherwise within threshold vicinity <NUM>.

In an embodiment, network agent <NUM> may determine the location or vicinity of mobile device <NUM> relative to streaming media device <NUM> using geolocation signals. In an embodiment, a geolocation signal may be a global positioning system (GPS) signal. For example, network agent <NUM> may determine GPS data for the position of streaming media device <NUM> using any well known process or technology, and may receive GPS data from one or more mobile device <NUM> (e.g., in response <NUM>) indicating a location of the mobile device <NUM>. Network agent <NUM> may calculate a distance between the streaming media device <NUM> and the mobile device based on the differences in the GPS data. The calculated distance can be used to determine whether the location of mobile device is within a threshold vicinity <NUM> of streaming media device <NUM>.

In an embodiment, a geolocation signal may indicate a location of mobile device <NUM>, a location of mobile device <NUM> relative to streaming media device <NUM>, or a location of mobile device <NUM> within a building or other structure associated with streaming media device <NUM>. For example, network agent <NUM> may store data representing a map of different global positioning points that delineate different rooms of a house or building, including a location of streaming media device <NUM> as being globally located within one of the rooms. Then, for example, network agent <NUM> may compare a GPS received from mobile device <NUM> against the map to determine in which room mobile device <NUM> is located. If mobile device <NUM> is determined to be located in the one or more rooms defined by threshold vicinity <NUM>, the corresponding user settings <NUM> may be loaded.

In some embodiments, threshold vicinity <NUM> may be an indication of whether or not mobile device <NUM> is within a likely range of interaction with streaming media device <NUM>. In an embodiment, if a mobile device <NUM> is determined to be within threshold vicinity <NUM> of the streaming media device <NUM>, then user settings <NUM> for a corresponding, known, or likely user <NUM> of the detected mobile device <NUM> may be accessed and used by streaming media device <NUM> to customized its content and/or operation for that user <NUM>.

For example, with regard to geolocation signals, if the location of mobile device <NUM> is determined to be within a particular distance (e.g., radius) of streaming media device <NUM>, then the user <NUM> may be determined to be within the threshold vicinity <NUM> and thus interacting with streaming media device <NUM>. Then, for example, user settings <NUM> of the user <NUM> may be used to configure streaming media device <NUM>. In an embodiment, threshold vicinity <NUM> may indicate a distance from the streaming media device <NUM>, a relative location (e.g., whether or not mobile device <NUM> and streaming media device <NUM> are within the dwelling or same room of a dwelling), or a strength of signal. For example, a signal or connection (e.g., Bluetooth connection) between streaming media device <NUM> and mobile device <NUM> having a signal strength above a predefined threshold (as specified by the threshold vicinity <NUM>) may indicate the user <NUM> associated with the mobile device <NUM> is using the streaming media device <NUM>.

Based on the determination that a mobile device <NUM> is within threshold vicinity <NUM>, streaming media device <NUM> may determine which user <NUM> is associated with the device <NUM>. For example, a user <NUM> of mobile device <NUM> may have previously registered with streaming media device <NUM> or one or more applications operating on or in communication with streaming media device <NUM> (e.g., including an app on mobile device <NUM>) identifying the user <NUM>. Then, for example, based on the identification of mobile device <NUM> to be within threshold vicinity <NUM>, the corresponding user <NUM> may be identified as a user who is currently using streaming media device <NUM>, and the corresponding user settings <NUM> may be retrieved (e.g., from a memory, from a database, from the cloud, from content provider <NUM>, or from mobile device <NUM>). Or for example, mobile device <NUM> itself may have user settings <NUM> associated with it (e.g., based on a previous usage history by one or more users using the device <NUM>), which may not be specific to any particular user <NUM>.

In an embodiment, mobile device <NUM> may configure itself differently when it is within threshold vicinity <NUM> of streaming media device <NUM>, such that mobile device <NUM> is configured to operate or communicate with streaming media device <NUM>, including receiving or playing content from streaming media device <NUM>. For example, mobile device <NUM> may automatically launch an app operating on mobile device <NUM>, such that the app enables mobile device to communicate with streaming media device <NUM>. Such communications may include sending commands and receiving content. Or, for example, mobile device <NUM> may automatically mute a ringer, such that user <NUM> is not interrupted by a phone call while watching or consuming content via streaming media device <NUM>.

User settings <NUM> may include any settings associated with identifying content to be provided or recommended to users <NUM>, or how that content is to be delivered/provided to users <NUM> (e.g., via streaming media device <NUM>). In an embodiment, the identified user account information may be provided to content providers <NUM> or applications operating on streaming media device <NUM> to adjust which content is provided, made available, or otherwise suggested to user <NUM>. Or, for example, user settings <NUM> may indicate specific device preferences or settings such as volume, brightness, hue, or other device settings. Streaming media player <NUM> may then adjust its own settings or the settings of one or more networked devices based on user settings <NUM>. For example, streaming media device <NUM> may command a stereo to lower its volume, or command a monitor to enter theater mode.

<FIG> is a flowchart illustrating a process <NUM> for network based user identification, according to some embodiments. Method <NUM> can be performed by processing logic that can comprise hardware (e.g., circuitry, dedicated logic, programmable logic, microcode, etc.), software (e.g., instructions executing on a processing device), or a combination thereof. It is to be appreciated that not all steps may be needed to perform the disclosure provided herein. Further, some of the steps may be performed simultaneously, or in a different order than shown in <FIG>, as will be understood by a person of ordinary skill in the art. Method <NUM> shall be described with reference to <FIG>. However, method <NUM> is not limited to that example embodiment.

In <NUM>, a streaming media device transmits a signal via a network. For example, network agent <NUM> may transmit discovery signal <NUM> via network <NUM> to any mobile devices <NUM> that may be communicatively coupled to network <NUM>. Depending on the type of network connectivity, the characteristics of discovery signal <NUM> may vary. For example, a WiFi discovery signal <NUM> may be transmit in a first embodiment, while a Bluetooth beacon signal may be transmit in a second embodiment.

In <NUM>, a response to the discovery signal is received from a mobile device communicatively coupled to the network. For example, network agent <NUM> may receive a response from one or more mobile devices <NUM> indicating that they received the discovery signal <NUM>. In an embodiment, response <NUM> may indicate a location of mobile device <NUM> (either an absolute location, or a location relative to streaming media device <NUM>). For example, response <NUM> may include GPS functionality such that it transmits a global positioning signal (e.g., response <NUM>) indicating a location of mobile device <NUM>.

In <NUM>, based on the response of <NUM>, it is determined that the mobile device is within a threshold vicinity of the streaming media device. For example, network agent <NUM> in <NUM> may determine whether mobile device <NUM> is within threshold vicinity <NUM>, and may accordingly determine a likelihood of whether or not mobile device <NUM> (or user <NUM>) is interacting with streaming media device <NUM>. Threshold vicinity <NUM> may be any indicator of distance, time, or network connectivity that may be used to determine a likelihood of a user <NUM> (associated with a corresponding mobile device <NUM>) interacting with or consuming content from streaming media device <NUM>. For example, network agent <NUM> may determine whether the (global) position of mobile device <NUM> is within a range (e.g., radius) of positions indicated by threshold vicinity <NUM>).

Or, for example, if two mobile devices <NUM> were detected on network <NUM>. Network agent <NUM> may determine from which mobile device(s) <NUM> commands had been received. For example, if commands to operate streaming media device <NUM> were only received from a first mobile device within the previous <NUM> minutes (or other time frame), then only the user settings <NUM> corresponding to the first mobile device may be loaded.

In <NUM>, one or more user settings corresponding to the user are determined. For example, if in <NUM> mobile device <NUM> is determined with be within threshold vicinity <NUM>, then in <NUM> user settings <NUM> for that mobile device <NUM> or the user <NUM> associated with the mobile device <NUM> may be retrieved. If multiple mobile devices <NUM> are determined in <NUM> to meet threshold vicinity criteria <NUM>, then user settings <NUM> for one or more of those mobile devices <NUM> may be retrieved and used depending on the characteristics of the mobile devices <NUM>. For example, in some embodiments, different mobile devices <NUM> may have different priorities (for example, parents may be assigned higher priorities than children, and priorities may be different for different parts of the day). Accordingly, in such embodiments, the user settings <NUM> for the highest priority mobile device <NUM> may be retrieved in <NUM>. Or, for example, a union or intersection of user settings <NUM> may be used in different embodiments.

In <NUM>, the streaming media device is configured according to the user settings <NUM> retrieved in <NUM>. For example, the selection of content offered or recommended by streaming media device <NUM> may be adjusted based on the retrieved user settings <NUM>. Or, for example, characteristics of different devices may be configured based on the retrieved user settings <NUM>. Such characteristics may pertain to audio, video, and/or other multimedia controls, to name just few examples.

<FIG> is a block diagram of an interaction-based user identification system <NUM>, according to some embodiments. Some of the features of the system <NUM> may include features similar to those described above with respect to system <NUM> of <FIG>. For example, content <NUM> and output device <NUM> of <FIG> may correspond to content <NUM> and display device <NUM> of <FIG>, respectively.

A user identification processor (UIP) <NUM> may identify which user <NUM> is currently using mobile device <NUM>. Accordingly, if it is determined that the mobile device <NUM> is within a vicinity of the streaming media device <NUM> (using any embodiment described herein), then it can be assumed that the identified user <NUM> is currently using the streaming media device <NUM>. User settings <NUM> associated with the user <NUM> may then be accessed to customize the operation of streaming media device <NUM> for that user <NUM>.

Although UIP <NUM> is shown in <FIG> as being a standalone processor or device, in other embodiments UIP <NUM> may operate on mobile device <NUM>, on streaming media device <NUM>, or otherwise operate as an intermediary between mobile device <NUM> and streaming media device <NUM>. In another embodiment, the functionality of UIP <NUM> may be distributed across mobile device <NUM>, network <NUM>, and/or streaming media device <NUM>. In an embodiment, the functionality of UIP <NUM> and network agent <NUM> may be combined or integrated across one or more devices.

UIP <NUM> may identify which user <NUM> is holding or operating mobile device <NUM> based on the user <NUM>'s interaction <NUM> with the mobile device <NUM>. Mobile device <NUM> may be a laptop, remote control, mobile phone, tablet, or other mobile computing device. Interaction <NUM> may be any user interaction or action with mobile device <NUM>. This may include for example, holding mobile device <NUM>, pressing one or more buttons or activating apps on mobile device <NUM> (which may or may not be commands for streaming media device <NUM>), voice commands, readings from one or more sensors, etc. Based on the interaction(s) <NUM>, UIP <NUM> may determine a user identification (ID) <NUM> corresponding to a user <NUM> or likely user <NUM> of mobile device <NUM>. The user ID <NUM> may then be used to retrieve user settings <NUM> to customize the operation of streaming media device <NUM>.

As just noted, mobile device <NUM> (e.g., remote control) or UIP <NUM> may be equipped with one or more sensors used to identify which user <NUM> is operating or handling the mobile device <NUM>. In an embodiment, mobile device <NUM> may include one or more pressure sensors that may be used to identify a particular user based on the pressure used to grasp or operate (e.g., push one or more buttons) on remote device <NUM>. For example, between two users of mobile device <NUM>, one may press buttons on mobile device <NUM> with greater or a different (distinguishable) force than the other user. Thus, even without a specific profile set up, UIP <NUM> may identify which of several users <NUM> is operating mobile device <NUM> based on the relative pressure sensed. Similarly, the timing between button presses may be used to distinguish between different users <NUM>. For example, one user may be more prone to switch channels rapidly, while another user may perform a similar action at a different or distinguishable speed (e.g., more slowly).

In an embodiment, interaction <NUM> may be a voice command issued by user <NUM>. For example, UIP <NUM> may be enabled or configured to identify user <NUM> based on previous voice commands or phrases spoken by user <NUM>. In an embodiment, user <NUM> may speak a number of different phases that enable or train UIP <NUM> to identify the user's voice. For example, UIP <NUM> may prompt user <NUM> to speak different words or phrases, and analyze the voice responses to set up a digital profile of a user's voiceprint. That voiceprint may then be used to identify user <NUM>.

In some embodiments, mobile device <NUM> may have a microphone that may detect sounds, including the user's voice. UIP <NUM> may receive the detected sounds of the microphone, and identify one or more users <NUM> who may be present. In an embodiment, voice samples collected from and/or voiceprint determined of the user <NUM> may be stored in the cloud or other memory. For example, UIP <NUM> may store or have access to a database or other storage of previously collected and identified user voice samples. Sounds collected from microphone may then be compared against the identified samples to determine which users <NUM> may be present. In an embodiment, different users may be identified by different user IDs <NUM>. In an embodiment, UIP <NUM> may prompt user <NUM> to confirm the identification or may otherwise notify the user <NUM> of the identification before, during, or after configuration of streaming media device <NUM> based on corresponding user settings <NUM>. Or, for example, the microphone may periodically "listen" for sounds/voices to transmit to UIP <NUM> for identification.

In another embodiment, UIP <NUM> may not have or need pre-stored or preconfigured voice samples to identify or distinguish amongst different users <NUM>. For example, in a particular household, two users may use mobile device <NUM>. Using voice recognition technology, UIP <NUM> may be able to distinguish between the voices based on various audio characteristics (e.g., bass, tone, pitch) of two or more users. For example, the voices of a man and a woman, or two men, or three women may all register differently. Even without a preconfigured identity to match to the voice, a profile or bin may be set up for each characteristic voice detected. For example, the viewing habits of the person with the deep voice may be monitored and stored in their profile. The same may be done for the person with the higher pitched voice.

Then, for example, UIP <NUM> may identify the users as being the one with the deep voice or the one with the high pitch. Based on which user was identified, recommended or associated programming or advertisements may be provided to the user based on the user's corresponding profile information. This may be performed with or without specifically requiring each user to set up a voice profile. For example, through monitoring and machine learning, UIP <NUM> may determine how many users are using the system, and create distinguishing profiles for the users based on the monitored voice samples.

In an embodiment, UIP <NUM> may identify voices of multiple users <NUM> with corresponding user IDs <NUM>. UIP <NUM> may then determine that (a) the voice with the strongest voice signal is the user ID <NUM> which is used for user settings <NUM>, (b) user settings <NUM> for all the detected users should be retrieved and used, or (c) the user settings <NUM> for a user ID <NUM> with a highest priority is retrieved and used. Interaction <NUM> may be a voice command issued to operate streaming media device <NUM> or a particular user identification phrase. In an embodiment, UIP <NUM> may continuously or periodically "listen" for voices using a microphone of mobile device <NUM> and may dynamically adjust user settings <NUM> as different users <NUM> are identified.

In another embodiment, different mobile devices <NUM> may correspond to different users <NUM>. For example, different users <NUM> may each have their own designed remote control or mobile phone. Then, for example, interaction <NUM> may be a command issued (e.g., through a button press) to streaming media device <NUM>. With the command, mobile device <NUM> may transmit a mobile device code or user identifier code that is received by UIP <NUM> and used to identify user ID <NUM>.

In an embodiment, UIP <NUM> may occasionally or periodically broadcast or prompt any mobile devices <NUM> within a network range of streaming media device <NUM> to respond with their respective codes. Then, for example, based on which codes are received, UIP <NUM> may identify the users <NUM> who are likely to be watching television or otherwise consuming content from streaming media device <NUM> and may configure streaming media device <NUM> with the appropriate and corresponding user settings <NUM>.

In an embodiment, interaction <NUM> may include biometric information determined by sensor <NUM>. Sensor <NUM> may be a biometric scanner or sensor used to determine various biometric features of user <NUM>. In an embodiment, sensor <NUM> may be a face or fingerprint scanner connected to mobile device <NUM>. From the scanned biometric information, UIP <NUM> may identify a corresponding user ID <NUM> and load the corresponding user settings <NUM> for the identified user <NUM>. Or, for example, mobile device <NUM> may include different buttons or key combinations corresponding to different users <NUM>. Then, for example, when a user <NUM> begins interacting with mobile device <NUM> to control streaming media device <NUM>, the user <NUM> may select or enter the corresponding user identification button or key combination on mobile device <NUM>. UIP <NUM> may receive the corresponding user code for the selected button or key combination and may identify the corresponding user ID <NUM> and/or user settings <NUM>.

In an embodiment, sensor <NUM> may be a capacitance sensor with a capacitive sensing capability. For example, capacitance sensor <NUM> may be able to measure fluid displacement based on how a user <NUM> is handling or holding mobile device <NUM> (which may be a remote control). Based on the fluid displacement or other capacitance changes, sensor <NUM> or UIP <NUM> may be able determine or estimate a hand size of the user or detect which user(s) <NUM> are likely to be handling mobile device <NUM>. This determination may be made, at least in part, based on a previous usage and identification of user <NUM> during which mobile device <NUM> detected similar capacitance changes. In an embodiment, sensor <NUM> may be an accelerometer used to identify user based on how user <NUM> is handling mobile device.

In an embodiment, a combination of sensors <NUM> may be used to identify user <NUM>. For example, a microphone or voice sensor may be used with a thermal indicator that may determine the temperature of the hand holding the mobile device <NUM>. Then, based on one or more of the sensors <NUM>, UIP <NUM> may identify the user <NUM>. For example, a first registered user <NUM> may generally have colder hands than a second registered user <NUM>; then, based on the thermal indicator, UIP <NUM> may identify the corresponding user <NUM>.

Based on which user(s) <NUM> or user ID(s) <NUM> were identified by UIP <NUM>, streaming media device <NUM> may retrieve the corresponding user settings <NUM> for the identified user <NUM> or combination of users <NUM>. As previously described, user settings <NUM> may be used to select which content <NUM> to make available or recommend to the identified user <NUM>.

Or, for example, user settings <NUM> may be used to configure one or more output devices <NUM>. Output device <NUM> may include a computer, television, stereo, or other video, audio, or multimedia equipment. Also, in an embodiment, control of output device <NUM> may include controlling the lighting of a room, which may vary based on different user settings <NUM> or preferences as to how they prefer to watch television or movies (e.g., in low light or with an abundance of light). For example, a first user <NUM> may prefer to watch movies in low light and television shows in bright light, while a second user <NUM> may prefer to experience all content in medium light.

As noted above, in an embodiment, the functionality of UIP <NUM> and network agent <NUM> may be combined. Accordingly, for example, a system may use multiple, alternative, or a combination of both networked-based and user interaction-based techniques to identify users <NUM> in a room who may be operating or consuming content from a streaming media or other device <NUM>. Based on this user identification, an enhanced user experience may be configured for the user(s) <NUM> based on the corresponding user settings <NUM>.

<FIG> is a flowchart <NUM> illustrating a process for network based user identification, according to some embodiments. Method <NUM> can be performed by processing logic that can comprise hardware (e.g., circuitry, dedicated logic, programmable logic, microcode, etc.), software (e.g., instructions executing on a processing device), or a combination thereof. It is to be appreciated that not all steps may be needed to perform the disclosure provided herein. Further, some of the steps may be performed simultaneously, or in a different order than shown in <FIG>, as will be understood by a person of ordinary skill in the art. Method <NUM> shall be described with reference to <FIG>. However, method <NUM> is not limited to that example embodiment.

In <NUM>, an interaction from a user is received from a mobile device. For example, user <NUM> may issue a command by pressing a button or a voice command to streaming media device <NUM> using mobile device <NUM>. The received command represents interaction <NUM>. Or, for example, mobile device <NUM> may receive sensor input from a sensor <NUM> such as a temperature gauge, capacitance change, fingerprint, or face scanner as interaction <NUM>. In another embodiment, user <NUM> may activate an interaction sensor <NUM> on mobile device <NUM>, after which mobile device <NUM> or UIP <NUM> receives or prompts users <NUM> for interaction <NUM>.

In <NUM>, an identity of the user is determined based on the interaction <NUM>. For example, UIP <NUM> may compare interaction <NUM> to stored information about previous interactions <NUM> across one or more devices <NUM> by one or more users <NUM> to determine a match between interaction <NUM> and stored interactions <NUM>. For example, a voice command or sample from user <NUM> may be compared to previously received and stored voice samples or a voiceprint, which may be used to identify user <NUM>.

In <NUM>, user settings <NUM> corresponding to the identified user <NUM> are retrieved. For example, UIP <NUM>, streaming media device <NUM>, and/or mobile device <NUM> may identify and retrieve user settings <NUM> corresponding to user ID <NUM>. User settings <NUM> may correspond to settings for mobile device <NUM>, streaming media device <NUM>, content <NUM>, and/or output device <NUM>, for example.

In <NUM>, the retrieved user settings are used to configure streaming media device <NUM> and/or other devices, such as output device <NUM>. In an embodiment, the user settings <NUM> may be retrieved by mobile device <NUM> and provided to an application operating on mobile device <NUM>, which may then communicate the user settings to one or more of streaming media device <NUM> or output device <NUM>. Or, for example, user settings <NUM> or user ID <NUM> may be provided to content provider <NUM>, such that content provider <NUM> may provide the appropriate or corresponding content <NUM> to streaming media device <NUM> corresponding to the identified user ID <NUM>.

<FIG> is a flowchart illustrating another process for network based user identification, according to some embodiments. Method <NUM> can be performed by processing logic that can comprise hardware (e.g., circuitry, dedicated logic, programmable logic, microcode, etc.), software (e.g., instructions executing on a processing device), or a combination thereof. It is to be appreciated that not all steps may be needed to perform the disclosure provided herein. Further, some of the steps may be performed simultaneously, or in a different order than shown in <FIG>, as will be understood by a person of ordinary skill in the art. Method <NUM> shall be described with reference to <FIG>. However, method <NUM> is not limited to that example embodiment.

In <NUM>, an interaction between a user and a mobile device is received. For example, sensor <NUM> may determine an interaction by and/or biometric reading of user <NUM>. In an embodiment, sensor <NUM> may determine or receive interaction <NUM> after notifying or prompting the user <NUM> for interaction <NUM>. In another embodiment, sensor <NUM> may determine interaction <NUM> through normal operation of mobile device <NUM> by user <NUM> without a particular notification or prompt that interaction <NUM> is being determined or detected.

In <NUM>, an identification of a user of a mobile device based on an interaction <NUM> between the user and the mobile device is determined. For example, UIP <NUM> may receive interaction or sensor reading from sensor <NUM>. UIP <NUM> may then compare the sensor reading to previously determined sensor readings that have been determined to be associated with particular users. Based on a comparison of the received sensor readings to the stored previously-identified sensor readings, UIP <NUM> may determine an identity of user <NUM> as user ID <NUM>.

In <NUM>, user settings <NUM> corresponding to the identified user <NUM> are retrieved. For example, streaming media device <NUM> may retrieve from local storage or receive (e.g., over network <NUM>) or from one or more other devices user settings <NUM> corresponding to user ID <NUM>. In <NUM>, the retrieved user settings are used to configure streaming media device <NUM> and/or other devices, such as output device <NUM>. Steps <NUM> and <NUM> are similar to steps <NUM> and <NUM> of <FIG>.

The ability to identify the user <NUM> who is using the media device <NUM>, <NUM> (using any of the embodiments described herein) enables a multitude of functionality customized to the user <NUM>. As described above, such customization includes selecting content to make available or recommend to the user <NUM>, and/or adjusting the presentation of such content according to the preferences of the user <NUM>. Some embodiments provide other customized functionality as shall now be described.

As shown in <FIG>, in some embodiments, storage module (database) <NUM> of the media device <NUM>, <NUM> may store information associated with one or more user accounts <NUM>, wherein each user account <NUM> corresponds to a user <NUM> or a group of users. Each user account <NUM> may include one or more preferences <NUM>, such as time limit(s) <NUM> and/or content restriction(s) <NUM>. In some embodiments, the time limits <NUM> specify the amount of time the user <NUM> associated with the user account <NUM> is allowed to use components of system <NUM> such as the media device <NUM>, the display device <NUM>, etc. For example, adult users may have an unlimited amount of time, whereas a child user may have a limited amount of time.

In some embodiments, the content restriction(s) <NUM> may restrict the type of content the user <NUM> associated with the user account <NUM> is allowed to display using the media device <NUM>. For example, adult users may have no content restrictions, whereas a child user may be restricted from displaying PG13, R, NR and/or X rated content.

It is noted that the content restrictions <NUM> are not be limited to content ratings. Instead, in some embodiments, content restrictions <NUM> may be based on type of content, particular movies and/or TV shows, actors, themes, time periods, locations, languages, free or fee based, political, etc., or any combination thereof.

In some embodiments, an administrator (such as a parent) may set the values of the time limits <NUM> and content restrictions <NUM>.

The storage module <NUM> may include a time limit and content restriction module <NUM>. The time limit and content restriction module <NUM> may represent control logic (such as software) that, when executed by one or more processors of the media device <NUM>, <NUM>, cause the media device <NUM>, <NUM> to enforce the time limits <NUM> and/or content restrictions <NUM> associated with the user who has been identified as using the media device <NUM>, <NUM>.

<FIG> is a method <NUM> for enforcing time limits and content restrictions for a user identified as using a media streaming media device <NUM>, <NUM>, according to some embodiments. Method <NUM> can be performed by processing logic that can comprise hardware (e.g., circuitry, dedicated logic, programmable logic, microcode, etc.), software (e.g., instructions executing on a processing media device <NUM>, <NUM>), or a combination thereof. It is to be appreciated that not all steps may be needed to perform the disclosure provided herein. Further, some of the steps may be performed simultaneously, or in a different order than shown in <FIG>, as will be understood by a person of ordinary skill in the art. Method <NUM> shall be described with reference to <FIG> and <FIG>. However, method <NUM> is not limited to that example embodiment.

In <NUM>, an administrator may set time limits and/or content restrictions for users who will be using the media device <NUM>, <NUM>. For example, using remote control <NUM>, the administrator may access the user accounts <NUM> for any or all of the users of the media device <NUM>, <NUM>, and set the time limits <NUM> and/or content restrictions <NUM> for those users.

In <NUM>, the media device <NUM>, <NUM> may identify the user who is accessing the media device <NUM>, <NUM>, using any of the embodiments described herein.

In <NUM>, the time limit and content restriction module <NUM> may cause the media device <NUM>, <NUM> to access the user account <NUM> of the identified user, and enforce the time limits <NUM> and content restrictions <NUM> stored therein against the identified user as he uses the media device <NUM>, <NUM>.

In some embodiments, step <NUM> may be performed according to method <NUM> shown in <FIG>. Method <NUM> can be performed by processing logic that can comprise hardware (e.g., circuitry, dedicated logic, programmable logic, microcode, etc.), software (e.g., instructions executing on a processing media device <NUM>, <NUM>), or a combination thereof. It is to be appreciated that not all steps may be needed to perform the disclosure provided herein. Further, some of the steps may be performed simultaneously, or in a different order than shown in <FIG>, as will be understood by a person of ordinary skill in the art. Method <NUM> shall be described with reference to <FIG> and <FIG>. However, method <NUM> is not limited to that example embodiment.

In <NUM>, the time limit and content restriction module <NUM> may cause the media device <NUM>, <NUM> to determine if the user <NUM> is accessing restricted content as specified by the content restrictions <NUM> of the user account <NUM> associated with the user <NUM>. For example, in <NUM>, when the user <NUM> attempts to use the media device <NUM>, <NUM> to access content, the media device <NUM>, <NUM> may determine the rating of the content. The media device <NUM>, <NUM> may determine the rating by accessing metadata <NUM> associated with the content <NUM>, or searching the Internet (or other sources) for the rating of the content. Then, the media device <NUM>, <NUM> may compare the rating of the requested content with the user's content restrictions <NUM>, to determine if the user <NUM> is attempting to access restricted content. If the user <NUM> is attempting to access restricted content, then <NUM> is performed. Otherwise <NUM> is performed.

In <NUM>, the time limit and content restriction module <NUM> may cause the media device <NUM>, <NUM> to block the requested content. For example, in <NUM>, the media device <NUM>, <NUM> may not request the content from the content server <NUM> or display the content on the display device <NUM>.

In <NUM>, the time limit and content restriction module <NUM> may cause the media device <NUM>, <NUM> to notify the administrator of the user's request to access restricted content. For example, in <NUM>, the media device <NUM>, <NUM> may send an email or text to the administrator. In response, the administrator may instruct the media device <NUM>, <NUM> to waive the restrictions and allow the user <NUM> to access the requested content (for example, the administrator may text back ALLOW to the media device <NUM>, <NUM>).

If, in <NUM>, it is determined the user is not attempting to access restricted content, then <NUM> is performed. In <NUM>, the time limit and content restriction module <NUM> may cause the media device <NUM>, <NUM> to allow the requested content. For example, in <NUM>, the media device <NUM>, <NUM> may request the content from the content server <NUM>, and display the content on the display device <NUM> as the content is received from the content server <NUM> via the network <NUM>.

In <NUM>, the time limit and content restriction module <NUM> may cause the media device <NUM>, <NUM> to determine whether the user <NUM> has reached the time limits <NUM> specified in the user account <NUM> associated with the user. For example, the media device <NUM>, <NUM> may maintain a timer of the amount of time the user uses the media device <NUM>, <NUM>.

The time limits may be based on session, day, week, month, or any other time increment. The time limits may also include individual and/or group time limits. For example, the time limits <NUM> associated with the user may include a session time limit, a daily time limit, and a family time limit. If, in <NUM>, the media device <NUM>, <NUM> determines that any of those time limits have been exceeded, then <NUM> is performed, wherein the media device <NUM>, <NUM> limits the user's use of the media device <NUM>, <NUM>. For example, the media device <NUM>, <NUM> may discontinue responding to the user's commands using the remote control <NUM>, and/or may discontinue displaying the requested content on the display device <NUM>. Additionally or alternatively, the media device <NUM>, <NUM> may notify the administrator (via email or text). In response, the administrator may instruct the media device <NUM>, <NUM> to waive or increase the time limits <NUM> to allow the user <NUM> to continue to use the media device <NUM>, <NUM> (for example, the administrator may text back ALLOW to the media device <NUM>, <NUM>).

If, in <NUM>, the media device <NUM>, <NUM> determines that none of the time limits associated with the user have been exceeded, then <NUM> is performed wherein the media device <NUM>, <NUM> may allow the user to continue to use the media device <NUM>, <NUM>. For example, the media device <NUM>, <NUM> may continue to respond to the user's commands using the remote control <NUM>, and/or may continue to display the requested content on the display device <NUM>.

Various embodiments and/or components therein can be implemented, for example, using one or more computer systems, such as computer system <NUM> shown in <FIG>. Computer system <NUM> can be any computer or computing device capable of performing the functions described herein. For example, one or more computer systems <NUM> can be used to implement any embodiments of <FIG>, and/or any combination or sub-combination thereof.

One or more processors <NUM> can each be a graphics processing unit (GPU). In some embodiments, a GPU is a processor that is a specialized electronic circuit designed to process mathematically intensive applications. The GPU can have a parallel structure that is efficient for parallel processing of large blocks of data, such as mathematically intensive data common to computer graphics applications, images, videos, etc..

Computer system <NUM> also includes a main or primary memory <NUM>, such as random access memory (RAM). Main memory <NUM> can include one or more levels of cache. Main memory <NUM> has stored therein control logic (i.e., computer software) and/or data.

Computer system <NUM> can also include one or more secondary storage devices or memory <NUM>. Secondary memory <NUM> can include, for example, a hard disk drive <NUM> and/or a removable storage device or drive <NUM>. Removable storage drive <NUM> can be a floppy disk drive, a magnetic tape drive, a compact disk drive, an optical storage device, tape backup device, and/or any other storage device/drive.

Removable storage drive <NUM> can interact with a removable storage unit <NUM>. Removable storage unit <NUM> can be a floppy disk, magnetic tape, compact disk, DVD, optical storage disk, and/ any other computer data storage device.

According to an exemplary embodiment, secondary memory <NUM> can include other means, instrumentalities or other approaches for allowing computer programs and/or other instructions and/or data to be accessed by computer system <NUM>. Such means, instrumentalities or other approaches can include, for example, a removable storage unit <NUM> and an interface <NUM>. Examples of the removable storage unit <NUM> and the interface <NUM> can include a program cartridge and cartridge interface (such as that found in video game devices), a removable memory chip (such as an EPROM or PROM) and associated socket, a memory stick and USB port, a memory card and associated memory card slot, and/or any other removable storage unit and associated interface.

Computer system <NUM> can further include a communication or network interface <NUM>. For example, communication interface <NUM> can allow computer system <NUM> to communicate with remote devices <NUM> over communications path <NUM>, which can be wired and/or wireless, and which can include any combination of LANs, WANs, the Internet, etc. Control logic and/or data can be transmitted to and from computer system <NUM> via communication path <NUM>.

In some embodiments, a tangible apparatus or article of manufacture comprising a tangible computer useable or readable medium having control logic (software) stored thereon is also referred to herein as a computer program product or program storage device. This includes, but is not limited to, computer system <NUM>, main memory <NUM>, secondary memory <NUM>, and removable storage units <NUM> and <NUM>, as well as tangible articles of manufacture embodying any combination of the foregoing. Such control logic, when executed by one or more data processing devices (such as computer system <NUM>), causes such data processing devices to operate as described herein.

The Summary and Abstract sections can set forth one or more but not all exemplary embodiments as contemplated by the inventors, and thus, are not intended to limit this disclosure or the appended claims in any way.

While this disclosure describes exemplary embodiments for exemplary fields and applications, it should be understood that the disclosure is not limited thereto. Other embodiments and modifications thereto are possible, and are within the scope and spirit of this disclosure. For example, and without limiting the generality of this paragraph, embodiments are not limited to the software, hardware, firmware, and/or entities illustrated in the figures and/or described herein. Further, embodiments (whether or not explicitly described herein) have significant utility to fields and applications beyond the examples described herein.

Claim 1:
A method, comprising:
determining a media access control, MAC, address of each of a plurality of mobile devices (<NUM>) corresponding to a plurality of different users that have previously interacted with a streaming media device (<NUM>), wherein each of the plurality of users are identified with a different user ID corresponding to a respective mobile device (<NUM>);
transmitting, by the streaming media device (<NUM>), a first discovery signal over a network to the MAC addresses of the plurality of mobile devices (<NUM>) corresponding to the plurality of different users;
receiving, from a plurality of responding mobile devices (<NUM>), responses indicating a network address of each of the respective responding mobile devices (<NUM>), wherein a second discovery signal was transmitted after receiving a response by at least one of the plurality of responding mobile devices (<NUM>);
identifying which of the plurality of different users of the streaming media device (<NUM>) are within a vicinity of the streaming media device (<NUM>) based on the receiving responses indicating the network address;
determining user settings of the streaming media device (<NUM>) based on the identifying which of the plurality of different users are within the vicinity, wherein each of the user IDs of the plurality of different users is associated with one or more user settings; and
configuring the streaming media device (<NUM>) based on the determined user settings.