# US 7,792,920 B2 · Network-accessible control of one or more media devices

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 7,792,920 B2
- Document ID: US7792920B2
- Status: Granted
- Kind: B2
- Application number: 11/120,656
- Filed: 2005-05-02
- Published: 2006-04-20
- Granted: 2010-09-07
- Earliest claimed: 2004-04-30
- Assignees: Vulcan Inc.
- Inventors: Anthony F. Istvan; Rod G. Fleck; Robin Budd; Korina J. B. Stark; Marcellino Tanumihardja
- Web page: https://patentgrep.com/patent/US7792920B2

## CPC

- H04N 21/4112: {having fewer capabilities than the client, e.g. thin client having less processing power or no tuning capabilities}
- H04L 67/02: based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L 69/18: Multiprotocol handlers, e.g. single devices capable of handling multiple protocols
- H04N 5/765: Interface circuits between an apparatus for recording and another apparatus
- H04N 5/782: on tape
- H04N 7/163: {by receiver means only}
- H04N 7/173: with two-way working, e.g. subscriber sending a programme selection signal
- H04N 21/41265: {having a remote control device for bidirectional communication between the remote control device and client device (unidirectional remote control device H04N21/42204)}
- H04N 21/4131: {home appliance, e.g. lighting, air conditioning system, metering devices (home automation data switching networks exchanging configuration information on appliance services H04L12/2807)}
- H04N 21/42204: {User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor (constructive details of casings for the remote control device H01H9/0235; user interfaces for controlling a tuning device of a television receiver through a remote control H03J9/00; remote control of peripheral devices connected to a television receiver through the remote control device of the television receiver H04B1/205)}
- H04N 21/4227: {Providing} Remote input by a user located remotely from the client device, e.g. at work
- H04N 21/43615: {Interfacing a Home Network, e.g. for connecting the client to a plurality of peripherals (home Audio Video Interoperability [HAVI] data switching networks H04L12/2805)}
- H04N 21/4381: {Recovering the multiplex stream from a specific network, e.g. recovering MPEG packets from ATM cells (transmission of MPEG streams over ATM H04L12/5601)}
- H04N 21/4433: {Implementing client middleware, e.g. Multimedia Home Platform [MHP]}
- H04N 21/4622: {Retrieving content or additional data from different sources, e.g. from a broadcast channel and the Internet (web site content organization and management for information retrieval from the Internet G06F16/958; transmission by internet of broadcast information H04H60/82; stock exchange data over packet-switching network H04L12/1804; push services including data channel over packet-switching network H04L12/1859)}
- H04N 21/47202: {for requesting content on demand, e.g. video on demand}
- H04N 21/478: Supplemental services, e.g. displaying phone caller identification, shopping application
- H04N 21/482: End-user interface for programme selection
- H04N 21/4828: {for searching programme descriptors (retrieval of video data G06F16/739)}
- H04N 21/4858: {for modifying screen layout parameters, e.g. fonts, size of the windows}
- H04N 21/64707: {for transferring content from a first network to a second network, e.g. between IP and wireless}
- H04N 21/84: Generation or processing of descriptive data, e.g. content descriptors {(systems specially adapted for using meta-information in broadcast systems H04H60/73)}
- H04N 21/4316: {for displaying supplemental content in a region of the screen, e.g. an advertisement in a separate window}
- H04N 21/47: End-user applications
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A content management (CM) system is provided to centrally control operation of one or more connected devices by issuing control requests and/or data requests. In some situations the connected device(s) include devices that control presentation of television programming-related content, such as digital video recorder (“DVR”) devices and media center devices, and in other situations may include other types of media devices and/or other electromechanical (“E/M”) devices that may be centrally controlled, such as E/M devices for home automation that may operate independently or in conjunction with the media devices. In some situations, the CM system communicates with the connected devices via a network and using appropriate protocol(s), and may be accessed remotely via a network so as to allow a user to remotely operate the CM system. The CM system may further control searching, identification, selection, and presentation of pieces of media content by the connected device(s).

## Claims

### Claim 1

A remotely accessible computing system having a processor and memory configured to control multiple types of networked devices, the computing system comprising:
a management system configured to communicatively couple to the networked devices, the management system including:
a core module to centrally generate control requests and data requests related to operation of the networked devices; and
multiple gateway modules to facilitate communication between the core module and the networked devices, wherein each of the gateway modules corresponds to a different type of networked device and includes a communication interface that corresponds to that type of networked device, wherein each of the gateway modules is associated with at least one networked device of the type to which gateway module corresponds, and wherein each of the gateway modules is in communication with the core module to:
receive the control requests and data requests from the core module,
provide via the communication interface the control requests and the data requests to at least one of the associated networked devices,
receive via the communication interface responses to the control requests and the data requests from at least one of the associated networked devices,
provide the responses to the control requests and the data requests to the core module,
suppress on-screen display of messages on the associated network devices,
receive via the communication interface messages from at least one of the associated network devices, and
provide the received messages to the core module to display the messages on a graphical user interface of the computing system in lieu of the suppressed on-screen display of the messages,
wherein the core module and the multiple gateway modules are implemented as computer-executable instructions stored in the memory and executed by the processor.

### Claim 2 (depends on 1)

The computing system of claim 1 wherein the management system further includes a remoting layer to support communication with the core module, and
wherein the computing system further comprises:
a Web server configured to communicate with the core module through the remoting layer, the Web server including:
a Web application to provide a graphical user interface that is remotely accessible by a remote device through a network, the graphical user interface further being able to present at least some of the responses to the control requests and data requests as provided by the core module to the Web application through the remoting layer; and
a Web service to communicate with a Web service gateway module of the remote device, the Web service being accessible by the Web service gateway module to allow user commands entered through the graphical user interface to be communicated to the core module through the remoting layer.

### Claim 3 (depends on 2)

The computing system of claim 2 wherein the graphical user interface is usable by the remote device to instruct the core module to generate the control requests and the data requests.

### Claim 4 (depends on 1)

The computing system of claim 1 wherein the management system is extensible such that additional gateway modules that correspond to one or more additional types of networked devices may be added to the management system for use with networked devices of those additional types.

### Claim 5 (depends on 1)

The computing system of claim 1 wherein a state of each of the networked devices is maintained at that networked device and wherein the management system does not maintain information about the states of the networked devices.

### Claim 6 (depends on 1)

The computing system of claim 1 wherein the control requests include a first request for at least one of the networked devices to search at least one media server for media available for presentation,
wherein the data requests include a second request for at least one of the networked devices to provide data indicative of a result of the search, and
wherein the management system further includes a graphical user interface that can be used to instruct the core module to generate the control requests and the data requests, and that can further be used to receive from the core module for presentation at least some of the responses to the control requests and the data requests received from the networked devices, including presentation of at least some of the data provided by at least one networked device in response to the second request, that is indicative of the result of the search.

### Claim 7

A method for a computing device to control multiple types of media devices, the method comprising:
establishing a first connection between the computing device and a first type of media device via a first gateway module, wherein the first connection is established on at least one communication network using a first communication protocol;
generating a first control request that instructs the first type of media device to perform a first search of at least one media server for available media, and sending the first control request from the computing device to the first type of media device via the first gateway module;
generating a first data request that requests results of the first search for available media, and sending the first data request from the computing device to the first type of media device via the first gateway module;
receiving the requested results of the first search from the first type of media device via the first gateway module;
establishing a second connection between the computing device and a second type of media device via a second gateway module, wherein the second connection is established on at least one communication network using a second communication protocol;
generating a second control request that instructs the second type of media device to search at least one media server for available media, and sending the second control request from the computing device to the second type of media device via the second gateway module;
generating a second data request that requests results of the second search for available media, and sending the second data request from the computing device to the second type of media device via the second gateway module;
receiving the requested results of the second search from the second type of media device via the second gateway module;
presenting at least some of the received results of the first search and at least some results of the second search on a graphical user interface in a manner that at least one piece of available media represented in the results of the first search or the results of the second search can be selected for presentation;
receiving via the graphical user interface a selection of at least one piece of available media from the presented results;
generating a third control request that selects a type of media device for presentation of the selected piece of available media and instructs the selected type of media device to initiate presentation of the selected piece of available media, and sending the third control request from the computing device to the selected type of media device via an associated gateway module;
suppressing on-screen display of messages on the first, second, and selected types of media devices;
receiving the messages from the first, second, and selected types of media devices via the first, second, and associated gateway modules, respectively; and
displaying at least some of the messages on the graphical user interface in lieu of the suppressed on-screen display of the messages.

### Claim 8 (depends on 7)

The method of claim 7, wherein the first type of media device is a content presentation device for presenting television or displayable content,
wherein the second type of media device is a content presentation device of a different type than the first type of media device, and
wherein the method further comprises:
establishing a fourth connection between the computing device and one or more electromechanical devices via a fourth gateway module, wherein the fourth connection is established on at least one communication network using a smart home communication protocol, and wherein the one or more electromechanical devices include at least one of a lighting system, an HVAC system, a security system, automated drapes, automated wall panels, a telephone, or an appliance, and wherein the one or more electromechanical devices do not include a content presentation device;
generating a fourth control request to operate at least one of the one or more electromechanical devices, wherein the fourth control request is generated based on previously defined associations made by a user via the graphical user interface, and wherein each of the associations correlates presentation of the selected piece of available media with operation of at least one of the one or more electromechanical devices.

### Claim 9 (depends on 7)

The method of claim 7 further comprising, after the sending of the first control request from the computing device to the first type of media device, receiving an indication of a new gateway module that corresponds to a new type of media device, and using the new gateway module to send a control request to an additional media device of the new type.

### Claim 10 (depends on 7)

The method of claim 7 wherein the sending of the first control request from the computing device to the first type of media device includes using at least one application program interface of the first type of media device that exposes at least one service of the first type of media device that is available for use in controlling television or displayable content.

### Claim 11 (depends on 7)

The method of claim 7 wherein the at least one communication network on which the first connection is established includes a local area network for the home environment, and
wherein the method further comprises:
after the sending of the first control request from the computing device to the first type of media device, identifying a new media device of the first type that has become available on the local area network and dynamically establishing a connection between the computing device and the new media device, so as to allow an automatic determination of capabilities of the new media device or to allow one or more control requests to be sent to the new media device from the computing device.
