Abstract:
A system and method comprises a primary remote control device and one or more secondary remote control devices. The primary remote device communicates directly with a set top tuner device to control programming between the tuner and the remote in the multiple remote system. The primary remote can communicate with the tuner and secondary remotes through local area or wide area networks. This system decentralizes control of actual broadcast or recorded program away from a set-top tuner box, to a portable decentralized electronic device such as a specialized remote control. With this system, a user can retrieve programming information without the need to be in close proximity to the tuner box. Each person has his/her own remote controller that may be used to access content permitted for that user. To prevent any user from accessing another user&#39;s remote controller along with private data or personal profile, strict access control would be implemented.

Description:
FIELD OF THE INVENTION 
       [0001]    This invention relates to a method and system for remote-to-remote communications and in particular to a method and system for communications between remotes, granting or denying access of said remotes access to desired content and for communicating between a remote device and a tuner device via an intermediary remote device. 
       BACKGROUND OF THE INVENTION 
       [0002]    The remote control device is an integral part of our society. A typical remote control device uses an infrared beam transmitted from the device to a tuner box incorporated in or located in close proximity to a tuner device. This beam containing tuning information is received at tuner and adjustments in the form of channel selection are made based on this received information. This type of data transmission is a point-to-point transmission. As a result of this type of transmission, and the stationary nature of the tuner, these data transmission must occur in the general proximity of the tuner device. Typically, people customize or control broadcast/cable/satellite/etc programming and viewer preferences by changing settings on a set-top box (tuner box) or equivalent built in TV module. Additionally with the set-top boxes as mentioned, there is only one point of entry or control, preventing multiple users from simultaneously modifying profiles or preferences. 
         [0003]    There is a need for a method and system that can decentralize the programming activities such that the user is not required to be in the general proximity of the set top box. 
         [0004]    Some efforts are currently underway to enhance the capabilities of a remote control device. Acoustic Research claims a remote with built-in WiFi capabilities. The built in WI-Fi technology allows the user to use their connection to get the latest weather reports, sports scores, headlines and what&#39;s playing on their favorite channels right to the color LCD display on the remote control. An Electronic Program Guide is automatically updated through the remote&#39;s wireless Wi-Fi connection, enabling the family to continue watching TV while searching the on-remote screen for optional cable, satellite or analog or digital broadcast programming choices. With individual customization capabilities, the viewer can select “All Channels”, “My Channels,” “My Shows” or sort the guide to display HDTV movies, family or sports programming. Another convenience option is the ability to view program details and set “reminders” for select program times. The viewer is provided with updates through the Wi-Fi connection of national headline news, sports, weather information and program guide listings based on a user&#39;s postal ZIP codes. 
         [0005]    There are offerings on the market such as the miniLCD 2-way RF Handheld Remote by Crestron®, with the intended ability to control multiple devices and in addition offers bidirectional communication between the remote and devices. Some known art offers a user the ability to connect directly to a service provider via a remote with the option of direct content delivery. However, there are no provisions for remote-remote content sharing or access control. 
       SUMMARY OF THE INVENTION 
       [0006]    Embodiments of the present invention describe a method and system that provides communications between multiple remote control devices. These communications facilitate the sharing of data between the remote control devices and a system through which users control access to information. 
         [0007]    The system of this invention comprises a primary remote control device and one or more secondary remote control devices. In one application, the primary remote control device can communicate directly with a set top tuner device to control programming between the tuner and the multiple remote control device system, regardless of the physical location of each remote control device. The primary remote controller has the capability to store information about each secondary remote in the system. The primary remote can communicate with the tuner and secondary remotes through local area or wide area networks. This system of the present invention decentralizes control of an actual broadcast or recorded program away from a set-top tuner box, to a portable decentralized electronic device such as a specialized remote control device. With this system, a user could retrieve programming information without the need to be in close proximity to the tuner box. In one embodiment of this system, the primary remote controller may incorporate some of the functionality of a set-top tuner box that would not be incorporated into the secondary remote controllers. In this system each user has his/her own remote controller that may be used to access information permitted for that particular user. To prevent a user from accessing another user&#39;s remote controller along with private data or personal profile, strict access control can be implemented, such as but not limited to biometrics. 
         [0008]    Embodiments of the present invention also disclose a method to manage and control TV viewing habits from a portable device, namely the primary remote controller. A user having a secondary remote device could interact with this enhanced primary remote via signal transmissions using a touch screen display. The remote assumes that a network exists where remote controllers may communicate with each other as well as with a service provider. Each profile in a group consisting of a primary remote and secondary remotes is stored in the primary remote or is otherwise accessible to the primary remote over a wireless network. A distinct user in this system has a unique profile associated with the remote that user will operate. In an embodiment, whenever there is an access attempt by the secondary remote, the primary remote or other device storing the profile of this secondary remote, detects this access attempt via a wireless network. At this point, a determination is made as to whether the user making the access attempt is permitted to tune to the attempted channel. If the access attempt is to a permitted channel, the tuner receives the access request and tunes to the desired channel or retrieves programming information for that channel. 
         [0009]    Another embodiment of the present invention provides for direct communication and information exchange between remotes, both primary and secondary. In this method the user of the secondary remote can initiate changes to its user profile or request access to channels or content that are otherwise restricted. The primary remote, or more accurately the authorized user of the primary remote, may grant or deny such a request by a user of a secondary remote in either an automated or manual fashion. 
     
    
     
       DESCRIPTION OF THE DRAWINGS 
         [0010]      FIG. 1  shows a network configuration of the present invention having a primary remote, secondary remotes and a set top tuner. 
           [0011]      FIG. 2  shows a network configuration of the present invention having a primary remote, secondary remotes, a set top tuner and a program service provider. 
           [0012]      FIG. 3  shows a configuration of a primary remote and multiple secondary remotes in which the remotes interface with each and exchange information with each other. 
           [0013]      FIG. 4  shows a network configuration of the present invention having a primary remote, secondary remotes and a set top tuner and another secondary remote from a different local area network communicating with the primary remote and/or the set top tuner of the different local area network. 
           [0014]      FIG. 5  shows a configuration of the present invention comprising a primary remote, multiple secondary remotes and interfaces with various devices including television tuners, local service providers and computing devices with access to wide computing networks. 
           [0015]      FIGS. 6   a  and  6   b  show configurations for the storage of user profile information in the primary remote control device. 
           [0016]      FIG. 7  shows the configuration of data for a channel request submitted by a secondary remote controller. 
           [0017]      FIG. 8  is a flow diagram of an embodiment of the method of the present invention that evaluates an access attempt by a secondary remote to programming. 
           [0018]      FIG. 9  is a flow diagram of an embodiment of the method of the present invention that evaluates an access attempt by a secondary remote from one local network to programming on a set top tuner device from a different local area network. 
           [0019]      FIG. 10  is a flow diagram of an embodiment of the method of the present invention that evaluates communications between a primary remote and a secondary remote. 
           [0020]      FIG. 11  is a flow diagram of an embodiment of the method of the present invention that tracks and records viewing information of various users using information from the primary and secondary remote controllers. 
       
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
       [0021]    The present invention contains embodiments that describe a method and system for decentralizing tuning activities using multiple wireless remote control devices.  FIG. 1  shows an embodiment of the system of the present invention comprising a primary remote controller  102 , secondary remote controllers  104 ,  106  and  108  and a set top tuner  110 . The primary controller can be equipped with the conventional capabilities of the remote controller and can also have some of the features of a set top tuner  110 . These features could include the ability to restrict access to certain channels on the tuner by the secondary remote controllers. The primary remote controller also has storage capabilities for profiles of users using the remotes. The primary controller, secondary controllers and the set top tuner box will all have network access capabilities that will enable the devices to communicate with each via a wireless network. These network capabilities eliminate the need for the direct point-to-point communication currently implemented with infrared or other line of sight type of signals. The remotes can have a screen  112  that allows users to view programming information they are entitled to, without disturbing the content of a television program. This feature is especially useful when the person desiring the programming information is not in front of the set top tuner and display apparatus—television set—or if someone else is currently watching a television program. 
         [0022]    A secondary remote controller  104  is equipped with the capabilities to access any channel available on the tuner  110 . However, the actual channels to which a secondary controller will be permitted access are determined by the content of the user profile for that particular secondary remote that is stored in the primary remote. The secondary controller has the capability to communicate with the primary remote and the tuner box. This controller can request and retrieve information from the primary controller or the tuner box. Retrieved information is displayed on a screen  114  contained on the secondary controller device. 
         [0023]    The set top tuner device  110  contains all of the convention capabilities of a tuner. This device can be programmed to restrict access to certain channels identified by an authorized user. This tuner can also communicate via a local or wide network with a service provider or with an ad hoc collection of primary and secondary remote controllers. The tuner device  110  can contain verification software that may be enacted when a secondary remote controller attempts to interface with the tuner. 
         [0024]      FIG. 2  shows an embodiment of the present invention in which a programming service provider  120  is part of the network. This service provider is like a centralized communication hub that receives and distributes programming to subscribers in a particular area. The inclusion of this service provider expands the local area network. Further, an embodiment of the present invention can provide for some communications between the primary remote controller device  102  and the programming service provider device  120 . 
         [0025]      FIG. 3  shows a configuration of a primary remote  102  and multiple secondary remote controllers  104 ,  106  and  108  in which the remotes interface with each and exchange information with each other. In this configuration, a secondary remote controller can communicate information to the primary remote or to another secondary remote. One application of this communication is exemplified when a user assigned a secondary remote controller submits a request to the primary remote controller to modify the access restrictions currently on that particular primary remote controller. Because of the networking communication capabilities, the primary and secondary remotes can exchange information over the communication network. In addition, other types of communication exchanges can occur such as requesting information from the primary remote controller and another secondary controller with regard to a particular program. 
         [0026]      FIG. 4  shows a network configuration of the present invention having a primary remote, secondary remotes and a set top tuner and another secondary remote from a different local area network communicating with the primary remote and/or the set top tuner of the different local area network. This configuration of the present invention requires that both network configurations for the first and second sets of remote controller devices have the same service providers. When all remote controllers regardless of household or local network have the same service provider, it is possible for a secondary remote controller  404  from another location to attempt to access programming at a different location. If this type of access attempt occurs, the primary remote controller  402  for the second network can still detect the access attempt and determine whether that particular remote controller  402  can access a desired channel. In a situation when the primary remote for that local network does not detect the access attempt, the tuner  410  for the second local network can detect the access attempt and determine whether to allow or deny the access attempt. 
         [0027]      FIG. 5  shows an embodiment of the system of the present invention comprising a primary remote  502 , multiple secondary remotes  504 ,  506  and  508  and interfaces with various devices including television tuners  510  and  512 , local service providers  514  and computing devices  516  with access to wide computing networks. This configuration provides the capability to access programming via tuner and the capability to access information via a computing network such as the Internet. The system of this configuration functions in a similar manner to the other described embodiments. However, in addition to restricting access to channels on a tuner related to television programming, the embodiment also has the capability to restrict access to identified URL addresses for websites. As shown, the network access point  518  such as a “WiFi” provides the means for the various system components to communicate with each other. In addition, there can also be direct communications as shown in  FIG. 5 , between each remote controller, or between remotes controllers and a service provider or between remote controllers and computers  516 . Each remote controller can also communicate with other remote controllers via a WiFi contact point. 
         [0028]    As mentioned, there is a user profile for each person that will use one of the secondary remotes. Each secondary remote controller will require a user profile.  FIGS. 6   a  and  6   b  show configurations for the storage of user profile information in the primary remote control device. In a user profile, shown is a field  602  that identifies the specific secondary remote controller device. A second field  604  identifies a specific local network for that remote. The local network could be the household of a particular subscriber. This approach is similar to some satellite companies that have the ability to track the number of receivers assigned to one subscriber. The identities could be assigned by a service provider or could be originated by the subscriber. When originated by the subscriber, the remote controller identities could be transmitted to the primary remote controller and to the tuner device and even to the service provider. The other information stored in the user profile is the set of restricted channels. These channels can indicate the channels to which the user of the particular secondary remote has access. However, the conventional approach is that this list of channels is the restricted channel list to which the user does not have access. The ability to restrict channel access based on individual secondary remote controllers is in stark contrast to the generally accepted approach of programming the tuner box to block certain channels. In the conventional application, the blocked channels are blocked for all users, not particular users. With this invention, it is possible to implement individual user viewing restrictions. In this profile, the fields  606  contain the channels to which the user does not have access. Once these restricted channels are programmed into the primary remote, if the user of the secondary remote with the targeted profile attempts to access one of the restricted channels in that profile, the tuner will not respond to that access attempt.  FIG. 6   b  shows a user profile in which a block of consecutive channels can be designated. In this example, channels 50 through 65 are all designated as restricted channels. In addition, if letters ‘XYZ’ designates a channel, the present invention can use the call letters and determine the corresponding channel for those letters. In this example, if the corresponding channel number for ‘XYZ’ is 200, the present invention will identify the channel number. 
         [0029]      FIG. 7  shows a record containing data for a channel request made by a secondary remote controller. The information contained in a transmitted request includes the identification of the remote controller, the local network of the remote controller and the desired or requested channel. The record in  FIG. 7   a  indicates fields  702 ,  704  and  706  for this information. In the embodiments of the present invention, each remote controller both primary and secondary can have a unique identification. In  FIG. 7   b,  the remote identification field  702  is designated with the identity “Beta I”. The local network field contains the designation “DLW008”. These two fields  702  and  704  can be preset with these identities stored in the service provider server. When information is transmitted from a remote controller, the recipient of the transmission can identify the remote and network. As will be shown in  FIG. 9 , the information with regard to the network identity will be useful in determining the status of a channel request. 
         [0030]      FIG. 8  is a flow diagram of an embodiment of the method of the present invention that evaluates an access attempt by a secondary remote to programming. In this method, there is a configuration of the local network in which there will usually be a set top receiver device, a primary and multiple secondary remote control devices. This local network is mainly a typical single-family household. In the initial step,  800 , there is a determination of the number of secondary devices in the local network. Generally, there will be only one primary remote controller device in a local network. After the determination of the number of secondary remote controller devices, in step  802 , there is a creation of a user profile for each secondary device. The profile for a secondary remote controller will comprise the specific identification of the secondary remote controller  402  and a list of restricted channels or a list of accessible channels for that remote control device. The restriction may mean that the set of channels programmed in for a specific remote, can be channels that said remote is allowed to access. In the alternative, the restriction could also be the set of channels that the particular remote controller is prohibited from accessing. In step  804 , the created profiles for each secondary remote are stored in the primary remote and optionally in the local tuner device  410 . Alternatively the profiles for each remote can be replicated or stored on the service provider&#39;s servers  514 , for later retrieval. 
         [0031]    The method at this point goes into a monitoring state. In step  806 , the method detects an attempt to access a channel via the local tuner. This request detection initially occurs at the primary remote controller  402 . This access request is channeled through the primary remote controller device  402 . The information in the channel access request can be in the form of a record as discussed in  FIG. 7 . With the information contained in this record, step  808  determines the identity of the secondary remote making the channel access request. Once the identity of the secondary remote making the request is known, this method can access the profile for that remote controller. Step  810  identifies the target channel of the access request. From the remote controller identity, the remote profile and the target channel, step  812  determines whether that particular secondary remote is authorized to access that target channel. This access determination can be done by attempting to match the target channel with channels listed in the remote profile shown in  FIG. 6 . The channel matching will depend on what types of channels are in the profile. As mentioned, the profile can contain the allowed channels that a remote can access or the channels that the remote is prohibited from accessing. In one scenario, when the profile contains prohibited channels, if the target channel matches a channel in the profile the method moves to step  814  which denies the access attempt of the secondary remote controller. In a different scenario, when the allowed channels are in the profile, if the target channel does not match a channel in the profile, the method will deny the access attempt in step  814 . With either scenario, if the determination is that access to the target channel is allowed, the method moves to step  816 , which allows access. At this point, the primary remote can allow the transmission of the request to pass to the tuner and the change in channel can occur at the tuner. 
         [0032]    When multiple local networks have the same service provider, it is possible for remotes from different local networks or households to communicate with each other.  FIG. 9  describes the process that evaluates an access attempt by a secondary remote from one local network to programming on a set top tuner device from a different local area network. This method helps ensure that users of secondary remote controllers cannot circumvent restrictions for that specific remote controller by accessing programming information through a different local network. 
         [0033]    In this method, step  900  stores a user profile for a secondary remote controller for that local network. As with the other embodiments, this profile contains channels to which the user can access or channels for which the user has prohibited access. If the user traveled to a different household having the same programming service, that user could possibly gain access to any programming provided by that service. When the user of the remote from the first network attempts to access a channel on the second network, step  902  detects the access attempt. This detection can occur at the primary remote controller of the second network or the tuner of the second network. Step  904  identifies the secondary remote. This identification step will occur at the device that detects the access attempt. The preferred approach is to have the primary remote for the second network detect and process the access attempt. If that device is not available, then the tuner for the second network can process the access attempt. With either device, the next step  906  is to determine whether that secondary remote is part of the local network. This determination can be accomplished by identifying the network identity that is contained in the access information. As previously mentioned, when a secondary remote transmits a request, the transmission contains the identity of the network of which the secondary remote is a part. When the determination is that the secondary remote is part of the local network where the request is made, the method moves to step  908  and proceeds to identify the target channel of the access attempt. The target channel is also contained in the information transmission of the access request. Once the requested channel has been identified, step  910  determines whether the user of the secondary remote has permission to access that requested channel. In this step, the user profile for that remote is searched in the same manner as in step  812 . If the search attempt results in the requested channel not being permitted, then the method moves to step  912 , which denies the access attempt. If the determination is that the secondary remote controller making the access attempt does have permission to access the requested channel, the method moves to step  918 , which allows access to the channel. 
         [0034]    Referring back to step  906 , if the determination is that the secondary remote making the access request is not part of the particular local network where the request is made, step  914  identifies the local network of the remote making the request. Again, this identification is made from information contained in the network identity field  704  of the transmission request. Once the secondary remote making the request and its&#39; local network has been identified, step  916  accesses the user profile for that remote. This user profile information can be stored in the server of the service provider. The method then moves to step  908  and proceeds to identify the target channel of the access attempt. Once the requested channel has been identified, step  910  determines whether the user of the secondary remote has permission to access that requested channel. In this step, the user profile for that remote is searched in the same manner as in step  814 . If the search attempt results in the requested channel not being permitted, then the method moves to step  912 , which denies the access attempt. If the determination is that the secondary remote controller making the access attempt does have permission to access the requested channel, the method moves to step  918 , which allows access to the channel. This access can be allowed even when the secondary remote making the request is from a different local network. In other embodiments, there can prohibitions procedures in place to prevent such an access attempt when the attempt is from a remote controller that is not part of that local network. 
         [0035]    Another embodiment of the present invention enables the primary remote and secondary remotes in a local network to communicate with each other. These types of communications between remotes usually occur when a secondary remote requests a change to the user profile of the secondary remote.  FIG. 10  illustrates a flow diagram of an embodiment of the method of the present invention that evaluates communications between a primary remote and a secondary remote. Step  1000  detects an access attempt by a secondary remote controller. This access attempt will be slightly different from a standard access attempt. In this access attempt, the user desires not only to access a channel, but the have the profile for that user changed such that the desired channel will be accessible. This access attempt by the secondary remote goes to the primary remote to seek approval to access a channel. In the regular access attempt process, the access attempt is submitted with the intent of immediately making a channel change and not getting approval from the primary remote. Step  1002  determines the identity of the secondary remote making the request. From this information, the method in the primary remote can retrieve the user profile for that remote control device. Step  1004  identifies the target of the request and the access attempt request by the secondary remote. This information tells the primary remote that this access attempt is really a specific request to access a channel that is not currently accessible by the secondary remote user. Step  1006  notifies the primary remote user of the access request. The notification will include the remote controller identity and the requested channel. In step  1008 , the user of the primary remote controller can determine whether or not to allow the access request. When the user denies the access request, the method moves to step  1010 , which denies the access request. At this point, the method terminates. 
         [0036]    If in step  1008 , the channel request is approved, the method moves to step  1012 , which determines whether this access request is a one-time request or if it is a permanent request. In some situations, it may be desirable to grant temporary access to a secondary remote controller. In other situations, it may be desirable for the secondary user to have permanent access to a channel. For example, a new channel may become available from the service provider. This new channel may be acceptable to the primary remote control user. When the request is acceptable, step  1014  grants access to the channel. The secondary user making the request can now change the tuner to that channel for that secondary remote. To enact this change, the primary remote can make the change for the user of the secondary remote that made the request. Step  1016  determines whether the request is for a temporary change or a permanent change. The request could be for the purpose of watching a specific program on that channel one time. However, the request could also be to have access to that channel for an extended period of time. If channel request is more long term or permanent, it would be necessary to change the user profile for the user of that remote. Step  1018  updates the user profile to reflect a long-term change. 
         [0037]    Another embodiment of the present invention shown in  FIG. 11  illustrates a flow diagram of a method that tracks and records viewing information of various users using information from the primary and secondary remote controllers. This viewing information can be used to determine the viewership for various television programs. In this method, step  1100  detects a target access attempt at the primary controller. This step is similar to the detection of an access attempt in the other described embodiments of this invention. The access attempt can be either from the primary remote or from one of the secondary remotes. Step  1102  identifies the remote device that is making the access attempt. The target channel on the access attempt is then verified in step  1104 . This verification process includes determining whether the remote making the access attempt has the right to access the target channel. As with the other embodiments of this invention, when the remote device does not have the right to access the target channel, access is denied and the process terminates. 
         [0038]    Referring again to step  1104 , when the determination is that the remote device does have the right to access the target channel, in step  1106 , the tuner box tunes to the target channel. At this point, in step  1108 , information related to the tuning of tuner box to the target channel is recorded. The recording can be either in the tuner box or in the primary remote. The initial recorded information is the start time that the tuner switched to the target channel. In one embodiment, the viewer will have to watch a television program for a minimum period of time for the information on that program to be recorded. This minimum period of time or threshold time could be set by the user or could match the parameters currently used to determine what percent of time one has to watch a program to meet the requirement for a watched program. To determine the time threshold, step  1110  starts a timer when the target channel is accessed. Step  1112  detects a program or tuner event. This event could be the end of a program, a change in channels at the tuner or turning off the tuner. When an event is detected, step  1114  makes a determination of whether the counter has reached the threshold time. If the elapsed time has reached the threshold time, step  1116  records the channel and time in a storage location. This information could be stored in the tuner box or transmitted to the service provider server. If the elapsed time has reached the threshold time, the timer information is discarded and the method returns to a monitor state in step  1118 . 
         [0039]    It is important to note that while the present invention has been described in the context of a fully functioning data processing and television programming system, those skilled in the art will appreciate that the processes of the present invention are capable of being distributed in the form of instructions in a computer readable medium and a variety of other forms, regardless of the particular type of medium used to carry out the distribution. Examples of computer readable media include media such as EPROM, ROM, tape floppy disc, hard disk drive, RAM, and CD-ROMs.