Sharing User Settings and Preferences Between Multiple Set-Top Boxes
A method for transferring DHCT settings includes receiving by a first digital home communication terminal (DHCT) a request for transmitting a DHCT setting from the first DHCT to a second DHCT, and transmitting the DHCT setting from the first DHCT to the second DHCT. Systems and other methods for transferring DHCT settings are also provided.
Latest Cisco Technology, Inc. Patents:
This application is a continuation of co-pending U.S. patent application Ser. No. 11/385,184, filed Mar. 20, 2006, now U.S. Pat. No. 8,695,041, issued Apr. 8, 2014, which is a continuation of U.S. patent application Ser. No. 10/372,182, filed Feb. 21, 2003, now abandoned, both of which are entirely incorporated herein by reference.
FIELD OF THE INVENTIONThis invention relates in general to television systems, and more particularly, to the field of television set-top terminals.
DESCRIPTION OF THE RELATED ARTSubscriber television systems are now capable of providing many services in addition to analog broadcast video. In implementing enhanced programming, the home communication terminal (“HCT”), otherwise known as a set-top box, has become an important computing device for accessing various video services. In addition to supporting traditional analog broadcast video functionality, digital HCTs (or “DHCTs”) now also support an increasing number of two-way digital services such as video-on-demand.
A DHCT is typically connected to a cable or satellite television network and includes hardware and software for providing various services and functionality. In some systems, software executed by a DHCT can be downloaded and/or updated via the subscriber television network. The ability to download software provides flexibility in adding or updating applications executed by the DHCT. Each DHCT also typically includes a processor, communication components, and memory, and is connected to a television. While many conventional DHCTs are stand-alone devices that are externally connected to a television, a DHCT and/or its functionality may be integrated into a television or other display device, as will be appreciated by those of ordinary skill in the art.
Many DHCTs are capable of providing a viewer with hundreds of channels. As a result, viewers may have so many viewing options that they often miss television programs that they had intended to watch. Some viewers may plan on recording future programs but forget to set their video cassette recorder timers. Others do not record their favorite programs because video cassette recorder timers often appear too tedious or difficult to set, especially when operating in conjunction with a cable television box. Some viewers who plan on watching a program may invoke an electronic reminder feature provided by a DHCT. However, this reminder feature may be ineffective if the viewer is outside the room in which the DHCT is located at the time that a reminder is provided by the DHCT. As a result, there is a need for systems and methods that address these and/or other problems associated with DHCTs.
The invention can be better understood with reference to the following drawings. The components in the drawings are not necessarily drawn to scale, emphasis instead being placed upon clearly illustrating the principles of the present invention. In the drawings, like reference numerals designate corresponding parts throughout the several views.
The preferred embodiments of the invention now will be described more fully hereinafter with reference to the accompanying drawings. In particular, preferred embodiments of managing user-defined settings in a subscriber television system will be described. Examples of user-defined settings include, among others, reminder messages (set with a user's input) that are scheduled by the user in order to remind the user of upcoming television programs. In one embodiment of the invention, a first digital home communication terminal (DHCT) receives user input requesting that a reminder be set for a desired television program and then transmits a reminder request to a second DHCT. The second DHCT may or may not be identified at the time that the reminder is set. The reminder request identifies the desired television program for which the reminder was requested. The second DHCT then provides the user at a future time with a reminder notice for the desired television program. Other embodiments of the invention are also described below.
In the description that follows,
A DHCT 200 receives signals (video, audio and/or other data) from the headend 300 through the network 130 and provides any reverse information to the headend 300 through the network 130. The network 130 may be any suitable means for communicating television services data and may be, for example, a cable television network or a satellite communication network. Upstream information may be carried through an auxiliary network such as, for example, a telephone network.
The headend 300 may include one or more server devices (not shown) for providing video, audio, and textual data to DHCTs 200. The headend 300 and each DHCT 200 cooperate to provide a user with television services via a television 140. The television services may include, for example, broadcast television services, cable television services, premium television services, video-on-demand (VOD) services, and/or pay-per-view (PPV) services.
Alternative implementations of the DHCT settings transfer system 100-1 are shown in
In the example of
The tuner system 225 tunes to a particular television service to be displayed via a television 140 and sends and receives various types of data to/from the headend 300. The tuner system 225 includes in one implementation, an out-of-band tuner for bi-directional quadrature phase shift keying (QPSK) data communication and an in-band quadrature amplitude modulation (QAM) tuner for receiving television signals and/or other in-band data. A receiver 226 receives user inputs that are provided via an input device such as, for example, among others, a transmitter with buttons located on the exterior of the terminal, a hand-held remote control device, or a keyboard.
A home network communications application (HNCA) 260 (
The system memory 230, which may include volatile and/or non-volatile memory, stores one or more programmed software applications (herein referred to as applications) containing instructions that may be executed by the processor 224 under the auspices of the operating system 231. Data required as input by an application is stored in memory 230 and read by processor 224 from memory 230 as need be during the course of the application's execution. Input data for an application may be data stored in memory 230 by a secondary application or other source, either internal or external to the DHCT 200, or may be data that was included with the application at the time that it was created. Data generated by an application is stored in memory 230 by processor 224 during the course of the application's execution. The availability, location, and amount of data generated by one application for consumption by another application is communicated between applications with the help of an operating system.
The format of the data generated by a first application running in a first DHCT 200-1 (
In one implementation, the Window Manager 245 maintains a user input registry 232 which is accessed to determine which of the various applications running on the DHCT 200 should receive a user input or a message and in what order. The Navigator 233 registers with the window manager 245 in order to receive user input commands that correspond to certain functions, such as, for example, channel up/down navigation and program guide initiation.
After the Navigator 233 is activated in response to a user input or a received message, it sends a query to the SAM 236 requesting information about a service. The received message may have been transmitted by a server at the headend 300 or by a second DHCT 200-2. When the SAM 236 receives a query from the Navigator 233, it accesses a service database 237 to inform the Navigator 233 about the existence and status of the requested service. The Navigator 233 can further query the SAM 236 to determine if the service is authorized for the DHCT 200 and, if so, can request the SAM 236 to activate the service. In response to a request for a service activation, the SAM 236 initiates a service activation message to the application that is identified in the service database as providing the desired service. As a non-limiting example, striking the “GUIDE” key 580 on the remote control device 500 (
The IPG application 238 displays a program guide to the user and populates the guide with information about television services. The IPG application 238 includes an IPG user interface module 239 that helps create an IPG screen for presentation to a user. The IPG user interface module 239 accesses configuration settings stored in an IPG configuration module 241 to implement an appropriate configuration for the IPG screen. The IPG configuration module 241 includes a configuration database 243 for storing a plurality of IPG configurations. The IPG user interface module 239 populates the IPG screen with information contained in an IPG database 240 which contains data files corresponding to a plurality of programs and services. For example, the IPG database 240 may include one or more database records per respective program and/or service available via the DHCT 200.
Based on the configuration information stored in the IPG configuration module 241, the IPG user interface module 239 utilizes the window manager 245 and other graphics utilities provided by the operating system 231 to render an IPG screen on a television 140. The window manager 245 is a component that, in one embodiment, is part of the platform 235, but in other embodiments may be part of the operating system 231. In addition to the user input registry mentioned previously, the window manager 245 contains functionality for allocating screen areas and managing screen use among multiple applications. The operating system 231 provides primitives to the IPG user interface module 239 in order to help render images on a television 140 (
As a screen is generated via a display device, the IPG user interface 239 registers with the window manager 245 for particular user input commands that may be required for selecting options provided by the newly-created screen. The IPG application 238 also contains a daemon application 246 that operates as a background process. The daemon application 246 receives IPG data files transmitted by the headend 300 and stores them in the IPG database 240 for utilization by the user interface 239.
When the DHCT 200 receives a message requesting a program reminder, the SAM 236 activates a background process of the timer manager 263 that associates data in the received message with one or more records in the IPG database 240. In another embodiment, a background process of the interactive program guide (IPG) application 238 associates the data in the received message with one or more records in the IPG database 240. Data in the received message may identify, for example, among others, a television program, a corresponding start time, and/or a corresponding duration.
One or more records in the IPG database 240 may be accessed while a background process associates data of a received message with records in the IPG database 240. Associations of message data with IPG records may be stored in system memory 230 as an identifiable subset of data belonging to either the timer manager 263 or to the IPG database 240.
The background process of the IPG application 238 may occur without the activation of the navigator 233 when the reminder message is received prior to the start time of the television program for which a reminder notice is to be implemented. The SAM 236 may cause the timer manager 263 to activate a timer that is responsive to the time specified by the received message, and to keep the timer active during the television program. Maintaining the timer active during the television program allows a reminder notice to be displayed when a viewer begins viewing a television 140 (
Applications executed by the resources of a DHCT 200 comprise executable instructions for implementing logical functions. The applications can be embodied in any computer-readable medium for use by or in connection with an instruction execution system. The instruction execution system may be, for example, a computer-based system, a processor-containing system, or any other system capable of executing instructions.
In the context of this document, a “computer-readable medium” can be any means that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device. The computer readable medium can be, for example, but is not limited to, an electronic, solid-state, magnetic, optical, electromagnetic, or semiconductor based medium, either internal to the DHCT 200 or externally connected to the DHCT 200 via one or more communication ports or network interfaces.
More specific examples (a non-exhaustive list) of a computer-readable medium include the following: an electrical connection having one or more wires, a portable computer diskette, a hard drive storage device, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM), an optical fiber, and a portable compact disc read-only memory (CDROM). Note that the computer-readable medium could even be paper or another suitable medium upon which the program is printed, as the program can be electronically captured, via for instance optical scanning of the paper or other medium, then compiled, interpreted or otherwise processed in a suitable manner if necessary, and then stored in a computer memory.
The DNCS 323 provides management, monitoring, and control of the network's elements and of the broadcast services provided to users. In one implementation, the DNCS 323 uses a data insertion multiplexer 329 and a quadrature amplitude modulation (QAM) modulator 330 to insert in-band broadcast file system (BFS) data or messages into an MPEG-2 transport stream that is broadcast and received via a DHCT's communication interface 222 and tuner system 225 (
A quadrature-phase-shift-keying (QPSK) modem 326 is responsible for transporting out-of-band IP (Internet protocol) datagram traffic between the headend 300 and a DHCT 200. Data from the QPSK modem 326 is routed by a headend router 327. The DNCS 323 can also insert out-of-band broadcast file system (BFS) data into a stream that is broadcast by the headend 300 and received by a DHCT 200 via its communication interface 222 and tuner system 225 (
A service application manager (SAM) server 325 is a server component of a client-server pair of components, with the client component being located at the DHCT 200. Together, the client-server SAM components provide a system in which the user can access services that are identified by an application to be executed and a parameter that is specific to that service. An example of an application is the Watch-TV application 262 (
Applications on both the headend 300 and a DHCT 200 can access the data stored in a broadcast file system (BFS) server 328 in a similar manner to a file system found in operating systems. The BFS server 328 and its counterpart, the BFS client 244 (
The local interface 410 can be, for example but not limited to, one or more buses or other wired or wireless connections. The local interface 410 may have additional elements, which are omitted for simplicity, such as controllers, buffers (caches), drivers, repeaters, and receivers, to enable communications. Further, the local interface may include address, control, and/or data connections to enable appropriate communications among the aforementioned components.
The processor 402 is a hardware device for executing software, particularly that stored in memory 404. The processor 402 can be any custom made or commercially available processor, a central processing unit (CPU), an auxiliary processor among several processors associated with the DHCT-settings server 400, a semiconductor-based microprocessor (in the form of a microchip or chip set), or generally any device for executing software instructions. The processor 402 may be one of a plurality of processors that implement a multiple processor server architecture. When the DHCT-settings server 400 is in operation, the processor 402 is configured to execute software stored within the memory 404, to communicate data to and from the memory 404, and to generally control operations of the DHCT-settings server 400 pursuant to the software.
The memory 404 can include any one or combination of read/write volatile memory elements (e.g., RAM, DRAM, SRAM, SDRAM, etc.) and nonvolatile memory elements. The non-volatile memory elements may include one or more read-write memory elements (e.g., a hard disk, a tape, and/or a DVD-RW) and/or read-only elements (e.g., ROM and/or CDROM). Moreover, the memory 404 may incorporate electronic, magnetic, optical, and/or other types of storage media. Note that the memory 404 can have a distributed architecture, where various components are situated remote from one another, but can be accessed by the processor 402.
The software in memory 404 may include one or more software programs, each of which comprises executable instructions for implementing logical functions. In the example of
The DSMA 412 may be used for receiving and storing DHCT settings from a first DHCT 200-1 and for transmitting the DHCT settings at a future time to the first DHCT 200-1 or to a second DHCT 200-2. The second DHCT 200-2 may be located at the same or different customer premises as the first DHCT 200-1. When the DSMA 412 is implemented in software, as is shown in
DHCT settings may be specified, transmitted and stored in a predetermined format. The DSMA 412 may store and organize a plurality of sets of DHCT settings in storage device 420 in a structured and organized way by using, for example, a database technology or an organized file system. Each set of DHCT settings may be specified by a plurality of data fields. In one example, some or all of the following information, among others, may be provided by respective data fields corresponding to a set of DHCT settings:
1. Identification of the data fields as corresponding to DHCT settings.
2. Whether settings are to be implemented or cancelled. For example, a “SET” indication causes settings to be implemented, whereas a “CANCEL” indication causes a prior setting to be cancelled (assuming it has not yet expired).
3. The identity of a first DHCT 200-1 that originated the DHCT settings. The DHCT 200-1 may be identified via, for example, its media access control (MAC) address.
4. The identity of a user that requested the DHCT settings.
5. The identity of a second DHCT 200-2 or a group of DHCTs entitled to receive the DHCT settings, if applicable.
6. When the settings originated (e.g., date and/or time).
7. When the DHCT settings expires (e.g., date and/or time).
8. The number of settings included in the set of DHCT settings.
9. Information regarding the accessibility of the DHCT settings, including one or more of the following:
i. The DHCT settings are transmittable only to the DHCT that originated the DHCT settings.
ii. The DHCT settings are transmittable to another DHCT.
iii. The DHCT settings are transmittable only to a DHCT located at the same customer premises.
iv. The DHCT settings are transmittable only to a DHCT with the same account registration
v. The DHCT settings are accessible from a non-DHCT device (e.g., a personal computer).
vi. The DHCT settings are accessible from a remote location (e.g., via the Internet).
vii. The DHCT settings are accessible with user authentication.
10. Information associated with one or more television programs or services. For example, some or all of the following information may be provided by respective data fields corresponding to a certain television program or service:
a. A title or identity of the program or service
b. A start time for the program
c. An end time for the program
d. A duration of the program
e. Actions to be taken in connection with the program or service
i. Providing a reminder in connection with the program or service
ii. Recording the program or service
iii. Blocking the program or service from being viewed
iv. Requiring parental authorization to view the program or service
The DSMA 412 stores a first set of DHCT settings received from a first DHCT 200 in storage device 420. For the purpose of transmitting a first set of DHCT settings over the out-of-band channel, the DSMA 412 reads the first set of DHCT settings from storage device 420 and writes it to memory 404. The processor 402 may then include the DHCT settings in a file that is to be transmitted using a broadcast file system (BFS). The processor 402 may also packetize the DHCT settings prior to their transmission over an in-band or out-of-band transmission channel. The DSMA 412 may impose predetermined limits relating to the DHCT settings that are stored in the storage device 420. These limits may include one or more of the following, among others:
1—A limit on the duration that the DHCT settings are stored in the storage device 420.
2—A limit on the number of sets of DHCT settings corresponding to a certain DHCT 200 that are stored in the storage device 420.
3—A limit on the overall number of programs and/or services for which DHCT settings corresponding to a certain DHCT 200 are stored in the storage device 420.
In an alternative embodiment, the DSMA 412 may be implemented in hardware using, for example, any or a combination of the following technologies which are each well known in the art: a discrete logic circuit(s) having logic gates for implementing logic functions upon data signals, an application specific integrated circuit (ASIC) having appropriate combinational logic gates, a programmable gate array(s) (PGA), a field programmable gate array (FPGA), etc.
A first DHCT 200-1 that originates a set of DHCT settings stored at the server 400 may later retrieve such DHCT settings. Therefore, the DHCT 200-1 may implement the DHCT settings at a future time without having to store such settings within the first DHCT 200-1. This feature enables the first DHCT 200-1 to provide certain functionality to users without the need for additional non-volatile memory within the DHCT 200-1 for storing the related settings. As a result, the first DHCT 200-1 may be manufactured at a lower cost.
The destination DHCTs 200 allowed to receive a set of DHCT settings generated by a first DHCT 200-1 may be constrained by the cable operator. For instance, a cable operator may allow only destination DHCTs 200 that are located within the same premise or that are under the same account registration to access such DHCT settings. Furthermore, a destination DHCT may be required to be located within the same network hub or cable headend network as the first DHCT 200-1 in order to receive DHCT settings generated by the first DHCT 200-1.
In one embodiment, a second DHCT 200-2 must be pre-authorized through user input to receive DHCT settings from a first DHCT 200-1. The pre-authorization may be accomplished, for example, by inputting the identification of the first DHCT 200-1 into the DHCT 200-2 (e.g., via a remote control device). A general settings application 264 running in DHCT 200-2 may be configured to allow a user to interactively enter the respective identification of one or more DHCTs 200 from which the second DHCT 200-2 may receive DHCT settings. Likewise, a first DHCT 200-1 may be pre-authorized through user input to transmit (directly or indirectly) DHCT settings to a second DHCT 200-2. The pre-authorization may be accomplished, for example, by inputting the identification of the second DHCT 200-2 into the DHCT 200-1.
The transfer of DHCT settings from a first DHCT 200-1 to a second DHCT 200-2 may either be performed at no extra charge to a user, or may be enabled in exchange for a fee. Furthermore, a user may be required to be in good standing with a cable operator (e.g., not in default on a bill payment) in order to be authorized to transmit or receive DHCT settings to/from another DHCT 200.
The function of the “A” key 571, the “B” key 572, and the “C” key 573 varies depending on the screen being presented to a user at the time of a key's activation. In one embodiment, the “A” key 571 can be used to access a browse-by list for requesting an IPG screen that contains a subset of listings corresponding to a selected browse-by category (e.g., comedy, drama, sports, etc.); the “B” key 572 can be used to request an IPG screen containing service listings for a user selected date; and the “C” key 573 can be used to request service listings corresponding to a current time and a currently tuned TV channel.
In one embodiment of the invention, the RCD 500 comprises a first key (not shown) that can be used to initiate retrieval of DHCT settings from another DHCT, and a second key (not shown) that can be used to initiate the transmission of DHCT settings to the headend 300 (
In an alternative embodiment of the invention, different and/or additional systems and methods for providing user input may be used including, for example, a remote control device having different keys and/or key layouts, a keyboard device, a mouse, a voice activated input system, a touch-screen display, etc. The invention described herein is not limited by the type of device used to provide user input.
With additional reference to
The top left portion of IPG screen 600 is a detailed focus area 610 that includes detailed television service information for a currently highlighted program listing which, in the current example, is the ABC News listing 620. The detailed service information may include channel number, service name, television program name, television program description, television program duration, and/or any episode information or rating.
A television program occupying the full TV screen before the user is presented with IPG screen 600 is displayed in a video area 630. Immediately below the video area 630 is an information banner 640 for displaying the television channel number to which the DHCT 200 is currently tuned (e.g., television channel 5), the current day and date (e.g., Thursday, January 17), and the current time (e.g., 5:00 p.m.).
An IPG grid 665 includes a program listing area 660, a time listing area 670, and a channel listing area 680. The program listing area 660 contains a listing of titles corresponding to television programs that are available for viewing during the time periods listed in the time listing area 670, and that are provided via respective television services identified in television channel listing area 680. The television channel listing area 680 includes a vertical list of television services organized sequentially from top to bottom by increasing television channel number (except for the lowest numbered television service which is typically listed immediately below the highest numbered television service). In one embodiment, the arrow keys 510 (
In an alternative embodiment, an IPG screen may have fewer, additional, or different components and may have a different layout. For example, an IPG screen might not include a detailed focus area 610, a video area 630, an information banner 640, and/or a bottom area 650.
If the user selects option 702, then the Future Program Options screen 700-1 disappears, and the user is presented with a television program that is currently available on the channel (e.g., channel 2) identified by option 702. If the user selects option 703, then the DHCT 200 is scheduled to output the desired television program during its scheduled broadcast time to a VCR. Furthermore, upon selection of option 703, the Future Program Options screen 700-1 disappears and the user is once again provided with the IPG screen 600 (
If the user selects option 704, then the DHCT 200, at a future time, presents the user with a reminder notice for reminding the user that the desired television program has begun or is about to begin. In one embodiment, the reminder may be in the form of a banner that is displayed at the bottom of the user's television screen and that informs the user of the title, start time, and channel number corresponding to the desired television program. Such a banner is preferably displayed a short time (e.g., five minutes) prior to the start time of the desired television program. In one embodiment, multiple reminders may be scheduled for a single television program.
Implementing a reminder setting may be performed by the timer manager 263 or by the IPG application 238 using data contained in the IPG database 240. A reminder setting may associate a timer with a program title (or other identifier), a corresponding start time, and a corresponding duration. Records in the IPG database 240 may be accessed while a timer is being associated with a television program identified in the IPG database 240. Reminder settings associating timers with IPG records may be stored in system memory 230 as an identifiable subset of data belonging to either the timer manager 263 or to the IPG database 240. Reminder settings may be readily identifiable for rapid retrieval and portability.
The SAM 236 may cause the timer manager 263 to activate a timer that is responsive to a time specified by a reminder setting, and to keep the timer active during the corresponding television program. Maintaining the timer active during the television program allows a reminder notice to be displayed when a viewer begins viewing a television 140 (
A user may select option 803 to schedule a reminder that is to be provided by a DHCT (e.g., DHCT 200-1) that is driving the television that the user is currently viewing. A user may alternatively select option 802 in order to schedule a reminder that is to be provided by another DHCT (e.g., DHCT 200-2) located remotely or at the customer premises (i.e., a DHCT that is not driving the television that the user is currently viewing). If the user desires that a reminder be provided at more than one location (e.g., via DHCT 200-1 and DHCT 200-2), then the user may select option 804 which results in a reminder being provided by a plurality of DHCTs located at the customer premises. Alternatively, the user may enter identification information for each respective DHCT 200 for which the user wishes to transmit the reminder or applicable information.
In this example, the parameters include a start time indication 1002, television channel indication 1004, and a day indication 1006. The start time indication 1002 and the day indication 1006 indicate the time and day, respectively, that a reminder is scheduled to be presented to a user. The television channel indication 1004 indicates the television channel that will provide the television program for which the reminder is scheduled. Once the parameters of a scheduled reminder are edited, the General Settings screen 1000 may be exited by activating the “A” key 571 on the RCD 500 (
Selecting option 1011 may, for example, result in the presentation of the General Settings screen 1000-1 shown in
One or more modes of transmission of a set of DHCT settings from a first DHCT 200-1 to a second DHCT 200-2 may be available in a cable network, including, for example, one or more of the following, among others:
1. DHCT settings may be uploaded by a first DHCT 200-1 to a remote server, and then downloaded by a second DHCT 200-2 from the remote server. As a non-limiting example, the DHCT settings may be transmitted to the DHCT settings server 400 (
2. DHCT settings may be transmitted from a first DHCT 200-1 to a second DHCT 200-2. The address used for transmitting the DHCT settings to the second DHCT 200-2 may be, for example, a media access control (MAC) address. Prior to receiving DHCT settings from the DHCT 200-1, the second DHCT 200-2 may be enabled to receive such settings through user input. DHCT settings that are received from a non-authorized DHCT 200 may be filtered out or otherwise not received by the DHCT 200-2. Once the DHCT 200-2 is enabled to receive DHCT settings, further user input may not be required prior to the DHCT 200-2 receiving DHCT settings. In one implementation, when DHCT settings are received by the DHCT 200-2, they are forwarded to one or more application(s) that is/are responsible for implementing such DHCT settings. For example, the IPG application 238 (
3. DHCT settings stored in a first DHCT 200-1 may be retrieved by a second DHCT 200-2. The first DHCT 200-1 may be configured to enable retrieval of DHCT settings by the second DHCT 200-2. User authentication may be required to enable retrieval of DHCT settings. Once the first DHCT 200-1 is configured to allow retrieval of DHCT settings, a user may be able to retrieve DHCT settings using the second DHCT 200-2 without the need for providing additional user input to the first DHCT 200-1.
Note that DHCT settings that are communicated between DHCTs 200 may be stored or buffered at the headend 300. In one embodiment all DHCT settings that are communicated between DHCTs 200 are stored at the headend 300 to enable error recovery and/or to provide additional flexibility.
DHCT settings may be communicated between DHCTs 200 using a predetermined format. For example, DHCT settings generated by a first application residing at a first DHCT 200-1 may be communicated to a second application residing at a second DHCT 200-2 using a standardized format. This standardized format enables the second application to interpret and implement the DHCT settings, even if the second application is a different type of application than the first application.
In one embodiment, the second DHCT 200-2 executes an application that searches the IPG database 240 (
Once a reminder request is received by a DHCT, a reminder notice for the desired television program is scheduled and is subsequently presented to a user via a television. The reminder notice may be in the form of text message that is displayed on a television screen indicating that a desired television program is scheduled to start at a certain time and at a certain TV channel. In an alternative embodiment, a DHCT may automatically transmit a reminder request to one or more other DHCTs after receiving a first user input (block 1101) requesting a reminder notice for a television program.
In response to receiving the user input, the DHCT 200-1 transmits (as indicated in block 1202) the DHCT setting to the DHCT 200-2, where it may be stored in a DHCT settings database 261 (
After the second DHCT 200-2 receives the reminder message, it provides a user with a reminder notice for the television program. The reminder may include or may be based on data contained in the reminder message that is received from the server 400. The reminder may be in the form of text message that is displayed on a television screen indicating that a desired television program is scheduled to start at a certain time and/or on a certain TV channel.
After the DHCT settings are received by the server 400, they may be stored in a DHCT settings database 412 (
Any blocks or steps shown in
It should be emphasized that the above-described embodiments of the present invention, particularly any “preferred embodiments”, are merely possible examples, among others, of the implementations, setting forth a clear understanding of the principles of the invention. Many variations and modifications may be made to the above-described embodiments of the invention without departing substantially from the principles of the invention. All such modifications and variations are intended to be included herein within the scope of the disclosure and present invention and protected by the following claims. In addition, the scope of the present invention includes embodying the functionality of the preferred embodiments of the present invention in logic embodied in hardware and/or software-configured mediums.
Claims
1. A method comprising:
- receiving user input by a first set-top box (STB) a request for transmitting a STB setting from the first STB to a second STB;
- authenticating that the STB settings of the second STB are accessible by the user; and
- transmitting the STB setting from the first STB to the second STB responsive to receiving the request.
2. The method of claim 1, further comprising: transmitting the STB setting to a server device.
3. The method of claim 2, further comprising: storing the STB setting at the server device.
4. The method of claim 1, further comprising:
- receiving by the first STB a request for canceling the STB setting at a second STB; and
- transmitting from the first STB to the second STB a request for canceling the STB setting.
5. The method of claim 1, further comprising:
- prior to receiving the request for transmitting the STB setting, receiving by the first STB a request for implementing the STB setting.
6. The method of claim 1, wherein the STB setting is configured to cause a STB to provide a reminder to record a television program.
7. The method of claim 1, wherein the STB setting is configured to cause a STB to record a television program.
8. The method of claim 1, wherein the STB setting is configured to cause a STB to block a television program.
9. A method comprising:
- receiving by a first set-top box (STB) a first user input requesting a reminder notice for a television program;
- authenticating that settings relating to the reminder notice of a second STB are accessible by the user; and
- transmitting a reminder message from the first STB to a second STB, the reminder message configured to cause the second STB to provide the reminder notice for the television program.
10. The method of claim 9, wherein transmitting the reminder notice is responsive to a retrieval operation initiated by the second STB.
11. The method of claim 9, wherein transmitting the reminder notice is responsive to receiving by the first STB a second user input requesting that the reminder notice be transmitted to the second STB.
12. The method of claim 9, further comprising:
- receiving the reminder message at the second STB; and
- providing by the second STB a reminder notice for the television program.
13. The method of claim 12, further comprising:
- receiving the television program by the second STB from a headend; and
- providing the television program to a user by the second STB.
14. The method of claim 12, wherein the television program and the reminder notice are provided via a television.
15. A method comprising:
- retrieving by a second set-top box (STB) a STB setting that is generated at a first STB; and
- providing by the second STB a function that is responsive to the STB setting, upon authentication that the STB setting of the second STB is accessible to the user.
16. The method of claim 15, wherein the STB setting identifies a television program for which a reminder notice is desired.
17. The method of claim 16, wherein the function includes providing a user with a reminder notice that informs the user that a certain television program will be broadcast at a certain time.
18. The method of claim 15, wherein the STB setting identifies a favorite television channel.
19. The method of claim 15, wherein the function includes providing a user with a list of favorite television channels.
20. The method of claim 15, further comprising:
- receiving user input by the first STB requesting that the STB setting be implemented.
Type: Application
Filed: Apr 8, 2014
Publication Date: Aug 7, 2014
Applicant: Cisco Technology, Inc. (San Jose, CA)
Inventors: Anthony J. Wasilewski (Alpharetta, GA), Arturo A. Rodriguez (Norcross, GA)
Application Number: 14/247,471
International Classification: H04N 21/45 (20060101); H04N 21/454 (20060101); H04N 21/472 (20060101);