DE602005003030T2 - Konfiguration von einer Benutzerschnittstelle - Google Patents

Konfiguration von einer Benutzerschnittstelle Download PDF

Info

Publication number
DE602005003030T2
DE602005003030T2 DE602005003030T DE602005003030T DE602005003030T2 DE 602005003030 T2 DE602005003030 T2 DE 602005003030T2 DE 602005003030 T DE602005003030 T DE 602005003030T DE 602005003030 T DE602005003030 T DE 602005003030T DE 602005003030 T2 DE602005003030 T2 DE 602005003030T2
Authority
DE
Germany
Prior art keywords
client
user interface
distribution server
request
control function
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
DE602005003030T
Other languages
English (en)
Other versions
DE602005003030D1 (de
Inventor
Peter T. c/o Microsoft Corporation Redmond Barrett
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
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 Corp filed Critical Microsoft Corp
Publication of DE602005003030D1 publication Critical patent/DE602005003030D1/de
Application granted granted Critical
Publication of DE602005003030T2 publication Critical patent/DE602005003030T2/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Stored Programmes (AREA)
  • External Artificial Organs (AREA)

Description

  • Die vorliegende Erfindung betrifft im Allgemeinen den Bereich der Benutzerschnittstellen und im Besonderen Konfigurationen von Benutzerschnittstellen.
  • Benutzer von Clients wie beispielsweise Set-Top-Boxen, drahtlosen Telefonen, Computern und so weiter werden einem immer breiteren Spektrum der verschiedensten Inhalte ausgesetzt. Ein Benutzer beispielsweise einer Set-Top-Box betrachtet möglicherweise ein herkömmliches Fernsehprogramm, das er von einem Rundfunk-Netzwerk zum Anzeigen auf einem Fernseher erhalten hat, sowie Filme, die auf einer Pro-Betrachtungs-Basis abgerechnet werden, wie Pay-per-view, Videos auf Anforderung (Video-on-demand – VOD), des Weiteren interaktive Videospiele und so weiter. Gleichermaßen kann ein Benutzer eines drahtlosen Telefons herkömmliche Telefonanrufe tätigen und erhalten sowie E-Mails lesen, Termine festlegen, digitale Musik abspielen und so weiter.
  • Wie in den vorangehenden Beispielen dargelegt, haben die von Clients bereitgestellten Fähigkeiten ebenfalls fortgesetzt dazu beigetragen, der ständig steigenden Vielfalt von Inhalten Rechnung zu tragen. So kann beispielsweise ein Benutzer in der Lage sein, E-Mail auf einem Computer sowie auf einer Set-Top-Box, einem persönlichen digitalen Assistenten (personal digital assistant – PDA) sowie einem drahtlosen Telefon zu empfangen. Obwohl sich die Fähigkeiten von Clients und Netzwerken, über die die Clients in Kommunikationsverbindung treten, verbessert haben, ist eine Vielzahl von Anwendungen immer noch nicht implementiert, da die Anwendungen die Fähigkeiten und Beschränkungen der Clients und der Netzwerke nicht berücksichtigen. Mit anderen Worten, eine Anwendung, die zum Verwenden auf einer speziellen Art von Client konfiguriert ist, beispielsweise einem Client, der eine besondere Kombination von Hardware- und/oder Software-Fähigkeiten besitzt, kann auf einer anderen Art von Client, der diese spezielle Kombination nicht besitzt, nur begrenzte Nützlichkeit besitzen. Dateneingabeintensive Anwendungen wie beispielsweise dann, wenn sie in einer herkömmlichen Fernseh-Umgebung implementiert sind, können wegen der Beschränkungen der dem Benutzer zur Verfügung stehenden Eingabevorrichtungen und wegen der begrenzten Auflösung herkömmlicher Fernsehgeräte eingeschränkt sein. So kann beispielsweise eine herkömmliche Fernsteuerung Knöpfe besitzen, mit denen direkt auf Fernsehkanäle zugegriffen werden kann, sie kann eine Vier-Wege-Navigation anbieten, das Gerät ein- und ausschalten sowie die Lautstärke betätigen. Funktionen wie beispielsweise Texteingabe und Suchen in einer langen Optionsliste können mit einer Tastatur einfach durchgeführt werden, beim Nutzen einer herkömmlichen Fernsteuerung können diese Funktionen jedoch zeitraubend und lästig werden.
  • Darüber hinaus kann die begrenzte Auflösung, die auf einem Fernsehgerät mit Standardauflösung verfügbar ist, die effektive Auflösung von Daten einschränken, die dem Benutzer zu einem beliebigen Zeitpunkt angezeigt werden können. So können beispielsweise Beschränkungen bei dem Anzeigen von lesbarem Text auf einem Fernsehgerät gemäß dem herkömmlichen Standard des National Television Systems Committee (NTSC) die Menge von Text einschränken, die auf dem Fernsehgerät zu einem beliebigen Zeitpunkt angezeigt werden kann. Des Weiteren kann die Entfernung, in der die Anzeige zu betrachten ist, die effektive Auflösung der Anzeige beschränken. Beispielsweise kann es vorkommen, dass zum Anzeigen eines elektronischen Programmführers auf einem Fernsehgerät mit Standardauflösung in einer Art, dass die Anzeige betrachtet werden kann, wenn der Benutzer in einer typischen Entfernung von dem Fernsehgerät positioniert ist, der Text des elektronischen Programmführers vergrößert werden muss, damit er aus der gewünschten Entfernung lesbar ist. Daher ist es möglich, selbst wenn eine Tastatur für den Benutzer bereitgestellt ist, dass das Fernseherlebnis nicht in der Lage ist, die Funktionalität bereitzustellen, die bereitgestellt wird, wenn der Benutzer mit Hilfe eines Computers mit der Anwendung interagiert.
  • Demgemäß besteht ein fortdauerndes Bedürfnis nach Benutzerschnittstellen, die die Fähigkeiten und Beschränkungen von Vorrichtungen berücksichtigen.
  • Das Patent US 2002/111995 A1 offenbart ein verteiltes Benutzerschnittstellen (user interface – UI)-System, das eine Client-Vorrichtung umfasst, die konfiguriert ist, um eine Benutzerschnittstelle für eine serverbasierte Anwendung bereitzustellen. Die Client-Vorrichtung kommuniziert über ein Netzwerk, beispielsweise das Internet, mit einem Benutzerschnittstellen-Server. Der Benutzerschnittstellen-Server führt ein Formatieren für die Benutzerschnittstelle durch, die vorzugsweise eine Anzahl nativer Benutzerschnittstellen-Steuerungen nutzt, die lokal an der Client-Vorrichtung verfügbar sind. Die Client-Vorrichtung ist verantwortlich für das tatsächliche Darstellen der Benutzerschnittstelle. Die Quelldatenobjekte werden von dem Benutzerschnittstellen-Server auf die Client-Vorrichtung heruntergeladen, falls notwendig, und die Client-Vorrichtung besetzt die Benutzerschnittstelle mit den heruntergeladenen Quelldatenobjekten. Die Client-Vorrichtung nutzt einen Zwischenspeicher, um die Quelldatenobjekte zum leichten Abrufen lokal zu speichern.
  • Das Patent US 2003/093495 A1 schlägt Datenobjekte vor, die mit Hilfe eines Computersystems gesammelt und organisiert und für einen späteren Zugriff einer mobilen Vorrichtung wie beispielsweise eines drahtlosen Telefons über ein Computer-Netzwerk gespeichert werden. Die Datenobjekte besitzen Attribute und auf sie kann mit vorher festgelegten Aktionen und zugeordneten Arten eingewirkt werden, um den Zugriff von Benutzern auf derartige Datenobjekte über die begrenzten Benutzerschnittstellen- und Bandbreiten-Fähigkeiten einer mobilen Vorrichtung zu vereinfachen.
  • Das Patent WO 01/69380 A beschreibt ein System und ein Verfahren zum Ermöglichen dynamisch adaptierbarer Benutzerschnittstellen für elektronische Vorrichtungen. Ein Verfahren des Adaptierens einer vorher festgelegten Schnittstelle wird beschrieben, wobei das Verfahren folgende Schritte umfasst: das Identifizieren eines Vorzugsobjektes, das wenigstens eine Benutzereigenschaft einer Reihe von Benutzereigenschaften umfasst, wobei die Reihe von Benutzereigenschaften wenigstens eine von Situations-Informationen, Umgebungs-Informationen, Verhaltens-Informationen und Kontext-Informationen umfasst, das Übertragen eines ersten Fähigkeits-Objektes von einer ausgewählten elektronischen Vorrichtung an eine Anpassungsvorrichtung (Adaptation Engine), wobei das erste Fähigkeits-Objekt eins oder mehrere Attribute definiert, das oder die die elektronische Vorrichtung betrifft oder betreffen, Übertragen eines zweiten Fähigkeits-Objektes an die Anpassungsvorrichtung, wobei das zweite Fähigkeits-Objekt eins oder mehrere Attribute einer Informationsquelle definiert, auf die durch die elektronische Vorrichtung zugegriffen wird, und Erzeugen eines Adaptations-Objektes, das wenigstens in Teilen auf der wenigstens einen Benutzereigenschaft, den Inhalten des übertragenen ersten Fähigkeits-Objektes sowie den Inhalten des übertragenen zweiten Fä higkeits-Objektes basiert, wobei das Adaptations-Objekt wenigstens eine Adaptations-Regel zum Adaptieren von Informationen des Faktors Mensch definiert, die von der elektronischen Vorrichtung oder der Informationsquelle übertragen werden.
  • Es ist die Aufgabe der vorliegenden Erfindung, eine Vorrichtung mit einer Benutzerschnittstelle zum Steuern eines Clients auf eine Weise, die die Fähigkeiten und Rechte der genannten Vorrichtung berücksichtigt, bereitzustellen. Die Aufgabe wird durch den Gegenstand der unabhängigen Ansprüche erfüllt. Bevorzugte Ausführungsformen der vorliegenden Erfindung werden durch die abhängigen Ansprüche definiert.
  • Das Konfigurieren von Benutzerschnittstellen wird beschrieben. Den Vorrichtungen werden die Benutzerschnittstellen zum Initialisieren von Steuerfunktionen des Client durch einen Client bereitgestellt. Die Benutzerschnittstellen werden beispielsweise auf den Vorrichtungen ausgeführt, um Steuerfunktionen des Client zu initialisieren. So kann beispielsweise eine Benutzerschnittstelle auf einer lokalen Vorrichtung ausgeführt werden, die über eine lokale Netzwerkverbindung wie beispielsweise ein lokales Netzwerk (local area network – LAN) in Kommunikationsverbindung zu dem Client steht. Die Benutzerschnittstelle kann darüber hinaus auf einer entfernten Vorrichtung ausgeführt werden, die über eine entfernte Netzwerkverbindung wie beispielsweise ein Fernnetzwerk (wide area network – WAN) in Kommunikationsverbindung zu dem Client steht. Die lokalen und entfernten Vorrichtungen führen die jeweiligen Benutzerschnittstellen aus, die von dem Client erhalten wurden, um Steuerfunktionen des Client zu initialisieren, beispielsweise, um Inhalte aufzuzeichnen, Die Benutzerschnittstellen können auf Basis erkannter Hardware- und/oder Software-Fähigkeiten der jeweiligen lokalen und entfernten Vorrichtungen, die die Benutzerschnittstellen ausführen, konfiguriert sein. Hardware- und Software-Fähigkeiten können Auflösung, Verarbeitungsleistung, Speicherressourcen, verfügbare Anwendungen und so weiter umfassen. Daher können die lokalen und entfernten Vorrichtungen jeweils mit den jeweiligen Benutzerschnittstellen zum Initialisieren derjenigen Steuerfunktion des Client, die sich an die Hardware- und/oder Software-Ressourcen der jeweiligen Vorrichtung wendet, bereitgestellt werden.
  • In einer Implementierung umfasst ein Verfahren das Empfangen einer Anfrage von einer Vorrichtung. Die Anfrage ist für eine Benutzerschnittstelle (user interface – UI) von ei nem Client. Wenn die Benutzerschnittstelle durch die Vorrichtung ausgeführt wird, wird sie konfiguriert, um eine Anforderung zur Ausführung einer Steuerfunktion durch den Client zu erzeugen. Eine Verarbeitung der Anforderung bestimmt, ob die Ausführung durch den Client der Steuerfunktion zugelassen wird. Die Verarbeitung wird an einer Kopfstation unter Verwendung von Client-Zustandsdaten durchgeführt. Die Hardware- und/oder Software-Fähigkeiten der Vorrichtung zum Ausführen der Benutzerschnittstelle werden erkannt. Die Benutzerschnittstelle wird auf Basis der Hardware- und/oder Software-Fähigkeiten der Vorrichtung konfiguriert.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • 1 ist eine Darstellung einer Umgebung in einer beispielhaften Implementierung, die einen Inhalts-Anbieter umfasst, der über ein Netzwerk in Kommunikationsverbindung mit einem Client steht.
  • 2 ist eine Darstellung einer beispielhaften Implementierung, die einen Distribution-Server, den Client, eine lokale Vorrichtung sowie eine entfernte Vorrichtung aus 1 ausführlicher darstellt.
  • 3 ist ein Ablaufdiagramm eines Verfahrens in einer beispielhaften Implementierung, in der der Client eine Benutzerschnittstelle zur Ausführung auf der lokalen Vorrichtung aus 2 konfiguriert.
  • 4 ist eine Darstellung einer beispielhaften Implementierung, die eine Benutzerschnittstelle darstellt, die zum Ausgeben durch den Client konfiguriert ist, wenn sich der Benutzer nahe an der Anzeigevorrichtung wie beispielsweise der Anzeigevorrichtung aus 1 befindet.
  • 5 ist eine Darstellung einer beispielhaften Implementierung, die eine Benutzerschnittstelle darstellt, die zum Ausgeben durch den Client konfiguriert ist, wenn sich der Benutzer in einer größeren Entfernung von der Anzeigevorrichtung befindet als die Benutzerschnittstelle aus 4.
  • 6 ist ein Ablaufdiagramm, das ein Verfahren in einer beispielhaften Implementierung darstellt, in der eine konfigurierte Benutzerschnittstelle aus 3 von einem Benutzer zum Initialisieren einer Steuerfunktion des Client genutzt wird.
  • 7 ist ein Ablaufdiagramm, das ein Verfahren in einer beispielhaften Implementierung darstellt, in der eine Benutzerschnittstelle für die entfernte Vorrichtung aus 2 konfiguriert ist und durch diese ausgeführt wird, um eine oder mehrere Steuerfunktionen des Client zu initialisieren.
  • Gleiche Referenznummern werden in Instanzen in der Diskussion genutzt, um auf gleiche Strukturen und Komponenten zu verweisen.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Überblick
  • Die Konfiguration von Benutzerschnittstellen (user interfaces – UI) wird beschrieben. Benutzerschnittstellen werden von einem Client zum Initialisieren der Steuerfunktionen des Client bereitgestellt. Die Benutzerschnittstellen können auf einer Vielzahl von Vorrichtungen ausgeführt werden, um Steuerfunktionen des Client zu initialisieren. In einer Implementierung kann die Benutzerschnittstelle auf einer lokalen Vorrichtung ausgeführt werden, die über eine lokale Netzwerkverbindung (lokale Verbindung) in Kommunikationsverbindung zu dem Client steht. So kann der Client beispielsweise als eine Set-Top-Box konfiguriert sein, die eine Ausgabe von Rundfunkinhalten wie beispielsweise herkömmlichen Fernsehprogrammen bereitstellt und eine Interaktion mit zusätzlichen Arten von Inhalten wie beispielsweise Anwendungen, die auf dem Client ausgeführt werden, Anwendungen, die entfernt über ein Netzwerk ausgeführt werden und so weiter, ermöglicht. Die lokale Vorrichtung kann als ein persönlicher digitaler Assistent (PDA), beispielsweise ein „Taschen-PC" konfiguriert sein, der über eine lokale Funkfrequenz (radio frequency – RF)-Verbindung in Kommunikationsverbindung mit der Set-Top-Box steht. Der PDA führt eine Benutzerschnittstelle aus, die von der Set-Top-Box zum Initialisieren von Steuerfunktionen der Set-Top-Box wie beispielsweise für das Aufzeichnen von Inhalten erhalten wurde. Die Set-Top-Box kann die Benutzerschnittstelle auf Basis von er kannten Hardware- und/oder Software-Fähigkeiten des PDA, beispielsweise Auflösung des PDA, Verarbeitungsleistung, unterstützte Farben und so weiter, konfigurieren, um die Benutzerschnittstelle auszuführen. Daher wird der PDA mit einer Benutzerschnittstelle bereitgestellt, die die Hardware- und/oder Software-Ressourcen des PDA anspricht.
  • In einer anderen Implementierung kann die Benutzerschnittstelle auf einer entfernten Vorrichtung ausgeführt werden, die über eine entfernte Netzwerkverbindung (entfernte Verbindung) in Kommunikationsverbindung zu dem Client steht. Weiterhin in dem vorangehenden Beispiel sorgt die Set-Top-Box für das Ausgeben der Inhalte, die über ein Netzwerk von einer Kopfstation, beispielsweise einem herkömmlichen Rundfunk-Fernsehgerät, Video auf Anforderung (Video-On-Demand – VOD), einer entfernten Anwendungsverarbeitung und so weiter empfangen wurde. Eine entfernte Vorrichtung wie beispielsweise ein Standcomputer kann ebenfalls in Kommunikationsverbindung mit dem Netzwerk stehen. Die entfernte Vorrichtung führt ebenfalls eine Benutzerschnittstelle aus, die von der Set-Top-Box zum Initialisieren von Steuerfunktionen der Set-Top-Box erhalten wurde. Die Set-Top-Box konfiguriert die Benutzerschnittstelle auf Basis von erkannten Hardware- und/oder Software-Fähigkeiten der entfernten Vorrichtung, um die Benutzerschnittstelle auszuführen. Daher kann die entfernte Vorrichtung darüber hinaus mit einer Benutzerschnittstelle bereitgestellt werden, die die Hardware- und/oder Software-Ressourcen der entfernten Vorrichtung anspricht. Eine weitere Diskussion der Konfiguration der Benutzerschnittstellen findet sich in Bezug auf die 3 und 7.
  • In einer weiteren Implementierung speichert die Kopfstation Client-Zustandsdaten, um die von den Benutzerschnittstellen empfangenen Anforderungen für Steuerfunktionen zu verarbeiten. So kann die Kopfstation beispielsweise Client-Zustandsdaten wie beispielsweise Ratenbegrenzungen, bevorzugte Kanäle, Dienststufen und so weiter umfassen, auf die die Kopfstation lokal zugreifen kann. Die Kopfstation kann diese Client-Zustandsdaten dazu nutzen, Anforderungen zu verarbeiten, die von den Benutzerschnittstellen, die lokal von der lokalen Vorrichtung oder entfernt von der entfernten Vorrichtung ausgeführt werden, bereitgestellt werden. Nachdem diese Anforderungen verarbeitet wurden, kann die Kopfstation den Client veranlassen, die Steuerfunktion durchzuführen. Durch Verarbeiten der Anforderungen an der Kopfstation stellt die Kopfstation eine berechtigte Quelle zum Verarbeiten von durch den Client auszuführenden Steuerfunktionen bereit. Dies kann zur Folge haben, dass verschiedenste erweiterte Funktionen für den Benutzer verfügbar sind, beispielsweise eine Fähigkeit, von einem alten Client zu einem neuen Client zu wechseln, ohne dass Client-Zustandsdaten manuell von dem alten Client auf den neuen Client aktualisiert werden müssen, sowie entferntes Initialisieren von Steuerfunktionen, ohne dass das Erhalten einer Verbindung mit dem Client erfolgt. Eine weitere Diskussion der Nutzung von Client-Zustandsdaten durch eine Kopfstation findet sich in Beziehung auf die 6 und 7.
  • Beispielhafte Systeme
  • 1 ist eine Darstellung einer Umgebung 100 in einer beispielhaften Implementierung, die einen Inhalts-Anbieter 102 umfasst, der über ein Netzwerk 106 in Kommunikationsverbindung mit einem Client 104 steht. Das Netzwerk 106 in den folgenden Implementierungen ist ein Beispiel eines Fernnetzwerkes (wide area network – WAN) wie beispielsweise des Internets, es kann darüber hinaus eine Vielzahl anderer Netzwerke wie beispielsweise ein Rundfunk-Netzwerk, ein Intranet, ein kabelgebundenes oder drahtloses Telefon-Netzwerk und so fort enthalten.
  • Der Client 104 kann konfiguriert sein, um Inhalte zu empfangen, die von dem Inhalts-Anbieter 102 über das Netzwerk 106 gesendet wurden. Der Inhalts-Anbieter 102 umfasst Inhalte 108(k), wobei k jede beliebige Anzahl zwischen 1 und „K" sein kann, die lokal auf dem Inhalts-Anbieter 102 gespeichert sind. Die Inhalte 108(k) können eine Vielzahl von Daten wie beispielsweise Fernsehprogramme, Video auf Anforderung, einen elektronischen Programmführer (electronic program guide – EPG), eins oder mehrere Ergebnisse von entfernter Anwendungsverarbeitung und so weiter enthalten. Der Inhalts-Anbieter 102 stellt einer Kopfstation 112 über ein Netzwerk 110 die Inhalte 108(k) bereit. Das Netzwerk 110 kann mit dem Netzwerk 106 identisch oder von diesem verschieden sein. Die Inhalte 108(k) können anschließend auf der Kopfstation 112 in einer Datenbank 114 als Inhalte 116(n) zum Senden über das Netzwerk 106 zu dem Client 104 gespeichert werden, wobei n jede Anzahl zwischen 1 und „N" sein kann. Mit anderen Worten, die in der Datenbank 114 gespeicherten Inhalte 116(n) können Kopien der Inhalte 108(k) sein, die von dem Inhalts-Anbieter 102 empfangen wurden. Die Inhalte 116(n) können darüber hinaus zusätzliche Daten enthalten, die zu dem Client 104 gesendet werden. So können beispielsweise die in der Datenbank 114 gespeicherten Inhalte 116(n) elektronische Programmführer-Daten enthalten, die über ein Karussell-Dateisystem zu dem Client 104 gesendet werden. Das Karussell-Dateisystem sendet die elektronischen Programmführer-Daten wiederholt über das Netzwerk 106 über einen Bandüberschreitungs (out-of-band – OOB)-Kanal zu dem Client 104.
  • Die Kopfstation 112 kann darüber hinaus auch einen Distribution-Server 118 umfassen, um die Inhalte 116(n) zu formatieren und über das Netzwerk 106 zu verteilen. Das Verteilen von der Kopfstation 112 zu dem Client 104 kann auf verschiedene Weisen einschließlich per Kabel, Funk, Mikrowellen und Satellit erfolgen. Obwohl die Kopfstation 112 als von dem Inhalts-Anbieter 102 getrennt dargestellt wird, kann der Inhalts-Anbieter 102 auch die Kopfstation 112 enthalten.
  • Der Client 104 kann als ein Computer konfiguriert sein, der in der Lage ist, über das Netzwerk 106 zu kommunizieren, beispielsweise ein Stand (Desktop)-Computer, eine Mobilstation, eine Unterhaltungsanwendung, eine Set-Top-Box 120, der oder die oder das in Kommunikationsverbindung mit einer Anzeigevorrichtung 122 steht wie dargestellt, und so fort. Der Client 104 kann sich darüber hinaus auch auf eine Person und/oder eine Einheit beziehen, die den Client 104 bedient. Mit anderen Worten, der Client 104 kann einen logischen Client beschreiben, der einen Benutzer und/oder eine Maschine umfasst. Obwohl ein Client 104 dargestellt wird, kann eine Vielzahl von Clients in Kommunikationsverbindung mit dem Netzwerk 106 stehen.
  • Der Client 104 kann darüber hinaus eine Datenbank 124 enthalten, die lokal gespeicherte Inhalte 126(m) besitzt, wobei m jede beliebige Anzahl zwischen 1 und „M" sein kann. So kann beispielsweise der Client 104 als ein persönliches Videoaufzeichnungsgerät (personal video recorder – PVR) konfiguriert sein, das die auf einem Festplattenspeicher gespeicherte Datenbank 124 umfasst. Aufgrund der Größe des Speichers sind Benutzer in der Lage, Inhalte aufzuzeichnen. Das persönliche Videoaufzeichnungsgerät bietet darüber hinaus Steuerfunktionen wie beispielsweise die Fähigkeit, Inhalte anzuhalten, die aktuell übertragen werden, und ermöglicht es den Betrachtern, die Inhalte, die immer noch übertragen werden, ab dem Punkt zu betrachten, an dem sie angehalten wurden.
  • Das persönliche Videoaufzeichnungsgerät gibt die Inhalte aus dem Festplattenspeicher wieder und beginnt hierbei mit dem Pausenereignis, während es unterdessen weiterhin die aktuell gesendeten Inhalte auf dem Festplattenspeicher aufzeichnet Des Weiteren kann das persönliche Videoaufzeichnungsgerät andere Steuerfunktionen wie beispielsweise Rücklauf und schnellen Vorlauf eines gespeicherten Programms sowie verlangsamte Wiedergabe und dergleichen unterstützen.
  • Der Client 104 ist mit ausreichend Verarbeitungs- und Speicherfähigkeiten ausgerüstet, um eine Navigations-Anwendung 128 zu speichern und auszuführen. Die Navigations-Anwendung 128 stellt Steuerfunktionen zum Interagieren mit Inhalten bereit, wenn sie auf dem Client 104 ausgeführt wird. So können beispielsweise in den Steuerfunktionen die Steuerfunktionen des persönlichen Videoaufzeichnungsgerätes wie vorstehend diskutiert sowie Kanalauswahl, Navigation durch den elektronischen Programmführer und so weiter enthalten sein.
  • Der Client 104 umfasst darüber hinaus eine konfigurierbare Benutzerschnittstelle 130 und ein Benutzerschnittstellenmodul 132. Die konfigurierbare Benutzerschnittstelle 130 stellt eine Schnittstelle zur Ausführung auf einer Vorrichtung bereit, so dass ein Benutzer der Vorrichtung eine oder mehrere Steuerfunktionen der Navigations-Anwendung 128 initialisieren kann. Das Benutzerschnittstellenmodul 132 wird auf dem Client 104 ausgeführt, um die konfigurierbare Benutzerschnittstelle 130 auf Basis von erkannten Hardware- und/oder Software-Ressourcen einer Vorrichtung, die die konfigurierbare Benutzerschnittstelle 130 ausführen soll, zu konfigurieren. So kann beispielsweise eine lokale Vorrichtung 134 wie beispielsweise ein PDA, wie dargestellt, über eine lokale Verbindung 136 in Kommunikationsverbindung zu dem Client 104 stehen. Wenn das Benutzerschnittstellenmodul 132 ausgeführt wird, erkennt es die Fähigkeiten der lokalen Vorrichtung 134 zum Ausführen der konfigurierbaren Benutzerschnittstelle 130 und konfiguriert anschließend die konfigurierbare Benutzerschnittstelle 130 dementsprechend. Der Client 104 kann darüber hinaus über das Netzwerk 106 in Kommunikationsverbindung zu einer entfernten Vorrichtung 138 wie beispielsweise einem Stand-Computer, wie dargestellt, stehen. Das Benutzerschnittstellenmodul 132 kann, wenn es auf dem Client 104 ausgeführt wird, darüber hinaus die konfigurierbare Benutzerschnittstelle 130 auf Basis der erkannten Hardware- und/oder Software-Fähigkeiten der entfernten Vorrichtung 138 zum Ausführen der konfigurierbaren Benutzerschnittstelle 130 konfigurieren. Das Benutzerschnittstellenmodul 132 kann auf eine Vielzahl von Arten implementiert werden wie beispielsweise als ein HTTP-Server, der den lokalen und entfernten Vorrichtungen 134, 138 Benutzerschnittstellen in einem HTML-Format bereitstellt. Der Client 104 kann durch die Ausführung des Benutzerschnittstellenmoduls 132 Benutzerschnittstellen zur Ausführung auf der lokalen und der entfernten Vorrichtung 134, 138 auf Basis der Fähigkeiten der jeweiligen lokalen und entfernten Vorrichtung 134, 138 zum Ausführen der Benutzerschnittstellen bereitstellen.
  • Die Kopfstation 112 umfasst eine Datenbank 140 zum Speichern einer Vielzahl von Client-Zustandsdaten 142(j), wobei j jede beliebige Anzahl zwischen 1 und „J" darstellen kann, um Anforderungen zu verarbeiten, die durch Benutzerschnittstellen initialisiert wurden, die auf der lokalen und der entfernten Vorrichtung 134, 138 ausgeführt werden. So kann beispielsweise der Distribution-Server 118 ein Fernmodul 144 enthalten, das auf dem Distribution-Server 118 ausgeführt wird, um Anforderungen zu verarbeiten, mit denen die Navigations-Anwendung 128 des Client 104 veranlasst wird, eine oder mehrere Steuerfunktionen durchzuführen. Wenn das Fernmodul 144 ausgeführt wird, verarbeitet es die Anforderungen und nutzt hierzu die Client-Zustandsdaten 142(j), die dem Client 104 entsprechen, der die Steuerfunktion durchführen soll. Wenn zugelassen wird, dass der Client 104 die Steuerfunktion durchführt, veranlasst der Distribution-Server 118, dass der Client 104 und insbesondere die Navigations-Anwendung 128 die Steuerfunktion durchführen. Auf diese Weise stellt die Kopfstation 112 eine berechtigte Quelle für Client-Zustandsdaten 142(j) in der Umgebung 100 bereit.
  • Obwohl die Set-Top-Box 120 getrennt von der Anzeigevorrichtung 122 dargestellt wird, kann die Set-Top-Box 120 in die Anzeigevorrichtung 122 eingebaut sein, um eine einzige Einheit zu erzeugen. Darüber hinaus kann der Client 104 in anderen Implementierungen als andere Computer ausgeführt sein, die in der Lage sind, die Navigations-Anwendung 128 und das Benutzerschnittstellenmodul 132 auszuführen, wie beispielsweise ein Computer, der Rundfunk empfangen kann, eine Informationsanwendung, ein tragbarer Computer, ein persönliches Videoaufzeichnungsgerät (PVR) oder dergleichen.
  • 2 ist eine Darstellung einer beispielhaften Implementierung 200, die den Distribution-Server 118, den Client 104, die lokale Vorrichtung 134 sowie die entfernte Vorrichtung 138 aus 1 ausführlicher darstellt. Der Client 104 umfasst einen Prozessor 202 und einen Speicher 204. Das Benutzerschnittstellenmodul 132 und die Navigations-Anwendung 128 werden dargestellt als auf dem Prozessor 202 ausgeführt werdend und in dem Speicher 204 speicherbar. Die konfigurierbare Benutzerschnittstelle 130 wird als in dem Speicher 204 gespeichert dargestellt.
  • Der Client 104 kann eine entfernte Netzwerk-Schnittstelle (entfernte Schnittstelle) 206 enthalten, die zum Empfangen der Inhalte 116(n) aus 1, die über das Netzwerk 106 gesendet werden, genutzt werden kann. So kann beispielsweise die entfernte Schnittstelle 206 als ein Tuner konfiguriert sein, der Rundfunk-Inhalte über das Netzwerk 106 empfängt, sie kann als ein Sender/Empfänger (Sende-/Empfangsgerät) konfiguriert sein, der für eine Zweiwege-Kommunikation über das Netzwerk 106 geeignet ist, und so weiter. Die Inhalte 116(n) können für eine Ausgabe durch den Client 104 zu einem späteren Zeitpunkt in der Datenbank 124 gespeichert und/oder zum unverzüglichen Ausgeben der Inhalte 116(n) bereitgestellt sein. Die Datenbank 124 wird als in dem Speicher 204 enthalten dargestellt, sie kann jedoch ebenfalls in einer gesonderten Speicher-Vorrichtung enthalten sein. So kann die Speicher-Vorrichtung für die Datenbank 124 beispielsweise als ein Festplatten-Laufwerk konfiguriert sein und der Speicher 204 kann als RAM konfiguriert sein, sowohl der Speicher 204 als auch die Speicher-Vorrichtung können als RAM konfiguriert sein, sowohl der Speicher 204 als auch die Speicher-Vorrichtung können als entfernbare Speicher konfiguriert sein, und so fort. Der Client 104 führt die Navigations-Anwendung 128 aus, um die Inhalte 126(m) aus 1 aus der Datenbank 124 abzurufen und die Inhalte 126(m) über eine Ausgabe-Schnittstelle 208 zum Darstellen auf der Anzeigevorrichtung 122 auszugeben. Somit ist in dieser Implementierung der Client 104 in der Lage, als ein persönliches Videoaufzeichnungsgerät zu arbeiten, das die Inhalte 126(m) aus 1 auf eine Weise speichert und wiedergibt, die einem Videokassettenaufzeichnungsgerät gleichkommt.
  • Der Client 104 kann von einem Benutzer über Eingaben gesteuert werden, die von einer Eingabevorrichtung 210 bereitgestellt werden. Die von einer Eingabe-Schnittstelle 212 ausgehenden Eingaben werden über eine lokale Verbindung 214 durch den Client 104 empfangen. Die lokale Verbindung 214 kann die gleiche sein wie die lokale Verbindung 136, durch die die lokale Vorrichtung 134 mit der lokalen Schnittstelle 222 in Kommunikationsverbindung tritt, oder sich von dieser unterscheiden. Die Eingabe-Schnittstelle 212, die lokale Verbindung 214 und die Eingabevorrichtung 210 können auf eine Vielzahl von Arten konfiguriert werden. So kann beispielsweise die Eingabe-Schnittstelle 212 als ein drahtloser Anschluss wie beispielsweise ein Infrarot (IR)- oder Bluetooth-Drahtlos-Anschluss zum Empfangen drahtloser Kommunikation von einer Eingabevorrichtung 210 wie beispielsweise einer Fernsteuerungs-Vorrichtung, einer handgeführten Eingabevorrichtung oder jeder beliebigen anderen drahtlosen Vorrichtung wie beispielsweise einer drahtlosen Tastatur konfiguriert sein. In alternativen Ausführungsformen kann die Eingabe-Schnittstelle 212 eine Funkkommunikationsverbindung oder eine andere Art des Sendens zum Kommunizieren mit dem Client 104 nutzen, beispielsweise eine Kabelverbindung, die in einer universellen seriellen Bus (universal serial bus – USB)-Verbindung enthalten ist, und so weiter.
  • Wenn das Ausgeben von Inhalten angefordert wird, wird die Navigations-Anwendung 128 auf dem Prozessor 202 ausgeführt, um Inhalte zu erhalten wie beispielsweise aus Inhalten, die von dem Distribution-Server 118 über das Netzwerk in einem kontinuierlichen Strom gesendet werden, oder Inhalte 126(m), die lokal in der Datenbank 124 gespeichert sind, und so weiter. Die Navigations-Anwendung 128 kann darüber hinaus den Inhalt in dem ursprünglichen verschlüsselten Format wiederherstellen, wie er von dem Inhalts-Anbieter 102 aus 1 bereitgestellt wird. So kann beispielsweise der Inhalt 116(n) aus 1 komprimiert und von dem Distribution-Server 118 in einem kontinuierlichen Strom zu dem Client 104 gesendet werden. Wenn also die Navigations-Anwendung 128 die Inhalte empfängt, können die Inhalte für das Darstellen durch die Anzeigevorrichtung 122 dekomprimiert werden.
  • Der Client 104 kann darüber hinaus auch durch das Nutzen einer Benutzerschnittstelle gesteuert werden, die durch eine Vorrichtung ausgeführt wird. So kann beispielsweise die lokale Vorrichtung 134 einen Prozessor 216 und einen Speicher 218 enthalten. Die lokale Vorrichtung 134 umfasst eine Benutzerschnittstelle 220, die durch den Client 104 durch die Ausführung des Benutzerschnittstellenmoduls 132 und der konfigurierbaren Benutzerschnittstelle 130 bereitgestellt wurde. Wenn die Benutzerschnittstelle 220 auf dem Prozessor 216 ausgeführt wird, ermöglicht sie es einem Benutzer, eine oder mehrere Steuerfunktionen der Navigations-Anwendung 128 auf dem Client 104 zu initialisieren. Die lokale Vorrichtung 134 steht über die lokale Verbindung 136 in Kommunikationsverbindung zu dem Client, der eine lokale Schnittstelle 222 nutzt. Die lokale Vorrichtung 134 kann darüber hinaus eine Navigations-Anwendung 224 enthalten, um eine Inhalts-Interaktion auf der lokalen Vorrichtung 134 selbst zu ermöglichen. Die Navigations-Anwendung 224 kann beispielsweise als ein Browser, ein Medienwiedergabegerät und so weiter konfiguriert sein.
  • Die entfernte Vorrichtung 138 kann darüber hinaus einen Prozessor 226 und einen Speicher 228 enthalten. Wie die lokale Vorrichtung 134 enthält auch die entfernte Vorrichtung 138 eine Benutzerschnittstelle 230, die als auf dem Prozessor 226 ausgeführt werdend und in dem Speicher 228 speicherbar dargestellt wird. Die entfernte Vorrichtung 138 kann darüber hinaus eine Navigations-Anwendung 232 enthalten, die den Navigations-Anwendungen 128, 224 des Client 104 und/oder der lokalen Vorrichtung 134 gleichen oder von diesen verschieden sein kann. Wenn die Benutzerschnittstelle 230 auf dem Prozessor 226 ausgeführt wird, ermöglicht sie es einem Benutzer, eine oder mehrere Steuerfunktionen der Navigations-Anwendung 128 auf dem Client 104 zu initialisieren. Durch Interagieren mit der Benutzerschnittstelle 230 auf der entfernten Vorrichtung 138 ist der Benutzer der entfernten Vorrichtung 138 in der Lage, Steuerfunktionen des Client 104 über das Netzwerk 106 zu initialisieren. Die Kommunikation zwischen der entfernten Vorrichtung 138 und dem Client 104 kann darüber hinaus durch das Nutzen der entfernten Schnittstelle 206 bereitgestellt werden.
  • Durch Initialisieren der Steuerfunktionen durch die Benutzerschnittstellen 220, 230 kann der Benutzer eine Vielzahl von Steuerfunktionen anfordern. Beispiele für Steuerfunktionen umfassen das Aufzeichnen von Inhalten 116(n) aus 1, die über das Netzwerk 106 in einem kontinuierlichen Strom zu dem Client 104 gesendet werden, Navigation durch die Inhalte, um beispielsweise einen schnellen Vorlauf oder Rücklauf oder ein Unterbrechen der Inhalte durchzuführen, und so weiter. Die Steuerfunktionen können beispielsweise eine nicht-lineare Wiedergabe der Inhalte (beispielsweise eine Zeitverschiebung der Wiedergabe der Inhalte) wie beispielsweise Pause, Rücklauf, schnellen Vorlauf, langsame Wiedergabe und dergleichen bereitstellen. Beispielsweise kann der Client 104 während einer Pause damit fortfahren, die Inhalte in der Datenbank 124 aufzuzeichnen. Der Client 104 kann anschließend durch die Ausführung der Navigations-Anwendung 128 die Inhalte 126(m) aus 1 aus der Datenbank 124 wiedergeben, wobei er bei dem Zeitpunkt beginnt, an dem die Inhalte 126(m) unterbrochen wurden, während er unterdessen weiterhin die aktuell gesendeten Inhalte 126(m) in der Datenbank 124 aufzeichnet.
  • Der in der Kopfstation 112 aus 1 enthaltene Distribution-Server 118 umfasst darüber hinaus einen Prozessor 234 und einen Speicher 236. Das Fernmodul 144 wird als auf dem Prozessor 234 ausgeführt dargestellt und ist in dem Speicher 236 speicherbar. Client-Zustandsdaten 142(j) werden als in dem Speicher 236 gespeichert dargestellt. Die Datenbank 114 wird als in dem Speicher 236 enthalten dargestellt, sie kann jedoch ebenfalls in einer gesonderten Speicher-Vorrichtung enthalten sein. So kann die Speicher-Vorrichtung für die Datenbank 114 ebenso wie die Datenbank 124 des Client 104 beispielsweise als ein Festplatten-Laufwerk konfiguriert sein und der Speicher 236 kann als RAM konfiguriert sein, sowohl der Speicher 236 als auch die Speicher-Vorrichtung können als RAM konfiguriert sein, sowohl der Speicher 236 als auch die Speicher-Vorrichtung können als entfernbare Speicher konfiguriert sein, und so fort. Somit kann der Distribution-Server 118 lokal auf die Client-Zustandsdaten 142(j) zugreifen.
  • Der Distribution-Server 118 führt das Fernmodul 144 auf dem Prozessor 234 aus, um Anforderungen zum Initialisieren von Steuerfunktionen der Navigations-Anwendung 128 auf dem Client 104 zu verarbeiten. Die Anforderungen können ursprünglich von den Benutzerschnittstellen 220, 230 kommen, die auf den jeweiligen lokalen und entfernten Vorrichtungen 134, 138 ausgeführt werden. Wenn das Fernmodul 144 auf dem Prozessor 234 ausgeführt wird, verarbeitet es die Anforderungen gemäß Client-Zustandsdaten 142(j), die in dem Speicher 236 gespeichert sind. So kann beispielsweise eine Vielzahl von Client-Zustandsdaten 142(j) in dem Speicher 236 gespeichert sein, diese entspricht einer Vielzahl von Clients, die Inhalte von der Kopfstation 112 aus 1 empfängt. Jede Sammlung von Client-Zustandsdaten 142(j) für einen speziellen Client kann generische Operationsdaten enthalten, die von dem speziellen Client genutzt werden, beispielsweise Begrenzungen der Raten, bevorzugte Kanäle, bereitgestellte Dienststufen und so weiter. Das Netzwerk 106, das die Kopfstation 112 mit dem Client 104 und der entfernten Vorrichtung 138 verbindet, kann eine ausreichende Bandbreite und Zuverlässigkeit besitzen, so dass die Kopfstation 112 die berechtigte Quelle für diese Informationen ist. Mit anderen Worten, die Kopfstation 112 kann als die primäre Quelle der Client-Zustandsdaten 142(j) für einen speziellen Client in Betracht gezogen werden, sogar über den Client 104 selbst. So kann beispielsweise durch Speichern der Client-Zustandsdaten 142(j) auf dem Distribution-Server 118 ein Benutzer zwischen Set-Top-Boxen umschalten, ohne Client-Zustandsdaten zwischen den Set-Top-Boxen übertragen zu müssen.
  • Des Weiteren können durch Speichern von Client-Zustandsdaten 142(j) für lokalen Zugriff durch den Distribution-Server 118 auch Clients mit geringen Ressourcen zum Ausgeben von Inhalten genutzt werden, nichtsdestotrotz kann Vorrichtungen, die die Benutzerschnittstelle ausführen, um den Client 104 zu steuern, eine Funktionalität mit umfangreichen Ressourcen bereitgestellt werden. So kann beispielsweise ein Client mit geringen Ressourcen wie beispielsweise ein Client mit begrenzten Hardware- und/oder Software-Ressourcen konfiguriert werden, um Inhalte zum Darstellen auf einer Anzeigevorrichtung zu entschlüsseln und auszugeben. Der Client mit geringen Ressourcen kann darüber hinaus lokales Speichern von Inhalten, beispielsweise auf einem Festplattenlaufwerk, bereitstellen. Eine entfernte Vorrichtung mit vielen Eigenschaften wie beispielsweise ein Stand-Computer, der signifikante Verarbeitungs-Ressourcen besitzt, kann eine Benutzerschnittstelle ausführen, die auf dem Client mit geringen Ressourcen nicht ausführbar wäre. Die Benutzerschnittstelle kann beispielsweise eine höhere Auflösung (beispielsweise mehr Bildpunkte pro Zoll) besitzen, eine Ausgabe mit einer höheren Anzahl Farben unterstützen, Makros zum Initialisieren von Steuerfunktionen (beispielsweise der Aufzeichnung aller Episoden eines bestimmten Fernsehprogramms) bereitstellen und so weiter. Auf diese Weise kann die Benutzerschnittstelle einem Benutzer des Client zusätzliche Funktionalität bereitstellen. Beispiele für Benutzerschnittstellen, die für eine Ausgabe durch Vorrichtungen mit unterschiedlichen Fähigkeiten konfiguriert sind, sind in Bezug auf die 4 und 5 zu finden.
  • Beispielhafte Verfahren
  • 3 ist ein Ablaufdiagramm eines Verfahrens 300 in einer beispielhaften Implementierung, in der der Client 104 eine Benutzerschnittstelle zur Ausführung auf der lokalen Vorrichtung 134 aus 2 konfiguriert. Bei Block 302 wird eine lokale Verbindung zwischen der lokalen Vorrichtung 134 und dem Client 104 initialisiert. Es kann eine Vielzahl lokaler Verbindungen initialisiert werden, beispielsweise Kabel- und drahtlose Verbindungen. Ein Beispiel einer Kabelverbindung ist eine Ethernet-Verbindung, die genutzt werden kann, um eine Vielzahl von Vorrichtungen lokal über ein Ethernet-Netzwerk miteinander zu verbinden. Eine Vielzahl drahtloser Verbindungen wird darüber hinaus in Erwägung gezogen, beispielsweise drahtlose Verbindungen, die dem IrDA (Infrared Data Association)-Standard, dem SWAP (Shared Wireless Access Protocol)-Standard, der von der HomeRF Working Group entwickelt wurde, oder auch IEEE 802.11b und 802.11g, die von der WECA (Wireless Ethernet Compatibility Alliance) entwickelt wurden, Bluetooth und so weiter entsprechen.
  • Bei Block 304 erkennt der Client 104 die Hardware- und/oder Software-Fähigkeiten der lokalen Vorrichtung 134 durch die Ausführung des Benutzerschnittstellenmoduls 132. So kann der Client 104 beispielsweise Hardware-Fähigkeiten erkennen wie beispielsweise Prozessorgeschwindigkeit, Datenbus-Bandbreite, Datendurchsatzgeschwindigkeit einer oder mehrerer Bus-Vorrichtungen der lokalen Vorrichtung 134, Menge des auf der lokalen Vorrichtung 134 verfügbaren Speicherplatzes, unterstützte Auflösungen und Farbpaletten einer enthaltenen Anzeigevorrichtung, unterstützte Schriftarten, Verfügbarkeit von Eingabevorrichtungen (wie beispielsweise berührungsempfindliche Bildschirme, Cursorsteuerungsvorrichtungen, Tasten, Tastaturen und so weiter), Verfügbarkeit von Audio-Eingabe-/Ausgabevorrichtungen und so fort. Der Client 104 kann darüber hinaus Software-Fähigkeiten der lokalen Vorrichtung 134 feststellen wie beispielsweise unterstützte Computersprachen, Verfügbarkeit von Anwendungen auf der lokalen Vorrichtung 134 (beispielsweise Browser, Medienwiedergabevorrichtungen und so weiter), auf der lokalen Vorrichtung 134 implementierte Treiber und so fort.
  • Bei Block 306 konfiguriert der Client 104 auf Basis des Erkannten eine konfigurierbare Benutzerschnittstelle für die Kommunikation mit der lokalen Vorrichtung 134. So kann der Client 104 beispielsweise das Benutzerschnittstellenmodul 132 ausführen, um die konfigurierbare Benutzerschnittstelle 130 aus 2 auf Basis der erkannten Fähigkei ten der lokalen Vorrichtung 134 zu konfigurieren. Eine Vielzahl von Konfigurationen kann bereitgestellt werden, beispielsweise durch unterschiedliche Anordnungen von Funktionen und Anzeige-Eigenschaften der Benutzerschnittstelle. Eine weitere Beschreibung der Konfiguration der Benutzerschnittstellen findet sich in Bezug auf die 4 und 5. Der Client 104 kann anschließend die konfigurierte Benutzerschnittstelle 308 über die lokale Verbindung 136 an die lokale Vorrichtung 134 kommunizieren.
  • Bei Block 310 führt die lokale Vorrichtung 134 die konfigurierte Benutzerschnittstelle 308 aus, um Steuerfunktionen des Client 104 zu initialisieren. So kann der Benutzer beispielsweise eine Eingabevorrichtung wie beispielsweise einen berührungsempfindlichen Bildschirm eines PDA durch „Drücken" einer Taste der konfigurierten Benutzerschnittstelle 308 nutzen, um eine Steuerfunktion zu initialisieren. Die konfigurierte Benutzerschnittstelle 308 kann anschließend eine Anforderung erzeugen, die die gewünschte Steuerfunktion anzeigt und die Anforderung über die lokale Verbindung 136 direkt zu dem Client 104 überträgt. Somit kann in dieser Implementierung die Steuerfunktion dem Client 104 direkt bereitgestellt werden, ohne die Anforderung über das Netzwerk 106 zu übertragen. Eine zusätzliche Diskussion der Verarbeitungsanforderungen findet sich in Bezug auf 6.
  • Obwohl die Implementierung aus 3 eine Konfiguration der Benutzerschnittstelle durch den Client 104 beschreibt, kann die Benutzerschnittstelle auf eine Vielzahl von Arten konfiguriert werden. In einer anderen Implementierung ist die konfigurierbare Benutzerschnittstelle 130 aus 2 als eine in sich geschlossene konfigurierbare Benutzerschnittstelle implementiert, die Software zum Konfigurieren der Darstellung und der Implementierung der Benutzerschnittstelle umfasst, wenn diese auf einer Vorrichtung empfangen und/oder ausgeführt wird. So kann beispielsweise die konfigurierbare Benutzerschnittstelle 130 aus 2 durch die lokale Vorrichtung 134 empfangen werden und wenn sie auf der lokalen Vorrichtung ausgeführt wird, erkennt sie und Hardware- und/oder Software-Fähigkeiten der lokalen Vorrichtung 134 zum Ausführen der Benutzerschnittstelle. In einer weiteren Implementierung wird die Benutzerschnittstelle durch einen Distribution-Server konfiguriert, wovon ein Beispiel in Bezug auf 7 beschrieben wird.
  • Beispielhafte Benutzerschnittstellen
  • Benutzerschnittstellen können auf eine Vielzahl von Arten auf Basis der Fähigkeiten der Vorrichtung, die die Benutzerschnittstelle ausführen soll, konfiguriert werden. 4 ist eine Darstellung einer beispielhaften Implementierung, die eine Benutzerschnittstelle 300 darstellt, die zum Ausgeben durch den Client konfiguriert ist, wenn sich der Benutzer nahe an der Anzeigevorrichtung wie beispielsweise der Anzeigevorrichtung 122 aus 1 befindet. Da, wie vorstehend dargelegt, die zum Ausführen der Benutzerschnittstellen genutzten Vorrichtungen unterschiedliche Fähigkeiten haben können, und da sich die Entfernung eines Benutzers von einer Anzeigevorrichtung ändern kann, können Benutzerschnittstellen konfiguriert sein, um den unterschiedlichen Fähigkeiten und Entfernungen Rechnung zu tragen. So ist beispielsweise ein Benutzer, der sich nahe an einer Anzeigevorrichtung befindet, möglicherweise in der Lage, eine größere Menge Einzelheiten wahrzunehmen, als wenn sich der Benutzer in einer größeren Entfernung von der Anzeigevorrichtung befindet. Des Weiteren können Eingabevorrichtungen der lokalen und entfernten Vorrichtungen 134, 138 aus 2 unterschiedliche jeweilige Funktionalitäten bereitstellen. So kann beispielsweise eine lokale Vorrichtung für eine stiftbasierte Navigation konfiguriert sein, und eine entfernte Vorrichtung, die eine Maus sowie eine Tastatur besitzt, kann für eine datenintensive Eingabe und Navigation konfiguriert sein. Daher können unterschiedliche Benutzerschnittstellen bereitgestellt werden, die für die unterschiedlichen jeweiligen Funktionalitäten der Eingabevorrichtungen konfiguriert sind.
  • Die Benutzerschnittstelle 400 ist zum Verwenden konfiguriert, wenn der Benutzer sich nahe an der Anzeigevorrichtung befindet. Die Benutzerschnittstelle 400 umfasst einen Kanalführer 402, der eine Vielzahl von Kanälen 404(1) bis 404(6) auflistet, die über einen Rundfunk verfügbar sind. Die Benutzerschnittstelle 400 umfasst darüber hinaus eine ausführliche Beschreibung 406 von einem der Vielzahl von Programmen, diese kann Informationen bereitstellen, die sich auf das Programm beziehen, beispielsweise Schauspieler, kurze Beschreibung der Handlung des Programms und so weiter. Die Benutzerschnittstelle 400 umfasst darüber hinaus eine Menüleiste 408, um es einem Benutzer zu ermöglichen, zwischen Funktionsblöcken mit einer Cursorsteuervorrichtung wie beispielsweise einer Maus zu navigieren. Die dargestellte Menüleiste 408 besitzt einen Funktionsblock, der den aktuellen Programmtitel 410 umfasst, einen Audio-Funktionsblock 412 wie beispielsweise geschlossene Bildtitel und Stereoton, aktuelle Kanäle 414, bevorzugte Kanäle 416 sowie Werkzeuge 418 wie beispielsweise Optionen zum Anordnen, Auswählen der Schriftart und so weiter.
  • 5 ist eine Darstellung einer beispielhaften Implementierung, die eine Benutzerschnittstelle 500 darstellt, die zum Ausgeben durch den Client konfiguriert ist, wenn sich der Benutzer in einer größeren Entfernung von der Anzeigevorrichtung entfernt befindet als die Benutzerschnittstelle 400 aus 4. Die Benutzerschnittstelle 500 kann einen Teil der Funktionsblöcke enthalten, die in der Benutzerschnittstelle 500 aus 5 bereitgestellt werden. So kann die Benutzerschnittstelle 500 beispielsweise darüber hinaus einen Kanalführer 502 enthalten, der eine Vielzahl von Kanälen 404(1) bis 404(4) auflistet, die in einem Rundfunk verfügbar sind. Der Kanalführer 502 ist jedoch konfiguriert, um aus einer größeren Entfernung als der Kanalführer 402 aus 4 betrachtet zu werden und um von einer Anzeigevorrichtung ausgegeben zu werden, die eine geringere Auflösung besitzt als die Anzeigevorrichtung zum Ausgeben der Benutzerschnittstelle 400 aus 4. Daher umfasst der Kanalführer 502 weniger Kanäle und Programme in einem vergrößerten Format als der Kanalführer 402 aus 4.
  • Des Weiteren kann die Anordnung der Funktionsblöcke der Benutzerschnittstelle 500 sich von der Benutzerschnittstelle 400 aus 4 unterscheiden. Die Benutzerschnittstelle 500 kann beispielsweise ebenfalls die ausführliche Beschreibung 406 enthalten, bei ihr kann die ausführliche Beschreibung 406 jedoch unterhalb des Kanalführers 502 angeordnet sein, im Gegensatz dazu ist sie in 4 in der Benutzerschnittstelle 400 oberhalb des Kanalführers 402 dargestellt. Des Weiteren enthält die Benutzerschnittstelle 500 nicht die Menüleiste 408 der Benutzerschnittstelle 400 aus 4. So kann beispielsweise die Benutzerschnittstelle 500 mit einer geringeren Auflösung, das heißt, mit weniger Bildpunkten pro Zoll als die Benutzerschnittstelle 400 aus 4 bereitgestellt werden, so dass die Benutzerschnittstelle 500 aus einer größeren Entfernung betrachtbar ist. Daher ist die Benutzerschnittstelle 500 aus einer größeren Entfernung betrachtbar als die Benutzerschnittstelle 400 aus 4, die Benutzerschnittstelle 400 umfasst jedoch Funktionsblöcke, die in der Benutzerschnittstelle 500 aus 5 nicht enthalten sind. Obwohl die Anordnung von Funktionen, die Anzeige von Funktionen und Auflö sung als Unterschiede zwischen den Benutzerschnittstellen 400, 500 aus den 4 beziehungsweise 5 beschrieben wurden, wird auch eine Vielzahl anderer Unterschiede in Erwägung gezogen. So kann beispielsweise das Farbschema der Benutzerschnittstelle 500 so ausgewählt sein, dass die Benutzerschnittstelle 500 aus einer größeren Entfernung betrachtbar ist, beispielsweise durch die Auswahl von Farben, die stärkere Kontraste besitzen als diejenigen, die in der Benutzerschnittstelle 400 aus 4 genutzt werden. Des Weiteren können darüber hinaus die Sichtbarkeit und der Schrifttyp der Funktionen für jede Benutzerschnittstelle geändert werden, um ein optimiertes Betrachtungserlebnis bereitzustellen. So kann beispielsweise die Anzeigevorrichtung zum Ausgeben der Benutzerschnittstelle 400 aus 4 eine größere Anzahl Farben unterstützen als die Anzeigevorrichtung zum Ausgeben der Benutzerschnittstelle 500 aus 5.
  • 6 ist ein Ablaufdiagramm, das ein Verfahren 600 in einer beispielhaften Implementierung darstellt, in der die konfigurierte Benutzerschnittstelle 308 aus 3 von einem Benutzer zum Initialisieren einer Steuerfunktion des Client 104 genutzt wird. Bei Block 602 bildet die lokale Vorrichtung 134 eine Anforderung 604 zum Initialisieren einer Steuerfunktion des Client 104 aus und kommuniziert diese. So kann beispielsweise die konfigurierte Benutzerschnittstelle 308, wenn sie auf der lokalen Vorrichtung 134 ausgeführt wird, eine oder mehrere Verfahren zum Initialisieren der Steuerfunktion bereitstellen. Ein drahtloses Telefon kann beispielsweise die konfigurierte Benutzerschnittstelle 308 ausführen, die ein sprachgesteuertes Menü umfasst, um einen Benutzer in die Lage zu versetzen, durch eine Auflistung verfügbarer Steuerfunktionen zu navigieren und eine oder mehrere der Steuerfunktionen zu initialisieren. Anschließend wird eine Anforderung zum Initialisieren der gewünschten Steuerfunktion ausgebildet und zu dem Client 104 übertragen, beispielsweise über die lokale Verbindung 136.
  • Bei Block 606 kommuniziert der Client 104 die Anforderung 604 an den Distribution-Server 118. In einer Implementierung führt der Client 104 das Benutzerschnittstellenmodul 132 aus 2 aus, um die Anforderung 604 zum Weiterleiten über das Netzwerk 106 an den Distribution-Server 118 in Paketform umzuwandeln. In einer anderen Implementierung wird die Anforderung 604 ohne Umwandeln in Paketform durch den Client 104 zum Schicken an den zum Distribution-Server 118 durch die lokale Vorrichtung 134 formatiert.
  • Bei Block 608 verarbeitet der Distribution-Server 118 die Anforderung und nutzt dazu die Client-Zustandsdaten 142(j). Das Fernmodul 144 kann beispielsweise auf dem Distribution-Server 118 ausgeführt werden, um die Anforderung 604 gemäß den Client-Zustandsdaten 142(j) zu verarbeiten, die für den Distribution-Server 118 lokal verfügbar sind, da sie beispielsweise in einer Festplatte oder einem RAID-Array und so fort gespeichert sind. Die Anforderung 604 wird gemäß denjenigen Client-Zustandsdaten 142(j) verarbeitet, die für den Client 104 spezifisch sind.
  • Die Anforderung 604 kann eine einzigartige Client-Kennzeichnung enthalten, sodass das Fernmodul 144 Client-Zustandsdaten 142(j) lokalisieren kann, die dem jeweiligen Client 104 entsprechen. Sobald die Client-Zustandsdaten 142(j) lokalisiert sind, bestimmt das Fernmodul 144, wenn es ausgeführt wird, ob das Durchführen der Steuerfunktion auf dem Client 104 zulässig ist. So kann beispielsweise die Anforderung 604 konfiguriert sein, um eine Steuerfunktion auf dem Client 104 zu initialisieren, um Inhalte aufzuzeichnen, beispielsweise ein Fernsehprogramm, und der Distribution-Server 118 kann durch Untersuchen der Client-Zustandsdaten 142(j) bestimmen, ob der Client 104 zum Aufzeichnen der Inhalte zugelassen wird. In einem anderen Beispiel ist die Anforderung 604 konfiguriert, um den Client 104 auf einen gewünschten Fernsehkanal abzustimmen, und der Distribution-Server 118 kann anschließend bestimmen, ob der Client 104 einen Subskriptionsvertrag für diesen bestimmten Fernsehkanal besitzt.
  • Bei Block 610 bildet der Distribution-Server 118 einen Befehl 612 zum Durchführen der Steuerfunktion aus und kommuniziert diesen zu dem Client 104. In Bezug auf das vorangehende Beispiel kann das Fernmodul 144, wenn es ausgeführt wird, bestimmen, dass der Client 104 zum Durchführen der Steuerfunktion zugelassen wird, und daher den Befehl 612 für eine Kommunikation zu dem Client 104 erzeugen. Ist es dem Client 104 nicht erlaubt, die Steuerfunktion durchzuführen, kann das Fernmodul 144 eine Antwort auf die Kommunikation zu der lokalen Vorrichtung 134 erzeugen, um anzuzeigen, dass die Steuerfunktion nicht zulässig ist. In einer anderen Implementierung kann auf dem Client 104 eine zusätzliche Schnittstelle angelegt werden, um auf der Kopfstation zu „lauschen", ob Aktualisierungen vorhanden sind. So kann sich das Benutzerschnittstellenmodul 132 beispielsweise, wenn es auf dem Client 104 ausgeführt wird, periodisch an dem Netzwerk 106 anmelden, um von der Kopfstation 112 bereitgestellte Befehle zum Durchführen von einer oder mehreren Steuerfunktionen zu empfangen und/oder anzufordern.
  • Bei Block 614 führt der Client 104 die Steuerfunktion durch. So kann der Client 104 beispielsweise den Befehl 612 von dem Distribution-Server 118 empfangen. Der Befehl kann unter Verwendung einer Vielzahl von Verschlüsselungstechnologien verschlüsselt worden sein, um zu verhindern, dass der Befehl von einem Angreifer gekapert wird. Die Navigations-Anwendung 128 und/oder das Benutzerschnittstellenmodul 132 können, wenn sie ausgeführt werden, den Befehl 612 entschlüsseln, um zu bestimmen, welche Steuerfunktion durchzuführen ist. Die Navigations-Anwendung 128 kann dann die angegebene Steuerfunktion durchführen. Die Navigations-Anwendung 128 kann beispielsweise ein bestimmtes Fernsehprogramm zu einer bestimmten Zeit aufzeichnen, kann dann ändern, welcher Rundfunkkanal durch den Client 104 an die Anzeigevorrichtung 122 aus 2 ausgegeben wird, sie kann auf einen bevorzugten Kanal abstimmen und so weiter. Obwohl die in Bezug auf die 3 und 6 diskutierten Implementierungen die Konfiguration und Ausführung einer Benutzerschnittstelle auf einer lokalen Vorrichtung 134 beschreiben, kann die entfernte Vorrichtung 138 darüber hinaus eine ähnliche Funktionalität bereitstellen, wie ausführlicher in der folgenden Implementierung beschrieben wird.
  • 7 ist ein Ablaufdiagramm, das ein Verfahren 700 in einer beispielhaften Implementierung darstellt, in der eine Benutzerschnittstelle für die entfernte Vorrichtung 138 aus 2 konfiguriert ist und durch diese ausgeführt wird, um eine oder mehrere Steuerfunktionen des Client zu initialisieren 104. Bei Block 702 initialisiert eine entfernte Vorrichtung eine entfernte Verbindung mit dem Distribution-Server. So kann beispielsweise die entfernte Vorrichtung 138 aus 2 eine entfernte Verbindung über das Netzwerk 106 mit dem Distribution-Server 188 aus 2 initialisieren. Das Netzwerk 106 kann eine Vielzahl of Konfigurationen annehmen, beispielsweise ein Fernnetzwerk (wide area network – WAN), zum Beispiel das Internet und so fort. Ein WAN kann als ein geografisch verteiltes Netzwerk in Betracht gezogen werden, das eine breitere Telekommunika tions-Struktur als ein lokales Netzwerk (local area network – LAN) umfasst. Ein WAN kann sich beispielsweise in privatem Besitz befinden, geleast oder gemietet sein, es umfasst jedoch in den meisten Instanzen wenigstens einen Teil eines öffentlichen (das heißt, gemeinsamen Benutzer)-Netzwerks.
  • Bei Block 704 bildet die entfernte Vorrichtung eine Anfrage für eine Benutzerschnittstelle von dem Distribution-Server aus, die zum Initialisieren von Steuerfunktionen eines Client geeignet ist. Die entfernte Vorrichtung kann beispielsweise die Anfrage für eine Kommunikation über das Netzwerk erzeugen, das einen gewünschten Client identifiziert. In einer Implementierung umfasst die Anfrage die Netzwerkadresse des Client. In einer anderen Implementierung umfasst der Distribution-Server eine lokal gespeicherte Auflistung von Standorten von Clients. In einer weiteren Implementierung fragt der Distribution-Server das Netzwerk 106 aus 2 ab, um den Client zu lokalisieren. So kann beispielsweise das Fernmodul 144, wenn es auf dem Distribution-Server 118 ausgeführt wird, als ein Browser zum Lokalisieren von gewünschten Netzwerkressourcen agieren, die Netzwerkressourcen umfassen in dieser Instanz den Client 104 aus 2.
  • Bei Block 706 erhält der Distribution-Server die konfigurierbare Benutzerschnittstelle von dem Client. Zum Beispiel kann der Distribution-Server eine zusätzliche Anfrage erzeugen, die über ein Netzwerk zu dem Client übertragen wird. Der Distribution-Server kann anschließend auf die Anfrage eine Antwort erhalten, die die konfigurierbare Benutzerschnittstelle umfasst.
  • Bei Block 708 erkennt der Distribution-Server die Hardware- und/oder Software-Fähigkeiten der entfernten Vorrichtung über die entfernte Verbindung. Ebenso wie der Client, wie vorstehend beschrieben, kann auch der Distribution-Server Verarbeitungsgeschwindigkeiten, verfügbare Software und so weiter der entfernten Vorrichtung 138 feststellen, die die Fähigkeiten der entfernten Vorrichtung zum Ausführen der Benutzerschnittstelle anzeigen. Bei Block 710 konfiguriert der Distribution-Server die konfigurierbare Benutzerschnittstelle auf Basis des Feststellens der Fähigkeiten zum Erzeugen einer Benutzerschnittstelle, die für die entfernte Vorrichtung konfiguriert ist. Der Distribution-Server kann beispielsweise Funktionen der konfigurierbaren Benutzerschnittstelle anordnen, Funktionen auf Basis von verfügbaren Eingabevorrichtungen auswählen und so weiter. In einer anderen Implementierung kann die Benutzerschnittstelle auf Basis eines wahrscheinlichen Abstandes konfiguriert werden, in dem der Benutzer beim Betrachten der Benutzerschnittstelle von der entfernten Vorrichtung positioniert ist. So kann beispielsweise, wie vorstehend beschrieben, die Vorrichtung konfiguriert sein, um aus unterschiedlichen Entfernungen betrachtet zu werden, beispielsweise mit einem Fernsehgerät in einem Wohnzimmer im Gegensatz zu einem PDA, der in der Hand des Benutzers gehalten wird. Durch Konfigurieren der konfigurierbaren Benutzerschnittstelle auf Basis der wahrscheinlichen Entfernung des Benutzers von der Vorrichtung kann die konfigurierte Benutzerschnittstelle für das Betrachten durch den Benutzer optimiert werden.
  • Bei Block 712 speichert der Distribution-Server Client-Zustandsdaten, die eine Anzeige der entfernten Vorrichtung und der Client-Zugehörigkeit einschließen. Der Distribution-Server kann beispielsweise Daten speichern, die eine Kennzeichnung der entfernten Vorrichtung enthalten, die die konfigurierte Benutzerschnittstelle empfängt, sowie eine entsprechende Anzeige der Client-Zugehörigkeit für diese bestimmte Benutzerschnittstelle. Wenn daher der Distribution-Server eine Anforderung von der entfernten Vorrichtung empfängt, kann der Distribution-Server ein Ziel für diese Anforderung, das heißt, einen bestimmten Client, einfach identifizieren. Obwohl eine Konfiguration der konfigurierbaren Benutzerschnittstelle in dieser Implementierung als von dem Distribution-Server durchgeführt beschrieben wird, kann die konfigurierbare Benutzerschnittstelle auf eine Vielzahl von Arten konfiguriert werden. So kann beispielsweise die konfigurierbare Benutzerschnittstelle durch den Client, wie in Bezug auf 3 beschrieben, konfiguriert werden, sie kann automatisch durch die konfigurierbare Benutzerschnittstelle selbst konfiguriert werden und so weiter.
  • Bei Block 714 empfängt die entfernte Vorrichtung die konfigurierte Benutzerschnittstelle und führt diese aus, beispielsweise durch Ausführen der Benutzerschnittstelle 230 auf dem Prozessor 226 aus 2. Bei Block 716 wählt ein Benutzer eine Steuerfunktion durch Interaktion mit der Benutzerschnittstelle aus. So kann ein Benutzer beispielsweise eine Eingabevorrichtung der entfernten Vorrichtung wie beispielsweise eine Tastatur, eine Maus, ein Mikrofon zum Empfangen eines Sprachbefehls und so fort nutzen, um einen einer Vielzahl von Steuerfunktionen zum Initialisieren auszuwählen. Bei Block 718 bildet die Benutzerschnittstelle eine Anforderung für die Steuerfunktion zu dem Distribution-Server aus und kommuniziert diese. Daher wird in dieser Implementierung eine durch eine entfernte Vorrichtung 138 initialisierte Anforderung direkt über das Netzwerk 106 zu dem Distribution-Server 118 übertragen, ohne erst durch den Client 104 übertragen zu werden.
  • An dem Entscheidungsblock 720 erfolgt eine Bestimmung, ob der Client berechtigt ist, die angeforderte Steuerfunktion durchzuführen. Wie vorstehend beschrieben, kann die Bestimmung durch den Distribution-Server durch Verarbeiten der Anforderung erfolgen, wozu die Client-Zustandsdaten des Client genutzt werden, der die Steuerfunktion durchführen soll. Wenn der Client nicht berechtigt ist, die Steuerfunktion durchzuführen, endet das Verfahren 700 bei Block 722, indem eine Mitteilung über das Fehlschlagen an die entfernte Vorrichtung gesendet wird, die anzeigt, dass der Client nicht berechtigt ist, die angeforderte Steuerfunktion durchzuführen.
  • Wenn der Client berechtigt ist, die Steuerfunktion gemäß den Client-Zustandsdaten durchzuführen, übersetzt der Distribution-Server bei Block 724 die Anforderung, um einen Befehl für die Kommunikation zu dem Client für das Durchführen der Steuerfunktion zu erzeugen. So kann beispielsweise die Anforderung zum Initialisieren der Steuerfunktion, die durch die entfernte Vorrichtung ausgebildet wurde, mit dem Client nicht kompatibel sein. Daher kann der Distribution-Server die Anforderung in einen Befehl übersetzen, der bewirkt, dass der Client die entsprechende Steuerfunktion durchführt. Daher kann der Client bei Block 726 den Befehl empfangen und die Steuerfunktion durchführen, wie in dem Befehl angegeben.
  • Somit wird eine Umgebung für die Konfiguration und die Nutzung der Benutzerschnittstelle bereitgestellt. In einer Implementierung ist die Kopfstation so konfiguriert, dass sie die berechtigte Quelle für Client-Zustandsdaten in der Umgebung ist wie vorstehend beschrieben. Darüber hinaus kann die Kopfstation die Kapazität besitzen, Fähigkeiten von Vorrichtungen zu erkennen, beispielsweise eines Web-Browsers, auf den über das Internet zugegriffen werden kann, einer Set-Top-Box in Kommunikationsverbindung mit einem Fernsehgerät mit Standardauflösung, einer Set-Top-Box in Kommunikationsverbindung mit einem hochauflösenden Fernsehgerät, eines drahtlosen Telefons, eines PDA und so weiter, dies erfolgt sowohl durch die Client-Zugehörigkeit als auch durch die Hardware- und/oder Software-Fähigkeiten.

Claims (13)

  1. Verfahren, das von einem Client (104) durchgeführt wird, der so konfiguriert ist, dass er mit einer Vorrichtung (134) und einem Verteilserver (118) kommuniziert, wobei das Verfahren umfasst: Erfassen von Hardware- oder Software-Fähigkeiten der Vorrichtung (134) zum Ausführen einer Benutzerschnittstelle (UI); Konfigurieren einer Benutzerschnittstelle zum Initialisieren von Steuerfunktionen des Client auf Basis der erfassten Hardware- oder Software-Fähigkeiten der Vorrichtung (134), so dass die Vorrichtung (134) in der Lage ist, eine Steuerfunktion des Client zu initialisieren, indem die konfigurierte Benutzerschnittstelle ausgeführt wird, um eine Anforderung zu erzeugen und Ausführung der Steuerfunktion durch den Client (104) zu veranlassen, wobei die Anforderung von der Vorrichtung zu dem Verteilserver (118) zu übertragen ist, an dem bestimmt wird, ob Ausführung der Steuerfunktion durch den Client zugelassen wird; und Übertragen der konfigurierten Benutzerschnittstelle zu der Vorrichtung.
  2. Verfahren nach Anspruch 1, das des Weiteren umfasst: Übertragen der Anforderung über ein lokales Netzwerk (136) von der Vorrichtung (134) zu dem Client (104); und Weiterleiten der Anforderung durch den Client (104) zu dem Verteilserver (118) über ein Fernnetzwerk (106).
  3. Verfahren nach Anspruch 1, das des Weiteren Empfangen der Anforderung durch den Verteilserver (118) von der Vorrichtung (134) über ein Fernnetzwerk (106) umfasst.
  4. Verfahren nach Anspruch 3, wobei die Anforderung von der Vorrichtung (134) zu dem Verteilserver (118) übertragen wird, ohne die Anforderung zu dem Client (104) zu übertragen.
  5. Verfahren nach Anspruch 1, wobei: die Vorrichtung (134) über ein Fernnetzwerk (106) so in Kommunikationsverbindung mit dem Verteilserver (118) steht, dass die Anforderung durch den Verteilserver (118) von der Vorrichtung (134) empfangen wird; und wenn der Verteilserver (118) bestimmt, dass Ausführung der Steuerfunktion durch den Client (104) zugelassen wird, der Verteilserver (118) einen Befehl erzeugt und zu dem Client (104) überträgt, um den Client (104) zu veranlassen, die Steuerfunktion durchzuführen.
  6. Verfahren nach Anspruch 1, wobei die Vielzahl von Steuerfunktionen, wenn sie auf dem Client (104) ausgeführt werden, Inhalt-Interaktion auf dem Client (104) steuern.
  7. Verfahren nach Anspruch 1, wobei das Konfigurieren aus der Gruppe ausgewählt wird, die aus Folgendem besteht: Auswählen einer oder mehrerer einer Vielzahl von Funktionen zur Integration in die Benutzerschnittstelle; Anordnen der Funktionen für eine Navigation durch einen Benutzer; Sichtbarkeit der Funktionen für eine Anzeige; Auflösung der Funktionen für eine Anzeige; Schrifttyp der Funktionen für eine Anzeige; und Farbschema der Funktionen für eine Anzeige.
  8. Verfahren nach Anspruch 1, wobei die Benutzerschnittstelle auf Basis eines wahrscheinlichen Abstandes konfiguriert wird, in dem ein Benutzer zu der Vorrichtung (134) beim Betrachten der Benutzerschnittstelle positioniert ist.
  9. Verfahren nach Anspruch 1, wobei die Hardware- und Software-Fähigkeiten der Vorrichtung (134) aus der Gruppe ausgewählt werden, die besteht aus: einer oder mehreren Anwendungen, die zur Ausführung auf der Vorrichtung verfügbar sind; Gerätetreibern; verfügbaren Eingabevorrichtungen; verfügbaren Ausgabevorrichtungen; Verarbeitungsgeschwindigkeit; Größe von verfügbarem Speicher; Auflösung einer Anzeigevorrichtung, die in der Vorrichtung enthalten ist; und verfügbare Farbpalette für eine Anzeige von Farben auf einer Anzeigevorrichtung der Vorrichtung.
  10. Verfahren nach Anspruch 1, wobei der Client (104) ein Benutzerschnittstellen-Modul ausführt, das als ein HTTP-Server implementiert ist, der das Erfassen sowie das Konfigurieren durchführt und des Weiteren der Vorrichtung (134) die Benutzerschnittstelle in einem HTML-Format bereitstellt.
  11. Ein oder mehrere durch Computer lesbare/s Medien/Medium, die/das durch Computer ausführbare Befehle umfassen/umfasst, die, wenn sie auf einem Computer ausgeführt werden, den Computer anweisen, das Verfahren nach einem der Ansprüche 1 bis 10 durchzuführen.
  12. System, das umfasst: einen Client, eine Vorrichtung und einen Verteilserver, wobei der Client (104) so konfiguriert ist, dass er mit der Vorrichtung (134) und dem Verteilserver (118) kommuniziert, und er eine Erfassungseinrichtung zum Erfassen von Hardware- oder Software-Fähigkeiten der Vorrichtung (134) zum Ausführen einer Benutzerschnittstelle (UI), eine Konfiguriereinrichtung, die eine Benutzerschnittstelle zum Initialisieren von Steuerfunktionen des Client auf Basis der erfassten Hardware- oder Software-Fähigkeiten der Vorrichtung (134) so konfiguriert, dass die Vorrichtung (134) in der Lage ist, eine Steuerfunktion des Client durch Ausführen der konfigurierten Benutzerschnittstelle zum Erzeugen einer Anforderung zu initialisieren, um Ausführung einer Steuerfunktion durch den Client (104) zu veranlassen, sowie eine Übertragungseinrichtung zum Übertragen der konfigurierten Benutzerschnittstelle zu der Vorrichtung umfasst; und wobei die Vorrichtung (134) so eingerichtet ist, dass sie die Anforderung zu dem Verteilserver (118) überträgt; und der Verteilserver (118) so eingerichtet ist, dass er die Anforderung empfängt und so eingerichtet ist, dass er bestimmt, ob die Ausführung der Steuerfunktion durch den Client zugelassen wird.
  13. Ein Client, so konfiguriert, dass er mit einer Vorrichtung (134) und einem Verteilserver (118) kommuniziert, wobei der Client umfasst: einen Prozessor (202); einen Speicher (204); und ein Modul (132), das in dem Speicher (204) gespeichert ist und durch den Prozessor (202) ausführbar ist, wobei das Modul (132), wenn es durch den Prozessor (202) ausgeführt wird, den Client anweist, das Verfahren nach einem der Ansprüche 1 bis 10 auszuführen.
DE602005003030T 2004-01-05 2005-01-04 Konfiguration von einer Benutzerschnittstelle Active DE602005003030T2 (de)

Applications Claiming Priority (2)

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

Publications (2)

Publication Number Publication Date
DE602005003030D1 DE602005003030D1 (de) 2007-12-13
DE602005003030T2 true DE602005003030T2 (de) 2008-02-28

Family

ID=34574827

Family Applications (1)

Application Number Title Priority Date Filing Date
DE602005003030T Active DE602005003030T2 (de) 2004-01-05 2005-01-04 Konfiguration von einer Benutzerschnittstelle

Country Status (10)

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

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 삼성전자주식회사 제어 장치의 해상도에 따라 홈 네트워크 기기에 대한 제품제어 코드를 생성하는 장치 및 방법
EP1978480A3 (de) * 2005-07-22 2011-09-07 Kangaroo Media, Inc. System und Verfahren zur Verbesserung der Erfahrung von Zuschauern einer Live-Sportveranstaltung
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 (de) * 2006-01-25 2016-01-06 Brandt Technologies Limited System und Verfahren zur Simultansteuerung von Remote-Computern
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
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
US8380175B2 (en) * 2006-11-22 2013-02-19 Bindu Rama Rao System for providing interactive advertisements to user of mobile devices
US10803474B2 (en) 2006-11-22 2020-10-13 Qualtrics, Llc System for creating and distributing interactive advertisements to mobile devices
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
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 삼성전자주식회사 사용자 인터페이스를 제공/수신하는 방법 및 장치
KR20090110202A (ko) 2008-04-17 2009-10-21 삼성전자주식회사 개인화된 사용자 인터페이스를 디스플레이하는 방법 및 장치
KR101531165B1 (ko) * 2008-04-17 2015-06-25 삼성전자주식회사 클라이언트의 특성을 고려한 사용자 인터페이스를 제공, 수신하는 방법 및 장치
KR101545137B1 (ko) 2008-04-17 2015-08-19 삼성전자주식회사 사용자 인터페이스를 생성하는 방법 및 장치
US9870130B2 (en) 2008-05-13 2018-01-16 Apple Inc. Pushing a user interface to a remote device
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
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
US20090284476A1 (en) * 2008-05-13 2009-11-19 Apple Inc. Pushing a user interface to a 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
US10476757B1 (en) * 2015-01-27 2019-11-12 Nutanix, Inc. Architecture for implementing centralized management for a computing environment
WO2016141016A1 (en) * 2015-03-03 2016-09-09 Olio Devices, Inc. System and method for automatic third party user interface
US11003476B2 (en) 2016-02-12 2021-05-11 Nutanix, Inc. Entity database historical data
EP3639128A1 (de) * 2017-05-31 2020-04-22 ABB Schweiz AG Schnittstellen für feldgeräte in industriereglersystemen
EP3612929B1 (de) 2017-06-16 2022-08-24 Microsoft Technology Licensing, LLC Auf regeln basierende benutzeroberflächenerzeugung
WO2019005341A1 (en) * 2017-06-28 2019-01-03 Microsoft Technology Licensing, Llc IMPROVING THE USER EXPERIENCE ACCORDING TO THE DEVICE'S 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
AU2555288A (en) 1987-09-28 1989-04-18 James C. Fox Automatic program selector
US6850252B1 (en) * 1999-10-05 2005-02-01 Steven M. Hoffberg Intelligent electronic appliance system and method
US6828993B1 (en) * 1992-12-09 2004-12-07 Discovery Communications, Inc. Set top terminal that stores programs locally and generates menus
US5990927A (en) * 1992-12-09 1999-11-23 Discovery Communications, Inc. Advanced set top terminal for cable television delivery systems
US6201536B1 (en) * 1992-12-09 2001-03-13 Discovery Communications, Inc. Network manager for cable television system headends
EP0626635B1 (de) * 1993-05-24 2003-03-05 Sun Microsystems, Inc. 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
EP0666531A3 (de) * 1994-02-04 1995-10-04 Sun Microsystems Inc Standardschnittstellenvorrichtung zwischen verschiedenen LCD-Anzeigen und einem gemeinsamen Rasterpufferausgang.
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
DE69607579T2 (de) * 1995-07-11 2000-10-19 Koninkl Philips Electronics Nv Video-auf-anfrage-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
US6025837A (en) * 1996-03-29 2000-02-15 Micrsoft Corporation Electronic program guide with hyperlinks to target resources
DE69732062T2 (de) * 1996-03-29 2005-06-02 Matsushita Electric Industrial Co., Ltd., Kadoma Rundfunkempfangsgerät für Fernsehsignale und Programmanzeigeverfahren
WO1997043855A1 (fr) * 1996-05-16 1997-11-20 Kabushiki Kaisha Infocity Procede de transmission et d'affichage d'informations et dispositif d'affichage d'informations
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
US8769598B2 (en) * 1997-03-24 2014-07-01 Logitech Europe S.A. Program guide on a remote control
US6130726A (en) * 1997-03-24 2000-10-10 Evolve Products, Inc. Program guide on a remote control display
US6072483A (en) * 1997-06-02 2000-06-06 Sony Corporation Active frame scroll interface
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
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
US6426762B1 (en) * 1998-07-17 2002-07-30 Xsides Corporation Secondary user interface
US6229524B1 (en) * 1998-07-17 2001-05-08 International Business Machines Corporation User interface for interaction with video
JP2003524307A (ja) * 1998-07-23 2003-08-12 ディバ システムズ コーポレイション 双方向ユーザインターフェースを生成し、配信し、受信するシステム
US7831930B2 (en) * 2001-11-20 2010-11-09 Universal Electronics Inc. System and method for displaying a user interface for a remote control application
US6820278B1 (en) * 1998-07-23 2004-11-16 United Video Properties, Inc. Cooperative television application system having multiple user television equipment devices
US6754905B2 (en) * 1998-07-23 2004-06-22 Diva Systems Corporation Data structure and methods for providing an interactive program guide
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 三菱電機株式会社 情報表示装置
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
US6804825B1 (en) * 1998-11-30 2004-10-12 Microsoft Corporation Video on demand methods and systems
US7111242B1 (en) * 1999-01-27 2006-09-19 Gateway Inc. Method and apparatus for automatically generating a device user interface
JP2002538686A (ja) * 1999-02-26 2002-11-12 ソニー エレクトロニクス インク ブロッキングシステム
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 携帯端末装置及びそのデータ表示方法
DE60015764T2 (de) * 1999-05-28 2005-11-03 Nokia Corp. Benutzerschnittstelle und server für interaktive dienste
EP1192808A1 (de) * 1999-06-11 2002-04-03 United Video Properties, Inc. Anwendungssystem für interaktives fernsehen mit tragbarem anwendungsgerät
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
ES2569207T3 (es) * 1999-12-10 2016-05-09 Rovi Guides, Inc. Características para ser usadas con aplicaciones avanzadas de adaptación de televisores en sistemas de televisión interactivos
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
JP4385269B2 (ja) 2000-02-18 2009-12-16 ソニー株式会社 ネットワークシステム及びネットワーク端末装置
US6892359B1 (en) * 2000-02-18 2005-05-10 Xside Corporation Method and system for controlling a complementary user interface on a display surface
WO2001069380A2 (en) 2000-03-14 2001-09-20 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
KR20020027358A (ko) * 2000-04-19 2002-04-13 요트.게.아. 롤페즈 그래픽 사용자 인터페이스를 적응시키기 위한 방법 및 장치
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
US7349967B2 (en) * 2000-07-21 2008-03-25 Samsung Electronics Co., Ltd. Architecture for home network on world wide web with private-public IP address/URL mapping
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 コンテンツ配信システム及び装置及び方法及び記憶媒体及びプログラム
US7155681B2 (en) * 2001-02-14 2006-12-26 Sproqit Technologies, Inc. Platform-independent distributed user interface server architecture
US20020111995A1 (en) * 2001-02-14 2002-08-15 Mansour Peter M. Platform-independent distributed user interface system 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
KR20040048933A (ko) * 2001-10-04 2004-06-10 코닌클리케 필립스 일렉트로닉스 엔.브이. 사용자 인터페이스를 스타일링하는 방법 및 적응성 사용자인터페이스를 구비한 디바이스
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
WO2003096669A2 (en) * 2002-05-10 2003-11-20 Reisman Richard R Method and apparatus for browsing using multiple coordinated device
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
EP1551153B1 (de) 2007-10-31
US20050149501A1 (en) 2005-07-07
JP2005202951A (ja) 2005-07-28
JP2014238869A (ja) 2014-12-18
KR20050072069A (ko) 2005-07-08
US8196044B2 (en) 2012-06-05
DE602005003030D1 (de) 2007-12-13
CN1649411B (zh) 2011-04-06
KR101109264B1 (ko) 2012-01-30
ATE377322T1 (de) 2007-11-15
CN1649411A (zh) 2005-08-03
JP2012141990A (ja) 2012-07-26
US20120204115A1 (en) 2012-08-09
BRPI0500008B1 (pt) 2017-06-27
JP5650143B2 (ja) 2015-01-07
MXPA05000333A (es) 2005-08-19
BRPI0500008A (pt) 2005-09-06
EP1551153A1 (de) 2005-07-06
CA2491387A1 (en) 2005-07-05
JP6306971B2 (ja) 2018-04-04

Similar Documents

Publication Publication Date Title
DE602005003030T2 (de) Konfiguration von einer Benutzerschnittstelle
US7664813B2 (en) Dynamic data presentation
DE60125044T2 (de) System und verfahren zur bereitstellung von inhalt, verwaltung und interaktivität für clientvorrichtungen
DE69830202T2 (de) Hostgerät zur struktur einer zweiwegverbindung in einwegdatenströmen
US20060041915A1 (en) Residential gateway system having a handheld controller with a display for displaying video signals
DE69731988T2 (de) Verfahren und Gerät zur Anzeige von Bildern und Daten
US7992166B2 (en) Providing alternative services based on receiver configuration and type of display device
DE69634417T2 (de) Vorrichtungen und verfahren zur bereitstellung von fernsehprogramminformation
US7904930B2 (en) Broadcast content delivery systems and methods
DE112013002234T5 (de) Verbundenes Mehrfachbilschirm-Video
DE102005008745B4 (de) Audio-/Videokomponentenvernetzungssystem und -verfahren
DE202011110525U1 (de) Multifunktions-Anzeigevorrichtung
DE202011110780U1 (de) Multifunktionsanzeigevorrichtung
US20090119328A1 (en) Bookmarks for program note information
DE19811910A1 (de) Benutzer-Interface mit Kanalleiste für ein Unterhaltungssystem
AU2007307132A1 (en) Systems and methods for acquiring, categorizing and delivering media in interactive media guidance applications
DE202011110535U1 (de) Bildanzeigevorrichtung zur Bereitstellung eines Fernsteuerdienstes
KR100736030B1 (ko) A/v 네트워크 상의 컨텐츠를 수집하고 그 실행을제어하는 장치 및 방법
US20090238543A1 (en) Local Recording of Previously Aired Programming
EP2168379B1 (de) Schnelle programmübersicht
CN101674395B (zh) 在电视机顶盒中向用户提供视频服务的方法
AU2018241142B2 (en) Systems and Methods for Acquiring, Categorizing and Delivering Media in Interactive Media Guidance Applications
DE102005056550A1 (de) Vorrichtung und Verfahren zur clientseitigen Abfrage und Empfang von Informationen
US8286212B2 (en) On-demand asset distribution
AU2013203417B9 (en) Systems and Methods for Acquiring, Categorizing and Delivering Media in Interactive Media Guidance Applications

Legal Events

Date Code Title Description
8364 No opposition during term of opposition