BRPI0500008B1 - Method executed by a client and system configured to communicate with a device and a distribution server - Google Patents

Method executed by a client and system configured to communicate with a device and a distribution server Download PDF

Info

Publication number
BRPI0500008B1
BRPI0500008B1 BRPI0500008-4A BRPI0500008A BRPI0500008B1 BR PI0500008 B1 BRPI0500008 B1 BR PI0500008B1 BR PI0500008 A BRPI0500008 A BR PI0500008A BR PI0500008 B1 BRPI0500008 B1 BR PI0500008B1
Authority
BR
Brazil
Prior art keywords
client
distribution server
request
control function
user interface
Prior art date
Application number
BRPI0500008-4A
Other languages
English (en)
Inventor
T. Barrett Peter
Original Assignee
Microsoft Technology Licensing, Llc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Technology Licensing, Llc filed Critical Microsoft Technology Licensing, Llc
Publication of BRPI0500008A publication Critical patent/BRPI0500008A/pt
Publication of BRPI0500008B1 publication Critical patent/BRPI0500008B1/pt

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements

Abstract

"configuração de interfaces de usuário". é descrita uma configuração de interfaces de usuário. em uma implementação, um método inclui receber uma consulta de um dispositivo. a consulta é para uma interface de usuário (ui) proveniente de um cliente. a ui, quando executada pelo dispositivo, é configurada para formar uma solicitação para execução de uma função de controle pelo cliente. um processamento da solicitação determina se é permitida a execução da função de controle pelo cliente. o processamento é realizado em um terminal principal utilizando-se dados do estado do cliente. as capacidades de hardware e/ou suporte lógico do dispositivo para executar a ui são detectadas. a ui é configurada como base nas capacidades de hardware e/ou suporte lógico do dispositivo.

Description

Relatório Descritivo da Patente de Invenção para "MÉTODO EXECUTADO POR UM CLIENTE E SISTEMA CONFIGURADO PARA COMUNICAR COM UM DISPOSITIVO E UM SERVIDOR DE DISTRIBUIÇÃO".
CAMPO TÉCNICO
[001] A presente invenção diz respeito no geral ao campo de interfaces de usuário e, em particular, a configuração de Interfaces de usuário.
ANTECEDENTES DA INVENÇÃO
[002] Usuários de clientes, tais como aparelhos decodificadores de televisão, telefones sem fio, computadores e assim por diante são continuamente expostos a uma variedade de conteúdos cada vez maior. Um usuário de um aparelho decodíficador de televisão, por exemplo, pode ver programação de televisão tradicional obtida de uma rede de transmissão para exibir em uma televisão, bem como cinemas pagos, vídeo sob demanda (VOD), jogos de vídeo interativos e assim por diante. Similarmente, um usuário de um telefone sem fio pode fazer e receber chamadas telefônicas tradicionais, bem como ler correio eletrônico, programar encontros, tocar música digital e assim por diante.
[003] Conforme mostrado nos exemplos anteriores, as capacidades fornecidas pelos clientes também continuaram aumentar para direcionar os esforços para variedades de conteúdo cada vez maiores. Por exemplo, um usuário pode ser capaz de receber correio eletrônico em um computador, bem como em um aparelho decodíficador de televisão, um assistente digital pessoal e um telefone sem fio. Mesmo que as capacidades de clientes e redes que acoplam de forma comunicativa os clientes tenham melhorado, uma variedade de aplicações ainda não está implementada, por causa de falha nas aplicações em direcionar os esforços para as capacidades e limitações dos clientes e das redes. Em outras palavras, uma aplicação que pode ser configurada para uso em um tipo particular de cliente, tal como um cliente que tenha uma combinação particular de capacidades de hardware e/ou software, pode ter utilidade limitada em um outro tipo de cliente que não tenha a combinação particular. Aplicações com entrada com base em dados, por exemplo, quando implementadas em um ambiente de televisão tradicional, podem ficar limitadas por causa de dispositivos de entrada disponíveis ao usuário e em virtude da resolução limitada das televisões tradicionais. Por exemplo, um controle remoto tradicional pode ter botões para entrar diretamente nos canais da televisão, oferecer navegação em quatro direções e manipular energia e volume. Funções tais como entrada de texto e pesquisa em uma grande lista de opções, que podem ser executadas facilmente quando se utiliza um teclado, podem se tornar onerosas, quando se utiliza o controle remoto tradicional.
[004] Além do mais, a resolução limitada que fica disponível em uma televisão de definição padrão pode limitar a resolução efetiva de dados que podem ser exibidos ao usuário em qualquer momento particular. Por exemplo, limitações na exibição de texto legível em uma televisão National Television Systems Committee (NTSC) tradicional pode limitar a quantidade de texto que pode ser exibido na televisão em um dado momento. Adicionalmente, a distância na qual a exibição deve ser vista pode limitar a resolução efetiva da exibição. Por exemplo, para exibir um guia de programa eletrônico em uma televisão de definição padrão, de maneira tal que a exibição possa ser vista quando o usuário estiver posicionai a uma distância típica da televisão, o texto do guia de programas eletrônico pode ser ampliado, de maneira tal que ele fique legível na distância desejada. Portanto, mesmo se o usuário dispuser de um teclado, a experiência da televisão não pode possibilitar fornecer a funcionalidade que é provida quando o usuário interage com a aplicação usando um computador.
[005] Dessa maneira, existe uma contínua necessidade de interfaces de usuário que direcione os esforços para as capacidades e limitações de dispositivo para melhorar a interação do usuário.
SUMÁRIO
[006] É descrita uma configuração de interface de usuário. Interfaces de usuário são providas por um cliente a dispositivos para iniciar funções de controle do cliente. As interfaces de usuário, por exemplo, são executadas nos dispositivos para iniciar funções de controle do cliente. Por exemplo, uma interface de usuário pode ser executada em um dispositivo local que esteja acoplado de forma comunicativa ao cliente por meio de uma conexão de rede local, tal como uma rede de área local (LAN). A interface de usuário pode também ser executada em um dispositivo remoto que esteja acoplado de forma comunicativa ao cliente por meio de uma conexão de rede remota, tal como uma rede de área abrangente (WAN). Os dispositivos local e remoto executam as respectivas interfaces de usuário que são obtidas do cliente para iniciar funções de controle do cliente, tais como gravar conteúdo. As interfaces de usuário podem ser configuradas com base em capacidades de hardware e/ou software detectadas dos respectivos dispositivos local e remoto que executam as interfaces de usuário. Capacidades de hardware e software podem incluir resolução, potência de processamento, recursos de memória, aplicações disponíveis e assim por diante. Portanto, os dispositivos local e remoto podem cada qual ser providos com as respectivas interfaces de usuário para iniciar a função de controle do cliente que direcionam esforços para recursos de hardware e/ou software do dispositivo particular.
[007] Em uma implementação, um método inclui receber uma consulta de um dispositivo. A consulta é para uma interface de usuário (UI) de um cliente. A UI, quando executada pelo dispositivo, é configurada para formar uma solicitação para execução de uma função de controle pelo cliente. Um processamento da solicitação determina se é permitida a execução da função de controle pelo cliente. O processamento é feito em um terminal principal utilizando-se dados do estado do cliente. As capacidades de hardware e/ou software do dispositivo para executar a UI são detectadas. A UI é configurada como base nas capacidades de hardware e/ou software do dispositivo.
DESCRICÃO RESUMIDA DOS DESENHOS
[008] A Figura 1 é uma ilustração de um ambiente em uma implementação exemplar que inclui um provedor de conteúdo que é acoplado de forma comunicativa a um cliente por uma rede.
[009] A Figura 2 é uma ilustração de uma implementação exemplar que mostra um servidor de distribuição, o cliente, um dispositivo local e um dispositivo remoto da figura 1 com mais detalhes.
[0010] A Figura 3 é um fluxograma de um procedimento em uma implementação exemplar na qual o cliente configura uma interface de usuário para execução no dispositivo local da figura 2.
[0011] A Figura 4 é uma ilustração de uma implementação exemplar que mostra uma interface de usuário que é configurada para saída pelo cliente, quando o usuário estiver localizado próximo do dispositivo de exibição, tal como o dispositivo de exibição da figura 1.
[0012] A Figura 5 é uma ilustração de uma implementação exemplar que mostra uma interface de usuário que é configurada para saída pelo cliente, quando o usuário estiver localizado a uma distância do dispositivo de exibição maior do que a interface de usuário da figura 4.
[0013] A Figura 6 é um fluxograma que representa um procedimento em uma implementação exemplar na qual uma interface de usuário configurada da figura 3 é empregada por um usuário para iniciar uma função de controle do cliente.
[0014] A Figura 7 é um fluxograma que representa um procedimento em uma implementação exemplar na qual uma interface de usuário é configurada e executada pelo dispositivo remoto da figura 2 para iniciar uma ou mais funções de controle do cliente.
[0015] Números de referência iguais são utilizados em instâncias na discussão para fazer referência a estruturas e componentes iguais, DESCRICÃO DETALHADA
Revisão [0016] É descrita a configuração de interfaces de usuário (Uls). Uls são providas por um cliente para iniciação de funções de controle do cliente. As Uls podem ser executadas em uma variedade de dispositivos para iniciar funções de controle do cliente. Em uma implementação» a UI pode ser executada em um dispositivo local que esteja acoplado de forma comunicativa ao cliente por meio de uma conexão de rede locai (conexão local). Por exemplo» o cliente pode ser configurado como um aparelho decodificador de televisão que proporciona saída de conteúdo de radiodifusão» tal como programação de televisão tradicional, e proporciona interação com tipos adicionais de conteúdo, tais como aplicações que são executadas no cliente, aplicações que são executadas remotamente por uma rede e assim por diante. O dispositivo local pode ser configurado com um assistente digital pessoal (PDA), por exemplo» um PC de “bolso", que é acoplado de forma comunicativa ao aparelho decodificador de televisão por meio de uma conexão de frequência de rádio local (RF). O PDA executa uma UI que é obtida do aparelho decodificador de televisão para iniciar funções de controle do aparelho decodificador de televisão, tal como gravar conteúdo. O aparelho decodificador de televisão pode configurar a UI com base em capacidades de hardware e/ou software detectadas do PDA para executar a UI, tais como resolução do PDA, potência de processamento» cores suportadas e assim por diante. Portanto, o PDA é provido com uma UI que direciona esforços para os recursos de hardware e/ou software do PDA.
[0017] Em uma outra implementação, a UI pode ser executada em um dispositivo remoto que esteja acoplado de forma comunicativa ao cliente por meio de uma conexão de rede remota (conexão remota). Continuando com o exemplo anterior, o aparelho decodificador de televisão proporcionar a saída de conteúdo que é recebido por uma rede a partir de um terminal principal, tal como televisão de radiodifusão tradicional, vídeo sob demanda (VOD), processamento de aplicação remota e assim por diante. Um dispositivo remoto, tal como um computador de mesa, pode também ser acoplado de forma comunicativa à rede. O dispositivo remoto também executa uma UI que é obtida do aparelho decodificador de televisão para iniciar funções de controle do aparelho decodificador de televisão. O aparelho decodificador de televisão configura a UI com base em capacidades de hardware e/ou software detectadas do dispositivo remoto para executar a UI. Portanto, o dispositivo remoto pode também ser provido com uma UI que direcione esforços para recursos de hardware e/ou software do dispositivo remoto. Discussão adicional da configuração de Uls pode ser encontrada em relação às figuras 3 e 7.
[0018] Em uma implementação adicional, o terminal principal armazena dados do estado do cliente para processar as solicitações de funções de controle recebidas das Uls. Por exemplo, o terminal principal pode incluir dados do estado do cliente, tais como limites de classificações, canais favoritos, níveis de serviço e assim por diante, que sejam acessíveis localmente pelo terminal principal. O terminal principal pode utilizar estes dados do estado do cliente para processar solicitações providas pelas Uls que são executadas localmente pelo dispositivo local ou remotamente pelo dispositivo remoto. Depois que as solicitações forem processadas, o terminal principal pode então fazer com que o cliente execute a função de controle. Processando-se as solicitações no terminal principal, o terminal principal fornece uma fon- te competente para processar funções de controle a ser executadas pelo cliente. Isto pode resultar em uma variedade de maior funcionalidade que é disponível ao usuário, tal como uma capacidade de mudar de um cliente antigo para um cliente novo sem atualizar manualmente os dados do estado do cliente do cliente antigo para o cliente novo, e iniciação remota de funções de controle sem obter uma conexão com o cliente.
[0019] Discussão adicional do uso de dados do estado do cliente por um terminal principal pode ser encontrada em relação às figuras 6 e 7.
SISTEMAS EXEMPLARES
[0020] A Figura 1 é uma ilustração de um ambiente 100 em uma implementação exemplar que inclui um provedor de conteúdo 102 que é acoplado de forma comunicativa a um cliente 104 por uma rede 106. A rede 106 nas implementações seguintes é um exemplo de uma rede de área abrangente (WAN), tal como a Internet, e pode também incluir uma variedade de outras redes, tais como uma rede de radiodifusão, uma intranet, uma rede de telefone com fio ou sem fio e assim por diante.
[0021] O cliente 104 pode ser configurado para receber conteúdo transmitido do provedor de conteúdo 102 pela rede 106. O provedor de conteúdo 102 inclui conteúdo 108(k), onde k pode ser qualquer número de 1 a “K”, que seja armazenado localmente no provedor de conteúdo 102. O conteúdo 108(k) pode incluir uma variedade de dados, tais como programação de televisão, vídeo sob demanda, um guia de programas eletrônico (EPG), um ou mais resultados de processamento de aplicação remota e assim por diante. O provedor de conteúdo 102 fornece o conteúdo 108(k) por uma rede 110 a um terminal principal 112. A rede 110 pode ser a mesma ou diferente da rede 106. O conteúdo 108(k) pode então ser armazenado em uma base de dados 114 como conteúdo 116(n), onde n pode ser qualquer número de 1 a “N”, no terminal principal 112 para transmissão pela rede 106 ao cliente 104. Em outras palavras, o conteúdo 116(n) armazenado na base de dados 114 pode ser cópias do conteúdo 108(k) recebido do provedor de conteúdo 102. O conteúdo 116(n) pode também incluir dados adicionais que são transmitidos ao cliente 104. Por exemplo, o conteúdo 116(n) armazenado na base de dados 114 pode incluir dados EPG que são transmitidos ao cliente 104 utilizando um sistema de arquivo carrossel. O sistema de arquivo carrossel transmite repetidamente os dados EPG por um canal fora de banda (OOB) ao cliente 104 pela rede 106.
[0022] O terminal principal 112 pode também incluir um servidor de distribuição 118 para formatar e distribuir o conteúdo 116(n) pela rede 106. A distribuição do terminal principal 112 ao cliente 104 pode ser feita de diversas maneiras, incluindo cabo, RF, microondas e satélite. Embora o terminal principal 112 esteja ilustrado separado do provedor de conteúdo 102, o provedor de conteúdo 102 pode também incluir o terminal principal 112.
[0023] O cliente 104 pode ser configurado como um computador que é capaz de comunicar pela rede 106, tal como um computador de mesa, uma estação móvel, um aparelho de entretenimento, um aparelho decodificador de televisão 120 que é acoplado de forma comunicativa a um dispositivo de exibição 122 ilustrado e assim por diante. O cliente 104 pode também relacionar a uma pessoa e/ou entidade que opere o cliente 104. Em outras palavras, o cliente 104 pode descrever um cliente lógico que inclua um usuário e/ou uma máquina. Embora um cliente 104 esteja ilustrado, uma pluralidade de clientes pode ser acoplada de forma comunicativa à rede 106.
[0024] O cliente 104 pode também incluir uma base de dados 124 que tem conteúdo armazenado localmente 126(m), onde m pode ser qualquer número de 1 a “M”. Por exemplo, o cliente 104 pode ser con- figurado como um gravador de vídeo pessoal (PVR) que inclui uma base de dados 124 armazenada em memória de disco rígido, por causa do tamanho da memória, usuários são capazes de gravar conteúdo. O PVR também oferece funções de controle, tais como capacidade de fazer pausa no conteúdo que está atualmente sendo transmitido e permite que espectadores observem o conteúdo quando continua a partir do ponto que houve a pausa. O PVR reproduzir o conteúdo da memória de disco, a começar no evento da pausa, continuando ainda a gravar o conteúdo atualmente transmitido na memória de disco. Adicionalmente, o PVR pode suportar outras funções de controle, tais como voltar, ir para frente de maneira rápida um programa armazenado, reproduzir em câmara lenta e assim por diante.
[0025] O cliente 104 é equipado com capacidades de processamento e armazenamento suficientes para armazenar e rodar uma aplicação de navegação 128. A aplicação de navegação 128, quando executada no cliente 104, fornece funções de controle para interagir com conteúdo. Por exemplo, as funções de controle podem incluir as funções de controle PVR previamente discutidas, bem como seleção de canal, navegação EPG e assim por diante.
[0026] O cliente 104 também inclui uma UI configurável 130 e um módulo UI 132. A UI configurável 130 fornece uma interface para execução em um dispositivo, de maneira tal que um usuário do dispositivo possa iniciar uma ou mais funções de controle da aplicação de navegação 128. O módulo UI 132 é executado no cliente 104 para configurar a UI configurável 130 com base em recursos de hardware e/ou software detectados de um dispositivo que vai executar a UI configurável 130. Por exemplo, um dispositivo local 134, tal como um PDA ilustrado, pode ser acoplado de forma comunicativa ao cliente 104 por meio de uma conexão local 136. O módulo UI 132, quando executado, detecta as capacidades do dispositivo local 134 para executar a UI confi- gurável 130 e em seguida configura a UI configurável 130 de forma correspondente. O cliente 104 pode também ser acoplado de forma comunicativa a um dispositivo remoto 138, por exemplo, um computador de mesa ilustrado pela rede 106. O módulo UI 132, quando executado no cliente 140, pode também configurar a UI configurável 130 com base nas capacidades de hardware e/ou software detectadas do dispositivo remoto 138 para executar a UI configurável 130. O módulo UI 132 pode ser implementado de diversas maneiras, tal como um servidor HTTP que fornece Uls em um formato HTML aos dispositivos local e remoto 134, 138. O cliente 104, através da execução do módulo UI 132, pode fornecer Uls para execução no dispositivo local e remoto 134, 138 com base nas capacidades dos respectivos dispositivos local e remoto 134, 138 para executar as Uls.
[0027] O terminal principal 112 inclui uma base de dados 140 para armazenamento de uma pluralidade de dados de estado de cliente 1420, onde j pode ser qualquer número de 1 a “J”, para processar solicitações que foram iniciadas pelas Uls que são executadas no dispositivo local e remoto 134, 138. Por exemplo, o servidor de distribuição 118 pode incluir um módulo de acesso remoto 144 que é executado no servidor de distribuição 118 para processar solicitações para fazer com que a aplicação de navegação 128 do cliente 104 execute uma ou mais funções de controle. O módulo de acesso remoto 144, quando executado, processa as solicitações usando os dados do estado do cliente 1420 que correspondam ao cliente 104 que deve executar a função de controle. Se o cliente 104 tiver permissão para executar a função de controle, o servidor de distribuição 118 faz com que o cliente 104, e especificamente a aplicação de navegação 128, realize a função de controle. Desta maneira, o terminal principal 112 fornece uma fonte competente para dados do estado do cliente 1420 no ambiente 100.
[0028] Embora o aparelho decodificador de televisão 120 esteja mostrado separadamente do dispositivo de exibição 122, o aparelho decodificador de televisão 120 pode ser embutido no dispositivo de exibição 122 para formar uma unidade integral. Além disso, em outras implementações, o cliente 104 pode ser concebido como outros computadores capazes de executar a aplicação de navegação 128 e o módulo UI 132, tal como um computador habilitado a radiodifusão, um aparelho de informação, um computador miniatura, um gravador de vídeo pessoal (PVR) ou similares.
[0029] A Figura 2 é uma ilustração de uma implementação exemplar 200 que mostra o servidor de distribuição 118, o cliente 104, o dispositivo local 134 e o dispositivo remoto 138 da figura 1 com mais detalhes. O cliente 104 inclui um processador 202 e memória 204. O módulo UI 132 e a aplicação de navegação 128 estão ilustrados sendo executados no processador 202 e são armazenáveis em memória 204. A UI configurável 130 está ilustrada sendo armazenada na memória 204.
[0030] O cliente 104 pode incluir uma interface de rede remota (interface remota) 206 que pode ser utilizada para receber o conteúdo 116(n) da figura 1 que é transmitido pela rede 106. Por exemplo, a interface remota 206 pode ser configurada como um sintonizador que recebe conteúdo transmitido pela rede 106, pode ser configurado como um transmissor/receptor (transceptor) que é adequado para comunicação bidirecional pela rede 106 e assim por diante, o conteúdo 116(n) pode ser armazenado na base de dados 124 para saída posterior pelo cliente 104 e/ou provido para saída imediata do conteúdo 116(n). A base de dados 124 está ilustrada sendo incluída na memória 204, mas pode também ser incluída em um dispositivo de armazenamento separado. Por exemplo, o dispositivo de armazenamento para a base de dados 124 pode ser configurado como uma unidade de disco rígido, e a memória 204 pode ser configurada como RAM, tanto a memória 204 como o dispositivo de armazenamento podem ser configurados como RAM, tanto a memória 204 como o dispositivo de armazenamento podem ser configurados como memória removível e assim por diante, O cliente 104 executa a aplicação de navegação 128 para recuperar o conteúdo 126(m) da figura 1 da base de dados 124 e dar saída no conteúdo 126(m) através da interface de saída 208 para reprodução no dispositivo de exibição 122. Assim, nesta implementação, o cliente 104 é capaz de operar como um PVR que armazena e executa novamente o conteúdo 126(m) da figura 1 de uma maneira semelhante a um gravador de vídeo cassete.
[0031] O cliente 104 pode ser controlado por um usuário via entradas fornecidas por um dispositivo de entrada 210. As entradas são recebidas pelo cliente 104 de uma interface de entrada 212 por meio de uma conexão local 214. A conexão local 214 pode ser igual ou diferente da conexão local 136 que acopla de forma comunicativa o dispositivo local 134 à interface local 222. A interface de entrada 212, conexão local 214 e dispositivo de entrada 210 podem ser configurados de diversas maneiras. Por exemplo, a interface de entrada 212 pode ser configurada como uma porta sem fio, tal com uma porta sem fio infravermelha (IR) ou Bluetooth, para receber comunicações sem fio do dispositivo de entrada 210, tai como um dispositivo de controle remoto, um dispositivo de entrada manual ou qualquer outro dispositivo sem fio, tal como um teclado sem fio. Em modalidades alternativas, a interface de entrada 212 pode usar um eniace de comunicação RF ou outro modo de transmissão para comunicar com o cliente 104, tal como uma conexão por fio que pode incluir uma conexão do barramento serial universal (USB) e assim por diante.
[0032] Quando a saída de conteúdo for solicitada, a aplicação de navegação 128 é executada no processador 202 para obter conteúdo, tal como do conteúdo que é encadeado do servidor de distribuição 118 pela rede, conteúdo 126(m) que é armazenado localmente na base de dados 124 e assim por diante. A aplicação de navegação 128 pode também restaurar o conteúdo para o formato codificado original provido pelo provedor de conteúdo 102 da figura 1. Por exemplo, o conteúdo 116(n) da figura 1 pode ser compactado e em seguida encadeado do servidor de distribuição 118 ao cliente 104. Portanto, quando a aplicação de navegação 128 receber o conteúdo, o conteúdo pode ser descompactado para ser reproduzido pelo dispositivo de exibição 122.
[0033] O cliente 104 pode também ser controlado pelo uso de uma UI que é executada por um dispositivo. Por exemplo, o dispositivo local 134 pode incluir um processador 216 e uma memória 218. O dispositivo local 134 inclui uma UI 220 que foi provida pelo cliente 104 através da execução do módulo UI 132 e da UI configurável 130. Quando executada no processador 216, a UI 220 permite que um usuário inicie uma ou mais funções de controle da aplicação de navegação 128 no cliente 104. O dispositivo local 134 é acoplado de forma comunicativa pela conexão local 136 ao cliente usando uma interface local 222. O dispositivo local 134 pode também incluir uma aplicação de navegação 224 para proporcionar interação de conteúdo no próprio dispositivo local 134. A aplicação de navegação 224, por exemplo, pode ser configurada como um navegador, um aparelho de mídia e assim por diante.
[0034] O dispositivo remoto 138 pode também incluir um processador 226 e memória 228. Como o dispositivo local 134, o dispositivo remoto 138 inclui uma UI 230 que está ilustrada sendo executada no processador 226 e que é armazenável em memória 228. O dispositivo remoto 138 pode também incluir uma aplicação de navegação 232 que pode ser similar ou diferente das aplicações de navegação 128, 224 do cliente 104 e/ou dispositivo local 134. Quando executada no pro- cessador 226, a UI 230 permite que um usuário inicie uma ou mais funções de controle da aplicação de navegação 128 no cliente 104. Interagindo com a UI 230 no dispositivo remoto 138, o usuário do dispositivo remoto 138 pode iniciar funções de controle do cliente 104 pela rede 106. A comunicação entre o dispositivo remoto 138 e o cliente 104 pode também ser provida usando a interface remota 206.
[0035] Iniciando as funções de controle pela Uls 220, 230, o usuário pode solicitar uma variedade de funções de controle. Exemplos de funções de controle incluem lembrança de conteúdo 116(n) da figura 1 que é encadeada pela rede 106 ao cliente 104, navegação através de conteúdo, tal como ir rápido para frente, voltar ou pausar a saída do conteúdo e assim por diante. As funções de controle, por exemplo, podem fornecer execução não linear do conteúdo (isto é, deslocamento de tempo da execução do conteúdo) tal como pausar, voltar, ir rápido para frente, reprodução em câmara lenta e assim por diante. Por exemplo, durante uma pausa, o cliente 104 pode continuar gravar o conteúdo na base de dados 124. O cliente 104, com a execução da aplicação de navegação 128, pode então reproduzir o conteúdo 126(m) da figura 1 a partir da base de dados 124, começando no instante de tempo em que o conteúdo 126(m) teve a pausa, embora continuando gravar o conteúdo atualmente transmitido 126(m) na base de dados 124.
[0036] O servidor de distribuição 118 incluído no terminal principal 112 da figura 1 também inclui um processador 234 e memória 236. O módulo de acesso remoto 144 está ilustrado sendo executado no processador 234 e é armazenável em memória 236. Dados do estado de cliente 142(j) estão ilustrados sendo armazenados em memória 236. A base de dados 114 está ilustrada incluída na memória 236, mas pode também ser incluída em um dispositivo de armazenamento separado. Por exemplo, o dispositivo de armazenamento para a base de dados 114, como a base de dados 124 do cliente 104, pode ser configurado como uma unidade de disco rígido, e a memória 236 pode ser configurada como RAM, tanto a memória 236 como o dispositivo de armazenamento podem ser configurados como memória removível e assim por diante. Assim, o servidor de distribuição 118 pode acessar localmente os dados do estado do cliente 142(j).
[0037] O servidor de distribuição 118 executa o módulo de acesso remoto 144 no processador 234 para processar solicitações para iniciar funções de controle da aplicação de navegação 128 no cliente 104. As solicitações podem se originar das Uls 220, 230 que são executadas nos respectivos dispositivos local e remoto 134, 138. O módulo de acesso remoto 144, quando executado no processador 234, processa as solicitações de acordo com os dados do estado do cliente 142(j) que são armazenados na memória 236. Por exemplo, uma pluralidade de dados do estado do cliente 142(j) pode ser armazenada na memória 236 que corresponde a uma pluralidade de cliente que recebe conteúdo do terminal principal 112 da figura 1. Cada coleção de dados do estado do cliente 142(j) para um cliente particular pode incluir dados de operações gerais utilizados pelo cliente particular, tais como limites de cliente, canais favoritos, nível de serviço provisionado e assim por diante. A rede 106 que conecta o terminal principal 112 ao cliente 104 e ao dispositivo remoto 138 pode ter largura de banda e confiabilidade suficientes, de maneira tal que o terminal principal 112 seja a fonte competente para esta informação. Em outras palavras, o terminal principal 112 pode ser considerado a fonte primária para os dados do estado do cliente 142(j) para um cliente particular, mesmo pelo próprio cliente 104. Por exemplo, armazenando dados do estado do cliente 1420 no servidor de distribuição 118, um usuário pode ligar aparelhos decodificadores de televisão sem transferir dados do estado do cliente entre aparelhos decodificadores de televisão.
[0038] Adicionalmente, armazenado-se dados do estado do cliente 1420 para acesso local pelo servidor de distribuição 118, clientes de baixos recursos podem ser utilizados para dar saída a conteúdo e também a funcionalidade de altos recursos pode ainda ser provida aos dispositivos que executam a UI para controlar o cliente 104. Por exemplo, um cliente de baixos recursos, tal como um cliente que tenha recursos de hardware e/ou software limitados, pode ser configurado para decriptografar e dar saída a conteúdo para ser reproduzido em um dispositivo de exibição. O cliente de baixos recursos pode também prover armazenamento local de conteúdo, tal como em uma unidade de disco rígido. Um dispositivo remoto rico em recursos, tal como um computador de mesa que tenha recursos de processamento expressivos, pode executar uma UI que não poderia ser executada no cliente de baixos recursos. A UI, por exemplo, pode ter uma maior resolução (por exemplo, mas pontos por polegada), suportar uma maior número de cores de saída, prover macros para iniciar funções de controle (por exemplo, gravação de todos os capítulos de um programa de televisão particular) e assim por diante. Desta maneira, a UI pode fornecer funcionalidade adicional a um usuário do cliente. Exemplos de Uls configuradas para saída pelos dispositivos que têm diferentes capacidades podem ser encontrados em relação às figuras 4 e 5.
Procedimentos Exemplares [0039] A Figura 3 é um fluxograma de um procedimento 300 em uma implementação exemplar na qual o cliente 104 configura uma UI para execução no dispositivo local 134 da figura 2. No bloco 302, uma conexão local é iniciada entre o dispositivo local 134 e o cliente 104. Uma variedade de conexões locais pode ser iniciada, tais como conexões por fio e sem fio. Um exemplo de uma conexão por fio é uma conexão Ethernet, que pode ser utilizada para conectar uma pluralidade de dispositivos entre si localmente pela rede Ethernet. Uma variedade de conexões sem fio é também considerada, tais como conexões sem fio que estejam de acordo com o padrão Infrared Data Association (IrDA), o padrão Shared Wireless Access Protocol (SWAP) desenvolvido pela HomeRF Working Group, IEEE 802.11b E802.11g desenvolvido pela Wireless Ethernet Compatibility Alliance (WECA), Bluetooth e assim por diante.
[0040] No bloco 304, o cliente 104 detecta as capacidades de hardware e/ou software do dispositivo local 134 pela execução do módulo UI 132. Por exemplo, o cliente 104 pode detectar capacidades de hardware, tais como velocidade do processador, largura de banda do barramento de dados, velocidade de saída de dados de um ou mais barramentos do dispositivo local 134, quantidade de espaço de memória disponível no dispositivo local 134, resoluções suportadas e paletas de cor de um dispositivo de exibição incluído, fontes suportadas, disponibilidade de dispositivos de entrada (por exemplo, telas sensíveis ao toque, dispositivos de controle do cursor, botões, teclados e assim por diante), disponibilidade de dispositivos de entrada/saída de áudio e assim por diante. O cliente 104 pode também detectar capacidades de software do dispositivo local 134, tais como linguagens do computador suportadas, disponibilidade de aplicações no dispositivo local 134, (por exemplo, navegadores, aparelhos de mídia e assim por diante), controladores implementados no dispositivo local 134 e assim por diante.
[0041] No bloco 306, o cliente 104 configura uma UI configurável para comunicação com o dispositivo local 134 com base na detecção. O cliente 104, por exemplo, pode executar o módulo UI 132 para configurar a UI configurável 130 da figura 2 com base nas capacidades detectáveis do dispositivo local 134. Uma variedade de configurações pode ser provida, tal como por meio de diferentes arranjos de funções e características de exibição da UI. Descrição adicional de configurações de Uls pode ser encontrada em relação às figuras 4 e 5. O cliente 104 pode então comunicar a UI configurada 308 ao dispositivo local 134 pela conexão local 136.
[0042] No bloco 310, o dispositivo local 134 executa a UI configurada 308 para iniciar funções de controle do cliente 104. Por exemplo, o usuário pode utilizar um dispositivo de entrada, tal como uma tela sensível ao toque de um PDA, para iniciar uma função de controle “pressionando” o botão da UI configurada 308. A UI configurada 308 pode então formar uma solicitação que indique a função de controle desejada e comunicar a solicitação diretamente ao cliente 104 pela conexão local 136. Assim, na implementação, a função de controle pode ser provida diretamente ao cliente 104 sem comunicar a solicitação pela rede 106. Discussão adicional de solicitações de processamento podem ser encontradas em relação à figura 6.
[0043] Embora a implementação da figura 3 tenha descrito configuração da UI pelo cliente 104, a UI pode ser configurada de diversas maneiras. Em uma outra implementação, a UI configurável 130 da figura 2 é implementada como uma UI configurável autocontida que inclui software para configurar a apresentação e implementação da UI, quando recebida e/ou executada em um dispositivo. Por exemplo, a UI configurável 130 da figura 2 pode ser recebida pelo dispositivo local 134 e, quando executada no dispositivo local, detecta capacidades de hardware e/ou software do dispositivo local 134 para executar a UI. Em uma implementação adicional, a UI é configurada por um servidor de distribuição, um exemplo da qual está descrita em relação à figura 7.
Interfaces de Usuário Exemplares [0044] Uls podem ser configuradas de diversas maneiras com base nas capacidades do dispositivo que deve executar a UI. A figura 4 é uma ilustração de uma implementação exemplar que mostra a UI 300 que está configurada para saída pelo cliente, quando o usuário estiver localizado perto do dispositivo de exibição, tal como o dispositivo de exibição 122 da figura 1. Conforme previamente declarado, em virtude de dispositivos utilizados para executar as Uls possam ter diferentes capacidades e em virtude de a distância de um usuário a um dispositivo de exibição poder mudar, as Uls podem ser configuradas para direcionar esforços para diferentes capacidades e distâncias. Por exemplo, um usuário localizado perto de um dispositivo de exibição pode ser capaz de perceber uma maior quantidade de detalhes do que se o usuário estiver localizado a uma maior distância do dispositivo de exibição. Adicionalmente, dispositivos de entrada dos dispositivos local e remoto 134, 138 da figura 2 podem fornecer diferentes respectivas funcionalidades. Por exemplo, um dispositivo local pode ser configurado para navegação com base em caneta, e um dispositivo remoto que tenha um mouse e teclado pode ser configurado para entrada e navegação orientada a dados.
[0045] A UI 400 é configurada para uso quando o usuário estiver localizado perto do dispositivo de exibição. A UI 400 inclui um guia de canal 402 que lista uma pluralidade de canais 404(1)-404(6) que se encontra disponível de uma transmissão. A UI 400 também inclui uma descrição detalhada 406 de um de uma pluralidade de programas que pode fornecer informação relacionada ao programa, tal como ator, descrição resumida do diagrama do programa e assim por diante. A UI 400 também inclui uma barra de menu 408 que permite que um usuário navegue na funcionalidade utilizando um dispositivo de controle do cursor tal como um mouse. A barra do menu ilustrada 408 tem funcionalidade que inclui o título do programa atual 410, funcionalidade de áudio 412 tal como dispositivo de projeção de legendas e estéreo, canais recentes 414, canais favoritos 416 e ferramentas 418, tais como opções para arranjo, seleção de fonte e assim por diante.
[0046] A Figura 5 é uma ilustração de uma implementação exem- piar que mostra uma UI 500 que está configurada para saída pelo cliente, quando o usuário estiver localizado a uma maior distância do dispositivo de exibição do que a UI 400 da figura 5. Por exemplo, a UI 500 pode também incluir um guia de canal 502 que lista uma pluralidade de canais 404(1)-404(4) que estejam disponíveis para transmissão. Entretanto, o guia de canal 502 é configurado para ser visto de uma maior distância do que o guia de canal 402 da figura 4 e para dar saída por um dispositivo de exibição que tenha uma menor resolução do que o dispositivo de exibição para dar saída à UI 400 da figura 4. Portanto, o guia de canal 502 inclui menos canais e programas em um formato ampliado do que o guia de canal 402 da figura 4.
[0047] Adicionalmente, o arranjo de funcionalidade da UI 500 pode ser diferente da UI 400 da figura 4. A UI 500, por exemplo, pode também incluir a descrição detalhada 406, mas tem a descrição detalhada 406 arranjada abaixo do guia de canal 502, oposto ao guia de canal 402 anterior na UI 400 da figura 4. Adicionalmente, a UI 500 não inclui a barra do menu 408 da UI 400 da figura 4. Por exemplo, a UI 500 pode ser provida com uma menor resolução, isto é, menos pontos por polegada, do que a UI 400 da figura 4, de maneira tal que a UI 500 seja visível a uma maior distância. Portanto, embora a UI 400 da figura 4 inclua funcionalidade que não está incluída na UI 500 da figura 5, a UI 500 é visível a uma maior distância. Embora o arranjo de funções, exibição de funções e resolução tenham sido descritas como diferenças entre as Uls 400, 500 das figuras 4 e 5, respectivamente, uma variedade de outras diferenças é também considerada. Por exemplo, o esquema de cor da UI 500 pode ser selecionado de maneira tal que a UI 500 seja visível a uma maior distância, tal como pela seleção de cores que tenham maior contraste do que as utilizadas na UI 400 da figura 4. Adicionalmente, a visibilidade e família de tipos das funções podem também ser alteradas para cada UI para fornecer uma sensação de visualização otimizada. Por exemplo, o dispositivo de exibição para salda da UI 400 da figura 4 pode suportar um maior número de cores do que o dispositivo de exibição para dar saída na UI 500 da figura 5.
[0048] A Figura 6 é um fluxograma que representa um procedimento 600 em uma implementação exemplar na qual a UI configurada 308 da figura 3 é empregada por um usuário para iniciar uma função de controle do cliente 104, No bloco 602, o dispositivo local 134 forma e comunica uma solicitação 604 para iniciar uma função de controle do cliente 104. Por exemplo, a UI configurada 308, quando executada no dispositivo local 134, pode fornecer uma ou mais técnicas para iniciar a função de controle. Um telefone sem fio, por exemplo, pode executar a UI configurada 308 que incluí um menu de voz para permitir que um usuário navegue por uma lista de funções de controle disponíveis, e inicie uma ou mais funções de controle. Uma solicitação é então formada para início da função de controle desejada e comunicada ao cliente 104, tal como pela conexão local 136.
[0049] No bloco 606, o cliente 104 comunica a solicitação 604 ao servidor de distribuição 118. Em uma implementação, o cliente 104 executa o módulo UI 132 da figura 2 para empacotar a solicitação 604 para encaminhá-la pela rede 106 ao servidor de distribuição 118. Em uma outra implementação, a solicitação 604 é formatada para rotea-mento ao servidor de distribuição 118 pelo dispositivo local 134 sem empacotamento pelo cliente 104, [0050] No bloco 608, o servidor de distribuição 118 processa a solicitação usando os dados do estado do cliente 142(j). O módulo de acesso remoto 144, por exemplo, pode ser executado no servidor de distribuição 118 para processar a solicitação 604 de acordo com os dados do estado do cliente 142(j) que estejam locaimente disponíveis ao servidor de distribuição 118, tais como armazenados em um disco rígido, arranjo RAID e assim por diante. A solicitação 604 é processa- da de acordo com os dados do estado do cliente 1420) 3ϋβ são específicos do cliente 104, [0051] A solicitação 604 pode incluir um identificador de cliente exclusivo, de maneira tal que o módulo de acesso remoto 144 possa localizar dados do estado do cliente 142{j) que correspondam ao cliente particular 104. Uma vez que os dados do estado do cliente 142(j) estejam localizados, o módulo de acesso remoto 144, quando executado, determina se a execução da função de controle é permissivel no cliente 104. Por exemplo, a solicitação 604 pode ser configurada para iniciar uma função de controle no cliente 104 para gravar conteúdo, por exemplo, um programa de televisão» e um servidor de distribuição 118» pelo exame dos dados do estado do cliente 142(j), pode determinar se o cliente 104 tem permissão de gravar o conteúdo. Em um outro exemplo, a solicitação 604 é configurada para sintonizar o cliente 104 em um canal de televisão desejado, e o servidor de distribuição 118 pode então determinar se o cliente 104 tem uma assinatura desse canal de televisão particular.
[0052] No bloco 610, o servidor de distribuição 118 forma e comunica um comando 612 para executar a função de controle ao cliente 104. Continuando com o exemplo anterior» o módulo de acesso remoto 144» quando executado» pode determinar que o cliente 104 pode executar a função de controle e, portanto, formar o comando 612 para comunicação ao cliente 104, Se o cliente 104 não tiver permissão para executar a função de controle» o módulo de acesso remoto 144 pode formar uma resposta para comunicação ao dispositivo local 134 para indicar que a função de controle não é permitida. Em uma outra implementação, uma interface extra pode ser projetada no cliente 104 para “ouvir" o terminal principal para atualizações. Por exemplo, o módulo UI 132, quando executado no cliente 104, pode periodicamente conectar a rede 106 para receber e/ou solicitar comandos providos pe- Io terminal principal 112 para executar uma ou mais funções de controle.
[0053] No bloco 614, o cliente 104 executa a função de controle. Por exemplo, o cliente 104 pode receber o comando 612 do servidor de distribuição 118. O comando pode ser criptografado utilizando uma variedade de técnicas de criptografia para impedir que o comando de seja despersonificado por um atacante. A aplicação de navegação 128 e/ou o módulo UI 132, quando executados, podem decriptografar o comando 612 para determinar qual função de controle deve ser executada. A aplicação de navegação 128 pode então executar a função de controle indicada. A aplicação de navegação 128, por exemplo, pode gravar um programa de televisão particular em um momento particular, pode mudar o canal de transmissão que dá saída pelo cliente 104 no dispositivo de exibição 122 da figura 2, sintonizar um canal favorito e assim por diante. Embora as implementações discutidas com relação às figuras 3 e 6 descrevam a configuração e execução de uma UI em um dispositivo local 134, o dispositivo remoto 138 pode também fornecer funcionalidade similar, conforme descrito com mais detalhes na implementação seguinte.
[0054] A Figura 7 é um fluxograma que representa um procedimento 700 em uma implementação exemplar na qual uma UI é configurada e executada pelo dispositivo remoto 138 da figura 2 para iniciar uma ou mais funções de controle do cliente 104. No bloco 702, um dispositivo remoto inicia uma conexão remota com o servidor de distribuição. Por exemplo, o dispositivo remoto 138 da figura 2 pode iniciar uma conexão remota pela rede 106 com o servidor de distribuição 188 da figura 2. A rede 106 pode assumir uma variedade de configurações, tal como uma rede de área abrangente (WAN), por exemplo, a Internet, e assim por diante. Uma WAN pode ser considerada como uma rede geograficamente dispersa, que inclui uma estrutura de telecomu- nicação mais abrangente do que uma rede local (LAN). Uma WAN, por exemplo, pode ser de propriedade privada, arrendada ou alugada, mas na maioria dos casos inclui pelo menos uma porção de uma rede pública (por exemplo, compartilhada pelo usuário).
[0055] No bloco 704, o dispositivo remoto forma uma consulta pra uma UI a partir do servidor de distribuição que é adequada para iniciar funções de controle de um cliente. O dispositivo remoto, por exemplo, pode formar a consulta para comunicação pela rede que identifique um cliente desejado. Em uma implementação, a consulta inclui o endereço de rede do cliente. Em uma outra implementação, o servidor de distribuição inclui uma lista armazenada localmente de locais de cliente. Em uma implementação adicional, o servidor de distribuição consulta a rede 106 da figura 2 para localizar o cliente. Por exemplo, o módulo de acesso remoto 144, quando executado no servidor de distribuição 118, pode agir como um navegador para localizar os recursos de rede desejados, que, neste caso, inclui o cliente 104 da figura 2.
[0056] No bloco 706, o servidor de distribuição obtém a UI configu-rável do cliente. Por exemplo, o servidor de distribuição pode formar uma consulta adicional que é comunicada ao cliente por uma rede. O servidor de distribuição pode então receber uma resposta à consulta que inclua a UI configurável.
[0057] No bloco 708, o servidor de distribuição detecta as capacidades de hardware e/ou software do dispositivo remoto pela conexão remota. Tal como o cliente previamente descrito, o servidor de distribuição pode detectar velocidades de processamento e software disponíveis e assim por diante do dispositivo remoto 138 que indiquem as capacidades de o dispositivo remoto executar a UI. No bloco 710, o servidor de distribuição configura a UI configurável com base nas capacidades detectadas para formar uma UI que seja configurada para o dispositivo remoto. O servidor de distribuição, por exemplo, pode ar- ranjar funções da UI configurável, selecionar funções com base em dispositivos de entrada disponíveis e assim por diante. Em uma outra implementação, a UI pode ser configurada como base em uma distância provável na qual o usuário fica posicionado em relação ao dispositivo remoto, quando vê a UI. Por exemplo, conforme previamente descrito, o dispositivo pode ser configurado para ser visto em diferentes distâncias, tal como uma televisão em uma sala de estar, ao contrário de um PDA, que fica mantido na mão do usuário. Configurando-se a UI configurável com base na distância provável do usuário até o dispositivo, a UI configurada pode ser otimizada para visualização pelo usuário.
[0058] No bloco 712, o servidor de distribuição armazena dados do estado do cliente que incluem uma indicação do dispositivo remoto e da afiliação do cliente. O servidor de distribuição, por exemplo, pode armazenar dados que incluam um identificador do dispositivo remoto que recebeu a UI configurada e uma indicação correspondente de afiliação do cliente a essa UI particular. Portanto, quando o servidor de distribuição receber uma solicitação do dispositivo remoto, o servidor de distribuição pode identificar facilmente um destino para a solicitação, isto é, um cliente particular. Embora a configuração da UI configurável esteja descrita nesta implementação como sendo executada pelo servidor de distribuição, a UI configurável pode ser configurada de diversas maneiras. Por exemplo, a UI configurável pode ser configurada pelo cliente da maneira descrita com relação à figura 3, configurada automaticamente pela própria UI configurável e assim por diante.
[0059] No bloco 714, o dispositivo remoto recebe e executa a UI configurada, tal como executando a UI 230 no processador 226 da figura 2. No bloco 716, um usuário seleciona uma função de controle interagindo com a UI. Por exemplo, um usuário pode utilizar um dispositivo de entrada do dispositivo remoto, tais como um teclado, mouse e microfone para receber um comando de voz e assim por diante para selecionar uma de uma pluralidade de funções de controle para início. No bloco 718, a UI forma e comunica uma solicitação para a função de controle ao servidor de distribuição. Portanto, nesta implementação, uma solicitação iniciada por um dispositivo remoto 138 é comunicada diretamente ao servidor de distribuição 118 pela rede 106 sem primeiro ser comunicada ao cliente 104.
[0060] No bloco de decisões 720, é feita uma determinação se o cliente está autorizado a executar a função de controle solicitada. Conforme previamente descrito, a determinação pode ser feita pelo servidor de distribuição processando a solicitação utilizando dados do estado do cliente do cliente que deve executar a função de controle. Se o cliente não estiver autorizado a executar a função de controle, o procedimento 700 termina no bloco 722 transmitindo uma mensagem de falha ao dispositivo remoto que indica que o cliente não está autorizado a executar a função de controle solicitada.
[0061] Se o cliente estiver autorizado a executar a função de controle de acordo com os dados do estado do cliente, então, no bloco 724, o servidor de distribuição traduz a solicitação para formar um comando para comunicação ao cliente para executar a função de controle. Por exemplo, a solicitação para iniciar a função de controle que foi formada pelo dispositivo remoto pode não ser compatível com o cliente. Portanto, o servidor de distribuição pode traduzir a solicitação em um comando que faz com que o cliente execute a função de controle correspondente. Portanto, no bloco 726, o cliente pode receber o comando e executar a função de controle indicada no comando.
[0062] Assim, é provido um ambiente para configuração e utilização de UI. Em uma implementação, o terminal principal é configurado para ser a fonte competente para dados do estado do cliente no ambiente previamente descrito. Além do mais, o terminal principal pode ter a capacidade de reconhecer capacidades de dispositivos, tais como um navegador da rede acessível pela Internet, um aparelho decodifi-cador de televisão acoplado de forma comunicativa a uma televisão de definição padrão, um aparelho decodificador de televisão acoplado de forma comunicativa a uma televisão de alta definição, um telefone sem fio, um PDA e assim por diante, tanto pela afiliação do cliente como pelas capacidades de hardware e/ou software.
[0063] Embora a invenção tenha sido descrita em linguagem específica de recursos estruturais e/ou atos metodológicos, deve-se entender que a invenção definida nas reivindicações anexas não está necessariamente limitada aos recursos ou atos específicos descritos. Pelo contrário, os recursos e atos específicos estão revelados como formas exemplares de implementar a invenção reivindicada.
REIVINDICAÇÕES

Claims (12)

1. Método executado por um cliente (104) configurado para comunicar com um dispositivo (134) e um servidor de distribuição (118) caracterizado pelo fato de que compreende as etapas de: detectar capacidades de hardware ou software do dispositivo (134) para executar uma interface de usuário (UI); configurar uma interface de usuário (UI) para iniciar funções de controle do cliente com base nas capacidades de hardware ou software detectadas do dispositivo (134) de modo que o dispositivo (134) é capaz de iniciar uma função de controle do cliente executando a interface de usuário (UI) configurada para formar uma solicitação para provocar a execução da função de controle pelo cliente (104), em que a solicitação deve ser comunicada a partir do dispositivo para o servidor de distribuição (118) no qual é feita uma determinação na medida em que a execução da função de controle pelo cliente é permitida; e comunicar a interface de usuário (UI) configurada ao dispositivo.
2. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que ainda compreende: comunicar a solicitação por uma rede de área local (136) do dispositivo (134) para o cliente (104); e encaminhar a solicitação pelo cliente (104) para o servidor de distribuição (118) através de uma rede de área abrangente (106).
3. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que ainda compreende receber a solicitação pelo servidor de distribuição (118) a partir do dispositivo (134) através de uma rede de área abrangente (106).
4. Método, de acordo com a reivindicação 3, caracterizado pelo fato de que a solicitação é comunicada a partir do dispositivo (134) para o servidor de distribuição (118) sem comunicar a solicitação ao cliente (104).
5. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que: o dispositivo (134) é acoplado de forma comunicativa ao servidor de distribuição (118) por uma rede de área abrangente (106) de maneira que a solicitação seja recebida pelo servidor de distribuição (118) proveniente do dispositivo (134); e se o servidor de distribuição (118) determinar que a execução do cliente (104) da função do controle é permitida, o servidor de distribuição (118) forma e comunica um comando ao cliente (104) para fazer com que o cliente (104) execute a função de controle.
6. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que a pluralidade de funções de controle, quando executada no cliente (104), controla a interação de conteúdo no cliente (104).
7. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que a configuração é selecionada a partir do grupo que consiste do seguinte: seleção de uma ou mais de uma pluralidade de funções para inclusão na UI; arranjo das funções para navegação por um usuário; visibilidade das funções para exibição; resolução das funções para exibição; tamanho e estilo dos caracteres das funções para exibição; e esquema de cor das ditas funções para exibição.
8. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que a UI é configurada como base em uma distância provável na qual um usuário fica posicionado em relação ao dispositivo (134), quando vê a interface do usuário.
9. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que as capacidades de hardware e software do dispositivo (134) são selecionadas a partir do grupo que consiste de: uma ou mais aplicações que estejam disponíveis para execução no dispositivo; controladores de dispositivo; dispositivos de entrada disponíveis; dispositivos de saída disponíveis; velocidade de processamento; quantidade de memória disponível; resolução do dispositivo de exibição incluído no dispositivo; e paleta de cor disponível para exibição de cores em um dispositivo de exibição do dispositivo.
10. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que o dispositivo (104) executa um módulo de interface de usuário implementado como um servidor HTTP que executa a detecção, a configuração e fornece adicionalmente a UI em um formato de HTML ao dispositivo (134).
11. Sistema caracterizado pelo fato de que compreende: um cliente, um dispositivo e um servidor de distribuição, em que o cliente (104) é configurado para comunicar com o dispositivo (134) e o servidor de distribuição (118), compreendendo meios de detecção para detectar capacidades de hardware ou software do dispositivo (134) para executar uma interface de usuário (UI), configurar meios para configurar uma interface de usuário (UI) para iniciar as funções de controle do cliente com base nas capacidades de hardware ou software detectadas do dispositivo (134) de modo que o dispositivo (134) é capaz de iniciar uma função de controle do cliente ao executar a interface de usuário (UI) configurada para formar uma solicitação para causar a execução de uma função de controle pelo cliente (104), e meios de comunicação para comunicar a interface de usuário (UI) configurada ao dispositivo; e em que o dispositivo (134) é adaptado para comunicar a solicitação ao servidor de distribuição (118); e o servidor de distribuição (118) é adaptado para receber a solicitação e é adaptado para determinar se é permitida a execução da função de controle pelo cliente.
12. Cliente (104) configurado para comunicar com um dispositivo (134) e um servidor de distribuição (118) caracterizado pelo fato de que compreende: um processador (202); uma memória (204); e um módulo (132) armazenado na memória (204) e executável no processador (202), em que o módulo (132), quando executado pelo processador (202), direciona o cliente a executar o método conforme definido em qualquer uma das reivindicações 1 a 10.
BRPI0500008-4A 2004-01-05 2005-01-05 Method executed by a client and system configured to communicate with a device and a distribution server BRPI0500008B1 (pt)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/751,694 US8196044B2 (en) 2004-01-05 2004-01-05 Configuration of user interfaces
US10/751.694 2004-01-05

Publications (2)

Publication Number Publication Date
BRPI0500008A BRPI0500008A (pt) 2005-09-06
BRPI0500008B1 true BRPI0500008B1 (pt) 2017-06-27

Family

ID=34574827

Family Applications (1)

Application Number Title Priority Date Filing Date
BRPI0500008-4A BRPI0500008B1 (pt) 2004-01-05 2005-01-05 Method executed by a client and system configured to communicate with a device and a distribution server

Country Status (10)

Country Link
US (2) US8196044B2 (pt)
EP (1) EP1551153B1 (pt)
JP (3) JP2005202951A (pt)
KR (1) KR101109264B1 (pt)
CN (1) CN1649411B (pt)
AT (1) ATE377322T1 (pt)
BR (1) BRPI0500008B1 (pt)
CA (1) CA2491387A1 (pt)
DE (1) DE602005003030T2 (pt)
MX (1) MXPA05000333A (pt)

Families Citing this family (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7444336B2 (en) * 2002-12-11 2008-10-28 Broadcom Corporation Portable media processing unit in a media exchange network
US8782711B2 (en) * 2004-03-31 2014-07-15 The Directv Group, Inc. Satellite television network and near real-time method for downloading and verifying a subscriber remote record request
US20050278766A1 (en) * 2004-05-27 2005-12-15 Benco David S Wireless support for TV pay-per-view ordering
US7937696B2 (en) * 2004-12-16 2011-05-03 International Business Machines Corporation Method, system and program product for adapting software applications for client devices
KR100678951B1 (ko) * 2005-01-11 2007-02-06 삼성전자주식회사 제어 장치의 해상도에 따라 홈 네트워크 기기에 대한 제품제어 코드를 생성하는 장치 및 방법
AU2006272401B2 (en) 2005-07-22 2011-03-31 Fanvision Entertainment Llc System and methods for enhancing the experience of spectators attending a live sporting event
US7908244B2 (en) * 2005-08-31 2011-03-15 Ascent Media Group, Llc Localized media content management
US8806347B2 (en) * 2005-12-27 2014-08-12 Panasonic Corporation Systems and methods for providing distributed user interfaces to configure client devices
EP1818812B1 (en) * 2006-01-25 2016-01-06 Brandt Technologies Limited System and method for effecting simultaneous control of remote computers
US7965703B2 (en) * 2006-08-07 2011-06-21 Time Warner Cable, Inc. System and method for establishing and enforcing service rules in a service provider network
US20080052026A1 (en) * 2006-08-23 2008-02-28 Qurio Holdings, Inc. Configuring a content capture device for one or more service providers
US7941092B2 (en) * 2006-11-22 2011-05-10 Bindu Rama Rao Media distribution server that presents interactive media to a mobile device
US8478250B2 (en) 2007-07-30 2013-07-02 Bindu Rama Rao Interactive media management server
US11256386B2 (en) 2006-11-22 2022-02-22 Qualtrics, Llc Media management system supporting a plurality of mobile devices
US8700014B2 (en) 2006-11-22 2014-04-15 Bindu Rama Rao Audio guided system for providing guidance to user of mobile device on multi-step activities
US10803474B2 (en) 2006-11-22 2020-10-13 Qualtrics, Llc System for creating and distributing interactive advertisements to mobile devices
US8380175B2 (en) * 2006-11-22 2013-02-19 Bindu Rama Rao System for providing interactive advertisements to user of mobile devices
US8266648B2 (en) * 2007-04-20 2012-09-11 United Video Properties, Inc. Systems and methods for determining subscription data
CN107018171A (zh) * 2007-05-03 2017-08-04 三维实验室公司 远程配置便携式设备的用户界面的方法
US20080289000A1 (en) * 2007-05-16 2008-11-20 Motorola, Inc. Method and electronic device for managing applications
US8884981B2 (en) * 2007-09-04 2014-11-11 Apple Inc. Dynamically reconfigurable graphics layer system and method
US20090073485A1 (en) * 2007-09-14 2009-03-19 Kabushiki Kaisha Toshiba Image forming system and control method thereof
US8433812B2 (en) * 2008-04-01 2013-04-30 Microsoft Corporation Systems and methods for managing multimedia operations in remote sessions
KR101560183B1 (ko) 2008-04-17 2015-10-15 삼성전자주식회사 사용자 인터페이스를 제공/수신하는 방법 및 장치
KR101531165B1 (ko) * 2008-04-17 2015-06-25 삼성전자주식회사 클라이언트의 특성을 고려한 사용자 인터페이스를 제공, 수신하는 방법 및 장치
KR101545137B1 (ko) 2008-04-17 2015-08-19 삼성전자주식회사 사용자 인터페이스를 생성하는 방법 및 장치
KR20090110202A (ko) 2008-04-17 2009-10-21 삼성전자주식회사 개인화된 사용자 인터페이스를 디스플레이하는 방법 및 장치
US9311115B2 (en) 2008-05-13 2016-04-12 Apple Inc. Pushing a graphical user interface to a remote device with display rules provided by the remote device
US20090284476A1 (en) * 2008-05-13 2009-11-19 Apple Inc. Pushing a user interface to a remote device
US9870130B2 (en) 2008-05-13 2018-01-16 Apple Inc. Pushing a user interface to a remote device
US20100293462A1 (en) * 2008-05-13 2010-11-18 Apple Inc. Pushing a user interface to a remote device
US8970647B2 (en) 2008-05-13 2015-03-03 Apple Inc. Pushing a graphical user interface to a remote device with display rules provided by the remote device
US8334999B2 (en) * 2008-07-10 2012-12-18 Sharp Laboratories Of America, Inc. Method and system for augmenting imaging device with non-native job settings
KR101531164B1 (ko) * 2008-08-12 2015-06-25 삼성전자주식회사 사용자 인터페이스 디렉터리를 이용한 사용자 인터페이스 제공/수신하는 방법 및 장치
US9009662B2 (en) * 2008-12-18 2015-04-14 Adobe Systems Incorporated Platform sensitive application characteristics
US9009661B2 (en) 2008-12-18 2015-04-14 Adobe Systems Incorporated Platform sensitive application characteristics
US9241062B2 (en) * 2009-05-20 2016-01-19 Citrix Systems, Inc. Methods and systems for using external display devices with a mobile computing device
KR101596505B1 (ko) 2009-06-19 2016-02-23 삼성전자주식회사 멀티미디어 시스템의 사용자 인터페이스 장치 및 방법
KR100949717B1 (ko) * 2009-08-26 2010-03-29 주식회사 아이두잇 모바일 에이브이(av) 장치
KR101612845B1 (ko) * 2009-11-12 2016-04-15 삼성전자주식회사 리모트 ui 서비스 제공 방법 및 장치
JP5648282B2 (ja) * 2009-12-24 2015-01-07 富士ゼロックス株式会社 画面管理装置及びプログラム
US20110258555A1 (en) * 2010-04-15 2011-10-20 Po-Yen Lee Systems and methods for interface management
US20110296460A1 (en) * 2010-05-31 2011-12-01 Samsung Electronics Co., Ltd. Method and apparatus for providing remote user interface (ui) service
US20120089923A1 (en) * 2010-10-08 2012-04-12 Microsoft Corporation Dynamic companion device user interface
US9210272B2 (en) 2010-10-15 2015-12-08 Thomson Licensing System and method for configuration access via connected devices
US9298334B1 (en) * 2011-02-18 2016-03-29 Marvell International Ltd. Method and apparatus for providing a user interface having a guided task flow among a plurality of devices
US10445113B2 (en) * 2011-03-01 2019-10-15 International Business Machines Corporation Method and system for setting the user interface to suit the display screen of an electronic device
US8788944B1 (en) * 2011-03-09 2014-07-22 Amazon Technologies, Inc. Personalized mobile device application presentation using photograph-based capability detection
CN102368828B (zh) * 2011-12-01 2014-06-25 青岛海信宽带多媒体技术有限公司 互联网数字电视的网络配置方法及系统
US20130227426A1 (en) * 2012-02-24 2013-08-29 Sony Corporation Customized user web-page setting techniques
KR101548228B1 (ko) * 2013-12-27 2015-08-28 주식회사 케이티 사용자 상태에 기반하여 사용자 인터페이스를 동기화하는 동기화 기기 및 동기화 방법
US9690542B2 (en) * 2014-12-22 2017-06-27 Microsoft Technology Licensing, Llc Scaling digital personal assistant agents across devices
US10756985B2 (en) 2015-01-27 2020-08-25 Nutanix, Inc. Architecture for implementing user interfaces for centralized management of a computing environment
WO2016141016A1 (en) * 2015-03-03 2016-09-09 Olio Devices, Inc. System and method for automatic third party user interface
US10599459B2 (en) 2016-02-12 2020-03-24 Nutanix, Inc. Entity database distributed replication
CN110998515B (zh) * 2017-05-31 2024-03-15 Abb瑞士股份有限公司 工业控制系统中的现场装置接口
CA3063675A1 (en) 2017-06-16 2018-12-20 Microsoft Technology Licensing, Llc Rules based user interface generation
EP3646174A1 (en) * 2017-06-28 2020-05-06 Microsoft Technology Licensing, LLC Improving user experience according to device hardware capabilities
US10700991B2 (en) 2017-11-27 2020-06-30 Nutanix, Inc. Multi-cluster resource management
CN112416209B (zh) * 2020-10-27 2022-06-14 山东浪潮通软信息科技有限公司 一种基于前后端分离的填报装置

Family Cites Families (139)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3956745A (en) * 1971-12-16 1976-05-11 The Marconi Company Limited Programmable keyboard arrangements
US4535333A (en) * 1982-09-23 1985-08-13 Chamberlain Manufacturing Corporation Transmitter and receiver for controlling remote elements
US4626848A (en) 1984-05-15 1986-12-02 General Electric Company Programmable functions for reconfigurable remote control
WO1989003085A1 (en) 1987-09-28 1989-04-06 Fox James C Automatic program selector
US6850252B1 (en) * 1999-10-05 2005-02-01 Steven M. Hoffberg Intelligent electronic appliance system and method
US6201536B1 (en) * 1992-12-09 2001-03-13 Discovery Communications, Inc. Network manager for cable television system headends
US6828993B1 (en) * 1992-12-09 2004-12-07 Discovery Communications, Inc. Set top terminal that stores programs locally and generates menus
EP0856993B1 (en) * 1992-12-09 2002-07-31 Discovery Communications, Inc. Set top terminal for cable television delivery systems
DE69432199T2 (de) * 1993-05-24 2004-01-08 Sun Microsystems, Inc., Mountain View Graphische Benutzerschnittstelle mit Verfahren zur Schnittstellebildung mit fernsteuernden Einrichtungen
US6239794B1 (en) * 1994-08-31 2001-05-29 E Guide, Inc. Method and system for simultaneously displaying a television program and information about the program
US5579055A (en) * 1993-06-07 1996-11-26 Scientific-Atlanta, Inc. Electronic program guide and text channel data controller
EP1091287A3 (en) * 1994-02-04 2001-05-30 Sun Microsystems, Inc. A standard interface system between different lcd panels and a common frame buffer output
US6005561A (en) * 1994-12-14 1999-12-21 The 3Do Company Interactive information delivery system
US6215467B1 (en) * 1995-04-27 2001-04-10 Canon Kabushiki Kaisha Display control apparatus and method and display apparatus
JPH08307793A (ja) * 1995-05-08 1996-11-22 Matsushita Electric Ind Co Ltd ワイドテレビジョン受信機
US5832298A (en) * 1995-05-30 1998-11-03 Canon Kabushiki Kaisha Adaptive graphical user interface for a network peripheral
US5784177A (en) * 1995-05-30 1998-07-21 Canon Kabushiki Kaisha Printer/facsimile driver
AU716790B2 (en) * 1995-07-11 2000-03-09 Koninklijke Philips Electronics N.V. Video-on-demand system
JP3110991B2 (ja) * 1995-09-22 2000-11-20 インターナショナル・ビジネス・マシーンズ・コーポレ−ション 画面表示制御方法及び装置
US6002394A (en) * 1995-10-02 1999-12-14 Starsight Telecast, Inc. Systems and methods for linking television viewers with advertisers and broadcasters
US6473609B1 (en) 1995-12-11 2002-10-29 Openwave Systems Inc. Method and architecture for interactive two-way communication devices to interact with a network
EP0798921B1 (en) * 1996-03-29 2004-12-29 Matsushita Electric Industrial Co., Ltd. Broadcast receiving apparatus for television signals and program display method
US6025837A (en) * 1996-03-29 2000-02-15 Micrsoft Corporation Electronic program guide with hyperlinks to target resources
US6788709B1 (en) * 1996-05-16 2004-09-07 Kabushiki Kaisha Infocity Method for transmitting and displaying information and device for displaying information
PT932398E (pt) * 1996-06-28 2006-09-29 Ortho Mcneil Pharm Inc Utilizacao do topiramento ou dos seus derivados para a producao de um medicamento para o tratamento de disturbios bipolares maniaco- depressivos
US6151059A (en) * 1996-08-06 2000-11-21 Starsight Telecast, Inc. Electronic program guide with interactive areas
US5914713A (en) * 1996-09-23 1999-06-22 Fmr Corp. Accessing data fields from a non-terminal client
US20030066085A1 (en) * 1996-12-10 2003-04-03 United Video Properties, Inc., A Corporation Of Delaware Internet television program guide system
US6130726A (en) * 1997-03-24 2000-10-10 Evolve Products, Inc. Program guide on a remote control display
US8769598B2 (en) * 1997-03-24 2014-07-01 Logitech Europe S.A. Program guide on a remote control
US7503057B2 (en) * 1997-06-02 2009-03-10 Sony Corporation Client and server system
US6028600A (en) * 1997-06-02 2000-02-22 Sony Corporation Rotary menu wheel interface
US6072483A (en) * 1997-06-02 2000-06-06 Sony Corporation Active frame scroll interface
IL121230A (en) * 1997-07-03 2004-05-12 Nds Ltd Intelligent electronic program guide
US6600496B1 (en) * 1997-09-26 2003-07-29 Sun Microsystems, Inc. Interactive graphical user interface for television set-top box
US6639613B1 (en) * 1997-11-21 2003-10-28 Xsides Corporation Alternate display content controller
US6337717B1 (en) * 1997-11-21 2002-01-08 Xsides Corporation Alternate display content controller
US7117440B2 (en) * 1997-12-03 2006-10-03 Sedna Patent Services, Llc Method and apparatus for providing a menu structure for an interactive information distribution system
US6127941A (en) * 1998-02-03 2000-10-03 Sony Corporation Remote control device with a graphical user interface
US6445398B1 (en) * 1998-02-04 2002-09-03 Corporate Media Partners Method and system for providing user interface for electronic program guide
JP3657424B2 (ja) * 1998-03-20 2005-06-08 松下電器産業株式会社 番組情報を放送するセンター装置と端末装置
US6476825B1 (en) * 1998-05-13 2002-11-05 Clemens Croy Hand-held video viewer and remote control device
US6216237B1 (en) * 1998-06-19 2001-04-10 Lucent Technologies Inc. Distributed indirect software instrumentation
JP3202968B2 (ja) * 1998-06-30 2001-08-27 インターナショナル・ビジネス・マシーンズ・コーポレーション 表示制御情報生成方法及びコンピュータ
US6556221B1 (en) * 1998-07-01 2003-04-29 Sony Corporation Extended elements and mechanisms for displaying a rich graphical user interface in panel subunit
US7865832B2 (en) * 1999-07-26 2011-01-04 Sony Corporation Extended elements and mechanisms for displaying a rich graphical user interface in panel subunit
US6442755B1 (en) * 1998-07-07 2002-08-27 United Video Properties, Inc. Electronic program guide using markup language
US6229524B1 (en) * 1998-07-17 2001-05-08 International Business Machines Corporation User interface for interaction with video
US6426762B1 (en) * 1998-07-17 2002-07-30 Xsides Corporation Secondary user interface
KR100604729B1 (ko) * 1998-07-23 2006-07-28 세드나 페이턴트 서비시즈, 엘엘씨 대화형 사용자 인터페이스를 생성, 분배 및 수신하기 위한시스템 및 방법
US7831930B2 (en) * 2001-11-20 2010-11-09 Universal Electronics Inc. System and method for displaying a user interface for a remote control application
US6754905B2 (en) * 1998-07-23 2004-06-22 Diva Systems Corporation Data structure and methods for providing an interactive program guide
US6820278B1 (en) * 1998-07-23 2004-11-16 United Video Properties, Inc. Cooperative television application system having multiple user television equipment devices
US6437836B1 (en) * 1998-09-21 2002-08-20 Navispace, Inc. Extended functionally remote control system and method therefore
US6614457B1 (en) * 1998-10-27 2003-09-02 Matsushita Electric Industrial Co., Ltd. Focus control device that moves a focus in a GUI screen
US6489979B1 (en) * 1998-10-30 2002-12-03 International Business Machines Corporation Non-computer interface to a database and digital library
JP3926047B2 (ja) * 1998-11-16 2007-06-06 三菱電機株式会社 情報表示装置
US6804825B1 (en) * 1998-11-30 2004-10-12 Microsoft Corporation Video on demand methods and systems
US6392664B1 (en) * 1998-11-30 2002-05-21 Webtv Networks, Inc. Method and system for presenting television programming and interactive entertainment
US6628302B2 (en) * 1998-11-30 2003-09-30 Microsoft Corporation Interactive video programming methods
US7111242B1 (en) * 1999-01-27 2006-09-19 Gateway Inc. Method and apparatus for automatically generating a device user interface
CA2364932A1 (en) * 1999-02-26 2000-08-31 Sony Electronics Inc. Blocking system
US6904610B1 (en) * 1999-04-15 2005-06-07 Sedna Patent Services, Llc Server-centric customized interactive program guide in an interactive television environment
JP2000339277A (ja) * 1999-05-27 2000-12-08 Matsushita Electric Ind Co Ltd 携帯端末装置及びそのデータ表示方法
EP1195059B1 (en) * 1999-05-28 2004-11-10 Nokia Corporation Interactive services user interface and server
AR026128A1 (es) * 1999-06-11 2003-01-29 United Video Properties Inc Un metodo y una disposicion para proveer a un usuario acceso a una aplicacion para television interactiva
US6721954B1 (en) * 1999-06-23 2004-04-13 Gateway, Inc. Personal preferred viewing using electronic program guide
US7200683B1 (en) * 1999-08-17 2007-04-03 Samsung Electronics, Co., Ltd. Device communication and control in a home network connected to an external network
JP2001069477A (ja) * 1999-08-31 2001-03-16 Sony Corp 番組提供システム及び番組提供方法
US6897833B1 (en) * 1999-09-10 2005-05-24 Hewlett-Packard Development Company, L.P. Portable user interface
US6630943B1 (en) * 1999-09-21 2003-10-07 Xsides Corporation Method and system for controlling a complementary user interface on a display surface
US6292187B1 (en) * 1999-09-27 2001-09-18 Sony Electronics, Inc. Method and system for modifying the visual presentation and response to user action of a broadcast application's user interface
US7134133B1 (en) * 1999-11-08 2006-11-07 Gateway Inc. Method, system, and software for creating and utilizing broadcast electronic program guide templates
US20050235319A1 (en) * 1999-12-10 2005-10-20 Carpenter Kenneth F Features for use with advanced set-top applications on interactive television systems
US6421067B1 (en) * 2000-01-16 2002-07-16 Isurftv Electronic programming guide
US6750886B1 (en) * 2000-01-26 2004-06-15 Donald B. Bergstedt Method and software for displaying information on a display area of a screen of an electronic device
GB0003306D0 (en) * 2000-02-15 2000-04-05 Koninkl Philips Electronics Nv Control of interconnected audio/video devices
US6677964B1 (en) * 2000-02-18 2004-01-13 Xsides Corporation Method and system for controlling a complementary user interface on a display surface
JP4385269B2 (ja) 2000-02-18 2009-12-16 ソニー株式会社 ネットワークシステム及びネットワーク端末装置
AU2001247422A1 (en) 2000-03-14 2001-09-24 Edapta, Inc. A system and method for enabling dynamically adaptable user interfaces for electronic devices
US6839903B1 (en) * 2000-03-24 2005-01-04 Sony Corporation Method of selecting a portion of a block of data for display based on characteristics of a display device
GB0007474D0 (en) * 2000-03-29 2000-05-17 Hewlett Packard Co Location-Dependent User Interface
US6587125B1 (en) * 2000-04-03 2003-07-01 Appswing Ltd Remote control system
EP1334427A2 (en) * 2000-04-19 2003-08-13 Koninklijke Philips Electronics N.V. Method and apparatus for adapting a graphical user interface
JP4813638B2 (ja) * 2000-04-20 2011-11-09 ソニー株式会社 ネットワーク番組録画予約システム及びネットワーク番組録画予約方法並びに録画機器及び情報端末機器
US20020059586A1 (en) * 2000-04-24 2002-05-16 John Carney Method and system for personalization and authorization of interactive television content
US6941520B1 (en) * 2000-05-09 2005-09-06 International Business Machines Corporation Method, system, and program for using a user interface program to generate a user interface for an application program
JP2001333414A (ja) * 2000-05-22 2001-11-30 Hitachi Ltd 番組情報配信装置および方法とこれに関する端末および装置
US20020053084A1 (en) * 2000-06-01 2002-05-02 Escobar George D. Customized electronic program guide
JP2004531780A (ja) * 2000-06-22 2004-10-14 マイクロソフト コーポレーション 分散型コンピューティングサービスプラットフォーム
US6449767B1 (en) * 2000-06-30 2002-09-10 Keen Personal Media, Inc. System for displaying an integrated portal screen
US6700592B1 (en) * 2000-06-30 2004-03-02 Sony Corporation Method and system for dynamically building the graphical user interface of a home AV network device
US20020004935A1 (en) * 2000-07-03 2002-01-10 Huotari Allen Joseph System for remote automated installation and configuration of digital subscriber line modems
US7337217B2 (en) * 2000-07-21 2008-02-26 Samsung Electronics Co., Ltd. Architecture for home network on world wide web
US20020069415A1 (en) * 2000-09-08 2002-06-06 Charles Humbard User interface and navigator for interactive television
US7124424B2 (en) * 2000-11-27 2006-10-17 Sedna Patent Services, Llc Method and apparatus for providing interactive program guide (IPG) and video-on-demand (VOD) user interfaces
US7149884B2 (en) * 2001-01-25 2006-12-12 Dell Products L.P. Method and system for configuring a computer system via a wireless communication link
US7093003B2 (en) * 2001-01-29 2006-08-15 Universal Electronics Inc. System and method for upgrading the remote control functionality of a device
JP2002238041A (ja) 2001-02-07 2002-08-23 Canon Sales Co Inc コンテンツ配信システム及び装置及び方法及び記憶媒体及びプログラム
US20020111995A1 (en) * 2001-02-14 2002-08-15 Mansour Peter M. Platform-independent distributed user interface system architecture
US7155681B2 (en) * 2001-02-14 2006-12-26 Sproqit Technologies, Inc. Platform-independent distributed user interface server architecture
US20020120571A1 (en) * 2001-02-23 2002-08-29 David Maung Wireless financial system
US7089499B2 (en) * 2001-02-28 2006-08-08 International Business Machines Corporation Personalizing user interfaces across operating systems
US7263666B2 (en) * 2001-04-09 2007-08-28 Triveni Digital, Inc. Targeted remote GUI for metadata generator
JP2002328801A (ja) * 2001-05-01 2002-11-15 Matsushita Electric Ind Co Ltd 表示処理装置
US20040046787A1 (en) * 2001-06-01 2004-03-11 Attachmate Corporation System and method for screen connector design, configuration, and runtime access
US7076734B2 (en) * 2001-06-22 2006-07-11 Microsoft Corporation Systems and methods for providing a dynamically controllable user interface that embraces a variety of media
US7016963B1 (en) * 2001-06-29 2006-03-21 Glow Designs, Llc Content management and transformation system for digital content
US20030043191A1 (en) * 2001-08-17 2003-03-06 David Tinsley Systems and methods for displaying a graphical user interface
US6958759B2 (en) * 2001-08-28 2005-10-25 General Instrument Corporation Method and apparatus for preserving, enlarging and supplementing image content displayed in a graphical user interface
US7234111B2 (en) * 2001-09-28 2007-06-19 Ntt Docomo, Inc. Dynamic adaptation of GUI presentations to heterogeneous device platforms
EP1442367A2 (en) * 2001-10-04 2004-08-04 Koninklijke Philips Electronics N.V. Method of styling a user interface and device with adaptive user interface
US6978424B2 (en) * 2001-10-15 2005-12-20 General Instrument Corporation Versatile user interface device and associated system
US7146407B2 (en) * 2001-10-22 2006-12-05 Pocketthis, Inc. Data synchronization mechanism for information browsing systems
JP2003140630A (ja) * 2001-11-02 2003-05-16 Canon Inc 表示装置及び表示システム
US20040237104A1 (en) * 2001-11-10 2004-11-25 Cooper Jeffery Allen System and method for recording and displaying video programs and mobile hand held devices
US7124367B2 (en) * 2001-11-14 2006-10-17 Gateway Inc. Adjustable user interface
US7095456B2 (en) * 2001-11-21 2006-08-22 Ui Evolution, Inc. Field extensible controllee sourced universal remote control method and apparatus
AUPR962001A0 (en) * 2001-12-19 2002-01-24 Redbank Manor Pty Ltd Document display system and method
KR100838463B1 (ko) 2001-12-31 2008-06-16 엘지전자 주식회사 웹 서버, 홈 네트워크 디바이스, 디바이스 특성에 따른사용자 인터페이스 방법
US7039938B2 (en) * 2002-01-02 2006-05-02 Sony Corporation Selective encryption for video on demand
JP2003271276A (ja) * 2002-03-15 2003-09-26 Matsushita Electric Ind Co Ltd データ出力指示装置およびそのプログラム
US20030192047A1 (en) * 2002-03-22 2003-10-09 Gaul Michael A. Exporting data from a digital home communication terminal to a client device
JP2003288187A (ja) * 2002-03-27 2003-10-10 Brother Ind Ltd 印刷装置、ネットワークサーバ、および通信方法
JP2003319360A (ja) 2002-04-18 2003-11-07 Nippon Telegraph & Telephone West Corp 映像配信システム、及び同システムにおける映像コンテンツのアクセス方法、認証アクセスサーバ、ウェブサーバ、並びにサーバプログラム
US7174126B2 (en) * 2002-05-03 2007-02-06 Time Warner Interactive Video Group Inc. Technique for effectively accessing programming listing information in an entertainment delivery system
US7987491B2 (en) * 2002-05-10 2011-07-26 Richard Reisman Method and apparatus for browsing using alternative linkbases
JP2003348675A (ja) * 2002-05-27 2003-12-05 Canon Inc リモコン送信装置、リモート制御サブシステム、リモート制御システム、リモート制御装置およびリモート制御方法
JP2003348674A (ja) * 2002-05-30 2003-12-05 Kyocera Corp リモコン端末およびリモコンシステム
US8370744B2 (en) * 2002-06-19 2013-02-05 Microsoft Corporation User interface for operating a computer from a distance
US7176943B2 (en) * 2002-10-08 2007-02-13 Microsoft Corporation Intelligent windows bumping method and system
US20040090464A1 (en) * 2002-11-01 2004-05-13 Shake Francis David Method for automatically determining equipment control code sets from a database and presenting information to a user interface
US20040100490A1 (en) * 2002-11-21 2004-05-27 International Business Machines Corporation Skin button enhancements for remote control
US20040177370A1 (en) * 2002-12-10 2004-09-09 Mydtv, Inc. Storage and use of viewer preference data in a device remote from a set-top box
US7444336B2 (en) * 2002-12-11 2008-10-28 Broadcom Corporation Portable media processing unit in a media exchange network
US7430602B2 (en) * 2002-12-20 2008-09-30 Qualcomm Incorporated Dynamically provisioned mobile station and method therefor
US7130623B2 (en) * 2003-04-17 2006-10-31 Nokia Corporation Remote broadcast recording
JP4316295B2 (ja) 2003-05-21 2009-08-19 株式会社エヌ・ティ・ティ・ドコモ シンクライアントシステム、シンクライアント端末機、中継装置、サーバ装置及びシンクライアント端末画面表示方法
US7106383B2 (en) * 2003-06-09 2006-09-12 Matsushita Electric Industrial Co., Ltd. Method, system, and apparatus for configuring a signal processing device for use with a display device

Also Published As

Publication number Publication date
US20050149501A1 (en) 2005-07-07
JP6306971B2 (ja) 2018-04-04
JP2005202951A (ja) 2005-07-28
CA2491387A1 (en) 2005-07-05
JP2012141990A (ja) 2012-07-26
BRPI0500008A (pt) 2005-09-06
CN1649411B (zh) 2011-04-06
MXPA05000333A (es) 2005-08-19
DE602005003030D1 (de) 2007-12-13
JP5650143B2 (ja) 2015-01-07
ATE377322T1 (de) 2007-11-15
CN1649411A (zh) 2005-08-03
EP1551153A1 (en) 2005-07-06
US8196044B2 (en) 2012-06-05
JP2014238869A (ja) 2014-12-18
EP1551153B1 (en) 2007-10-31
DE602005003030T2 (de) 2008-02-28
US20120204115A1 (en) 2012-08-09
KR20050072069A (ko) 2005-07-08
KR101109264B1 (ko) 2012-01-30

Similar Documents

Publication Publication Date Title
BRPI0500008B1 (pt) Method executed by a client and system configured to communicate with a device and a distribution server
CA2823532C (en) Systems and methods for navigating through content in an interactive media guidance application
KR100772392B1 (ko) 홈 네트워크에서 tv 채널을 이용한 콘텐트 처리 방법 및그 장치
JP2006511997A (ja) 映像信号を表示するためのディスプレイを備えた携帯コントローラを有するレジデンシャルゲートウェイシステム
US20160112752A1 (en) Apparatus and method for displaying a program guide
US20090295998A1 (en) Information processing device, display method and program
EP3378236B1 (en) Methods and systems for efficiently downloading media assets
US20070143687A1 (en) Method for providing a user interface configured using three frames in a DLNA system
KR101702563B1 (ko) 직관적인 선택에 기초해 디바이스에 액세스하는 방법 및 장치
US11910047B2 (en) Systems and methods for modifying the display of inputs on a user input device
KR20120023420A (ko) 컨텐츠 전환 방법 및 이를 수행하는 디스플레이 장치
JP4226990B2 (ja) 通信装置及びコンピュータで実行可能なプログラム
US9277285B2 (en) Broadcasting method and system with variable audio/video program menu
KR101614946B1 (ko) 장면 간의 링크를 이용한 멀티미디어 컨텐츠 재생 방법 및 장치
US20240163495A1 (en) Systems and methods for modifying the display of inputs on a user input device
KR20130026879A (ko) 컨텐츠 재생 장치, 시스템 및 그 제어 방법
WO2016196624A1 (en) Systems and methods for determining conceptual boundaries in content
JP2005033484A (ja) 映像編集システム、映像編集装置、録画再生装置および映像編集方法
JP4796110B2 (ja) 通信装置
KR20150055164A (ko) 스마트 원격 제어 장치 및 스마트 원격 제어 장치에서 실행되는 어플리케이션 원격 제어 방법
CN117369690A (zh) 显示设备和文件快捷访问方法
KR20110138516A (ko) 네트워크 장치 및 그의 네트워크 환경 설정 방법
JP2010130203A (ja) 表示装置、表示処理方法、およびプログラム

Legal Events

Date Code Title Description
B25A Requested transfer of rights approved

Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC (US)

B07A Application suspended after technical examination (opinion) [chapter 7.1 patent gazette]
B09A Decision: intention to grant [chapter 9.1 patent gazette]
B09X Republication of the decision to grant [chapter 9.1.3 patent gazette]
B16A Patent or certificate of addition of invention granted [chapter 16.1 patent gazette]
B21F Lapse acc. art. 78, item iv - on non-payment of the annual fees in time

Free format text: REFERENTE A 16A ANUIDADE.

B24J Lapse because of non-payment of annual fees (definitively: art 78 iv lpi, resolution 113/2013 art. 12)

Free format text: EM VIRTUDE DA EXTINCAO PUBLICADA NA RPI 2612 DE 26-01-2021 E CONSIDERANDO AUSENCIA DE MANIFESTACAO DENTRO DOS PRAZOS LEGAIS, INFORMO QUE CABE SER MANTIDA A EXTINCAO DA PATENTE E SEUS CERTIFICADOS, CONFORME O DISPOSTO NO ARTIGO 12, DA RESOLUCAO 113/2013.